0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
226
226
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
255
226
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
86
198
57
0
0
0
0
198
114
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
29
255
198
0
0
0
0
29
255
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
198
255
86
0
0
0
0
170
255
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
141
255
170
0
0
0
0
0
255
198
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
57
255
226
29
0
0
0
0
114
255
114
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
226
255
86
0
0
0
0
0
198
255
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
57
255
226
0
0
0
0
0
0
255
198
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
198
255
57
0
0
0
0
0
114
255
86
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
255
255
0
0
0
0
0
0
226
255
0
0
0
114
0
0
0
0
0
0
0
0
0
0
0
0
0
0
255
255
0
0
0
0
0
57
255
198
0
57
198
226
0
0
0
0
0
0
0
0
0
0
0
0
0
0
226
255
255
170
114
86
86
170
255
255
255
255
255
86
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
141
255
255
255
255
255
255
255
198
170
86
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
86
86
170
226
255
170
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
255
255
29
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
255
255
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
255
170
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
255
198
29
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
198
226
29
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
