5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
30
30
30
30
30
30
30
30
30
30
30
30
30
30
31
31
31
31
31
31
31
31
31
31
31
31
31
31
32
32
32
32
32
32
32
32
32
32
32
32
32
32
33
33
33
33
33
33
33
33
33
33
33
33
33
34
34
34
34
34
34
34
34
34
34
34
34
34
35
35
35
35
35
35
35
35
35
35
35
35
36
36
36
36
36
36
36
36
36
36
36
36
37
37
37
37
37
37
37
37
37
37
37
37
38
38
38
38
38
38
38
38
38
38
38
39
39
39
39
39
39
39
39
39
39
39
39
40
40
40
40
40
40
40
40
40
40
41
41
41
41
41
41
41
41
41
41
41
42
42
42
42
42
42
42
42
42
42
43
43
43
43
43
43
43
43
43
43
43
44
44
44
44
44
44
44
44
44
45
45
45
45
45
45
45
45
45
45
46
46
46
46
46
46
46
46
46
47
47
47
47
47
47
47
47
47
47
48
48
48
48
48
48
48
48
48
49
49
49
49
49
49
49
49
49
50
50
50
50
50
50
50
50
51
51
51
51
51
51
51
51
51
52
52
52
52
52
52
52
52
53
53
53
53
53
53
53
53
54
54
54
54
54
54
54
54
55
55
55
55
55
55
55
55
56
56
56
56
56
56
56
56
57
57
57
57
57
57
57
57
58
58
58
58
58
58
58
59
59
59
59
59
59
59
59
60
60
60
60
60
60
60
61
61
61
61
61
61
61
62
62
62
62
62
62
62
63
63
63
63
63
63
63
64
64
64
64
64
64
64
65
65
65
65
65
65
66
66
66
66
66
66
66
67
67
67
67
67
67
68
68
68
68
68
68
68
69
69
69
69
69
69
70
70
70
70
70
70
71
71
71
71
71
71
72
72
72
72
72
72
73
73
73
73
73
73
74
74
74
74
74
74
75
75
75
75
75
75
76
76
76
76
76
76
77
77
77
77
77
78
78
78
78
78
78
79
79
79
79
79
80
80
80
80
80
80
81
81
81
81
81
82
82
82
82
82
83
83
83
83
83
83
84
84
84
84
84
85
85
85
85
85
86
86
86
86
86
87
87
87
87
87
88
88
88
88
88
89
89
89
89
89
90
90
90
90
90
91
91
91
91
92
92
92
92
92
93
93
93
93
93
94
94
94
94
95
95
95
95
95
96
96
96
96
96
97
97
97
97
98
98
98
98
99
99
99
99
99
100
100
100
100
101
101
101
101
102
102
102
102
102
103
103
103
103
104
104
104
104
105
105
105
105
106
106
106
106
107
107
107
107
108
108
108
108
109
109
109
109
110
110
110
110
111
111
111
111
112
112
112
112
113
113
113
113
114
114
114
114
115
115
115
115
116
116
116
117
117
117
117
118
118
118
118
119
119
119
120
120
120
120
121
121
121
121
122
122
122
123
123
123
123
124
124
124
125
125
125
125
126
126
126
127
127
127
127
128
128
128
129
129
129
130
130
130
130
131
131
131
132
132
132
133
133
133
133
134
134
134
135
135
135
136
136
136
137
137
137
138
138
138
139
139
139
139
140
140
140
141
141
141
142
142
142
143
143
143
144
144
144
145
145
145
146
146
146
147
147
147
148
148
148
149
149
149
150
150
150
151
151
152
152
152
153
153
153
154
154
154
155
155
155
156
156
156
157
157
158
158
158
159
159
159
160
160
160
161
161
162
162
162
163
163
163
164
164
165
165
165
166
166
167
167
167
168
168
168
169
169
170
170
170
171
171
172
172
172
173
173
174
174
174
175
175
176
176
176
177
177
178
178
178
179
179
180
180
180
181
181
182
182
183
183
183
184
184
185
185
186
186
186
187
187
188
188
189
189
189
190
190
191
191
192
192
193
193
193
194
194
195
195
196
196
197
197
197
198
198
199
199
200
200
201
201
202
202
203
203
203
204
204
205
205
206
206
207
207
208
208
209
209
210
210
211
211
212
212
213
213
214
214
215
215
216
216
217
217
218
218
219
219
220
220
221
221
222
222
223
223
224
224
225
225
226
226
227
227
228
228
229
229
230
230
231
231
232
233
233
234
234
235
235
236
236
237
237
238
238
239
240
240
241
241
242
242
243
243
244
245
245
246
246
247
247
248
249
249
250
250
251
251
252
253
253
254
254
255
256
256
257
257
258
259
259
260
260
261
262
262
263
263
264
265
265
266
266
267
268
268
269
269
270
271
271
272
273
273
274
274
275
276
276
277
278
278
279
280
280
281
281
282
283
283
284
285
285
286
287
287
288
289
289
290
291
291
292
293
293
294
295
295
296
297
297
298
299
300
300
301
302
302
303
304
304
305
306
307
307
308
309
309
310
311
312
312
313
314
314
315
316
317
317
318
319
320
320
321
322
322
323
324
325
325
326
327
328
328
329
330
331
331
332
333
334
335
335
336
337
338
338
339
340
341
342
342
343
344
345
346
346
347
348
349
350
350
351
352
353
354
354
355
356
357
358
358
359
360
361
362
363
363
364
365
366
367
368
369
369
370
371
372
373
374
375
375
376
377
378
379
380
381
381
382
383
384
385
386
387
388
389
389
390
391
392
393
394
395
396
397
398
399
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
473
474
475
476
477
478
479
480
481
482
484
485
486
487
488
489
490
491
493
494
495
496
497
498
499
501
502
503
504
505
506
508
509
510
511
512
513
515
516
517
518
519
521
522
523
524
525
527
528
529
530
531
533
534
535
536
538
539
540
541
543
544
545
546
548
549
550
551
553
554
555
557
558
559
560
562
563
564
566
567
568
569
571
572
573
575
576
577
579
580
581
583
584
585
587
588
589
591
592
594
595
596
598
599
600
602
603
605
606
607
609
610
612
613
614
616
617
619
620
622
623
624
626
627
629
630
632
633
635
636
637
639
640
642
643
645
646
648
649
651
652
654
655
657
658
660
661
663
664
666
668
669
671
672
674
675
677
678
680
682
683
685
686
688
689
691
693
694
696
697
699
701
702
704
705
707
709
710
712
714
715
717
719
720
722
724
725
727
729
730
732
734
735
737
739
740
742
744
746
747
749
751
752
754
756
758
759
761
763
765
766
768
770
772
774
775
777
779
781
782
784
786
788
790
792
793
795
797
799
801
803
804
806
808
810
812
814
816
817
819
821
823
825
827
829
831
833
835
837
838
840
842
844
846
848
850
852
854
856
858
860
862
864
866
868
870
872
874
876
878
880
882
884
886
888
890
892
894
896
898
900
903
905
907
909
911
913
915
917
919
921
924
926
928
930
932
934
936
939
941
943
945
947
949
952
954
956
958
960
963
965
967
969
972
974
976
978
981
983
985
987
990
992
994
996
999
1001
1003
1006
1008
1010
1013
1015
1017
1020
1022
1024
1027
1029
1032
1034
1036
1039
1041
1043
1046
1048
1051
1053
1056
1058
1060
1063
1065
1068
1070
1073
1075
1078
1080
1083
1085
1088
1090
1093
1095
1098
1100
1103
1105
1108
1110
1113
1116
1118
1121
1123
1126
1128
1131
1134
1136
1139
1141
1144
1147
1149
1152
1155
1157
1160
1163
1165
1168
1171
1173
1176
1179
1182
1184
1187
1190
1193
1195
1198
1201
1204
1206
1209
1212
1215
1218
1220
1223
1226
1229
1232
1234
1237
1240
1243
1246
1249
1252
1255
1257
1260
1263
1266
1269
1272
1275
1278
1281
1284
1287
1290
1293
1296
1299
1302
1305
1308
1311
1314
1317
1320
1323
1326
1329
1332
1335
1338
1341
1344
1347
1350
1354
1357
1360
1363
1366
1369
1372
1376
1379
1382
1385
1388
1391
1395
1398
1401
1404
1408
1411
1414
1417
1421
1424
1427
1430
1434
1437
1440
1444
1447
1450
1454
1457
1460
1464
1467
1471
1474
1477
1481
1484
1488
1491
1494
1498
1501
1505
1508
1512
1515
1519
1522
1526
1529
1533
1536
1540
1543
1547
1551
1554
1558
1561
1565
1568
1572
1576
1579
1583
1587
1590
1594
1598
1601
1605
1609
1612
1616
1620
1624
1627
1631
1635
1639
1642
1646
1650
1654
1658
1661
1665
1669
1673
1677
1681
1685
1688
1692
1696
1700
1704
1708
1712
1716
1720
1724
1728
1732
1736
1740
1744
1748
1752
1756
1760
1764
1768
1772
1776
1780
1784
1788
1793
1797
1801
1805
1809
1813
1817
1822
1826
1830
1834
1839
1843
1847
1851
1856
1860
1864
1868
1873
1877
1881
1886
1890
1894
1899
1903
1908
1912
1916
1921
1925
1930
1934
1939
1943
1947
1952
1956
1961
1966
1970
1975
1979
1984
1988
1993
1997
2002
2007
2011
2016
2021
2025
2030
2035
2039
2044
2049
2053
2058
2063
2068
2072
2077
2082
2087
2092
2096
2101
2106
2111
2116
2121
2126
2130
2135
2140
2145
2150
2155
2160
2165
2170
2175
2180
2185
2190
2195
2200
2205
2210
2216
2221
2226
2231
2236
2241
2246
2252
2257
2262
2267
2272
2278
2283
2288
2293
2299
2304
2309
2315
2320
2325
2331
2336
2341
2347
2352
2358
2363
2368
2374
2379
2385
2390
2396
2401
2407
2413
2418
2424
2429
2435
2440
2446
2452
2457
2463
2469
2474
2480
2486
2492
2497
2503
2509
2515
2520
2526
2532
2538
2544
2550
2555
2561
2567
2573
2579
2585
2591
2597
2603
2609
2615
2621
2627
2633
2639
2645
2651
2658
2664
2670
2676
2682
2688
2694
2701
2707
2713
2719
2726
2732
2738
2745
2751
2757
2764
2770
2776
2783
2789
2796
2802
2808
2815
2821
2828
2834
2841
2848
2854
2861
2867
2874
2881
2887
2894
2901
2907
2914
2921
2927
2934
2941
2948
2954
2961
2968
2975
2982
2989
2996
3002
3009
3016
3023
3030
3037
3044
3051
3058
3065
3072
3079
3087
3094
3101
3108
3115
3122
3129
3137
3144
3151
3158
3166
3173
3180
3188
3195
3202
3210
3217
3225
3232
3239
3247
3254
3262
3269
3277
3285
3292
3300
3307
3315
3323
3330
3338
3346
3353
3361
3369
3377
3384
3392
3400
3408
3416
3424
3431
3439
3447
3455
3463
3471
3479
3487
3495
3503
3511
3519
3528
3536
3544
3552
3560
3568
3577
3585
3593
3601
3610
3618
3626
3635
3643
3652
3660
3668
3677
3685
3694
3702
3711
3719
3728
3737
3745
3754
3762
3771
3780
3789
3797
3806
3815
3824
3832
3841
3850
3859
3868
3877
3886
3895
3904
3913
3922
3931
3940
3949
3958
3967
3976
3985
3995
4004
4013
4022
4032
4041
4050
4060
4069
4078
4088
4097
4107
4116
4125
4135
4145
4154
4164
4173
4183
4193
4202
4212
4222
4231
4241
4251
4261
4270
4280
4290
4300
4310
4320
4330
4340
4350
4360
4370
4380
4390
4400
4410
4421
4431
4441
4451
4461
4472
4482
4492
4503
4513
4523
4534
4544
4555
4565
4576
4586
4597
4608
4618
4629
4640
4650
4661
4672
4682
4693
4704
4715
4726
4737
4748
4759
4770
4780
4792
4803
4814
4825
4836
4847
4858
4869
4881
4892
4903
4914
4926
4937
4948
4960
4971
4983
4994
5006
5017
5029
5040
5052
5064
5075
5087
5099
5111
5122
5134
5146
5158
5170
5182
5194
5206
5218
5230
5242
5254
5266
5278
5290
5302
5315
5327
5339
5351
5364
5376
5389
5401
5413
5426
5438
5451
5464
5476
5489
5501
5514
5527
5540
5552
5565
5578
5591
5604
5617
5630
5643
5656
5669
5682
5695
5708
5721
5734
5747
5761
5774
5787
5801
5814
5827
5841
5854
5868
5881
5895
5908
5922
5936
5949
5963
5977
5991
6004
6018
6032
6046
6060
6074
6088
6102
6116
6130
6144
6158
6173
6187
6201
6215
6230
6244
6259
6273
6287
6302
6316
6331
6346
6360
6375
6390
6404
6419
6434
6449
6464
6478
6493
6508
6523
6538
6554
6569
6584
6599
6614
6629
6645
6660
6675
6691
6706
6722
6737
6753
6768
6784
6799
6815
6831
6847
6862
6878
6894
6910
6926
6942
6958
6974
6990
7006
7022
7038
7055
7071
7087
7104
7120
7136
7153
7169
7186
7202
7219
7236
7252
7269
7286
7303
7319
7336
7353
7370
7387
7404
7421
7438
7455
7473
7490
7507
7524
7542
7559
7577
7594
7612
7629
7647
7664
7682
7700
7717
7735
7753
7771
7789
7807
7825
7843
7861
7879
7897
7915
7934
7952
7970
7989
8007
8026
8044
8063
8081
8100
8118
8137
8156
8175
8194
8212
8231
8250
8269
8288
8308
8327
8346
8365
8384
8404
8423
8443
8462
8482
8501
8521
8540
8560
8580
8600
8619
8639
8659
8679
8699
8719
8739
8759
8780
8800
8820
8840
8861
8881
8902
8922
8943
8963
8984
9005
9026
9046
9067
9088
9109
9130
9151
9172
9193
9215
9236
9257
9278
9300
9321
9343
9364
9386
9407
9429
9451
9473
9495
9516
9538
9560
9582
9604
9627
9649
9671
9693
9716
9738
9761
9783
9806
9828
9851
9874
9896
9919
9942
9965
9988
10011
10034
10057
10080
10104
10127
10150
10174
10197
10221
10244
10268
10291
10315
10339
10363
10387
10411
10435
10459
10483
10507
10531
10555
10580
10604
10629
10653
10678
10702
10727
10752
10776
10801
10826
10851
10876
10901
10926
10951
10977
11002
11027
11053
11078
11104
11129
11155
11181
11207
11232
11258
11284
11310
11336
11362
11389
11415
11441
11468
11494
11521
11547
11574
11600
11627
11654
11681
11708
11735
11762
11789
11816
11843
11871
11898
11925
11953
11980
12008
12036
12063
12091
12119
12147
12175
12203
12231
12260
12288
12316
12344
12373
12401
12430
12459
12487
12516
12545
12574
12603
12632
12661
12690
12720
12749
12778
12808
12837
12867
12897
12926
12956
12986
13016
13046
13076
13106
13136
13167
13197
13227
13258
13288
13319
13350
13381
13411
13442
13473
13504
13535
13567
13598
13629
13661
13692
13724
13755
13787
13819
13851
13883
13915
13947
13979
14011
14043
14076
14108
14141
14173
14206
14239
14272
14305
14337
14371
14404
14437
14470
14504
14537
14570
14604
14638
14671
14705
14739
14773
14807
14841
14876
14910
14944
14979
15013
15048
15082
15117
15152
15187
15222
15257
15292
15328
15363
15398
15434
15469
15505
15541
15577
15613
15649
15685
15721
15757
15793
15830
15866
15903
15939
15976
16013
16050
16087
16124
16161
16198
16236
16273
16311
16348
16386
16424
16462
16500
16538
16576
16614
16652
16691
16729
16768
16806
16845
16884
16923
16962
17001
17040
17079
17119
17158
17198
17237
17277
17317
17357
17397
17437
17477
17518
17558
17598
17639
17680
17720
17761
17802
17843
17884
17926
17967
18008
18050
18091
18133
18175
18217
18259
18301
18343
18385
18428
18470
18513
18556
18598
18641
18684
18727
18770
18814
18857
18901
18944
18988
19032
19075
19119
19163
19208
19252
19296
19341
19385
19430
19475
19520
19565
19610
19655
19700
19746
19791
19837
19883
19928
19974
20020
20067
20113
20159
20206
20252
20299
20346
20393
20440
20487
20534
20581
20629
20676
20724
20772
20820
20868
20916
20964
21012
21061
21109
21158
21207
21256
21305
21354
21403
21452
21502
21551
21601
21651
21701
21751
21801
21851
21901
21952
22003
22053
22104
22155
22206
22257
22309
22360
22412
22463
22515
22567
22619
22671
22723
22776
22828
22881
22934
22987
23040
23093
23146
23199
23253
23306
23360
23414
23468
23522
23576
23631
23685
23740
23794
23849
23904
23959
24014
24070
24125
24181
24237
24293
24349
24405
24461
24517
24574
24631
24687
24744
24801
24858
24916
24973
25031
25088
25146
25204
25262
25321
25379
25437
25496
25555
25614
25673
25732
25791
25851
25910
25970
26030
26090
26150
26210
26271
26331
26392
26453
26514
26575
26636
26698
26759
26821
26883
26945
27007
27069
27131
27194
27257
27320
27383
27446
27509
27572
27636
27700
27763
27827
27892
27956
28020
28085
28150
28215
28280
28345
28410
28476
28541
28607
28673
28739
28805
28872
28938
29005
29072
29139
29206
29273
29341
29409
29476
29544
29612
29681
29749
29818
29886
29955
30024
30094
30163
30232
30302
30372
30442
30512
30583
30653
30724
30795
30865
30937
31008
31079
31151
31223
31295
31367
31439
31512
31584
31657
31730
31803
31877
31950
32024
32098
32172
32246
32320
32395
32469
32544
32619
32694
32770
32845
32921
32997
33073
33149
33226
33302
33379
33456
33533
33610
33688
33766
33843
33921
34000
34078
34156
34235
34314
34393
34473
34552
34632
34711
34792
34872
34952
35033
35113
35194
35276
35357
35438
35520
35602
35684
35766
35849
35931
36014
36097
36180
36264
36347
36431
36515
36599
36684
36768
36853
36938
37023
37108
37194
37280
37366
37452
37538
37625
37711
37798
37886
37973
38060
38148
38236
38324
38413
38501
38590
38679
38768
38857
38947
39037
39127
39217
39307
39398
39489
39580
39671
39762
39854
39946
40038
40130
40223
40316
40409
40502
40595
40689
40782
40876
40971
41065
41160
41255
41350
41445
41541
41636
41732
41829
41925
42022
42119
42216
42313
42410
42508
42606
42704
42803
42902
43000
43100
43199
43299
43398
43498
43599
43699
43800
43901
44002
44104
44205
44307
44409
44512
44614
44717
44820
44923
45027
45131
45235
45339
45444
45548
45653
45759
45864
45970
46076
46182
46289
46395
46502
46609
46717
46825
46932
47041
47149
47258
47367
47476
47585
47695
47805
47915
48026
48136
48247
48359
48470
48582
48694
48806
48919
49031
49144
49258
49371
49485
49599
49713
49828
49943
50058
50173
50289
50405
50521
50638
50754
50871
50989
51106
51224
51342
51460
51579
51698
51817
51937
52056
52176
52297
52417
52538
52659
52780
52902
53024
53146
53269
53392
53515
53638
53762
53886
54010
54134
54259
54384
54510
54635
54761
54887
55014
55141
55268
55395
55523
55651
55779
55908
56037
56166
56295
56425
56555
56686
56816
56947
57079
57210
57342
57474
57607
57740
57873
58006
58140
58274
58408
58543
58678
58813
58949
59084
59221
59357
59494
59631
59769
59906
60045
60183
60322
60461
60600
60740
60880
61020
61161
61302
61443
61585
61727
61869
62012
62155
62298
62441
62585
62730
62874
63019
63165
63310
63456
63602
63749
63896
64043
64191
64339
64487
64636
64785
64934
65084
65234
65384
65535
