20
1640
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
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
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
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
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
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
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
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-2
-2
-2
-2
-2
-2
-2
-3
-3
-3
-3
-3
-3
-3
-4
-4
-4
-4
-4
-4
-5
-5
-5
-5
-5
-5
-6
-6
-6
-6
-6
-6
-7
-7
-7
-7
-7
-8
-8
-8
-8
-8
-8
-9
-9
-9
-9
-10
-10
-10
-10
-10
-11
-11
-11
-11
-11
-12
-12
-12
-12
-13
-13
-13
-13
-14
-14
-14
-14
-15
-15
-15
-15
-15
-16
-16
-16
-16
-17
-17
-17
-18
-18
-18
-18
-19
-19
-19
-19
-20
-20
-20
-20
-21
-21
-21
-21
-22
-22
-22
-23
-23
-23
-23
-24
-24
-24
-25
-25
-25
-25
-26
-26
-26
-27
-27
-27
-28
-28
-28
-29
-29
-29
-29
-30
-30
-30
-31
-31
-31
-32
-32
-32
-33
-33
-33
-34
-34
-34
-35
-35
-35
-36
-36
-36
-36
-37
-37
-37
-38
-38
-38
-38
-39
-39
-39
-39
-39
-40
-40
-40
-40
-41
-41
-41
-41
-42
-42
-42
-42
-42
-43
-43
-43
-43
-43
-43
-44
-44
-44
-44
-44
-45
-45
-45
-46
-46
-46
-47
-47
-47
-47
-48
-48
-48
-48
-48
-48
-48
-49
-49
-50
-50
-51
-51
-52
-52
-53
-54
-55
-55
-56
-56
-57
-57
-58
-58
-58
-58
-58
-58
-59
-59
-59
-59
-60
-60
-60
-61
-61
-61
-61
-61
-61
-61
-61
-61
-61
-60
-60
-60
-59
-59
-58
-58
-57
-56
-56
-55
-54
-54
-53
-52
-52
-51
-50
-49
-48
-47
-46
-45
-43
-42
-41
-39
-38
-36
-35
-34
-33
-32
-31
-30
-30
-29
-28
-28
-27
-27
-27
-27
-27
-27
-27
-27
-26
-26
-26
-26
-26
-27
-27
-28
-28
-29
-29
-30
-31
-32
-32
-32
-31
-31
-29
-28
-27
-25
-24
-23
-22
-21
-20
-20
-19
-19
-18
-18
-17
-17
-17
-17
-16
-16
-15
-15
-14
-12
-11
-9
-7
-5
-3
-2
0
2
3
4
5
5
5
5
5
5
5
4
3
2
1
-1
-2
-3
-4
-5
-7
-8
-10
-11
-12
-13
-13
-14
-14
-15
-15
-16
-16
-16
-16
-16
-16
-16
-16
-15
-15
-14
-13
-12
-11
-10
-9
-8
-7
-7
-7
-7
-6
-6
-5
-5
-5
-4
-4
-4
-3
-2
-1
0
2
3
5
5
6
7
7
6
6
5
4
2
1
0
0
0
0
1
1
1
2
2
2
2
3
4
4
4
4
4
4
4
5
5
7
8
10
12
15
17
20
23
27
30
33
36
38
39
40
41
42
42
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
44
45
47
49
51
54
57
59
61
63
65
68
71
74
77
81
84
87
89
91
93
94
94
95
95
95
95
95
95
95
94
94
93
92
91
90
89
89
89
89
90
91
92
93
94
95
96
99
101
103
105
106
107
108
108
109
110
111
112
113
113
114
114
114
114
114
113
111
109
108
106
105
103
102
100
99
97
95
93
92
91
91
92
94
97
101
106
111
116
121
126
131
136
140
143
146
147
149
149
148
147
146
144
141
139
136
132
129
126
122
118
113
108
103
97
90
84
78
72
67
63
59
56
54
52
52
51
51
50
50
49
49
50
51
52
54
56
59
62
67
73
80
87
96
104
112
120
128
137
146
154
163
170
178
184
190
197
203
209
216
222
228
232
236
238
238
238
236
233
230
226
221
217
212
208
204
201
198
196
194
194
195
196
198
201
205
209
213
217
222
227
231
236
241
246
251
255
259
262
264
265
265
264
263
261
259
257
254
252
250
248
246
245
243
241
240
238
237
235
233
231
229
226
223
219
214
208
201
192
183
173
164
154
146
138
132
126
120
114
108
103
98
94
90
86
82
78
75
72
68
65
61
57
53
49
45
39
33
25
17
9
2
-5
-11
-15
-17
-19
-19
-19
-18
-16
-14
-13
-11
-8
-6
-4
-2
0
1
2
2
1
1
-1
-2
-3
-3
-2
-1
0
2
4
6
8
11
14
18
23
29
35
41
47
52
57
61
64
67
68
70
71
72
73
74
74
73
72
70
68
65
62
59
55
52
48
43
39
34
29
23
17
10
4
-1
-6
-10
-12
-14
-15
-14
-13
-10
-7
-3
2
7
13
19
25
32
38
45
51
58
64
70
75
81
86
90
93
93
92
89
83
74
64
52
39
27
14
2
-10
-22
-34
-46
-58
-70
-81
-90
-98
-104
-110
-115
-120
-125
-130
-135
-140
-144
-147
-149
-150
-150
-150
-149
-147
-145
-144
-142
-142
-141
-141
-141
-140
-138
-135
-130
-125
-119
-113
-106
-99
-91
-84
-78
-72
-67
-63
-60
-58
-58
-60
-63
-68
-73
-79
-85
-92
-99
-106
-113
-121
-129
-138
-147
-156
-166
-176
-186
-196
-205
-215
-224
-233
-242
-251
-260
-270
-279
-288
-295
-302
-307
-311
-313
-314
-314
-313
-312
-310
-307
-305
-302
-299
-297
-295
-292
-290
-289
-288
-289
-290
-293
-296
-301
-307
-313
-320
-327
-335
-343
-352
-360
-368
-375
-381
-387
-391
-394
-397
-399
-401
-402
-403
-403
-403
-402
-399
-396
-391
-386
-381
-375
-369
-364
-359
-354
-349
-344
-339
-333
-327
-321
-315
-309
-303
-297
-292
-286
-280
-274
-267
-260
-254
-247
-239
-232
-224
-216
-207
-199
-190
-181
-173
-164
-155
-145
-135
-125
-114
-104
-94
-86
-78
-72
-66
-60
-55
-50
-46
-41
-36
-32
-27
-22
-17
-12
-6
0
6
12
19
26
33
40
47
53
59
65
70
75
79
84
89
92
96
98
100
100
101
100
98
96
93
89
86
82
78
75
72
69
65
62
57
52
46
40
33
26
20
14
10
6
4
4
4
4
5
6
7
7
7
5
4
1
-1
-4
-7
-9
-11
-13
-16
-17
-19
-21
-22
-24
-27
-31
-35
-42
-49
-57
-65
-74
-82
-89
-96
-102
-107
-111
-115
-118
-119
-120
-119
-118
-116
-115
-113
-112
-110
-108
-105
-103
-101
-99
-97
-96
-94
-92
-90
-87
-85
-82
-80
-78
-75
-73
-70
-66
-62
-58
-53
-47
-41
-35
-29
-23
-18
-14
-11
-10
-11
-13
-16
-20
-25
-30
-35
-40
-45
-50
-54
-58
-62
-65
-67
-68
-68
-67
-65
-61
-56
-50
-42
-33
-24
-13
-2
9
20
31
41
51
61
71
81
90
100
110
119
127
134
140
145
149
151
152
151
150
147
145
142
140
139
139
141
144
149
155
163
171
179
186
193
198
203
207
210
213
216
218
220
222
224
226
227
228
229
230
230
229
227
222
215
207
197
185
173
160
147
135
123
112
102
94
87
81
77
73
71
69
68
68
69
70
72
75
77
80
83
86
89
92
96
99
103
106
110
113
116
119
122
124
127
129
131
134
137
140
143
147
152
156
161
165
169
173
176
180
183
186
188
190
192
194
196
197
198
199
200
201
201
201
200
199
197
194
192
189
186
184
181
179
178
178
179
180
182
183
184
184
183
181
177
173
169
165
160
155
148
142
134
126
118
109
100
90
80
69
57
46
35
24
13
2
-9
-21
-32
-43
-53
-63
-72
-82
-91
-101
-111
-122
-133
-145
-157
-170
-182
-194
-205
-216
-226
-235
-243
-250
-257
-263
-268
-273
-276
-278
-279
-279
-278
-276
-273
-270
-267
-262
-256
-250
-243
-235
-226
-217
-207
-196
-185
-172
-159
-144
-130
-115
-100
-85
-70
-55
-41
-27
-13
0
13
26
37
47
56
64
71
77
82
86
91
96
102
107
113
118
123
127
132
137
141
146
150
155
159
165
171
177
183
189
195
200
205
208
211
214
216
218
219
219
219
218
217
215
212
209
205
200
194
188
181
174
166
158
150
141
133
124
116
107
99
90
82
75
69
63
59
55
52
51
50
49
48
47
45
43
40
35
30
24
18
12
6
0
-6
-12
-17
-22
-26
-30
-34
-38
-43
-48
-54
-59
-65
-72
-78
-85
-92
-99
-106
-112
-119
-125
-130
-135
-140
-145
-149
-153
-157
-160
-164
-166
-168
-169
-168
-167
-164
-161
-158
-154
-150
-147
-142
-138
-132
-127
-121
-115
-110
-105
-100
-95
-91
-87
-84
-82
-79
-78
-76
-76
-78
-80
-84
-89
-94
-98
-101
-102
-101
-97
-91
-84
-75
-66
-57
-49
-43
-39
-35
-33
-32
-31
-30
-29
-28
-26
-23
-18
-11
-3
7
18
29
41
54
67
79
91
102
111
117
120
119
116
109
100
90
80
69
59
49
39
29
19
9
-1
-9
-16
-21
-24
-25
-23
-20
-15
-10
-6
-3
-1
-1
-4
-10
-17
-27
-38
-48
-56
-62
-65
-63
-57
-47
-32
-16
1
17
29
38
43
44
42
40
38
38
40
46
55
66
78
90
99
105
106
103
96
86
73
58
42
25
8
-9
-24
-39
-52
-64
-76
-86
-96
-105
-114
-121
-128
-132
-136
-139
-142
-146
-150
-155
-161
-168
-178
-190
-205
-222
-238
-253
-264
-272
-275
-275
-272
-268
-264
-261
-258
-257
-257
-259
-261
-263
-263
-262
-260
-255
-247
-239
-229
-219
-210
-201
-194
-189
-185
-183
-182
-182
-183
-184
-185
-183
-179
-172
-163
-151
-140
-127
-115
-102
-88
-74
-60
-47
-36
-26
-19
-13
-9
-6
-3
0
4
9
16
24
32
40
49
56
61
65
68
70
72
74
76
78
81
85
90
97
106
115
124
132
139
145
150
154
156
159
161
164
168
171
175
179
182
186
190
195
200
206
213
220
227
233
238
241
242
241
237
231
222
210
195
178
160
142
126
112
100
91
83
75
68
61
54
46
38
31
25
20
15
10
3
-5
-13
-22
-30
-38
-46
-54
-61
-68
-74
-78
-79
-77
-72
-64
-53
-40
-25
-9
9
27
46
65
85
105
126
147
168
188
208
228
246
262
277
291
304
317
330
342
354
365
374
382
390
397
403
409
415
420
425
429
432
435
437
437
436
433
429
425
420
415
409
402
393
384
375
365
356
347
337
327
317
307
296
285
274
263
251
239
227
215
204
192
182
170
158
146
132
118
104
90
75
60
45
29
12
-5
-21
-38
-53
-68
-82
-95
-107
-118
-128
-138
-146
-154
-159
-164
-166
-167
-166
-163
-160
-156
-151
-147
-142
-138
-134
-131
-128
-126
-123
-120
-116
-112
-108
-102
-95
-87
-77
-65
-53
-40
-27
-13
1
16
32
48
65
82
100
117
135
151
167
181
194
205
216
227
237
247
257
265
271
276
278
279
278
275
271
267
262
257
252
247
243
238
232
225
217
208
197
183
167
148
126
104
81
58
37
16
-2
-17
-31
-44
-55
-65
-75
-84
-93
-101
-106
-109
-110
-108
-105
-100
-93
-86
-76
-65
-53
-39
-26
-12
0
12
21
29
34
36
36
34
30
25
18
10
1
-8
-18
-29
-41
-54
-68
-83
-99
-115
-131
-147
-161
-174
-185
-195
-204
-212
-220
-227
-233
-237
-240
-242
-242
-241
-239
-236
-232
-227
-222
-217
-211
-206
-201
-194
-187
-178
-168
-156
-141
-126
-110
-93
-75
-57
-39
-21
-5
9
22
33
43
51
58
63
66
68
69
69
68
67
66
65
66
68
71
76
82
89
97
104
112
120
127
135
141
148
156
164
173
183
194
205
215
225
233
241
247
254
260
268
276
284
293
301
308
316
323
330
336
343
349
355
362
369
378
388
399
408
417
426
433
439
446
451
455
457
457
454
449
441
432
421
408
395
380
366
351
335
318
299
279
257
233
207
180
152
123
94
65
35
5
-26
-58
-92
-126
-161
-196
-231
-264
-298
-330
-361
-390
-418
-444
-467
-487
-505
-520
-533
-542
-550
-554
-556
-555
-552
-548
-542
-535
-529
-524
-520
-519
-519
-522
-526
-532
-540
-548
-558
-567
-575
-581
-583
-583
-578
-569
-556
-539
-518
-494
-469
-442
-413
-384
-355
-325
-295
-266
-239
-213
-191
-171
-154
-140
-129
-119
-110
-101
-93
-84
-74
-64
-52
-38
-22
-5
14
35
57
81
105
130
155
180
205
228
249
269
288
304
318
330
340
348
354
358
361
364
365
367
367
367
366
365
364
364
363
363
362
362
361
359
358
358
358
359
361
364
367
370
373
374
372
368
360
349
334
315
294
269
241
211
177
141
101
60
15
-32
-81
-130
-181
-232
-283
-332
-381
-429
-474
-517
-558
-595
-628
-657
-682
-703
-719
-730
-738
-742
-742
-740
-735
-728
-720
-711
-702
-693
-686
-681
-678
-677
-680
-686
-694
-704
-717
-731
-747
-763
-779
-796
-812
-827
-841
-854
-865
-874
-882
-890
-896
-901
-906
-909
-911
-911
-910
-907
-904
-899
-893
-886
-878
-869
-858
-846
-834
-821
-807
-793
-779
-764
-750
-735
-721
-706
-691
-675
-660
-644
-627
-611
-593
-575
-556
-536
-515
-494
-472
-449
-427
-404
-380
-356
-330
-304
-277
-249
-221
-194
-166
-139
-113
-87
-61
-36
-11
15
42
70
98
127
156
186
215
245
274
301
328
352
375
395
414
431
446
460
473
485
497
510
522
535
549
563
578
593
607
621
633
645
655
663
670
675
679
680
680
677
673
667
659
651
642
633
624
614
604
593
582
569
557
543
530
516
502
487
472
455
438
420
401
380
360
338
317
296
276
256
237
220
203
188
174
160
147
134
122
110
97
85
72
58
44
30
15
0
-15
-29
-43
-56
-67
-76
-84
-89
-93
-94
-94
-92
-87
-81
-72
-60
-46
-30
-12
8
31
54
79
104
130
156
182
208
232
256
278
299
319
338
356
373
389
405
420
434
448
461
473
484
495
505
515
524
531
539
545
552
559
566
575
584
594
606
618
630
642
654
666
677
688
698
708
717
726
734
742
749
755
761
765
769
773
775
776
777
776
773
770
766
760
755
748
742
735
728
722
717
712
708
706
704
702
701
700
700
699
700
700
701
702
702
704
706
709
713
718
723
730
737
745
752
760
767
773
778
782
785
786
786
784
781
777
772
765
758
750
740
730
719
708
696
684
672
660
647
633
620
605
590
573
556
539
521
504
486
470
454
439
425
412
401
390
381
373
366
361
356
352
350
348
347
346
346
346
346
346
346
345
345
344
343
342
342
341
340
339
337
335
332
329
324
318
311
303
294
285
274
263
250
236
222
206
189
171
153
133
112
91
69
47
25
2
-21
-44
-67
-91
-114
-138
-161
-185
-208
-231
-254
-277
-301
-324
-348
-372
-397
-421
-446
-470
-494
-518
-542
-565
-589
-613
-638
-663
-689
-714
-740
-766
-791
-817
-842
-866
-891
-916
-940
-965
-990
-1014
-1039
-1063
-1086
-1108
-1130
-1151
-1172
-1193
-1214
-1235
-1256
-1278
-1299
-1320
-1341
-1361
-1381
-1401
-1420
-1439
-1458
-1477
-1495
-1512
-1529
-1545
-1560
-1574
-1587
-1599
-1609
-1618
-1626
-1633
-1637
-1640
-1640
-1639
-1635
-1630
-1622
-1613
-1601
-1587
-1571
-1553
-1533
-1511
-1487
-1462
-1436
-1409
-1381
-1352
-1323
-1293
-1263
-1233
-1204
-1174
-1145
-1115
-1086
-1058
-1030
-1002
-976
-950
-925
-902
-880
-859
-838
-819
-802
-785
-770
-756
-743
-730
-719
-708
-699
-689
-681
-673
-665
-658
-652
-645
-640
-635
-631
-627
-625
-624
-623
-623
-624
-626
-628
-630
-634
-638
-644
-651
-658
-667
-677
-688
-699
-711
-723
-735
-747
-758
-769
-779
-789
-798
-806
-814
-820
-825
-830
-833
-835
-836
-835
-834
-830
-826
-820
-814
-805
-796
-785
-772
-757
-740
-722
-701
-678
-653
-627
-598
-567
-535
-500
-464
-427
-388
-347
-306
-263
-219
-175
-129
-83
-37
10
57
105
152
200
248
296
344
393
440
488
534
579
624
667
710
750
790
827
863
897
930
960
989
1016
1041
1065
1087
1107
1126
1143
1159
1173
1187
1199
1210
1221
1231
1240
1248
1256
1263
1270
1276
1283
1289
1295
1302
1308
1313
1319
1324
1329
1333
1337
1341
1344
1346
1348
1350
1351
1351
1351
1351
1349
1347
1344
1339
1334
1329
1322
1315
1307
1298
1288
1278
1266
1254
1240
1227
1212
1198
1182
1167
1151
1134
1117
1099
1081
1063
1044
1026
1008
989
972
954
938
922
908
894
881
870
860
851
842
835
828
821
814
808
801
793
785
777
768
759
750
741
731
720
709
697
684
671
657
643
628
612
595
578
561
544
526
509
492
476
461
446
433
421
409
399
389
380
372
364
357
350
344
338
332
327
322
317
313
308
303
298
292
286
280
273
266
259
251
242
232
221
209
196
182
167
151
135
118
101
84
66
49
30
11
-8
-29
-50
-72
-94
-117
-140
-163
-187
-210
-233
-256
-279
-302
-325
-348
-370
-393
-416
-438
-460
-481
-501
-521
-539
-557
-573
-589
-603
-617
-630
-641
-652
-662
-671
-679
-686
-692
-697
-702
-706
-710
-713
-715
-717
-719
-720
-721
-721
-720
-719
-717
-714
-709
-704
-699
-692
-685
-677
-667
-657
-645
-633
-620
-607
-593
-578
-562
-545
-528
-510
-491
-471
-452
-432
-411
-391
-371
-351
-331
-310
-290
-270
-250
-229
-209
-188
-168
-147
-127
-106
-86
-66
-45
-24
-4
17
38
58
79
100
121
142
162
183
203
222
241
260
279
298
316
333
350
367
382
397
412
425
438
450
461
471
481
489
496
503
509
514
519
523
526
529
532
535
537
538
539
540
539
538
536
534
532
530
528
526
524
521
519
517
514
512
510
509
507
506
505
504
502
501
499
496
493
489
485
481
476
470
465
460
454
449
443
438
432
426
420
415
409
404
399
394
389
385
379
374
368
363
356
350
343
336
328
320
312
303
294
285
275
264
253
243
232
220
209
197
185
172
159
145
131
116
100
83
64
45
24
2
-20
-43
-67
-91
-115
-140
-165
-189
-214
-238
-262
-285
-308
-330
-351
-371
-391
-410
-428
-445
-462
-479
-496
-512
-529
-546
-562
-579
-596
-613
-630
-648
-665
-683
-700
-718
-734
-751
-767
-782
-797
-812
-826
-839
-852
-865
-877
-888
-898
-908
-916
-924
-931
-937
-942
-946
-950
-952
-954
-955
-955
-954
-952
-949
-946
-942
-938
-933
-927
-921
-914
-907
-899
-890
-880
-870
-858
-847
-834
-822
-808
-795
-780
-766
-751
-736
-720
-704
-688
-671
-654
-636
-618
-599
-580
-559
-538
-515
-492
-468
-443
-418
-393
-367
-341
-316
-290
-265
-240
-215
-191
-168
-145
-123
-101
-80
-59
-39
-20
-1
18
36
54
70
86
102
116
130
143
155
167
178
188
199
209
218
228
238
248
259
269
280
292
303
315
327
339
351
364
376
389
402
414
427
439
451
463
474
485
496
506
517
527
537
548
558
568
578
588
597
606
615
624
632
641
649
657
665
673
681
689
696
704
711
717
723
728
733
736
739
742
743
744
744
743
742
740
736
733
728
723
717
710
703
696
688
680
672
664
655
647
638
628
619
608
597
585
572
559
544
529
513
496
478
459
440
420
399
378
355
332
307
282
255
229
201
173
145
117
89
61
33
5
-22
-49
-76
-102
-128
-153
-178
-202
-225
-248
-270
-292
-312
-332
-351
-368
-385
-401
-416
-431
-445
-458
-470
-482
-494
-504
-514
-524
-532
-540
-547
-553
-559
-564
-569
-572
-576
-578
-579
-579
-579
-578
-576
-573
-570
-566
-562
-558
-554
-550
-546
-542
-538
-535
-532
-529
-526
-523
-521
-519
-517
-516
-514
-512
-510
-508
-507
-505
-503
-501
-498
-496
-493
-489
-484
-479
-474
-468
-461
-454
-447
-439
-431
-423
-414
-406
-396
-387
-377
-368
-358
-348
-338
-327
-317
-307
-296
-286
-276
-266
-256
-247
-238
-229
-221
-213
-205
-197
-189
-182
-175
-168
-161
-154
-148
-143
-138
-133
-129
-125
-122
-119
-116
-113
-111
-108
-105
-102
-99
-95
-91
-86
-80
-73
-66
-58
-51
-43
-34
-26
-17
-9
0
9
18
27
35
44
53
62
72
81
91
100
111
121
132
143
154
166
178
191
204
217
230
244
257
271
285
299
312
326
339
352
365
376
388
398
408
418
428
438
447
458
468
478
489
500
510
521
531
541
551
560
570
579
587
595
603
610
616
621
625
628
630
632
632
632
631
629
626
623
618
613
607
600
593
586
579
571
563
556
548
541
533
525
517
508
499
490
480
471
461
451
442
432
422
411
401
390
378
366
354
342
329
316
303
289
275
261
247
233
218
203
188
173
158
144
129
115
100
86
72
57
43
28
14
0
-15
-29
-43
-57
-72
-86
-100
-115
-129
-143
-157
-170
-183
-195
-206
-217
-227
-236
-245
-252
-259
-264
-269
-273
-276
-278
-279
-279
-279
-278
-276
-274
-271
-268
-263
-258
-252
-244
-236
-227
-218
-208
-197
-185
-173
-160
-146
-133
-119
-104
-90
-76
-62
-48
-34
-20
-7
6
19
32
45
57
69
81
93
104
114
124
134
143
152
160
167
174
180
185
190
193
195
197
197
195
193
189
184
178
170
162
153
144
134
123
111
100
87
75
62
48
35
21
7
-8
-22
-37
-52
-66
-81
-95
-109
-123
-137
-150
-163
-175
-186
-196
-205
-214
-221
-228
-233
-238
-242
-245
-248
-250
-251
-252
-253
-253
-253
-252
-251
-249
-247
-245
-242
-238
-234
-230
-225
-220
-215
-209
-204
-198
-192
-186
-180
-174
-167
-160
-153
-146
-137
-129
-120
-110
-101
-90
-80
-69
-58
-48
-37
-26
-16
-5
4
13
22
31
38
46
53
59
65
71
76
80
84
88
91
94
96
98
100
102
104
105
106
106
106
106
105
105
104
103
101
99
97
95
92
89
86
83
80
77
74
71
69
66
63
61
58
55
52
49
46
42
39
35
31
27
22
17
12
7
1
-5
-12
-19
-26
-33
-41
-49
-57
-65
-73
-81
-89
-96
-104
-111
-118
-125
-131
-137
-143
-148
-152
-156
-160
-163
-166
-169
-171
-172
-174
-174
-175
-175
-174
-173
-172
-170
-167
-164
-161
-157
-152
-147
-141
-135
-128
-121
-114
-106
-97
-89
-80
-71
-62
-53
-44
-34
-25
-15
-6
3
13
22
31
40
48
56
65
72
80
87
95
102
108
115
122
128
135
141
147
153
158
163
168
172
176
180
184
187
190
193
196
198
200
201
202
204
204
205
206
207
207
208
208
209
209
208
208
207
205
203
201
198
195
192
188
184
180
175
169
163
157
151
144
137
130
123
116
108
101
95
88
82
76
69
63
57
51
45
38
32
25
18
12
5
-2
-10
-17
-25
-33
-41
-48
-56
-64
-72
-80
-87
-94
-101
-107
-112
-118
-123
-128
-132
-136
-140
-144
-148
-151
-154
-158
-161
-164
-167
-169
-172
-174
-176
-178
-179
-180
-181
-181
-181
-181
-180
-179
-178
-177
-175
-173
-171
-168
-166
-163
-160
-156
-153
-149
-146
-142
-138
-134
-131
-127
-124
-122
-119
-117
-115
-114
-113
-112
-111
-111
-111
-111
-112
-112
-113
-113
-114
-114
-115
-116
-116
-117
-118
-118
-119
-119
-119
-119
-119
-119
-118
-118
-118
-117
-117
-117
-116
-116
-115
-114
-113
-112
-110
-109
-107
-106
-104
-103
-101
-100
-98
-96
-93
-90
-87
-84
-80
-76
-72
-67
-63
-57
-52
-47
-41
-35
-28
-22
-15
-9
-2
4
11
17
23
29
34
39
44
48
53
57
60
64
67
70
73
75
77
79
80
81
82
83
84
84
85
85
86
86
87
88
89
90
91
93
96
98
102
106
110
115
120
126
131
137
143
149
155
160
166
172
177
183
188
194
199
204
209
214
219
224
228
231
235
237
240
241
242
242
242
242
241
240
239
237
235
233
230
227
224
221
217
213
209
205
200
196
191
186
181
177
172
166
161
156
151
145
140
134
129
124
118
113
108
103
97
92
86
80
75
69
63
57
50
44
37
31
24
18
11
5
-1
-7
-13
-18
-24
-29
-34
-39
-44
-49
-53
-57
-61
-65
-68
-72
-75
-78
-81
-84
-87
-90
-93
-95
-98
-100
-102
-104
-106
-108
-109
-110
-111
-112
-112
-112
-112
-112
-111
-111
-110
-109
-108
-108
-107
-105
-104
-102
-99
-97
-93
-89
-85
-80
-75
-69
-63
-57
-50
-44
-37
-30
-23
-15
-8
0
7
15
22
29
37
44
51
58
65
72
78
85
91
97
103
109
114
119
124
129
133
136
140
143
146
149
151
153
155
157
159
161
163
164
166
167
168
170
171
172
174
175
177
179
181
184
186
189
192
196
199
202
206
210
213
217
220
223
225
228
230
231
232
233
234
234
234
234
233
231
230
228
226
223
221
218
215
212
209
205
201
197
193
188
183
178
173
167
162
156
150
143
137
130
123
116
109
101
94
86
78
70
62
54
45
37
28
20
11
3
-5
-13
-22
-29
-37
-45
-52
-59
-66
-72
-79
-85
-91
-97
-102
-108
-114
-119
-125
-131
-137
-143
-150
-156
-162
-169
-175
-181
-187
-193
-199
-204
-210
-214
-219
-223
-227
-230
-233
-236
-238
-240
-241
-242
-242
-242
-241
-240
-238
-236
-233
-230
-227
-223
-219
-214
-209
-204
-199
-194
-189
-184
-179
-174
-170
-166
-162
-158
-155
-153
-150
-148
-147
-146
-145
-144
-144
-144
-144
-144
-145
-145
-146
-147
-148
-149
-149
-150
-150
-150
-150
-150
-150
-149
-149
-148
-147
-146
-144
-142
-139
-136
-133
-129
-125
-120
-116
-111
-106
-100
-94
-89
-83
-76
-70
-63
-57
-50
-43
-36
-30
-23
-16
-9
-2
4
10
16
22
27
32
37
41
45
49
53
56
60
63
66
69
72
75
78
81
85
88
91
95
99
103
108
113
118
124
129
136
142
149
155
162
169
176
183
190
198
205
211
218
225
232
238
244
249
254
259
263
267
270
272
274
276
277
277
277
276
275
274
272
269
266
263
259
255
251
246
241
236
230
224
218
211
204
198
191
184
178
171
165
158
152
145
138
132
125
118
112
105
99
92
85
78
71
63
56
48
40
31
23
14
5
-4
-13
-22
-31
-40
-50
-59
-68
-77
-86
-94
-102
-110
-118
-125
-131
-137
-143
-148
-152
-156
-159
-162
-164
-166
-168
-169
-169
-169
-169
-169
-168
-167
-166
-165
-164
-164
-163
-162
-161
-160
-158
-157
-156
-154
-151
-149
-146
-142
-139
-134
-130
-125
-121
-116
-110
-105
-100
-95
-89
-84
-79
-75
-70
-66
-61
-58
-54
-50
-47
-44
-42
-39
-37
-35
-34
-32
-31
-30
-29
-28
-27
-27
-26
-26
-26
-26
-26
-27
-28
-28
-29
-30
-31
-32
-33
-35
-36
-37
-37
-38
-38
-38
-38
-37
-37
-35
-34
-32
-30
-27
-24
-20
-16
-11
-6
0
6
13
20
28
35
43
52
60
69
77
86
95
104
112
121
130
139
147
155
163
171
179
186
193
200
207
214
220
226
232
237
242
246
250
254
257
260
262
263
265
265
265
264
263
261
259
256
253
249
245
240
235
230
224
218
212
205
198
190
183
174
166
157
148
138
128
118
107
97
86
74
63
51
40
28
16
5
-7
-18
-29
-40
-51
-62
-72
-82
-92
-101
-110
-119
-127
-134
-141
-148
-154
-160
-165
-169
-174
-177
-181
-183
-186
-188
-190
-191
-192
-193
-193
-193
-193
-192
-191
-190
-189
-187
-186
-183
-181
-179
-176
-172
-169
-165
-160
-155
-150
-144
-138
-131
-124
-116
-109
-101
-93
-84
-76
-68
-59
-51
-43
-35
-27
-19
-12
-5
2
9
15
20
26
30
35
39
43
47
50
53
56
58
60
62
63
64
64
64
64
63
61
59
57
54
50
47
42
38
33
28
23
17
12
6
0
-5
-11
-16
-21
-26
-31
-35
-39
-43
-47
-50
-53
-56
-58
-60
-62
-63
-64
-65
-65
-66
-66
-65
-65
-65
-64
-63
-62
-61
-59
-57
-55
-53
-51
-48
-44
-40
-36
-32
-27
-22
-16
-10
-4
2
8
15
22
28
35
42
48
55
61
67
72
78
83
88
92
96
100
104
107
110
113
116
118
121
123
125
127
129
130
132
134
135
137
138
139
140
141
142
143
143
144
144
144
144
143
143
142
140
139
137
135
132
130
127
123
120
116
112
108
104
99
93
87
81
74
67
59
51
43
34
25
16
7
-3
-12
-22
-32
-41
-51
-60
-69
-78
-86
-94
-102
-109
-116
-122
-128
-133
-138
-143
-147
-150
-153
-156
-158
-160
-162
-163
-164
-165
-166
-166
-166
-166
-165
-165
-164
-162
-161
-159
-157
-154
-151
-148
-145
-141
-137
-133
-128
-123
-117
-111
-104
-97
-89
-80
-71
-62
-52
-42
-32
-21
-10
1
11
22
33
43
54
64
74
84
93
102
111
120
127
135
142
148
154
159
163
167
170
172
174
175
176
176
176
175
174
172
170
168
166
163
161
158
155
153
150
148
145
142
140
137
134
131
129
126
123
121
118
115
112
109
106
103
100
97
94
91
88
86
83
80
77
75
72
69
66
62
59
55
51
47
42
38
33
28
23
18
13
8
3
-2
-7
-12
-17
-22
-27
-31
-36
-40
-45
-49
-53
-56
-60
-63
-66
-68
-70
-73
-75
-76
-78
-80
-82
-83
-85
-87
-88
-89
-91
-92
-93
-93
-94
-94
-94
-94
-94
-94
-93
-92
-91
-91
-90
-89
-87
-86
-85
-84
-83
-81
-80
-79
-77
-76
-75
-74
-73
-72
-71
-71
-70
-70
-69
-69
-69
-69
-68
-68
-68
-68
-68
-68
-68
-67
-67
-66
-65
-64
-63
-61
-59
-57
-54
-51
-48
-45
-41
-37
-34
-30
-26
-22
-17
-13
-9
-5
0
4
9
13
18
23
27
32
37
42
46
51
56
61
66
71
76
81
86
91
96
100
105
109
113
118
122
126
130
134
138
142
145
149
152
156
159
162
166
168
171
174
176
177
179
180
181
181
181
181
181
180
179
178
177
176
174
173
171
169
166
164
161
158
155
151
147
143
139
135
130
125
121
116
110
105
100
94
88
81
74
67
60
52
43
35
26
17
8
-1
-10
-19
-28
-37
-46
-54
-62
-70
-78
-85
-92
-99
-105
-110
-116
-121
-125
-130
-134
-138
-141
-144
-147
-149
-151
-152
-154
-154
-155
-155
-155
-154
-153
-151
-150
-148
-145
-143
-140
-137
-134
-131
-127
-124
-120
-116
-113
-109
-105
-101
-97
-93
-89
-85
-81
-76
-72
-68
-63
-59
-54
-49
-44
-39
-34
-28
-23
-18
-12
-6
-1
5
10
15
21
26
31
36
40
45
50
54
59
63
68
72
76
81
85
89
94
98
102
107
111
116
120
125
129
134
139
144
149
154
160
165
171
176
181
186
190
195
199
202
206
209
212
214
217
219
220
222
223
223
224
224
224
224
224
223
222
221
220
218
216
214
211
209
206
202
199
195
192
188
183
179
175
171
166
162
157
153
148
143
139
134
129
125
120
116
111
107
102
98
93
89
85
80
76
72
68
64
59
55
51
47
43
40
36
32
28
24
21
17
13
9
4
0
-5
-10
-15
-21
-27
-33
-39
-45
-51
-57
-63
-70
-76
-83
-89
-96
-102
-109
-116
-122
-129
-135
-142
-148
-154
-161
-167
-173
-179
-184
-190
-195
-200
-205
-209
-213
-217
-220
-222
-225
-227
-228
-229
-230
-230
-229
-229
-228
-226
-225
-223
-221
-219
-216
-213
-210
-207
-204
-201
-197
-194
-190
-186
-182
-178
-174
-170
-166
-162
-158
-153
-149
-145
-141
-136
-132
-128
-124
-120
-116
-112
-108
-105
-101
-97
-93
-89
-86
-82
-78
-74
-70
-65
-61
-56
-51
-46
-41
-36
-31
-26
-21
-16
-10
-5
-1
4
9
13
18
22
26
30
35
39
43
47
51
55
58
62
66
69
72
75
78
81
84
87
90
92
95
97
100
102
104
106
108
109
111
112
113
114
115
115
116
117
117
117
117
118
118
118
117
117
117
116
115
115
113
112
111
109
107
105
103
101
99
96
93
90
87
83
79
75
70
65
60
54
49
43
36
30
24
17
11
4
-2
-8
-14
-19
-25
-30
-35
-40
-45
-49
-54
-58
-62
-65
-69
-72
-75
-78
-81
-84
-86
-88
-90
-91
-93
-94
-94
-95
-94
-94
-94
-93
-92
-90
-89
-87
-85
-83
-81
-79
-77
-74
-72
-69
-66
-63
-61
-58
-55
-52
-48
-45
-41
-38
-34
-29
-25
-20
-15
-10
-4
2
8
15
21
28
35
41
48
55
62
68
75
81
88
94
99
105
110
115
120
125
129
132
135
138
140
142
144
144
145
145
144
143
141
139
137
134
131
128
125
121
118
114
110
107
103
99
96
92
88
85
81
78
75
72
68
65
63
60
57
55
52
50
48
45
43
41
39
37
35
33
31
29
27
26
24
23
22
20
19
18
17
17
16
15
15
14
13
13
12
11
10
9
9
8
7
6
5
4
4
3
2
2
2
2
2
2
3
4
5
6
8
10
12
13
16
18
20
22
24
26
29
31
33
35
37
39
41
43
45
47
49
50
52
54
56
58
59
61
63
64
66
67
69
70
71
72
72
73
74
74
75
75
76
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
99
100
100
100
100
101
100
100
100
99
98
98
97
96
94
93
92
91
90
89
89
88
88
87
87
87
86
86
86
87
87
87
87
87
87
87
87
86
86
85
84
84
83
81
80
79
77
76
74
72
70
67
65
62
59
56
53
50
47
44
41
38
35
32
29
27
24
22
19
17
15
13
11
10
8
7
6
5
5
4
4
4
4
4
5
5
6
7
9
11
12
14
17
19
22
24
27
30
33
37
40
44
48
52
56
60
64
69
73
77
81
86
90
94
98
102
105
108
111
114
116
119
120
122
123
125
126
126
127
127
126
126
124
123
121
119
116
113
110
106
103
99
95
91
87
82
78
74
70
66
62
58
54
50
46
41
37
33
29
25
21
17
13
10
6
2
-1
-4
-8
-11
-14
-17
-21
-24
-27
-31
-35
-39
-43
-47
-51
-56
-61
-66
-71
-76
-81
-86
-91
-96
-101
-107
-112
-117
-121
-126
-131
-136
-140
-145
-149
-153
-157
-161
-165
-168
-172
-175
-179
-182
-185
-188
-191
-193
-196
-199
-201
-203
-206
-208
-209
-211
-213
-214
-215
-216
-216
-217
-217
-217
-217
-216
-215
-214
-213
-211
-209
-207
-204
-201
-198
-194
-191
-187
-183
-179
-174
-170
-165
-161
-156
-151
-146
-141
-136
-131
-126
-122
-117
-112
-108
-104
-100
-96
-92
-88
-85
-81
-78
-75
-72
-69
-66
-63
-60
-57
-54
-51
-48
-46
-43
-40
-38
-36
-34
-32
-30
-28
-27
-26
-25
-24
-23
-22
-22
-21
-20
-20
-19
-18
-18
-17
-16
-15
-14
-13
-12
-11
-9
-8
-6
-4
-2
0
2
4
6
9
11
14
16
19
22
25
28
32
35
38
42
45
48
51
55
58
61
64
67
69
72
75
78
81
84
88
91
94
97
100
103
106
109
112
115
117
120
122
125
127
129
131
133
135
137
138
140
141
142
143
144
144
145
145
145
144
144
143
142
141
139
137
135
133
131
128
126
123
120
117
114
112
109
106
103
100
97
95
92
89
87
84
82
80
78
76
74
72
71
70
70
69
69
69
69
70
70
70
71
72
72
73
73
74
74
75
75
75
75
74
74
73
72
71
70
69
68
67
65
64
62
60
58
57
55
53
51
49
47
45
43
42
40
39
37
36
35
34
33
33
32
32
32
32
32
32
32
33
33
34
35
36
36
37
38
38
39
39
40
40
40
40
40
40
40
39
39
39
38
37
36
35
34
33
31
30
28
26
24
22
20
18
16
14
12
10
8
6
4
2
0
-1
-3
-4
-6
-7
-8
-9
-10
-11
-13
-14
-15
-16
-16
-17
-18
-19
-20
-21
-21
-22
-23
-24
-25
-26
-26
-27
-28
-28
-29
-29
-29
-29
-28
-28
-27
-26
-25
-23
-22
-20
-18
-16
-13
-10
-7
-4
-1
2
6
10
14
18
22
27
31
36
41
46
52
57
63
69
75
81
88
94
101
108
115
121
128
135
142
149
156
163
170
176
183
189
195
201
207
212
217
221
226
230
233
236
239
241
243
244
245
246
246
245
245
244
242
240
238
236
233
230
227
224
221
218
214
211
207
204
201
197
194
190
186
183
179
176
172
168
164
161
157
153
150
146
143
139
135
132
128
125
121
117
114
110
107
103
100
96
93
89
86
82
79
76
72
70
67
64
62
59
57
55
52
50
48
46
44
43
41
39
37
36
34
33
31
30
28
27
26
25
23
22
21
20
19
18
17
16
15
13
12
11
10
9
8
6
5
4
3
1
0
-1
-3
-4
-5
-6
-8
-9
-11
-12
-13
-15
-16
-17
-19
-20
-22
-23
-24
-26
-27
-28
-29
-30
-31
-32
-32
-33
-33
-33
-33
-33
-33
-33
-32
-31
-30
-29
-27
-25
-23
-21
-18
-15
-12
-8
-4
0
4
8
13
18
22
27
32
37
41
46
50
55
59
64
68
72
76
79
83
86
89
92
94
97
99
101
103
105
106
107
109
110
110
111
112
113
113
114
114
115
115
115
115
116
116
116
116
116
115
115
115
115
114
114
113
112
111
110
109
108
107
107
106
105
104
103
102
102
101
100
100
99
98
98
97
97
96
96
96
95
95
95
94
94
94
93
93
92
91
91
90
89
88
87
86
86
84
83
82
81
79
77
75
73
71
68
66
63
61
58
55
52
50
47
44
41
39
36
34
31
29
27
25
23
21
19
18
16
15
14
13
12
12
11
11
11
11
11
12
12
13
14
15
16
17
18
19
20
21
23
24
25
26
27
28
30
31
32
34
36
37
39
41
43
45
47
49
51
53
55
57
59
61
63
65
66
67
69
70
71
72
73
74
75
75
76
76
77
77
77
78
78
78
78
78
77
77
77
76
75
74
73
71
69
67
65
62
59
55
51
47
43
38
33
28
23
17
12
6
0
-7
-13
-19
-26
-32
-38
-44
-50
-56
-62
-68
-74
-80
-86
-92
-97
-103
-109
-114
-119
-124
-129
-134
-139
-143
-147
-151
-155
-159
-162
-166
-169
-172
-175
-177
-180
-182
-184
-186
-188
-189
-191
-193
-195
-196
-198
-200
-202
-203
-205
-207
-209
-211
-212
-214
-217
-219
-221
-223
-225
-227
-229
-231
-233
-235
-236
-238
-239
-240
-242
-243
-244
-244
-245
-246
-247
-248
-248
-249
-249
-250
-250
-250
-250
-249
-249
-248
-248
-247
-246
-245
-244
-242
-241
-240
-239
-237
-236
-234
-233
-231
-230
-228
-226
-224
-222
-221
-219
-217
-215
-213
-211
-209
-206
-204
-202
-200
-198
-196
-194
-192
-191
-189
-187
-185
-183
-181
-179
-177
-175
-173
-171
-170
-168
-166
-164
-162
-160
-159
-157
-155
-153
-151
-150
-148
-146
-144
-143
-141
-139
-138
-136
-134
-132
-131
-129
-128
-126
-124
-123
-121
-119
-118
-116
-115
-113
-112
-110
-108
-107
-105
-104
-102
-101
-99
-98
-96
-95
-93
-92
-91
-89
-88
-86
-85
-83
-82
-81
-79
-78
-77
-75
-74
-73
-71
-70
-69
-67
-66
-65
-63
-62
-61
-60
-58
-57
-56
-55
-54
-52
-51
-50
-49
-48
-46
-45
-44
-43
-42
-41
-40
-39
-37
-36
-35
-34
-33
-32
-31
-30
-29
-28
-27
-26
-25
-24
-23
-22
-21
-20
-19
-18
-17
-16
-15
-14
-13
-12
-11
-10
-9
-9
-8
-7
-6
-5
-4
-3
-2
-2
-1
0
1
2
2
3
4
5
6
6
7
8
9
9
10
11
12
12
13
14
15
15
16
17
17
18
19
19
20
21
21
22
23
23
24
24
25
26
26
27
28
28
29
29
30
30
31
32
32
33
33
34
34
35
35
36
36
37
37
38
38
39
39
40
40
41
41
42
42
42
43
43
44
44
45
45
45
46
46
47
47
47
48
48
48
49
49
50
50
50
51
51
51
52
52
52
53
53
53
