0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
39
162
123
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
207
254
253
64
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
82
252
254
254
65
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
86
175
254
254
227
38
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
142
254
173
156
49
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
133
251
180
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
133
251
224
45
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
93
251
254
123
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
148
254
227
23
0
0
0
0
0
0
0
0
10
73
73
69
0
0
0
0
0
0
0
0
0
0
0
31
246
254
55
0
0
0
0
0
0
0
0
45
157
254
254
252
193
32
0
0
0
0
0
0
0
0
0
216
254
230
20
0
0
0
0
0
0
13
83
233
254
254
254
254
254
124
0
0
0
0
0
0
0
0
0
249
254
149
0
0
0
0
0
0
13
95
254
246
202
202
138
254
254
124
0
0
0
0
0
0
0
0
87
253
254
127
0
0
0
0
0
12
162
254
246
109
0
0
20
254
254
124
0
0
0
0
0
0
0
0
125
254
254
19
0
0
0
0
0
87
254
246
109
0
0
0
108
254
250
41
0
0
0
0
0
0
0
0
45
251
254
36
0
0
0
0
47
234
254
185
0
0
5
115
218
253
148
0
0
0
0
0
0
0
0
0
0
249
254
214
29
0
0
0
73
254
248
64
5
47
170
255
254
228
0
0
0
0
0
0
0
0
0
0
0
239
254
254
214
151
40
4
150
254
200
47
169
254
254
255
233
45
0
0
0
0
0
0
0
0
0
0
0
52
241
254
254
254
254
163
232
254
254
254
254
254
253
160
45
0
0
0
0
0
0
0
0
0
0
0
0
0
52
171
250
254
254
254
254
254
254
254
250
160
102
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
48
124
124
124
228
254
224
124
38
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
