0
0
0
0
0
0
0
0
5
23
49
63
54
28
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
3
7
9
11
7
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
39
66
78
69
35
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
58
101
118
106
63
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
50
84
100
97
56
13
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
37
63
79
71
42
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
9
32
47
54
38
15
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5
8
9
9
7
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
7
13
12
12
8
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
4
5
5
5
4
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
10
16
16
14
10
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
7
10
12
10
7
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
16
26
42
47
29
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
14
18
19
16
9
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
19
34
42
39
26
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
23
37
51
59
41
13
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
24
77
125
147
136
96
36
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
25
42
61
57
32
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
30
65
84
88
69
28
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
16
52
98
119
106
83
34
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
24
72
109
120
102
63
20
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
15
49
74
82
83
64
25
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
6
11
16
16
10
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
17
23
25
20
11
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
17
29
36
43
42
23
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
25
53
62
51
46
27
7
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
13
15
16
14
9
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
41
97
143
148
118
70
32
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
6
7
12
11
10
11
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
9
31
59
76
72
48
19
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
17
39
49
66
75
43
22
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
4
15
13
14
11
8
6
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
14
28
34
38
29
20
11
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
34
87
128
154
144
110
55
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
65
150
199
207
167
134
75
16
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
13
24
28
24
17
10
6
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
11
17
22
24
15
7
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
25
40
26
23
39
45
30
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
7
18
25
48
70
60
28
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
24
46
72
93
104
77
31
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
31
60
85
89
81
72
40
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
28
59
109
160
130
78
47
13
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
80
145
186
176
153
118
82
26
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
82
144
187
213
211
164
105
36
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
48
86
132
151
139
118
71
23
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
13
69
133
188
210
224
190
126
47
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
32
122
209
261
271
257
208
135
46
2
0
0
0
0
0
0
0
0
0
0
0
0
0
1
33
105
183
235
248
226
186
126
43
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
25
63
92
97
69
48
26
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
12
26
44
64
85
101
81
31
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
17
41
94
107
102
76
51
17
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
21
56
80
91
71
55
39
22
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
34
93
175
216
228
192
130
78
29
3
0
0
0
0
0
0
0
0
0
0
0
0
0
2
35
95
135
170
182
171
144
97
46
4
0
0
0
0
0
0
0
0
0
0
0
0
0
4
49
138
203
232
239
221
184
120
52
6
0
0
0
0
0
0
0
0
0
0
0
0
0
2
38
109
181
209
175
166
149
105
55
9
0
0
0
0
0
0
0
0
0
0
0
0
0
4
57
152
230
268
269
253
222
152
66
8
0
0
0
0
0
0
0
0
0
0
0
0
0
5
48
119
170
204
181
155
116
78
37
8
0
0
0
0
0
0
0
0
0
0
0
0
0
5
47
122
188
234
256
257
229
175
83
13
0
0
0
0
0
0
0
0
0
0
0
0
0
3
26
71
129
168
196
217
209
146
72
12
0
0
0
0
0
0
0
0
0
0
0
0
0
3
21
44
68
82
81
74
59
35
13
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
16
27
39
53
64
53
30
13
2
0
0
0
0
0
0
0
0
0
0
0
0
0
4
36
68
96
119
126
142
124
82
44
8
0
0
0
0
0
0
0
0
0
0
0
0
0
4
24
50
79
108
107
111
103
67
34
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
12
18
20
23
25
19
13
7
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
7
17
31
39
47
44
34
28
15
3
0
0
0
0
0
0
0
0
0
0
0
0
0
4
19
42
65
95
113
108
91
65
36
8
0
0
0
0
0
0
0
0
0
0
0
0
0
7
36
62
81
99
106
83
57
42
24
10
0
0
0
0
0
0
0
0
0
0
0
0
0
9
37
84
137
192
230
231
205
151
81
16
0
0
0
0
0
0
0
0
0
0
0
0
0
8
27
53
90
135
164
160
123
79
37
8
0
0
0
0
0
0
0
0
0
0
0
0
0
6
25
44
70
114
141
169
170
147
84
22
1
0
0
0
0
0
0
0
0
0
0
0
0
11
38
75
108
151
198
218
201
166
99
28
1
0
0
0
0
0
0
0
0
0
0
0
0
12
43
78
113
146
190
192
177
126
66
18
1
0
0
0
0
0
0
0
0
0
0
0
0
5
22
45
78
102
132
152
149
115
61
19
1
0
0
0
0
0
0
0
0
0
0
0
1
20
72
143
197
251
247
189
148
129
84
28
1
0
0
0
0
0
0
0
0
0
0
0
2
38
116
209
284
320
325
306
274
209
126
42
2
0
0
0
0
0
0
0
0
0
0
0
1
28
86
131
158
172
163
136
102
62
30
8
0
0
0
0
0
0
0
0
0
0
0
0
1
14
36
64
120
177
239
264
247
205
126
42
3
0
0
0
0
0
0
0
0
0
0
0
1
20
55
96
152
231
288
306
287
223
133
42
2
0
0
0
0
0
0
0
0
0
0
0
3
37
105
171
248
293
311
297
263
196
127
45
3
0
0
0
0
0
0
0
0
0
0
0
2
29
79
128
179
183
168
121
97
76
54
23
2
0
0
0
0
0
0
0
0
0
0
0
3
26
65
113
159
196
196
194
175
156
115
51
5
0
0
0
0
0
0
0
0
0
0
0
6
56
148
242
303
344
355
321
286
224
142
57
4
0
0
0
0
0
0
0
0
0
0
0
8
69
150
185
210
224
190
121
65
36
17
6
1
0
0
0
0
0
0
0
0
0
0
0
1
9
21
35
54
60
66
64
73
105
103
57
7
0
0
0
0
0
0
0
0
0
0
0
5
47
125
202
249
300
355
358
311
203
99
36
4
0
0
0
0
0
0
0
0
0
0
0
2
14
24
24
24
35
49
58
80
112
99
52
7
0
0
0
0
0
0
0
0
0
0
0
12
69
158
199
176
139
117
84
59
36
25
23
4
0
0
0
0
0
0
0
0
0
0
0
11
45
82
127
177
224
224
220
190
161
103
44
6
0
0
0
0
0
0
0
0
0
0
0
4
19
42
59
94
133
150
145
130
98
62
25
4
0
0
0
0
0
0
0
0
0
0
0
12
63
119
169
219
250
296
314
307
261
180
81
13
0
0
0
0
0
0
0
0
0
0
0
19
90
190
280
343
380
387
369
330
246
147
49
6
0
0
0
0
0
0
0
0
0
0
0
9
37
71
129
204
272
271
238
235
203
126
50
8
0
0
0
0
0
0
0
0
0
0
0
5
20
35
58
111
135
101
99
79
49
28
16
4
0
0
0
0
0
0
0
0
0
0
0
9
27
41
69
109
145
189
185
145
128
69
25
2
0
0
0
0
0
0
0
0
0
0
0
8
30
56
89
118
113
81
56
37
27
16
7
1
0
0
0
0
0
0
0
0
0
0
0
7
21
34
45
78
132
186
190
117
66
29
12
3
0
0
0
0
0
0
0
0
0
0
1
16
53
87
126
135
126
122
121
99
87
56
28
7
0
0
0
0
0
0
0
0
0
0
1
22
70
118
152
218
239
261
226
217
170
116
63
17
0
0
0
0
0
0
0
0
0
0
2
31
94
177
213
230
235
235
228
207
169
122
64
15
0
0
0
0
0
0
0
0
0
0
1
26
77
131
197
245
248
274
276
240
165
113
73
18
0
0
0
0
0
0
0
0
0
0
2
34
112
209
291
372
393
402
387
350
287
198
99
24
1
0
0
0
0
0
0
0
0
0
2
24
61
96
121
124
128
124
108
86
56
35
18
5
0
0
0
0
0
0
0
0
0
0
1
18
49
103
160
183
181
164
150
129
118
90
49
14
0
0
0
0
0
0
0
0
0
0
3
30
71
128
200
248
268
268
255
218
157
107
56
15
1
0
0
0
0
0
0
0
0
0
1
12
41
67
109
151
163
159
153
130
93
69
31
10
1
0
0
0
0
0
0
0
0
0
1
12
25
34
49
67
57
51
66
100
130
108
50
11
0
0
0
0
0
0
0
0
0
0
3
30
82
131
182
213
220
227
230
220
187
145
87
27
2
0
0
0
0
0
0
0
0
0
3
14
29
60
104
132
137
141
113
91
82
59
43
19
2
0
0
0
0
0
0
0
0
0
5
35
93
173
237
298
320
309
285
220
190
141
85
29
2
0
0
0
0
0
0
0
0
0
8
49
129
217
296
356
393
399
385
350
290
205
107
34
3
0
0
0
0
0
0
0
0
0
8
48
106
145
176
192
189
184
177
153
127
84
59
26
3
0
0
0
0
0
0
0
0
0
9
53
139
222
303
363
384
376
364
337
295
214
118
37
4
0
0
0
0
0
0
0
0
0
11
55
139
233
296
289
237
232
229
198
164
120
78
30
4
0
0
0
0
0
0
0
0
0
8
39
105
171
221
240
241
241
228
195
189
149
98
34
5
0
0
0
0
0
0
0
0
0
13
51
108
161
172
158
150
139
146
129
144
114
64
26
3
0
0
0
0
0
0
0
0
0
3
18
42
66
97
122
133
153
145
128
102
75
47
21
3
0
0
0
0
0
0
0
0
0
4
25
50
74
98
128
158
174
176
155
140
103
63
23
3
0
0
0
0
0
0
0
0
0
8
40
85
116
148
178
182
209
207
205
171
128
75
32
5
0
0
0
0
0
0
0
0
0
16
64
145
210
217
214
163
109
74
53
51
54
42
25
5
0
0
0
0
0
0
0
0
0
5
32
71
97
131
158
199
229
236
236
191
142
100
45
9
0
0
0
0
0
0
0
0
0
17
66
151
229
295
358
396
403
393
359
297
211
117
45
7
0
0
0
0
0
0
0
0
1
17
66
148
234
302
356
357
344
306
256
192
122
65
26
5
0
0
0
0
0
0
0
0
0
6
21
39
59
99
151
206
257
273
281
255
202
124
48
9
0
0
0
0
0
0
0
0
1
20
68
153
252
325
369
392
390
371
343
280
210
123
45
9
0
0
0
0
0
0
0
0
2
23
72
163
255
331
380
402
402
390
355
296
221
128
48
9
0
0
0
0
0
0
0
0
2
26
65
143
232
297
343
376
391
389
355
296
214
119
48
11
0
0
0
0
0
0
0
0
2
21
70
157
242
315
366
396
403
391
353
298
218
129
50
10
0
0
0
0
0
0
0
0
2
22
73
159
248
321
373
402
409
395
359
301
222
130
51
11
0
0
0
0
0
0
0
0
2
22
71
153
241
305
355
387
400
389
355
299
222
131
52
14
0
0
0
0
0
0
0
0
1
22
63
124
222
308
355
382
389
374
329
265
201
120
49
12
0
0
0
0
0
0
0
0
3
25
72
158
245
314
356
382
385
366
342
292
217
130
53
12
0
0
0
0
0
0
0
0
3
25
77
163
251
322
364
401
408
394
360
301
222
131
54
13
1
0
0
0
0
0
0
0
4
28
80
160
240
313
357
374
363
340
312
272
201
126
54
15
1
0
0
0
0
0
0
0
4
28
70
135
193
226
245
247
229
229
213
188
155
102
53
15
1
0
0
0
0
0
0
0
3
28
78
146
210
211
260
279
289
246
229
207
169
107
55
17
1
0
0
0
0
0
0
0
3
29
77
151
231
291
329
356
347
337
304
265
201
130
60
16
1
0
0
0
0
0
0
0
3
19
48
97
146
174
190
190
175
154
133
100
71
46
27
9
0
0
0
0
0
0
0
0
4
28
70
139
211
286
306
312
306
254
199
166
125
86
44
13
1
0
0
0
0
0
0
0
4
23
52
104
168
224
287
313
279
242
194
169
130
84
44
15
1
0
0
0
0
0
0
0
4
22
41
65
78
92
116
103
81
90
123
138
133
103
56
19
2
0
0
0
0
0
0
0
4
24
48
80
103
140
175
180
154
134
90
75
48
36
19
7
1
0
0
0
0
0
0
0
4
23
50
85
151
194
215
265
290
276
228
166
95
48
25
8
0
0
0
0
0
0
0
0
2
10
18
30
56
80
100
124
141
146
153
132
99
67
28
9
1
0
0
0
0
0
0
0
2
18
41
65
91
97
97
103
95
82
82
75
66
46
21
7
1
0
0
0
0
0
0
0
1
10
25
45
71
101
138
168
188
194
195
184
139
84
38
12
1
0
0
0
0
0
0
0
5
21
48
85
120
153
193
228
236
237
225
209
170
119
61
20
3
3
0
0
0
0
0
0
9
33
84
158
225
295
339
343
317
282
261
226
181
116
55
20
3
0
0
0
0
0
0
0
7
28
70
122
176
185
193
208
225
221
207
175
142
97
47
17
2
0
0
0
0
0
0
0
7
30
75
140
204
248
289
317
305
267
235
195
145
84
40
11
1
0
0
0
0
0
0
0
3
18
45
88
136
157
185
247
319
361
350
298
225
144
69
22
3
0
0
0
0
0
0
0
9
29
69
127
182
226
257
260
276
285
282
254
193
104
45
14
1
0
0
0
0
0
0
0
8
32
74
142
217
279
311
318
321
334
313
277
220
142
70
23
4
2
0
0
0
0
0
0
9
31
70
121
161
179
229
288
323
342
330
288
223
140
68
24
4
0
0
0
0
0
0
1
10
34
85
166
245
306
353
388
393
379
350
297
230
149
71
23
4
1
0
0
0
0
0
0
10
36
91
171
251
314
358
378
386
371
337
281
215
139
69
25
4
0
0
0
0
0
0
0
10
35
87
164
243
310
360
386
394
372
344
288
225
146
68
25
5
0
0
0
0
0
0
0
10
37
90
171
254
324
370
399
403
379
348
301
227
148
73
25
5
0
0
0
0
0
0
0
8
34
85
164
239
297
328
348
345
348
330
282
227
147
71
24
4
0
0
0
0
0
0
0
5
21
51
101
163
224
265
290
305
315
296
256
209
141
72
28
6
0
0
0
0
0
0
1
11
39
93
168
247
315
357
370
375
357
331
301
233
153
83
28
6
0
0
0
0
0
0
0
10
37
90
171
243
296
323
334
331
307
278
256
204
144
75
27
6
0
0
0
0
0
0
1
11
37
95
178
247
272
295
311
348
338
311
269
213
149
76
26
6
0
0
0
0
0
0
1
12
38
89
162
223
279
316
323
314
306
264
236
194
130
73
31
7
0
0
0
0
0
0
1
9
27
61
104
152
185
209
205
192
156
129
111
88
69
40
14
3
0
0
0
0
0
0
0
4
14
30
54
77
88
91
88
84
81
82
75
55
38
21
9
1
0
0
0
0
0
0
0
3
14
27
56
103
146
202
218
217
219
197
152
91
61
28
12
2
0
0
0
0
0
0
0
7
27
55
96
140
169
187
187
188
200
176
156
141
93
56
24
6
0
0
0
0
0
0
0
9
37
82
126
185
237
266
281
296
283
268
228
193
143
76
30
6
0
0
0
0
0
0
0
7
29
65
108
155
192
203
213
218
207
195
154
113
81
45
17
3
0
0
0
0
0
0
0
7
28
60
106
168
225
274
303
299
286
276
238
171
98
55
30
10
0
0
0
0
0
0
1
15
35
78
138
190
202
185
132
97
77
59
42
29
19
9
3
1
0
0
0
0
0
0
0
7
29
59
94
133
181
237
282
299
310
322
293
234
155
83
28
6
0
0
0
0
0
0
0
6
16
31
48
71
84
107
141
185
229
246
237
196
136
75
26
4
0
0
0
0
0
0
0
11
29
60
109
116
108
112
116
105
110
87
56
39
50
40
26
6
0
0
0
0
0
0
0
5
21
62
96
132
157
175
230
264
272
235
195
146
79
43
23
7
0
0
0
0
0
0
0
3
19
43
70
99
116
110
103
97
114
113
87
53
23
15
9
2
0
0
0
0
0
0
0
6
20
48
86
125
202
257
268
284
289
272
257
212
151
80
30
6
0
0
0
0
0
0
1
11
37
72
98
129
142
136
129
125
120
114
96
76
67
53
26
6
0
0
0
0
0
0
0
10
34
73
140
193
218
267
290
284
256
235
213
190
132
71
29
8
0
0
0
0
0
0
1
5
18
37
57
69
83
139
190
225
233
240
219
183
135
66
25
5
0
0
0
0
0
0
0
2
11
28
45
86
131
161
193
224
243
255
244
210
144
81
27
5
0
0
0
0
0
0
0
8
30
58
65
49
61
79
121
162
174
174
154
120
73
39
17
2
2
0
0
0
0
0
0
4
23
53
87
148
221
283
312
321
312
305
261
206
142
78
30
6
0
1
0
0
0
0
1
8
30
59
107
167
223
220
239
255
246
230
213
169
122
65
26
5
0
0
0
0
0
0
0
8
33
77
143
200
226
261
293
299
309
298
268
210
142
71
25
5
0
0
0
0
0
0
0
7
29
57
80
97
91
105
107
81
60
76
67
55
45
28
13
2
0
0
0
0
0
0
0
4
24
68
127
192
259
302
304
298
299
281
244
202
136
73
28
5
0
0
0
0
0
0
0
9
34
86
152
217
241
244
225
183
153
140
141
113
79
39
13
2
0
0
0
0
0
0
0
6
30
72
121
179
229
263
235
165
118
87
56
47
32
24
14
4
0
0
0
0
0
0
0
5
22
50
101
155
205
259
297
315
311
272
207
163
121
64
22
3
2
0
0
0
0
0
0
1
6
16
29
50
66
72
84
97
100
104
99
73
41
22
7
2
3
0
0
0
0
0
0
4
21
53
112
162
155
168
192
216
224
179
138
107
63
32
10
1
0
0
0
0
0
0
0
4
20
46
73
125
179
192
191
207
216
184
158
130
91
56
26
5
0
0
0
0
0
0
0
6
27
77
151
208
250
266
285
266
272
258
233
191
133
73
24
4
0
0
0
0
0
0
0
3
18
52
82
108
128
157
158
137
142
145
132
99
77
41
16
3
0
0
0
0
0
0
0
3
20
49
87
127
157
177
184
192
193
178
141
118
89
52
21
4
0
0
0
0
0
0
0
1
11
25
31
43
60
79
109
134
162
201
208
189
131
65
24
4
0
0
0
0
0
0
0
5
31
74
124
128
111
122
134
166
179
172
152
121
81
40
15
2
0
0
0
0
0
0
0
4
24
64
98
116
133
142
137
143
134
129
137
104
71
41
15
2
0
0
0
0
0
0
0
3
21
55
94
144
196
224
212
210
216
221
206
167
120
65
21
3
0
0
0
0
0
0
0
4
24
70
148
230
294
339
365
373
363
337
290
230
154
72
19
2
0
0
0
0
0
0
0
5
18
37
68
114
178
224
256
278
281
261
247
187
114
58
17
2
0
0
0
0
0
0
0
4
21
56
108
172
230
287
299
300
294
284
247
155
80
37
15
2
0
0
0
0
0
0
0
1
7
27
62
126
195
243
277
288
294
262
224
168
103
57
22
3
0
0
0
0
0
0
0
3
24
66
129
204
269
318
353
362
351
312
266
209
137
62
18
2
0
0
0
0
0
0
0
3
20
50
105
161
184
190
183
170
167
186
172
139
88
39
13
1
0
0
0
0
0
0
0
2
19
55
106
166
196
216
248
267
283
279
258
212
139
65
18
2
0
0
0
0
0
0
0
2
21
51
90
136
170
193
210
202
179
135
95
48
27
18
10
2
0
0
0
0
0
0
0
2
21
64
125
174
215
251
283
279
259
237
210
164
114
53
18
1
0
0
0
0
0
0
0
1
12
33
55
94
117
145
170
169
188
173
161
121
87
40
12
1
0
0
0
0
0
0
0
1
10
36
71
124
178
213
238
254
232
215
207
188
131
63
18
1
0
0
0
0
0
0
0
2
19
57
126
181
191
214
227
239
252
227
212
168
116
57
16
1
0
0
0
0
0
0
0
1
18
51
113
175
204
242
265
278
268
241
212
172
117
53
14
1
0
0
0
0
0
0
0
1
17
52
109
173
230
255
280
286
275
282
252
194
133
61
14
1
0
0
0
0
0
0
0
2
21
43
54
69
96
66
46
47
49
61
76
84
65
37
14
0
0
0
0
0
0
0
0
0
11
45
84
137
178
216
222
210
219
211
201
149
89
38
10
0
0
0
0
0
0
0
0
0
13
51
103
151
176
234
251
267
268
229
202
163
103
44
11
0
0
0
0
0
0
0
0
0
9
33
67
107
154
240
283
286
284
269
242
187
123
53
12
0
0
0
0
0
0
0
0
1
10
32
74
120
141
129
111
94
79
74
85
89
67
35
9
0
0
0
0
0
0
0
0
0
10
22
64
156
225
258
265
242
214
191
154
105
72
38
10
0
0
0
0
0
0
0
0
0
13
50
116
179
231
273
301
302
296
269
233
165
104
47
11
0
0
0
0
0
0
0
0
0
12
43
95
131
168
209
231
275
297
288
251
183
115
48
10
0
0
0
0
0
0
0
0
0
13
50
122
202
260
294
317
304
285
238
176
121
70
30
6
0
0
0
0
0
0
0
0
0
6
26
54
90
111
113
104
91
89
82
78
74
59
20
2
0
0
0
0
0
0
0
0
0
4
20
37
72
107
110
132
148
176
174
139
103
64
26
4
0
0
0
0
0
0
0
0
0
9
42
79
112
157
196
228
234
210
187
160
129
83
36
6
0
0
0
0
0
0
0
0
0
10
38
83
137
176
200
227
251
246
209
188
138
82
35
5
0
0
0
0
0
0
0
0
0
8
41
105
185
263
304
343
366
337
276
237
186
110
40
6
0
0
0
0
0
0
0
0
0
7
43
115
203
284
331
363
376
362
328
273
200
112
38
5
0
0
0
0
0
0
0
0
0
5
31
87
162
226
252
248
246
228
194
166
123
66
25
4
0
0
0
0
0
0
0
0
1
2
32
119
185
233
235
232
243
240
233
224
162
91
32
3
0
0
0
0
0
0
0
0
0
1
8
19
34
58
68
75
86
127
131
102
67
59
30
4
0
0
0
0
0
0
0
0
0
6
35
87
166
240
289
264
231
209
175
159
109
63
24
4
2
0
0
0
0
0
0
0
0
5
37
100
157
199
209
186
177
173
133
87
38
18
6
0
0
0
0
0
0
0
0
0
0
2
19
49
84
119
145
168
182
186
167
167
118
67
23
2
0
0
0
0
0
0
0
0
0
4
32
90
165
230
286
326
317
298
267
218
163
92
27
2
0
0
0
0
0
0
0
0
0
3
34
101
174
226
271
330
341
331
294
233
159
75
23
1
0
0
0
0
0
0
0
0
0
4
34
97
177
245
273
287
292
273
232
178
119
68
19
1
0
0
0
0
0
0
0
0
0
4
34
109
195
266
305
327
341
311
284
240
173
85
20
1
0
0
0
0
0
0
0
0
0
0
8
40
76
90
69
47
70
110
137
121
96
35
7
0
0
0
0
0
0
0
0
0
0
1
10
42
108
164
202
225
231
238
234
204
149
79
21
1
0
0
0
0
0
0
0
0
0
2
27
93
163
203
235
243
246
248
243
204
144
71
17
0
0
0
0
0
0
0
0
0
0
2
26
91
175
232
277
294
260
255
228
176
123
59
15
0
0
0
0
0
0
0
0
0
0
3
31
76
106
148
174
190
227
254
246
198
130
61
13
0
0
0
0
0
0
0
0
0
0
2
22
58
79
119
127
125
115
94
79
74
49
24
4
0
0
0
0
0
0
0
0
0
0
1
22
75
145
157
169
174
205
202
188
145
80
26
4
0
0
0
0
0
0
0
0
0
0
0
8
22
43
67
78
87
86
91
85
57
37
17
4
0
0
0
0
0
0
0
0
0
0
1
23
89
177
255
309
336
333
309
278
230
145
64
12
0
0
0
0
0
0
0
0
0
0
0
21
90
182
256
293
298
272
247
199
140
85
32
6
0
0
0
0
0
0
0
0
0
0
0
6
23
49
73
89
97
115
129
113
82
53
25
4
0
0
0
0
0
0
0
0
0
0
0
17
75
160
226
283
316
328
322
280
213
133
52
8
0
0
0
0
0
0
0
0
0
0
0
13
73
167
252
307
317
305
292
256
205
137
57
7
0
0
0
0
0
0
0
0
0
0
0
17
79
164
234
291
314
307
283
236
176
106
33
3
0
0
0
0
0
0
0
0
0
0
0
6
33
96
166
229
282
307
298
267
214
139
54
6
0
0
0
0
0
0
0
0
0
0
0
7
42
108
183
244
281
295
285
254
193
114
42
4
0
0
0
0
0
0
0
0
0
0
0
12
57
134
213
271
300
307
292
253
190
113
39
4
0
0
0
0
0
0
0
0
0
0
0
13
65
146
223
281
314
323
306
264
199
117
41
3
0
0
0
0
0
0
0
0
0
0
0
12
64
144
220
269
299
310
290
249
186
109
37
3
0
0
0
0
0
0
0
0
0
0
0
12
63
145
217
267
283
283
266
226
153
84
26
2
0
0
0
0
0
0
0
0
0
0
0
7
34
65
107
143
179
197
194
193
159
96
35
2
0
0
0
0
0
0
0
0
0
0
0
11
68
150
217
243
241
256
227
187
135
70
22
1
0
0
0
0
0
0
0
0
0
0
0
3
23
58
102
125
143
131
113
98
70
38
15
1
0
0
0
0
0
0
0
0
0
0
0
4
29
66
117
177
212
241
223
193
141
82
27
2
0
0
0
0
0
0
0
0
0
0
0
4
22
49
101
138
182
207
226
191
137
76
18
0
0
0
0
0
0
0
0
0
0
0
0
6
41
104
184
260
292
289
234
178
118
62
16
0
0
0
0
0
0
0
0
0
0
0
0
5
37
104
182
220
227
228
214
206
161
89
19
0
0
0
0
0
0
0
0
0
0
0
0
7
56
137
209
248
251
254
238
208
141
60
14
1
0
0
0
0
0
0
0
0
0
0
0
6
49
124
202
262
299
307
287
242
171
87
21
0
0
0
0
0
0
0
0
0
0
0
0
1
15
67
158
222
264
267
257
208
154
79
16
0
0
0
0
0
0
0
0
0
0
0
0
4
50
139
220
278
309
311
279
211
110
47
12
0
0
0
0
0
0
0
0
0
0
0
0
1
20
58
107
137
147
148
138
121
83
37
7
0
0
0
0
0
0
0
0
0
0
0
0
0
5
20
40
59
60
75
107
115
101
49
10
0
0
0
0
0
0
0
0
0
0
0
0
3
36
85
131
168
200
204
187
157
113
51
9
0
0
0
0
0
0
0
0
0
0
0
0
2
30
79
131
175
196
171
132
112
69
23
2
0
0
0
0
0
0
0
0
0
0
0
0
1
11
24
39
59
76
83
97
94
73
34
5
0
0
0
0
0
0
0
0
0
0
0
0
1
24
68
113
138
159
166
164
150
119
62
9
0
0
0
0
0
0
0
0
0
0
0
0
2
42
128
216
280
315
320
296
242
159
68
8
0
0
0
0
0
0
0
0
0
0
0
0
2
39
124
203
258
301
318
298
244
162
69
8
0
0
0
0
0
0
0
0
0
0
0
0
0
18
64
99
117
135
158
162
148
107
48
5
0
0
0
0
0
0
0
0
0
0
0
0
0
11
31
60
91
122
133
156
156
108
47
4
0
0
0
0
0
0
0
0
0
0
0
0
1
18
55
98
135
160
180
168
131
95
40
4
0
0
0
0
0
0
0
0
0
0
0
0
0
11
35
51
68
81
85
88
70
48
21
2
0
0
0
0
0
0
0
0
0
0
0
0
0
9
36
64
79
60
49
41
30
17
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
13
26
40
44
43
38
29
17
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
22
40
54
52
44
37
35
20
8
1
0
0
0
0
0
0
0
0
0
0
0
0
0
4
19
42
63
78
81
71
72
44
17
1
0
0
0
0
0
0
0
0
0
0
0
0
0
9
33
68
85
103
132
138
118
72
21
1
0
0
0
0
0
0
0
0
0
0
0
0
0
2
11
19
26
31
31
25
17
11
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
6
14
19
23
26
24
19
11
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
7
16
21
23
24
19
12
6
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
11
21
40
56
70
62
44
21
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
13
27
38
33
36
35
24
11
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
23
51
80
102
118
112
87
46
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
15
23
29
32
27
22
11
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
6
16
25
32
40
31
19
8
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
11
27
41
53
48
45
31
15
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
44
97
138
137
120
98
58
29
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
38
82
108
119
125
102
84
48
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
20
41
53
50
45
43
36
16
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
40
109
159
170
167
106
56
22
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
30
87
132
154
165
124
91
37
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
42
108
168
193
176
151
108
43
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
37
108
163
153
112
83
55
24
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
10
25
36
38
40
33
19
7
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
12
45
107
150
169
150
109
43
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
25
88
138
162
152
126
93
35
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
41
81
90
75
66
51
30
12
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
18
38
53
61
61
43
19
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
3
6
8
19
14
9
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
17
22
26
27
20
13
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
31
59
92
88
65
37
15
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
12
51
89
118
123
105
66
24
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
2
7
16
20
26
23
16
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
43
79
108
114
92
58
16
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
15
70
128
164
166
145
96
34
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
17
61
105
133
139
126
68
13
0
0
0
0
0
1
1
0
0
0
0
0
0
0
0
0
5
29
53
80
129
131
81
24
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
41
39
39
30
16
6
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
6
13
20
26
42
32
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
14
22
22
20
21
15
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
39
56
81
62
48
22
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
10
10
23
61
71
49
8
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
17
32
40
28
21
10
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
29
45
32
19
9
5
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
9
16
20
18
13
7
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
29
59
88
95
77
41
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
31
81
92
84
61
33
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
55
110
135
128
91
51
13
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
32
89
134
143
113
62
12
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
9
18
30
40
35
21
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
50
112
151
157
132
76
15
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
50
112
152
157
127
67
14
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
26
56
71
62
43
23
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
12
15
19
14
6
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
14
28
37
32
15
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
41
100
142
149
124
67
11
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
30
72
109
120
96
46
7
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
18
60
87
93
79
45
9
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
16
41
58
57
44
17
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
15
41
63
68
55
26
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
9
10
9
5
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
32
57
61
41
13
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8
28
36
29
17
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
11
18
22
17
10
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
30
57
69
51
22
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
13
41
62
60
39
17
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
10
18
24
21
11
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
37
68
83
78
44
6
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
27
53
55
38
17
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
9
14
16
13
6
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
8
15
18
13
5
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
33
58
59
47
23
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
4
16
22
21
16
8
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
7
13
16
14
7
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
6
12
17
10
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
34
68
83
74
39
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
13
52
76
64
38
17
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
11
33
34
40
48
26
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
5
11
16
17
11
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
11
33
46
53
29
15
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
14
48
87
72
43
19
3
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
9
40
57
57
47
19
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
6
20
32
34
28
18
5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
12
20
22
18
9
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
6
11
14
14
10
3
0
0
0
0
0
0
0
0
0
