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
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
114
226
255
198
86
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
170
226
114
86
141
226
29
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
86
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
170
86
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
198
57
0
0
0
0
86
141
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
255
0
0
0
0
0
198
29
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
57
255
0
0
0
0
141
114
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
57
255
29
0
0
29
198
29
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
255
86
0
0
170
114
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
141
198
0
86
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
226
170
198
114
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
255
255
255
255
255
170
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
170
170
86
86
141
255
86
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
170
86
0
0
0
86
198
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
255
0
0
0
0
0
226
57
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
86
141
0
0
0
0
0
170
86
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
170
86
0
0
0
0
0
141
86
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
170
86
0
0
0
0
0
57
170
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
170
141
0
0
0
0
0
0
226
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
114
255
29
0
0
0
0
0
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
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
