1
1
1
1
8
1
8
8
8
20
13
15
15
20
27
1
1
1
1
20
27
27
27
39
1
1
8
13
27
34
34
34
34
51
8
13
15
20
34
46
46
41
41
46
46
58
20
27
46
41
53
58
58
53
53
53
53
70
1
27
34
34
34
34
41
58
60
70
65
70
65
60
82
82
1
20
34
46
46
41
58
48
48
65
65
82
82
94
94
1
51
46
41
58
58
53
53
65
94
94
106
106
1
13
34
58
53
53
53
65
65
65
77
101
101
113
113
1
46
53
53
53
48
53
65
65
77
77
72
89
125
125
1
53
53
65
77
72
89
89
96
137
137
1
53
53
53
77
89
84
101
96
149
149
1
53
53
53
53
53
53
65
65
65
89
84
96
113
161
161
53
53
65
65
77
72
72
89
89
96
125
173
173
1
77
77
84
96
96
137
185
185
1
1
53
53
53
89
84
84
149
197
197
1
53
53
53
53
53
53
53
65
65
65
89
96
161
209
209
1
8
53
53
65
65
77
72
72
89
89
96
173
221
221
1
15
53
53
77
77
89
84
96
96
185
233
233
8
27
53
53
53
53
53
65
65
65
89
84
84
96
197
245
245
20
53
53
53
53
53
65
65
77
72
72
89
89
96
209
257
257
53
53
53
53
53
53
65
77
77
89
84
89
89
96
96
221
269
269
1
1
53
58
65
65
77
72
72
89
89
89
84
84
96
96
96
233
281
281
1
1
8
53
77
72
72
84
96
96
96
96
96
108
245
269
269
293
293
8
15
72
72
84
84
84
84
84
96
96
108
120
257
269
269
281
281
300
300
1
1
20
27
53
65
65
72
84
84
84
96
96
103
120
120
127
269
281
281
293
293
312
1
53
53
53
53
53
53
65
65
65
65
65
72
72
72
72
84
84
96
96
108
103
120
127
127
127
281
293
293
300
300
324
1
53
53
65
65
65
72
72
84
84
89
84
84
89
89
91
96
103
103
120
120
115
127
127
127
245
281
293
305
305
312
324
336
1
8
77
77
96
91
96
91
96
96
96
103
115
127
127
139
257
293
305
317
317
324
336
348
1
1
1
8
15
53
84
84
84
91
96
91
103
120
139
151
269
305
312
329
329
336
348
355
1
20
27
53
53
53
53
53
53
53
53
65
65
89
96
91
96
96
91
103
103
127
151
151
151
158
281
312
341
341
348
355
367
1
8
53
53
53
65
65
65
72
72
89
89
89
91
96
91
96
91
96
96
108
115
115
120
120
127
151
158
158
158
158
293
353
353
360
367
379
1
15
53
77
77
77
96
91
96
96
96
108
108
120
120
127
127
122
122
151
158
158
158
305
360
365
365
372
379
379
391
1
8
27
53
53
53
53
53
65
65
89
84
84
84
120
115
127
127
122
122
158
170
317
372
377
377
384
391
391
403
1
20
53
53
53
53
65
65
65
72
72
89
89
89
96
115
115
127
170
182
329
384
389
389
391
403
403
410
1
1
53
53
53
53
53
53
53
65
77
77
77
72
72
96
96
96
103
103
103
127
127
127
182
182
182
189
341
391
401
401
410
415
422
1
8
53
65
77
89
84
89
89
89
89
84
84
96
96
115
115
115
115
127
139
151
151
189
189
189
353
401
401
413
413
422
427
434
8
15
53
58
65
89
84
84
84
96
96
96
96
96
115
127
127
139
146
158
158
182
365
413
413
425
425
439
434
446
20
27
53
53
77
72
72
72
72
84
96
96
96
96
103
103
108
108
127
127
127
134
146
182
182
182
189
377
425
425
432
432
451
446
458
1
53
53
53
53
53
53
65
65
72
84
84
84
89
96
96
96
96
96
103
115
115
115
120
120
127
139
151
151
209
209
189
189
189
221
221
389
432
432
444
458
463
470
1
1
1
8
34
34
34
58
65
65
65
65
72
72
84
84
89
84
84
84
84
96
96
96
103
120
120
127
127
127
139
146
158
158
221
221
233
233
401
444
456
475
470
482
8
15
27
27
34
34
46
46
46
72
72
72
96
96
96
108
108
103
127
127
134
146
221
233
233
245
245
413
456
468
487
482
494
1
20
27
34
58
58
58
58
65
65
72
72
72
72
89
84
108
103
120
120
115
233
240
240
252
252
425
468
480
494
494
506
1
1
1
27
46
65
65
65
65
65
65
65
65
77
72
72
72
72
84
84
89
89
96
96
120
120
120
127
127
127
245
264
264
437
480
487
506
501
513
1
1
1
34
53
77
77
77
77
72
89
84
89
96
96
96
96
120
127
127
127
127
127
257
257
276
276
276
444
487
499
513
513
525
1
1
1
1
27
27
34
34
89
89
89
96
91
96
103
103
103
103
127
139
269
269
288
288
288
456
499
506
513
525
520
532
1
39
34
34
53
101
101
91
96
91
103
115
139
151
146
281
281
300
300
300
463
506
518
520
525
537
532
544
1
1
34
34
51
53
72
84
84
96
96
113
113
103
103
103
103
115
115
115
115
127
127
151
151
146
146
158
177
189
288
288
307
307
312
463
518
530
549
544
556
34
34
53
65
65
72
72
84
84
84
84
96
91
96
103
103
125
125
115
120
115
115
115
115
127
127
127
127
127
127
139
151
158
158
177
177
177
189
189
319
319
324
415
530
542
561
556
568
1
34
34
34
53
65
65
77
72
72
84
96
96
91
96
96
108
108
120
115
137
137
122
127
127
127
127
127
139
139
139
146
146
158
158
177
177
189
336
331
331
427
434
542
554
573
568
580
1
1
1
34
34
34
53
65
89
91
96
96
96
96
96
108
108
108
115
115
127
149
149
139
139
151
146
146
146
146
158
348
343
343
401
439
434
446
506
554
566
585
580
592
1
34
34
34
53
72
84
84
84
84
101
96
96
96
103
108
115
115
115
134
161
161
151
151
151
146
146
158
355
355
360
377
413
446
446
458
506
518
566
578
597
592
604
1
34
34
34
46
53
53
53
72
84
84
96
96
96
91
91
96
113
115
120
120
115
115
173
173
158
158
158
367
372
367
389
401
425
458
458
465
513
530
578
590
604
609
616
1
1
1
34
34
53
65
65
65
72
84
84
91
96
96
108
108
125
115
122
127
127
161
161
151
180
180
384
379
379
401
413
432
465
465
477
513
542
532
590
597
621
616
628
1
34
65
72
72
84
84
96
96
96
103
108
115
115
137
151
151
151
173
173
158
192
396
391
391
408
425
444
465
477
484
520
554
597
609
633
628
640
1
1
34
72
72
72
96
96
96
91
108
115
120
120
115
149
158
158
158
180
180
204
403
403
408
420
432
451
484
520
532
566
597
621
645
640
652
34
34
34
53
72
72
72
108
108
103
115
115
122
127
127
149
161
146
192
204
216
420
415
415
427
444
484
484
578
597
609
633
657
652
664
34
34
34
34
72
84
103
103
103
115
115
115
115
115
127
127
161
161
161
146
146
168
158
177
204
216
223
432
427
427
451
463
590
621
645
669
664
676
1
34
53
53
53
84
84
91
91
91
91
103
103
115
115
127
127
127
127
127
127
127
139
168
173
173
158
158
177
177
177
216
223
235
360
427
439
439
439
451
602
633
657
681
676
688
1
1
34
34
34
53
53
53
65
72
72
72
72
72
72
84
91
91
91
127
127
127
127
127
122
139
139
139
146
158
185
185
177
177
228
228
235
247
247
372
379
379
451
446
446
451
463
614
645
669
693
688
700
1
34
34
53
53
53
53
53
53
53
65
77
84
84
84
91
91
96
96
103
125
127
122
139
139
146
146
146
197
197
240
240
247
259
259
353
384
391
391
458
458
458
626
657
681
705
700
712
1
1
1
1
27
34
34
34
53
53
53
53
53
53
65
65
77
72
84
84
84
84
96
103
110
137
146
146
209
209
247
247
259
266
266
341
365
391
403
403
458
465
470
465
506
506
638
669
693
717
712
724
1
1
1
39
34
34
34
34
53
53
53
53
65
65
77
77
84
84
84
91
91
91
96
110
115
149
158
221
221
271
278
278
353
353
377
403
410
410
465
470
465
477
482
518
650
681
705
724
724
736
1
34
34
34
34
34
34
51
53
77
77
84
84
84
84
84
84
91
96
91
91
103
110
110
115
115
110
161
146
158
158
233
233
283
290
290
360
365
365
384
410
422
422
482
489
494
506
506
506
506
525
662
693
717
736
731
748
1
1
27
27
27
34
34
34
34
34
46
63
53
53
84
84
84
84
96
91
96
96
91
91
91
103
103
103
115
110
122
127
146
146
146
173
158
233
233
245
245
295
302
302
372
377
372
379
396
429
429
494
501
506
506
506
506
518
518
674
705
729
724
748
760
1
27
27
39
34
34
46
58
53
75
65
96
96
91
96
103
103
115
115
115
115
110
110
122
127
146
146
146
185
245
245
252
252
307
314
314
367
384
384
384
391
403
410
506
506
513
518
518
518
518
525
525
686
717
741
736
731
760
772
1
27
34
34
34
51
53
53
70
65
87
72
91
91
96
108
115
115
115
115
122
122
122
197
252
252
264
314
326
326
379
391
396
391
403
429
506
518
525
530
530
525
525
698
729
753
748
772
784
1
27
27
27
34
34
34
34
34
63
53
53
82
72
72
99
101
91
91
96
108
120
137
122
122
146
146
209
264
276
321
333
333
391
403
403
410
429
468
506
518
530
525
537
542
537
537
710
741
765
760
784
796
1
34
34
34
34
34
34
34
34
46
53
75
72
94
111
101
91
91
96
113
108
120
115
137
127
149
221
276
288
321
333
340
340
391
398
403
410
422
475
530
525
542
532
549
554
544
722
753
777
772
796
808
27
34
34
34
34
46
46
53
53
53
82
72
84
101
91
91
91
96
91
123
113
108
103
120
110
120
137
127
149
156
146
146
233
288
295
340
352
352
403
410
410
429
458
537
532
554
544
561
566
556
734
765
789
784
808
820
46
53
53
53
53
53
53
53
53
53
53
75
65
94
84
96
96
91
91
96
113
108
103
135
120
110
110
110
115
120
127
127
127
149
156
168
240
271
295
302
317
324
340
352
364
364
417
458
465
475
537
532
544
566
556
573
578
563
746
777
801
796
820
832
34
53
53
53
53
53
53
53
53
53
53
53
53
53
65
82
77
72
84
84
101
96
91
91
91
91
108
103
135
125
110
110
120
147
127
127
127
161
161
146
168
180
180
247
247
281
293
283
302
314
329
324
336
364
376
376
417
429
465
537
556
578
563
585
590
758
789
813
808
832
844
53
53
53
53
53
53
53
53
53
65
65
65
72
72
77
84
84
84
84
84
91
96
113
103
125
115
110
110
110
120
115
147
132
127
154
173
173
158
180
192
192
293
305
305
290
290
290
314
326
341
321
321
336
348
376
388
388
465
465
532
544
563
590
597
602
770
801
825
820
844
856
1
1
1
34
34
53
53
53
53
53
60
60
60
60
65
65
77
72
72
72
77
84
84
84
84
84
84
91
96
91
91
103
125
115
115
110
132
127
154
166
146
158
158
158
180
180
192
199
199
305
312
317
317
302
302
297
297
326
338
348
348
355
388
400
400
556
602
609
614
782
813
837
832
856
863
1
1
1
34
34
34
34
34
53
53
53
53
53
53
53
60
60
60
60
65
77
77
84
84
84
84
96
91
96
96
91
103
103
103
115
137
137
122
127
127
166
146
146
146
178
178
204
211
211
233
312
324
329
324
309
309
331
331
338
350
360
340
340
340
355
367
400
412
412
544
563
614
621
626
794
825
849
844
863
875
1
34
53
53
53
60
72
72
72
77
84
84
84
96
96
103
103
115
115
115
115
115
122
149
149
146
146
178
190
190
197
216
223
223
233
245
324
336
336
336
316
316
316
343
343
350
362
367
367
374
412
424
424
532
556
626
633
638
806
837
861
856
887
1
1
53
53
72
79
84
84
91
91
115
115
122
122
122
156
156
190
197
197
209
228
235
235
245
252
302
331
343
348
343
355
355
340
357
369
374
424
436
436
542
568
638
645
650
818
849
873
868
863
899
1
1
27
60
60
72
72
72
79
84
91
110
110
122
122
202
209
209
216
240
247
247
252
259
302
314
316
331
355
355
362
362
357
369
381
436
448
448
480
549
575
650
657
662
830
861
863
885
880
875
911
34
53
53
72
72
72
79
79
84
79
84
84
111
91
91
91
91
110
110
115
115
214
221
221
223
228
252
247
259
259
259
326
343
355
362
374
374
374
381
393
448
460
460
487
542
544
662
669
674
842
873
897
892
887
923
27
27
34
34
53
53
60
60
65
65
72
72
72
72
72
84
84
79
84
84
96
96
123
110
115
115
226
233
233
223
240
247
247
264
259
271
271
338
362
367
374
381
381
393
405
463
460
472
472
530
532
549
556
674
681
686
854
885
909
904
899
935
27
27
27
27
34
34
34
34
34
34
34
53
53
53
75
65
65
65
87
94
84
79
79
96
96
108
108
135
110
238
245
245
247
247
259
271
266
283
283
350
381
381
405
417
470
470
470
487
472
479
479
537
537
549
568
575
686
693
698
866
897
921
916
911
947
27
27
27
34
34
34
34
34
34
63
53
53
53
53
53
65
87
87
77
72
72
99
84
84
106
108
108
115
115
115
147
209
245
257
257
259
254
266
278
273
290
290
302
302
362
417
429
470
477
477
484
491
549
549
549
575
575
698
705
710
878
909
933
928
923
959
27
34
34
34
34
34
34
63
53
53
53
53
53
53
53
70
65
65
72
77
72
99
99
84
84
84
84
84
106
91
96
96
96
118
115
115
115
115
159
173
209
221
252
259
264
264
254
269
278
273
290
297
297
297
302
302
314
326
374
429
441
477
477
496
503
537
575
587
587
710
717
722
890
921
945
940
935
971
13
27
27
27
34
34
34
34
34
34
34
34
34
41
41
41
41
53
53
53
53
53
53
53
70
65
65
65
82
77
72
84
84
84
84
84
84
84
111
106
91
96
91
91
91
96
96
118
103
108
130
115
115
127
171
146
185
221
228
228
245
252
264
271
271
281
297
302
309
309
309
314
321
333
345
345
386
441
453
479
479
508
515
587
594
594
722
729
734
902
933
957
952
947
983
13
25
27
27
27
34
34
46
46
41
41
41
41
53
53
53
53
65
60
60
72
72
77
77
72
94
94
84
84
84
84
79
84
111
96
91
96
96
91
96
91
96
118
118
103
103
103
108
130
130
130
115
115
137
127
127
146
146
146
183
192
228
240
235
247
257
257
269
271
283
283
273
293
302
302
302
302
314
321
321
321
321
352
352
398
453
465
491
520
527
537
575
594
734
741
746
914
945
969
964
959
995
1
25
37
27
34
34
41
53
53
53
72
72
77
72
84
84
84
84
79
79
79
84
106
106
96
96
96
91
118
103
103
103
130
115
115
115
115
137
142
142
122
127
149
146
146
195
202
199
235
247
247
259
269
269
276
276
271
281
283
273
295
295
300
302
302
302
314
314
326
333
333
333
352
352
352
352
364
410
465
477
503
532
539
587
746
753
758
926
957
976
971
981
1002
1
37
37
49
49
53
53
53
60
60
60
60
72
84
84
79
79
96
91
113
113
103
115
115
142
122
122
122
149
149
149
161
207
199
214
252
259
254
254
266
281
276
288
288
293
295
307
307
312
314
326
321
333
333
345
345
345
364
364
371
422
477
489
515
544
551
594
758
765
770
938
969
983
983
1014
1
1
1
44
44
34
34
56
56
41
41
60
72
72
79
79
79
91
122
122
154
161
161
161
168
219
204
221
221
221
252
252
259
266
273
278
278
288
288
300
300
300
307
319
319
319
321
333
357
357
357
371
371
434
489
501
527
556
563
770
777
782
950
981
995
1002
1026
1
1
1
1
1
1
8
34
34
34
34
68
68
53
60
60
60
72
72
79
149
166
173
173
168
175
185
204
226
216
233
233
228
228
235
259
273
273
300
295
297
307
307
312
319
331
331
352
352
369
369
369
446
501
513
537
554
539
568
575
782
789
789
983
1007
1014
1038
1
1
1
1
13
13
20
20
27
27
34
34
51
41
41
53
53
80
80
60
72
91
149
161
178
185
185
175
185
187
197
216
233
233
223
235
240
240
271
271
271
273
297
297
307
319
319
319
319
331
343
343
352
364
381
381
381
458
492
513
525
549
551
561
575
575
582
789
789
801
801
1019
1026
1050
1
8
13
13
20
20
34
34
34
34
34
58
63
53
53
53
53
53
53
53
80
60
60
60
87
92
92
84
161
168
190
197
197
197
204
204
223
245
245
230
247
247
247
295
297
319
326
326
333
343
355
355
352
364
371
393
393
393
470
499
525
537
554
563
587
594
789
801
813
813
1031
1038
1062
1
1
1
8
15
20
20
27
27
34
34
34
41
41
53
53
53
70
75
60
65
60
60
87
72
72
72
72
104
99
99
104
84
115
168
175
202
209
209
204
216
211
223
223
230
257
257
271
307
326
333
355
367
367
352
376
405
405
405
475
482
537
549
561
561
575
594
606
813
825
825
1043
1050
1074
8
8
8
20
27
27
34
34
41
53
53
60
60
65
60
60
87
82
72
72
72
99
84
84
84
84
79
79
84
111
106
106
111
130
183
175
175
214
221
221
211
223
235
235
247
269
269
326
338
338
367
352
379
379
364
383
417
417
417
482
494
499
537
549
561
561
587
618
825
837
837
1055
1062
1086
15
20
20
20
20
27
34
34
41
53
53
53
53
53
53
53
65
60
60
60
65
72
72
72
72
94
89
84
84
79
79
84
84
111
96
123
123
115
115
137
137
178
195
175
221
233
233
230
230
242
242
264
276
276
338
345
345
345
379
391
391
376
429
429
429
482
482
482
506
549
561
573
575
575
599
594
630
837
849
849
1067
1074
1098
1
8
8
8
27
27
27
34
34
34
34
41
53
53
53
53
53
53
53
65
65
65
65
82
87
72
72
72
72
72
77
84
84
79
84
84
106
96
111
123
103
135
135
115
144
149
178
190
202
228
240
240
249
249
249
271
283
288
345
357
357
391
403
403
383
383
441
441
441
489
489
518
573
585
580
587
587
582
611
642
849
861
861
1079
1086
1110
1
1
8
20
25
27
37
27
27
34
34
34
34
34
34
34
34
34
41
53
53
53
53
60
65
65
65
72
72
72
77
77
72
89
94
84
84
84
79
84
84
96
118
103
118
115
135
147
147
156
190
197
209
211
228
240
230
247
247
247
249
276
276
271
290
290
300
302
302
345
403
383
410
410
395
395
453
453
453
489
489
501
530
585
597
587
599
594
623
654
861
873
873
1091
1098
1122
8
13
15
27
37
34
44
39
34
34
34
39
34
34
34
34
34
34
46
41
41
46
46
41
41
41
53
53
60
65
72
77
77
72
84
84
84
106
96
96
96
96
103
125
115
125
147
159
159
178
163
197
204
211
221
233
230
247
259
259
259
288
312
309
309
309
415
395
422
402
402
465
465
465
489
489
501
508
542
597
587
609
594
611
606
635
666
873
885
885
1103
1110
1134
20
27
27
27
44
34
34
34
34
34
34
46
41
51
56
56
51
41
41
53
58
53
53
53
53
53
53
53
60
60
60
77
84
84
84
96
96
96
118
103
103
137
154
171
171
161
163
190
175
175
197
209
204
209
221
233
257
271
271
271
300
309
324
345
383
427
402
434
477
477
477
489
489
501
508
554
587
587
609
594
594
621
606
623
613
647
678
885
897
897
1115
1122
1146
1
1
1
27
27
27
27
34
34
34
34
34
34
34
34
41
56
41
58
53
53
58
63
63
58
53
53
53
53
53
65
60
60
60
60
60
60
72
72
72
84
84
84
103
118
130
125
149
159
161
161
161
178
178
173
175
197
197
187
209
221
233
233
245
264
276
276
283
283
283
312
336
345
410
410
439
446
489
489
489
501
508
566
621
606
606
633
613
635
659
685
897
909
909
1127
1134
1158
1
1
13
13
37
27
49
34
34
34
34
46
46
41
41
41
58
58
58
48
68
53
53
53
60
65
65
75
75
60
60
72
72
84
84
118
130
125
142
137
149
161
171
161
173
173
173
180
180
175
175
175
175
185
185
185
180
187
209
204
204
194
204
216
233
245
252
283
283
295
295
295
324
348
345
383
422
451
458
501
501
501
508
578
633
613
613
647
666
685
697
909
921
916
1139
1146
1170
1
1
13
25
25
27
34
49
34
34
34
34
34
46
61
41
41
53
53
53
48
53
53
53
65
65
65
65
80
60
87
87
84
99
125
142
132
154
144
161
173
178
180
175
185
180
192
192
187
187
197
197
197
187
199
204
216
223
228
228
240
252
264
283
283
283
283
295
307
307
307
336
360
395
434
463
470
489
513
513
513
590
659
666
697
709
921
928
1151
1158
1182
25
25
32
34
34
34
34
34
34
34
46
61
41
41
41
53
53
53
48
73
53
65
60
77
77
92
99
99
106
111
137
154
161
151
173
180
175
185
187
187
199
199
199
194
209
209
209
211
223
223
247
252
264
264
271
295
295
302
319
319
319
348
350
345
372
402
446
475
482
489
501
525
520
520
566
566
602
594
594
671
709
721
916
1163
1170
1194
32
34
34
34
34
34
34
46
41
41
41
53
53
53
53
73
53
53
65
65
85
60
60
72
89
89
104
111
111
113
123
125
135
149
161
151
180
175
192
187
206
206
206
221
221
221
223
223
238
247
247
259
276
271
302
302
331
331
331
360
350
357
357
384
383
458
487
494
513
520
520
537
532
587
587
614
606
606
683
721
733
928
1175
1182
1206
27
34
34
34
34
34
46
41
41
41
41
41
58
53
53
73
53
53
53
53
65
65
80
85
60
77
92
72
89
89
116
96
96
123
123
130
135
125
135
147
154
144
161
161
161
185
192
187
187
199
204
206
233
233
233
235
245
247
259
271
283
283
283
295
314
314
343
343
343
345
372
357
396
395
470
499
504
506
520
532
549
544
618
618
695
733
745
1187
1194
1218
34
34
34
34
34
34
41
58
53
65
80
60
60
60
60
60
77
77
92
104
84
106
96
96
128
135
135
135
125
147
137
137
132
147
154
166
173
173
173
175
175
185
187
204
206
206
216
245
245
245
247
271
283
283
295
302
321
321
355
355
355
357
384
408
383
402
482
506
513
544
561
556
599
625
625
707
745
757
1199
1206
1230
27
27
27
27
34
34
34
53
53
70
60
60
60
77
104
84
84
116
113
135
147
147
147
132
154
154
139
161
173
185
185
175
175
185
185
185
187
216
228
245
257
257
257
259
283
283
295
302
302
321
321
333
367
367
367
357
396
388
420
395
402
494
525
556
573
568
606
606
625
719
757
769
1211
1218
1242
1
27
34
34
34
53
53
53
53
53
53
53
70
60
82
87
89
84
84
116
123
120
142
154
154
154
139
161
161
161
180
180
185
192
192
187
197
194
228
235
269
269
269
269
271
283
295
307
321
321
333
340
357
379
379
379
408
395
432
402
489
506
520
537
568
585
580
731
769
781
1223
1230
1254
1
1
27
27
27
34
34
34
34
34
34
41
58
53
53
53
53
53
53
53
53
53
53
65
65
82
72
89
89
94
84
84
96
123
130
142
154
161
161
161
161
161
161
199
199
199
194
204
211
233
235
247
281
281
281
276
276
283
307
314
321
321
333
340
391
391
391
420
395
402
444
414
487
489
501
518
549
580
597
592
625
743
781
793
1235
1242
1266
1
27
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
53
53
53
53
53
53
53
53
65
85
65
65
92
92
77
77
72
89
84
96
101
96
96
108
113
130
142
137
137
161
173
173
173
185
199
216
218
240
240
250
252
252
247
254
293
293
293
288
288
295
314
314
333
340
403
403
403
395
432
402
414
456
421
494
494
513
530
561
592
609
604
755
793
805
1247
1254
1278
1
27
34
34
34
34
34
34
34
34
41
41
41
41
73
53
53
53
53
53
53
53
65
77
92
77
77
104
104
84
84
84
84
111
101
96
96
108
120
132
154
149
149
161
161
173
185
185
185
197
211
223
257
259
259
259
254
266
276
305
305
305
307
314
326
326
340
415
415
415
395
402
444
414
421
468
506
506
520
520
542
573
604
616
616
767
805
817
1259
1266
1290
1
34
34
34
34
34
34
34
41
41
41
41
53
53
53
53
80
65
77
99
84
89
99
99
84
84
84
84
111
111
111
123
113
130
130
120
132
166
156
156
173
185
197
197
197
209
206
218
223
259
254
266
278
317
317
317
319
321
326
333
333
362
427
427
427
402
414
456
421
480
494
520
532
532
554
585
616
623
779
817
829
1271
1278
1302
1
27
27
34
34
41
41
41
41
53
53
53
53
53
60
60
65
87
77
94
84
84
84
101
106
106
123
118
118
118
130
130
130
120
142
132
139
178
163
163
185
197
209
209
209
206
216
257
254
266
278
290
329
324
324
321
331
333
333
362
395
402
439
439
439
414
421
468
492
494
520
532
539
539
566
597
791
829
841
1283
1290
1314
1
1
1
27
27
34
34
34
34
34
53
53
53
53
53
53
53
60
60
60
65
65
77
84
84
94
84
106
111
108
113
113
130
130
130
137
142
142
142
127
127
149
139
146
190
190
190
192
204
221
221
221
228
278
288
290
302
341
336
343
345
395
414
451
451
451
426
480
504
506
532
539
578
604
616
803
841
853
1295
1302
1326
27
27
27
34
34
46
41
73
53
53
53
53
53
60
65
65
65
65
77
77
84
84
101
113
118
123
115
115
130
137
137
142
142
149
161
146
166
158
202
197
197
204
216
233
233
233
235
290
302
314
321
353
348
355
352
407
426
463
463
463
433
492
494
494
518
513
525
539
585
616
611
623
630
815
853
865
1307
1314
1338
27
34
34
34
41
61
53
48
58
80
65
60
65
75
77
77
84
84
101
108
120
130
130
137
142
137
149
149
149
139
161
161
158
173
163
170
197
197
214
209
211
223
245
245
245
307
302
314
321
326
333
365
360
367
414
433
475
470
470
504
530
520
520
604
628
623
630
642
827
865
877
1319
1326
1350
1
1
34
34
34
34
34
34
34
34
41
68
68
53
53
48
53
65
87
77
82
84
84
130
130
120
142
137
154
149
139
161
156
156
146
161
163
170
182
197
197
209
226
216
211
223
223
257
257
257
276
314
314
326
338
345
377
372
379
414
487
482
542
585
616
640
635
637
654
839
877
889
1331
1338
1362
1
27
27
27
27
34
34
34
34
34
34
34
34
41
41
41
46
41
53
53
80
75
70
87
87
77
84
89
120
130
142
154
146
161
161
158
173
182
194
209
216
238
218
245
230
235
262
269
269
269
264
264
276
288
314
314
314
326
326
338
345
352
389
384
391
433
470
470
499
494
554
628
652
642
661
851
889
901
1343
1350
1374
1
1
27
27
27
39
34
34
34
39
34
34
34
34
34
34
34
34
34
46
41
58
53
53
53
53
87
82
72
99
99
84
113
113
137
154
156
161
173
168
170
180
194
206
216
223
218
250
252
269
281
281
281
271
271
276
288
314
314
314
326
326
338
345
357
352
352
352
364
401
396
403
482
511
506
566
640
642
664
661
863
901
913
1355
1362
1386
27
39
34
34
34
34
51
51
41
41
61
58
58
53
53
53
53
53
53
53
53
65
80
65
77
77
72
94
94
89
89
84
84
106
106
96
96
125
125
137
156
161
180
180
182
192
197
201
213
230
262
271
271
293
293
293
283
319
326
326
333
350
369
364
364
371
408
408
415
433
494
523
518
578
652
637
676
875
913
925
1367
1374
1398
27
27
27
49
34
34
34
34
51
41
58
58
68
53
53
53
53
53
53
65
65
80
65
65
87
77
84
84
84
89
84
96
96
96
96
113
113
113
113
147
132
132
137
149
187
197
197
194
199
209
225
252
274
269
271
271
283
305
305
305
290
314
326
333
333
362
381
371
371
420
415
427
438
506
535
530
590
664
688
887
925
937
1379
1386
1410
1
1
27
34
34
34
34
34
41
41
41
56
63
53
53
53
53
53
75
65
65
77
77
87
77
77
94
84
84
84
84
91
96
113
103
125
154
154
139
139
149
166
166
161
178
180
197
209
206
221
223
237
286
283
290
317
317
317
314
314
333
345
352
357
352
374
393
432
439
419
450
518
547
542
602
676
700
899
937
949
1391
1398
1422
1
27
27
27
34
34
34
34
34
34
46
41
46
41
41
63
53
53
53
75
65
77
77
89
89
94
89
84
84
96
103
103
115
137
166
161
173
173
173
168
185
221
218
228
249
271
271
298
290
329
329
329
326
333
352
352
364
386
405
444
431
438
462
530
559
554
614
688
712
911
949
961
1403
1410
1434
1
1
27
27
27
27
27
39
34
34
34
34
34
34
34
34
41
41
58
58
87
82
87
77
84
84
101
101
108
144
166
146
146
146
146
173
173
168
180
228
230
240
254
254
254
254
261
283
310
341
341
341
345
371
398
417
456
443
445
469
542
566
566
626
700
724
923
961
973
1415
1422
1446
1
27
34
34
34
34
39
34
34
34
34
34
34
51
41
41
63
53
65
65
99
89
99
84
113
113
139
146
146
156
173
158
158
180
187
230
242
247
254
254
271
266
266
273
290
322
353
353
353
352
410
429
468
450
450
554
573
638
712
736
935
973
985
1427
1434
1458
1
27
27
27
27
27
34
34
34
39
34
34
34
49
34
34
34
34
34
46
46
41
51
63
70
89
89
106
106
96
125
125
139
158
163
165
165
187
235
235
230
254
271
266
283
273
273
285
334
333
333
365
365
365
422
441
480
566
650
642
724
748
947
985
997
1439
1446
1470
27
27
27
37
34
34
34
34
34
46
46
51
56
56
56
51
58
58
58
53
53
53
75
77
101
101
118
113
113
132
132
146
163
165
185
187
254
266
273
295
297
326
326
326
333
345
345
377
377
377
434
453
492
469
662
647
649
666
736
760
959
997
1009
1451
1458
1482
1
1
27
27
27
27
34
34
44
34
34
58
58
58
63
63
63
58
63
65
65
65
65
87
118
113
113
108
108
125
125
139
139
139
146
158
197
187
228
254
274
271
266
278
302
304
326
333
345
357
357
389
384
384
446
460
445
504
674
654
673
748
772
971
1009
1021
1463
1470
1494
1
27
27
34
34
34
34
34
46
41
51
58
53
53
65
65
70
75
70
70
65
77
72
99
84
125
115
115
137
139
146
151
151
151
178
178
178
170
233
240
257
254
271
283
278
285
316
338
345
352
364
364
401
396
453
472
516
654
686
673
760
784
983
1021
1033
1475
1482
1506
39
34
34
34
34
34
34
34
41
41
53
63
53
53
53
53
53
53
65
65
65
77
82
82
72
89
84
84
79
79
106
120
137
159
144
146
178
158
163
163
163
185
185
185
177
228
240
247
254
264
264
266
295
285
328
345
345
352
413
408
450
484
474
528
649
698
772
796
995
1033
1045
1487
1494
1518
1
20
27
27
27
27
34
34
34
34
34
34
34
34
34
34
51
41
41
63
53
53
53
53
53
53
53
53
75
65
65
72
77
89
89
89
89
84
84
101
113
113
127
144
166
185
185
170
175
175
175
185
197
189
235
240
247
259
276
276
278
297
302
302
340
425
420
455
457
496
481
540
566
710
784
808
1007
1045
1057
1499
1506
1530
20
27
27
27
27
27
34
34
39
34
34
34
34
34
34
46
41
63
53
53
53
53
53
75
65
70
65
65
70
65
65
82
82
77
77
89
84
84
96
101
101
108
113
113
125
125
115
185
185
197
177
177
187
187
187
204
201
259
264
266
285
285
302
309
314
314
352
437
432
462
462
508
552
573
722
796
820
1019
1057
1069
1511
1518
1542
1
25
27
27
27
27
27
27
34
34
34
34
34
39
34
34
34
34
34
41
41
41
41
51
51
53
48
58
75
65
60
65
82
72
87
77
77
77
77
82
82
77
89
89
89
84
84
101
108
108
115
115
137
137
127
139
197
204
189
199
199
199
208
235
266
297
314
316
321
321
364
449
444
520
564
734
808
832
1031
1069
1081
1523
1530
1554
1
1
1
1
25
32
27
27
34
34
34
34
34
34
34
46
51
41
53
53
53
53
63
63
58
53
53
48
53
65
82
77
89
79
79
94
84
84
84
94
94
89
101
96
108
115
115
127
149
149
139
139
182
204
201
211
211
211
264
264
290
307
309
321
350
369
376
461
456
481
532
576
746
820
844
1043
1081
1093
1535
1542
1566
1
32
37
27
34
34
39
34
34
34
41
41
46
41
46
58
48
63
70
70
60
60
60
60
75
65
77
89
89
84
106
106
101
101
113
108
115
115
127
139
139
161
161
189
208
223
223
223
297
302
302
316
362
369
364
381
388
468
468
457
544
588
758
832
856
1055
1093
1105
1547
1554
1573
1
1
1
20
25
27
27
27
27
34
34
34
34
39
34
34
34
44
34
34
41
53
53
53
53
48
58
58
60
70
70
77
77
67
67
67
67
67
67
82
89
113
113
113
113
108
115
115
139
151
173
173
190
189
208
220
235
235
235
247
297
302
316
328
374
376
393
400
475
556
600
770
844
868
1067
1105
1117
1559
1561
1585
1
1
13
20
27
27
27
32
27
34
34
34
34
34
34
34
34
34
39
34
34
39
41
41
41
46
46
46
41
41
41
41
41
51
48
48
53
58
65
70
65
65
67
67
77
77
89
84
79
79
79
79
79
79
89
89
96
115
125
120
120
127
151
163
185
185
185
185
220
240
227
247
247
247
259
328
335
364
381
400
412
568
612
782
856
880
1079
1112
1124
1571
1597
1
13
25
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
39
34
34
39
34
46
46
41
41
41
41
46
51
46
53
48
48
58
58
53
48
48
58
75
60
60
65
72
77
67
67
72
89
84
96
91
91
101
101
91
91
91
91
108
127
132
139
163
185
185
175
190
197
197
197
197
227
247
259
259
259
264
271
302
335
381
424
580
624
659
794
868
892
1091
1136
1583
1609
1
1
1
1
13
13
20
27
37
27
27
27
27
27
34
34
34
34
34
34
39
34
34
34
34
39
34
34
46
51
41
51
51
53
53
58
48
53
48
58
58
58
53
60
60
65
60
65
65
60
60
65
82
67
67
67
67
67
67
72
79
89
113
113
103
103
103
103
103
103
120
120
171
151
170
182
209
209
209
209
189
240
259
271
271
271
278
297
314
436
467
592
636
666
806
880
904
1103
1148
1595
1621
25
20
27
27
27
34
44
34
34
34
34
39
34
34
34
46
41
41
46
41
46
46
46
41
46
41
58
58
58
53
53
58
58
53
53
60
60
65
60
65
65
65
65
72
72
72
67
72
77
67
67
67
67
67
67
72
72
94
89
91
96
125
125
115
115
115
115
115
115
132
163
178
194
189
221
221
201
216
216
208
271
283
278
278
297
309
316
321
448
462
474
486
604
648
654
678
818
892
916
1115
1160
1607
1633
1
13
27
27
32
27
27
27
27
27
27
34
34
34
34
51
51
41
51
46
48
48
53
53
48
53
53
53
58
58
65
65
65
65
65
65
72
67
72
72
72
72
67
72
72
67
77
72
72
84
84
84
79
89
89
101
118
103
137
127
127
127
127
127
127
137
144
144
144
175
206
201
233
233
208
228
220
278
295
290
309
316
328
381
460
469
469
493
493
616
660
661
661
685
685
830
904
928
1127
1172
1619
1645
13
25
27
27
27
34
39
34
34
34
39
34
34
34
34
34
34
46
41
46
41
41
41
41
63
48
48
58
48
48
58
58
53
60
65
65
65
65
72
72
72
77
72
94
79
79
79
84
89
79
79
79
79
79
84
96
96
96
86
101
118
125
110
139
139
149
149
134
134
134
134
156
151
151
187
218
245
245
220
235
227
307
302
328
335
386
388
405
472
469
493
505
505
628
672
661
685
697
697
842
916
940
1139
1184
1631
1657
1
1
13
13
20
20
32
27
27
27
34
34
34
34
34
46
41
41
46
41
41
41
46
46
41
41
41
48
53
53
48
53
48
58
48
48
48
75
65
65
65
77
72
67
84
79
84
84
79
79
79
79
79
101
101
91
96
101
91
91
91
108
108
113
125
115
115
115
115
125
122
161
161
151
146
151
146
151
151
168
163
178
199
230
257
257
227
283
319
314
345
335
393
400
412
484
505
512
512
640
684
697
704
704
854
928
952
1151
1196
1573
1643
1669
1
25
20
20
27
27
27
27
27
27
27
39
34
39
34
34
34
34
34
34
34
34
46
41
41
41
48
53
48
48
53
53
53
53
53
58
60
65
65
60
60
65
87
67
67
77
72
89
84
79
79
79
79
79
79
79
79
96
91
96
91
91
108
103
108
113
103
98
98
120
120
115
115
125
127
127
134
151
151
173
173
163
158
163
158
163
180
170
211
216
242
269
269
295
331
326
345
357
376
393
496
512
652
696
704
866
940
964
1163
1208
1561
1585
1655
1681
1
1
1
8
27
27
27
27
27
32
27
27
27
27
34
34
34
34
34
34
34
34
34
34
46
51
46
46
41
46
51
53
53
53
48
53
53
53
53
65
60
60
60
60
65
60
60
65
72
77
77
67
72
77
99
79
79
91
91
91
91
91
91
91
108
98
108
98
98
115
120
120
110
132
132
127
132
132
134
134
146
163
185
185
175
170
175
170
170
192
199
221
223
254
281
281
307
343
338
369
508
664
708
878
952
976
1175
1215
1597
1667
1688
1
8
13
15
27
27
27
34
34
34
34
34
34
34
34
39
34
34
41
41
41
41
46
48
53
58
53
53
58
65
60
60
65
60
60
60
77
72
67
72
72
72
77
84
89
89
79
79
79
79
111
98
98
103
103
98
103
98
120
115
120
127
132
122
127
144
144
134
144
158
170
170
187
182
197
197
187
182
187
182
204
201
213
235
266
293
293
278
278
283
324
324
314
355
350
384
384
381
493
720
685
890
964
988
1112
1124
1182
1227
1609
1674
1700
1
1
1
1
1
1
1
15
20
27
39
34
39
34
34
34
46
46
41
51
48
53
53
53
53
65
70
60
60
65
65
70
77
72
77
72
72
72
72
72
89
79
79
84
79
84
79
79
84
84
96
101
91
91
101
123
103
113
115
115
115
110
127
127
132
139
144
129
156
156
156
151
170
194
209
194
194
204
194
194
216
223
225
247
273
305
300
290
290
336
362
362
396
393
469
493
505
661
666
685
732
697
902
976
995
1136
1239
1621
1712
1
1
1
1
1
1
1
1
1
1
1
13
13
13
13
8
27
27
27
27
34
34
34
34
34
51
51
46
41
46
46
41
48
58
53
58
53
53
53
63
53
53
53
65
65
70
65
60
70
72
72
72
72
72
72
77
89
89
79
79
79
101
91
91
86
91
96
108
108
98
113
103
135
110
115
120
127
132
122
122
139
139
144
134
134
134
134
146
156
151
151
141
163
163
168
163
177
206
216
216
206
201
206
201
228
237
232
254
285
312
312
302
348
340
374
369
408
405
469
505
517
661
697
744
709
914
983
1007
1148
1251
1633
1724
1
1
1
1
1
1
1
13
8
13
8
13
13
8
13
8
20
20
20
20
34
34
34
34
34
34
34
34
39
34
34
46
46
46
41
41
46
41
41
46
41
48
63
58
53
53
58
48
48
53
53
58
70
65
70
60
75
60
72
72
82
77
77
84
84
79
79
89
84
101
106
101
113
113
108
103
108
103
98
120
115
115
110
130
125
115
147
122
127
139
144
129
166
151
146
156
146
146
151
173
163
163
153
175
180
175
189
218
228
218
218
240
249
239
297
324
314
360
347
386
393
420
417
417
412
479
474
517
524
671
709
756
716
926
1019
1160
1263
1645
1736
1
8
13
13
13
8
8
8
20
20
20
20
20
27
27
27
27
34
34
34
34
34
56
41
46
41
41
41
48
53
58
53
58
53
53
53
48
48
53
53
58
70
65
65
65
60
60
65
60
65
70
65
82
72
72
77
77
72
67
72
72
72
87
72
72
77
79
79
94
79
79
79
79
89
89
101
96
91
91
96
91
91
113
113
125
130
120
115
115
115
110
115
110
110
110
132
122
137
122
159
134
139
129
146
146
146
156
151
151
141
163
158
168
158
158
185
185
175
175
165
187
197
197
187
182
201
230
240
230
230
252
232
254
254
261
285
309
319
336
326
340
372
398
398
388
400
432
429
424
469
486
493
524
536
661
678
685
716
768
728
938
1031
1172
1275
1657
1748
1
1
1
20
25
20
15
27
27
27
27
27
44
34
34
34
34
34
34
34
34
46
41
41
41
63
58
53
53
53
60
65
65
60
65
60
65
65
65
72
72
72
72
72
84
89
89
89
84
84
79
99
79
91
91
91
91
101
98
103
108
103
103
103
120
110
110
137
137
132
127
127
122
122
122
122
122
144
129
171
146
146
141
158
158
168
163
153
175
170
180
170
170
185
197
182
177
199
209
199
194
213
235
242
252
242
242
264
239
266
273
295
297
321
326
348
338
347
384
410
405
444
441
436
505
548
697
780
740
950
1043
1184
1287
1669
1760
8
8
8
32
27
32
27
34
34
34
34
34
34
51
46
46
41
53
53
53
53
53
60
65
65
77
72
77
84
79
79
84
91
96
96
91
111
98
98
103
98
98
110
115
110
110
110
115
132
127
149
139
139
134
129
129
129
156
141
183
158
153
165
170
180
170
165
187
177
177
192
182
182
197
204
189
211
216
211
201
228
225
254
264
254
254
276
273
285
302
309
333
360
350
396
422
456
453
443
512
555
704
792
747
962
1055
1196
1299
1681
1772
1
1
1
44
44
53
65
65
65
65
65
77
89
108
123
110
115
122
122
127
144
161
151
168
153
195
170
165
182
192
177
199
189
204
194
194
201
223
223
240
237
266
276
266
266
288
297
321
345
372
362
408
434
468
465
804
974
1067
1208
1311
1693
1784
