0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
0
1
1
1
1
1
1
1
1
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
0
2
1
2
4
2
3
4
2
4
3
1
4
3
2
3
2
2
2
1
1
1
0
0
0
0
-1
0
-1
-1
0
-1
-1
0
-1
0
0
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
0
-1
-1
0
0
-1
0
-1
-1
0
-1
0
0
0
0
0
0
0
0
0
0
0
0
-8
-12
-16
13
-8
-1
30
25
38
46
23
30
38
27
35
32
23
37
41
39
42
32
22
23
15
7
3
-6
-5
-3
-5
-4
-6
-10
-10
-10
-13
-15
-17
-17
-13
-8
-7
-3
-2
1
3
3
2
1
1
2
2
3
3
3
4
4
2
1
-2
-4
-6
-7
-9
-9
-8
-10
-8
-9
-9
-10
-10
-10
-10
-10
-9
-7
-7
-6
-5
-4
-4
-3
-2
-2
-2
-3
-1
-94
-135
-136
-130
219
-7
61
378
272
377
422
161
244
332
254
389
380
307
459
471
415
424
270
170
182
92
46
34
-44
-26
14
-25
-36
-78
-148
-143
-157
-188
-176
-176
-152
-85
-53
-32
-10
-15
-5
11
1
0
7
13
39
60
62
61
51
35
23
0
-29
-48
-64
-69
-66
-73
-79
-83
-90
-96
-103
-115
-121
-122
-116
-103
-91
-82
-69
-58
-49
-42
-42
-41
-39
-35
-28
-24
-20
-315
-439
-435
-306
-192
926
173
293
1164
715
946
1057
275
639
1037
898
1373
1361
1099
1497
1427
1136
1083
596
322
440
247
176
189
-32
7
69
-142
-254
-423
-632
-582
-558
-586
-484
-433
-342
-159
-113
-116
-100
-137
-103
-32
-23
21
85
129
206
235
186
138
68
1
-36
-95
-151
-171
-184
-186
-188
-229
-275
-313
-351
-373
-389
-402
-388
-353
-313
-269
-238
-222
-203
-188
-176
-163
-153
-138
-109
-82
-59
-44
-344
-475
-477
-357
-155
-31
1028
168
167
930
412
625
775
90
568
1062
965
1420
1350
1008
1314
1170
829
781
359
183
395
270
216
214
-44
-69
-77
-342
-473
-608
-744
-614
-526
-518
-408
-371
-322
-199
-212
-251
-233
-238
-157
-41
-1
56
114
132
164
140
52
-10
-66
-106
-108
-134
-168
-176
-197
-222
-256
-324
-380
-411
-429
-423
-408
-393
-362
-324
-295
-272
-266
-263
-249
-229
-205
-175
-149
-122
-93
-73
-67
-382
-526
-525
-388
-168
64
147
1103
112
-5
691
166
431
682
115
699
1245
1137
1525
1355
918
1158
980
652
665
333
249
519
392
291
218
-115
-198
-242
-509
-598
-657
-709
-517
-409
-419
-351
-364
-363
-277
-303
-322
-254
-195
-66
68
97
124
137
108
97
49
-36
-71
-85
-88
-73
-100
-148
-184
-237
-290
-340
-404
-438
-433
-417
-387
-363
-352
-333
-316
-308
-299
-293
-279
-242
-200
-161
-127
-106
-91
-83
-86
-412
-550
-538
-379
-135
108
274
232
1031
-94
-276
438
0
394
778
320
951
1468
1257
1514
1231
733
972
843
598
708
462
421
672
467
267
105
-278
-366
-377
-579
-588
-570
-577
-391
-332
-416
-411
-461
-463
-353
-332
-288
-158
-66
59
152
121
93
73
28
26
7
-37
-28
-19
-26
-40
-110
-198
-258
-321
-366
-393
-420
-416
-388
-368
-353
-353
-368
-365
-353
-339
-311
-280
-239
-188
-145
-119
-106
-108
-109
-109
-434
-559
-523
-345
-86
161
310
321
114
783
-390
-526
312
27
554
1017
567
1137
1535
1180
1323
1001
545
883
868
716
879
638
547
698
380
89
-97
-441
-451
-374
-503
-469
-443
-483
-367
-390
-529
-532
-544
-481
-303
-229
-157
-28
32
94
121
45
6
9
9
50
63
33
33
10
-46
-110
-209
-299
-336
-358
-366
-363
-375
-373
-364
-374
-389
-402
-410
-385
-342
-300
-254
-214
-179
-146
-133
-130
-131
-131
-119
-433
-542
-494
-304
-47
187
315
296
145
-163
492
-608
-601
404
244
813
1235
684
1129
1409
977
1114
865
534
997
1055
904
1014
682
486
546
172
-112
-228
-465
-378
-249
-383
-391
-429
-538
-477
-522
-636
-571
-496
-366
-161
-103
-79
-19
32
28
2
0
18
50
100
139
120
49
-23
-74
-139
-224
-291
-311
-306
-307
-323
-350
-383
-414
-431
-433
-429
-411
-369
-311
-260
-230
-214
-200
-184
-171
-157
-137
-115
-91
-407
-517
-469
-283
-31
194
303
263
92
-142
-279
-150
-194
-314
102
897
1205
893
706
950
1139
985
820
897
1061
1158
1196
1103
796
449
295
245
72
-173
-253
-165
-132
-262
-444
-572
-641
-655
-615
-556
-499
-402
-247
-128
-120
-168
-160
-88
-15
34
79
131
175
186
151
70
-26
-90
-112
-128
-165
-207
-233
-261
-311
-380
-439
-467
-461
-434
-404
-378
-356
-329
-306
-294
-286
-264
-222
-172
-130
-100
-84
-77
-79
-443
-567
-493
-252
47
277
344
229
-15
-288
-494
-480
-132
2
-22
409
1080
1142
636
432
766
1056
1036
1040
1209
1310
1256
1118
844
454
224
274
328
167
-37
-91
-121
-301
-553
-703
-717
-641
-518
-415
-386
-383
-330
-264
-260
-276
-201
-39
105
170
179
163
133
99
58
12
-22
-22
-6
-31
-116
-219
-296
-349
-395
-429
-436
-419
-393
-381
-391
-410
-414
-386
-341
-294
-249
-198
-151
-126
-122
-126
-123
-107
-87
-448
-544
-430
-161
128
300
282
91
-185
-431
-552
-510
-250
247
320
122
392
876
753
292
409
1036
1394
1344
1291
1294
1175
1001
862
654
431
430
575
482
112
-187
-284
-377
-542
-634
-597
-510
-441
-418
-479
-559
-526
-379
-252
-184
-87
54
142
130
80
56
74
118
155
146
98
46
-9
-98
-212
-290
-309
-305
-320
-357
-399
-435
-458
-470
-469
-446
-394
-327
-279
-260
-250
-229
-199
-168
-136
-102
-69
-48
-50
-465
-578
-440
-128
183
336
266
14
-299
-533
-589
-455
-214
99
484
287
-134
123
662
604
377
808
1491
1609
1310
1117
1029
933
934
955
807
641
647
568
163
-280
-405
-335
-350
-437
-474
-491
-532
-573
-618
-650
-557
-327
-132
-90
-97
-44
19
36
51
112
193
251
246
161
41
-40
-69
-102
-158
-199
-221
-267
-353
-442
-493
-496
-466
-431
-409
-396
-375
-353
-341
-322
-274
-203
-140
-103
-89
-86
-85
-85
-85
-485
-559
-379
-55
229
319
175
-124
-426
-584
-531
-314
-66
76
136
261
-121
-473
100
889
890
714
1131
1531
1309
957
943
1063
1164
1265
1145
756
481
426
229
-136
-275
-145
-119
-323
-545
-670
-719
-674
-579
-517
-444
-291
-172
-201
-258
-173
1
130
187
219
226
202
154
83
25
23
47
8
-110
-228
-301
-357
-409
-435
-432
-419
-420
-445
-476
-474
-423
-355
-301
-255
-210
-176
-160
-151
-129
-90
-51
-31
-38
-483
-573
-380
-35
253
324
143
-191
-501
-626
-514
-255
-5
93
-4
-132
-32
-320
-413
464
1270
1035
708
1052
1311
1075
975
1204
1362
1375
1262
853
393
321
416
227
-53
-91
-103
-356
-653
-760
-709
-579
-445
-426
-487
-452
-335
-285
-256
-99
121
225
199
148
126
141
178
185
150
113
69
-38
-189
-284
-294
-293
-328
-384
-441
-482
-502
-505
-483
-425
-351
-309
-306
-297
-259
-201
-146
-100
-64
-44
-46
-67
-88
-530
-563
-306
62
311
287
5
-369
-617
-608
-372
-77
90
37
-188
-433
-448
-46
-51
12
841
1339
768
385
900
1354
1295
1316
1441
1328
1129
919
565
385
583
621
190
-213
-302
-390
-576
-630
-547
-481
-463
-523
-641
-612
-366
-150
-92
-39
71
118
85
91
172
267
315
259
120
10
-29
-70
-141
-190
-212
-278
-391
-488
-523
-500
-455
-431
-434
-428
-402
-377
-344
-276
-187
-125
-108
-110
-105
-82
-54
-39
-38
-503
-553
-300
70
301
236
-89
-462
-649
-550
-262
7
78
-81
-343
-531
-524
-217
378
263
100
732
1013
450
466
1323
1711
1443
1269
1188
1030
1011
974
723
615
678
373
-212
-414
-273
-280
-427
-514
-582
-636
-627
-615
-549
-312
-95
-113
-194
-105
56
152
214
271
285
250
168
67
33
73
56
-74
-214
-293
-355
-414
-442
-438
-433
-452
-494
-519
-475
-385
-317
-281
-245
-206
-180
-156
-114
-60
-19
-15
-48
-83
-567
-567
-239
167
352
174
-244
-608
-675
-433
-87
105
17
-265
-527
-586
-403
-106
217
554
30
-270
560
1036
679
926
1645
1568
1063
986
1105
1208
1326
1087
577
408
397
52
-245
-124
-61
-349
-646
-747
-707
-553
-428
-443
-423
-282
-233
-266
-125
138
267
235
182
160
185
225
207
151
114
38
-123
-260
-280
-265
-305
-388
-467
-512
-520
-506
-478
-420
-355
-336
-346
-318
-237
-155
-102
-75
-63
-60
-62
-68
-62
-518
-524
-228
143
314
152
-233
-573
-644
-427
-109
70
-9
-268
-509
-565
-399
-126
71
182
354
-170
-318
694
1251
824
908
1490
1391
985
1052
1255
1324
1319
962
426
330
435
165
-143
-107
-137
-459
-712
-720
-610
-458
-395
-488
-501
-334
-221
-197
-49
171
236
168
126
156
226
278
233
129
59
-11
-137
-231
-234
-237
-316
-426
-502
-521
-496
-467
-448
-419
-379
-364
-357
-301
-207
-133
-101
-94
-88
-73
-56
-48
-516
-515
-197
181
341
176
-202
-542
-622
-417
-102
81
-2
-275
-527
-582
-414
-145
46
43
-14
139
-254
-222
890
1402
825
769
1317
1307
1042
1201
1386
1346
1223
824
346
360
547
275
-113
-171
-243
-533
-701
-638
-521
-423
-436
-571
-566
-336
-163
-126
-15
146
174
112
116
195
285
312
219
81
14
-24
-109
-187
-205
-242
-349
-463
-517
-504
-462
-440
-449
-444
-409
-379
-347
-275
-185
-128
-118
-118
-102
-67
-36
-502
-510
-184
216
380
203
-180
-512
-590
-393
-89
87
6
-270
-536
-603
-431
-159
26
16
-154
-229
55
-158
-28
1041
1404
687
596
1234
1366
1192
1333
1407
1249
1086
746
377
471
656
305
-178
-280
-317
-521
-618
-550
-489
-466
-520
-635
-567
-278
-91
-90
-40
82
119
104
158
254
320
299
172
36
2
4
-63
-155
-211
-277
-386
-478
-500
-470
-434
-440
-474
-474
-425
-367
-319
-253
-182
-146
-141
-132
-97
-48
-488
-492
-177
229
415
242
-155
-490
-559
-359
-65
97
11
-263
-531
-608
-448
-176
10
-8
-184
-370
-311
155
40
123
1040
1263
514
515
1295
1517
1323
1351
1308
1112
1009
779
489
581
685
237
-287
-351
-303
-438
-531
-519
-532
-550
-584
-636
-508
-206
-58
-117
-103
29
111
148
215
285
305
252
128
24
31
49
-34
-162
-245
-314
-401
-459
-465
-444
-436
-465
-504
-488
-413
-342
-298
-250
-199
-169
-156
-126
-76
-499
-481
-161
234
428
276
-115
-463
-537
-330
-33
121
23
-257
-522
-605
-457
-196
-9
-21
-203
-397
-453
-214
349
189
123
901
1092
432
574
1444
1647
1344
1256
1173
1034
1041
891
597
610
620
130
-360
-341
-224
-352
-498
-560
-616
-614
-586
-578
-437
-171
-82
-180
-157
21
153
203
249
274
259
208
114
51
75
80
-39
-197
-281
-328
-384
-426
-438
-444
-461
-495
-519
-478
-386
-320
-294
-267
-222
-182
-149
-106
-530
-493
-148
252
435
289
-81
-424
-511
-308
-3
155
48
-245
-518
-597
-453
-204
-27
-39
-218
-418
-481
-356
-18
501
191
-16
728
1008
491
725
1575
1667
1247
1120
1095
1066
1153
998
626
545
514
58
-349
-260
-136
-319
-540
-643
-679
-616
-528
-508
-403
-196
-144
-234
-165
62
209
236
236
227
215
195
142
96
105
74
-73
-232
-296
-313
-351
-400
-439
-468
-490
-510
-509
-452
-365
-316
-310
-290
-236
-179
-131
-559
-521
-160
263
451
296
-68
-390
-472
-280
20
186
81
-221
-507
-593
-446
-199
-33
-56
-235
-435
-504
-385
-160
133
502
52
-188
645
1066
639
856
1599
1573
1110
1040
1125
1177
1261
1029
563
437
439
67
-268
-171
-101
-361
-624
-708
-681
-559
-456
-471
-427
-259
-200
-243
-125
119
244
224
189
181
202
224
187
127
100
41
-112
-249
-278
-277
-323
-399
-464
-499
-506
-499
-481
-429
-361
-333
-335
-304
-230
-157
-582
-551
-189
251
462
312
-60
-377
-438
-242
46
207
111
-189
-483
-580
-439
-193
-30
-64
-254
-451
-517
-405
-189
-9
134
363
-120
-271
705
1216
771
876
1500
1436
1033
1071
1237
1285
1290
964
455
364
450
149
-179
-138
-145
-444
-688
-709
-624
-487
-422
-497
-489
-312
-207
-202
-68
153
230
178
146
171
229
267
217
121
66
3
-125
-230
-245
-251
-324
-425
-493
-513
-495
-473
-460
-427
-378
-357
-349
-298
-210
-610
-574
-219
224
451
324
-45
-371
-425
-207
86
235
133
-158
-451
-557
-429
-187
-22
-59
-262
-470
-536
-420
-208
-37
-8
-8
188
-205
-211
855
1349
792
779
1363
1356
1064
1184
1347
1316
1224
856
382
374
530
238
-144
-179
-226
-509
-696
-664
-565
-462
-453
-567
-559
-346
-198
-175
-56
128
179
127
122
185
266
302
232
119
63
16
-89
-180
-196
-219
-313
-425
-491
-502
-479
-465
-467
-450
-412
-391
-376
-319
-696
-633
-275
163
407
317
-15
-339
-425
-226
90
283
225
-37
-337
-500
-445
-234
-36
-1
-157
-391
-541
-513
-340
-143
-40
-81
-109
108
-240
-213
852
1315
727
703
1303
1327
1063
1200
1368
1345
1268
918
460
461
618
324
-56
-88
-143
-442
-653
-647
-570
-479
-478
-601
-607
-418
-290
-276
-153
51
120
80
74
136
227
285
251
171
133
89
-23
-119
-133
-143
-222
-333
-418
-460
-468
-473
-481
-463
-429
-421
-432
-857
-798
-420
44
327
286
-10
-336
-466
-306
36
314
339
110
-204
-415
-415
-234
-16
80
-21
-259
-483
-555
-446
-248
-94
-70
-178
-225
17
-287
-234
823
1255
634
599
1218
1275
1043
1203
1388
1377
1315
983
542
559
728
442
66
34
-29
-349
-590
-615
-562
-487
-496
-635
-667
-509
-410
-411
-283
-62
30
3
4
66
164
245
247
207
201
173
60
-41
-53
-54
-117
-217
-308
-373
-414
-451
-479
-468
-436
-438
-914
-943
-612
-146
174
196
-42
-352
-520
-433
-133
201
360
251
-29
-285
-372
-263
-50
120
127
-40
-288
-469
-483
-344
-168
-71
-109
-250
-295
-28
-316
-270
761
1163
528
501
1134
1209
992
1163
1362
1375
1345
1041
618
642
813
535
175
161
107
-221
-493
-556
-534
-477
-489
-630
-678
-555
-500
-536
-423
-192
-77
-81
-72
-19
69
157
184
186
222
224
123
15
-3
1
-46
-123
-198
-266
-328
-394
-450
-454
-426
-862
-940
-698
-284
35
85
-115
-399
-577
-536
-296
18
240
250
59
-186
-324
-282
-107
83
177
111
-77
-287
-402
-371
-234
-99
-57
-129
-273
-299
-17
-308
-287
710
1085
444
426
1076
1164
948
1114
1316
1346
1346
1076
678
710
880
605
257
265
232
-91
-377
-471
-484
-450
-470
-612
-666
-561
-542
-622
-542
-322
-195
-180
-157
-99
-21
57
89
115
194
240
168
73
51
51
11
-47
-97
-147
-207
-289
-374
-407
-827
-883
-681
-319
-14
45
-158
-469
-683
-675
-455
-147
98
174
56
-170
-347
-357
-200
18
176
195
72
-124
-287
-337
-255
-111
-5
-9
-116
-268
-289
2
-290
-291
678
1025
363
339
989
1078
862
1031
1242
1288
1307
1058
676
720
903
641
311
340
325
10
-280
-390
-418
-396
-422
-563
-620
-531
-541
-656
-606
-404
-281
-258
-227
-168
-99
-37
-13
23
127
205
164
89
76
74
34
-13
-43
-66
-107
-187
-281
-757
-827
-626
-292
1
83
-104
-443
-724
-782
-593
-276
-4
106
30
-174
-382
-458
-348
-116
102
204
151
-13
-196
-307
-290
-165
-13
69
30
-103
-259
-269
34
-257
-268
678
1002
323
288
929
1011
792
963
1182
1245
1286
1052
680
727
912
662
353
411
419
114
-179
-304
-355
-347
-375
-512
-567
-485
-516
-663
-651
-477
-364
-336
-293
-230
-164
-116
-108
-80
32
136
131
86
88
92
49
0
-18
-19
-32
-90
-588
-723
-556
-243
22
118
-4
-300
-619
-782
-708
-452
-167
1
-9
-159
-358
-499
-488
-317
-80
98
141
48
-109
-247
-298
-238
-98
39
96
44
-83
-221
-280
-187
-238
-180
164
264
-2
-83
65
72
24
129
258
314
327
222
67
65
136
97
52
116
139
32
-92
-162
-190
-178
-161
-177
-179
-162
-202
-285
-309
-263
-218
-192
-163
-140
-131
-138
-156
-157
-113
-62
-41
-35
-26
-30
-53
-75
-78
-64
-48
-85
-109
-110
-95
-90
-99
-112
-127
-148
-168
-177
-167
-152
-138
-137
-141
-144
-146
-147
-140
-120
-100
-86
-81
-81
-80
-80
-78
-72
-62
-52
-48
-52
-59
-66
-67
-60
-71
-73
-44
-36
-63
-69
-50
-50
-59
-53
-45
-40
-36
-42
-51
-49
-40
-44
-50
-43
-37
-42
-47
-50
-52
-50
-49
-50
-52
-47
-47
-52
-55
-52
-50
-51
-48
-46
-45
-43
-43
-44
-43
-39
-39
-38
-36
-33
-34
-35
-34
-33
-36
-36
-34
-30
-27
-26
-27
-30
-31
-33
-34
-32
-29
-27
-26
-27
-28
-30
-30
-30
-28
-25
-23
-22
-23
-24
-25
-26
-24
-22
-20
-17
-17
-19
-19
-19
-18
-15
-16
-17
-9
-6
-12
-11
-4
-4
-6
-4
-2
-2
-1
-1
-5
-4
-2
-4
-6
-6
-6
-7
-9
-11
-11
-11
-11
-12
-13
-13
-13
-13
-13
-13
-12
-12
-11
-11
-11
-9
-8
-8
-8
-7
-6
-6
-6
-5
-5
-4
-5
-6
-5
-5
-5
-4
-4
-4
-6
-6
-7
-7
-8
-7
-7
-6
-6
-7
-7
-8
-8
-7
-7
-6
-4
-5
-4
-5
-5
-5
-5
-4
-4
-3
-2
-2
-3
-3
-3
-3
-3
-3
-2
-2
-3
-3
-1
-2
-3
-2
-2
-2
-1
-2
-3
-2
-1
-2
-3
-2
-1
-2
-3
-2
-1
-2
-2
-1
-2
-2
-1
-2
-2
-1
-1
-2
-2
-1
-1
-2
-2
0
-1
-2
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
