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
53
58
65
65
77
72
72
89
89
89
84
84
96
96
96
233
281
281
1
8
77
72
84
96
96
96
96
96
108
245
269
269
293
293
8
15
72
84
84
84
84
84
96
108
120
257
281
281
300
300
20
27
65
65
72
84
84
96
103
120
120
127
269
293
293
312
65
65
65
72
72
72
72
84
96
96
108
120
127
127
281
300
300
324
1
65
84
84
89
84
84
91
103
103
120
120
115
127
293
312
336
8
96
91
96
91
127
127
139
305
324
348
1
15
91
96
91
103
120
139
151
312
336
355
8
27
91
96
103
103
127
151
151
158
348
367
20
96
91
96
96
91
115
115
127
158
158
158
360
379
96
91
91
103
108
120
120
127
122
122
151
151
158
158
360
372
379
391
1
96
108
120
127
127
127
127
122
122
158
158
281
324
372
384
391
403
1
1
8
103
115
115
127
170
170
293
336
384
391
403
410
1
1
1
8
15
103
103
103
127
182
182
305
348
391
410
422
1
1
1
1
1
8
20
27
96
103
115
115
115
115
127
127
127
151
151
151
189
189
189
189
312
355
422
434
1
1
1
1
8
8
15
91
108
120
115
115
115
115
115
115
127
127
127
139
158
158
158
158
158
182
182
189
189
189
189
189
367
434
434
434
434
434
446
1
1
8
8
8
20
15
27
103
103
108
120
115
115
127
127
127
127
127
127
127
127
139
134
146
146
146
158
158
158
158
158
182
182
182
182
189
189
189
189
189
379
434
434
434
434
446
446
446
446
446
458
1
1
8
15
15
20
27
103
103
103
103
103
115
115
115
115
115
115
127
127
127
127
127
127
127
127
134
134
139
134
151
151
146
146
146
158
158
158
182
182
182
182
182
182
189
189
189
189
189
189
189
201
391
434
434
446
446
446
446
458
458
458
458
458
470
1
1
8
8
20
27
27
103
103
108
103
103
115
115
115
115
115
115
115
127
127
127
127
127
127
127
127
139
139
134
139
134
151
151
151
146
146
146
151
158
158
158
158
158
182
182
182
182
182
189
189
189
189
189
189
189
189
201
213
403
434
434
434
434
446
446
458
458
458
458
470
470
465
465
470
482
8
20
15
103
103
103
103
103
115
115
115
120
127
127
127
127
127
127
127
127
139
139
139
134
139
151
151
146
146
146
146
151
146
146
158
158
158
158
158
158
158
182
182
182
189
189
189
189
189
189
189
189
189
189
201
213
220
415
434
446
446
446
446
458
458
470
465
465
470
477
482
482
482
494
20
27
103
103
103
103
103
103
120
115
115
115
115
115
115
115
127
127
127
127
127
139
134
139
134
134
134
151
146
151
146
146
146
146
146
158
158
158
158
158
158
158
158
165
182
182
189
189
189
189
189
189
201
201
213
220
415
415
427
434
434
434
446
458
458
458
458
465
465
477
482
482
489
494
494
494
506
1
1
1
1
34
34
34
103
103
115
115
115
127
127
127
127
127
139
134
139
134
146
146
151
151
146
146
151
151
146
146
146
146
146
158
158
158
158
158
165
165
182
182
182
189
189
189
189
189
189
201
201
213
213
220
427
427
434
439
446
446
446
458
470
465
465
470
477
489
494
494
501
506
501
506
513
1
1
1
1
27
27
34
34
46
46
46
103
120
132
127
127
127
134
139
146
146
146
146
151
146
146
146
146
158
158
158
158
158
158
158
158
158
165
165
182
182
189
189
189
189
189
189
189
189
189
201
213
213
220
220
415
415
439
434
439
434
446
446
458
458
458
465
477
482
482
489
501
506
501
513
513
513
513
525
1
1
1
1
34
58
58
58
58
115
127
139
134
139
139
134
134
146
146
146
146
146
146
158
158
158
158
158
158
158
170
165
165
182
182
189
189
189
189
189
201
201
201
213
213
220
220
415
427
427
434
434
434
446
446
446
446
458
465
465
470
477
489
494
494
501
513
513
513
520
525
525
520
532
1
1
1
1
27
46
65
65
65
65
127
139
134
134
134
146
146
146
146
146
146
158
158
170
170
165
177
189
189
189
189
189
189
201
213
213
213
213
220
220
415
415
427
434
439
439
446
446
446
458
458
470
477
477
482
489
501
501
506
513
520
525
520
532
532
532
532
544
1
1
1
34
53
77
77
103
103
115
115
127
134
134
134
146
146
146
146
146
146
158
158
158
170
182
182
177
177
189
189
213
213
220
220
220
220
415
427
427
434
439
446
446
446
458
458
458
465
465
482
494
489
489
501
513
513
513
520
532
532
539
544
544
556
1
1
1
1
27
27
34
34
89
89
103
103
103
115
115
115
115
127
127
127
127
127
127
139
134
146
146
146
146
158
158
170
165
182
177
177
177
189
189
189
213
213
213
220
220
415
427
439
439
446
446
458
465
470
470
477
477
494
501
501
501
513
520
525
520
532
539
551
556
556
568
1
1
1
39
34
34
53
101
101
103
115
115
127
127
127
127
127
127
127
127
127
127
139
139
139
146
146
146
158
170
165
182
182
177
177
177
177
189
189
189
213
220
220
220
427
439
451
446
458
465
477
482
482
489
489
501
513
513
513
520
532
532
532
539
563
568
568
580
1
1
1
34
34
51
53
113
113
103
115
115
115
127
127
127
139
139
139
139
139
146
146
146
146
146
146
146
158
158
165
182
182
177
177
189
189
189
189
213
208
220
415
415
439
446
463
465
477
489
494
494
501
501
513
520
520
520
532
539
544
551
575
580
580
592
1
1
1
34
34
53
65
103
125
125
115
115
115
127
127
127
127
139
139
146
146
146
146
146
146
146
146
146
158
158
165
170
182
182
182
177
189
189
189
208
220
427
427
451
475
477
489
501
501
501
513
513
520
532
532
532
539
556
563
587
592
592
604
1
1
1
34
34
53
77
115
115
137
137
127
127
127
127
127
139
139
146
146
146
146
146
158
158
170
165
182
182
177
177
189
189
189
208
208
439
439
463
487
489
501
513
513
513
520
520
532
539
539
551
568
575
599
604
604
616
1
1
1
34
34
53
89
127
127
127
127
149
149
139
139
146
146
146
146
146
146
158
158
170
165
182
177
177
189
189
208
208
451
451
475
494
501
513
520
520
520
532
532
551
551
563
580
587
611
616
628
1
1
34
34
34
53
101
127
139
134
134
161
161
146
146
146
146
146
158
158
170
170
177
177
189
189
208
208
463
463
487
506
513
520
532
532
539
539
563
563
575
592
599
623
640
1
1
1
1
1
34
34
34
46
53
53
53
113
127
139
134
134
146
146
146
146
173
173
158
170
170
177
177
189
189
208
208
208
415
475
475
494
513
520
520
532
539
539
551
551
575
575
587
604
611
652
1
1
1
1
1
34
34
53
65
65
125
127
139
134
134
161
161
146
146
146
146
146
158
158
180
180
170
177
177
177
177
189
213
208
415
427
487
482
506
513
520
525
520
532
539
539
539
539
551
551
563
563
587
587
599
623
664
1
1
1
1
72
72
103
115
137
127
127
139
134
134
146
146
146
146
146
146
146
146
173
173
158
158
158
170
165
192
177
213
213
208
208
208
208
220
427
439
494
494
513
513
520
525
537
532
539
539
539
551
551
551
563
563
575
575
599
599
611
676
1
1
34
72
103
103
115
115
127
127
127
127
127
127
149
139
134
134
146
146
146
146
146
146
146
146
146
158
158
158
158
180
180
170
170
165
177
177
177
177
177
204
213
208
208
208
220
220
439
451
506
501
501
520
525
525
520
532
549
544
551
563
563
563
575
575
587
587
611
611
618
688
1
1
34
72
72
103
103
103
115
115
115
127
127
127
127
127
127
127
139
134
134
139
161
146
146
146
146
146
146
146
146
146
146
158
158
158
158
158
170
170
170
165
192
177
177
177
177
177
177
216
208
208
208
208
220
451
463
513
513
513
532
532
537
539
544
561
556
563
575
575
575
587
587
599
599
623
618
700
1
34
34
72
84
103
103
103
103
115
115
115
115
127
127
127
127
127
127
127
139
139
139
146
146
146
146
146
146
146
146
168
158
158
158
158
170
170
165
170
170
177
177
177
177
177
177
177
177
204
223
208
208
463
475
513
525
520
539
544
544
549
551
556
573
568
575
587
587
587
599
599
611
611
630
712
1
84
91
91
91
91
103
103
103
115
115
115
127
127
127
127
127
127
127
127
127
139
139
139
146
146
146
146
146
158
158
170
165
170
170
177
177
177
177
177
177
177
177
216
208
208
235
475
482
525
532
537
556
556
561
563
568
585
580
587
599
599
599
611
611
623
618
724
1
72
72
72
72
91
91
103
103
115
115
127
127
127
127
127
127
127
139
139
139
139
146
146
146
146
146
146
158
170
165
177
177
177
177
177
177
177
228
228
247
247
482
494
544
549
568
568
573
575
580
597
592
599
611
611
611
623
623
630
736
1
34
72
72
103
115
127
127
127
127
149
139
139
139
146
146
146
146
146
158
170
177
177
177
204
208
240
240
259
259
494
501
556
561
580
580
585
587
592
604
611
623
623
623
630
635
748
1
72
84
91
91
127
127
139
139
161
146
146
146
170
177
177
216
247
247
266
266
501
513
539
568
573
592
592
597
599
604
623
630
635
647
760
1
91
91
91
91
103
103
115
139
146
146
146
146
168
177
223
278
278
501
513
539
551
580
585
604
604
611
630
647
659
772
1
72
91
91
91
91
91
110
110
110
110
115
115
146
146
146
146
146
158
208
235
290
290
290
290
501
513
532
539
551
563
592
597
623
659
671
784
91
91
91
91
91
91
110
110
110
110
110
110
115
115
146
146
146
146
146
158
158
170
189
208
208
247
290
290
290
290
290
302
302
302
302
513
520
539
551
563
575
604
671
683
796
91
91
91
91
91
91
91
110
110
110
110
110
115
115
110
110
122
146
146
146
146
146
158
158
158
170
170
177
208
208
259
290
290
290
302
302
302
302
302
309
309
314
314
434
520
551
563
575
587
618
683
695
808
1
91
91
91
91
91
91
91
110
110
110
110
110
110
110
110
110
110
110
115
110
110
110
134
146
146
146
146
158
158
170
170
177
177
208
208
271
290
290
290
290
302
302
302
309
309
314
314
314
321
326
326
446
520
563
575
587
599
618
630
695
707
820
1
8
91
91
91
91
91
110
110
110
110
110
110
110
110
110
110
122
122
122
146
141
158
170
170
177
177
208
271
271
283
290
290
290
290
302
302
302
302
309
309
314
321
326
326
326
333
333
333
458
532
575
587
599
611
618
630
707
719
832
1
1
1
8
15
91
91
91
91
91
110
110
110
110
110
110
110
122
122
134
129
129
170
177
177
283
283
290
290
302
302
302
302
309
309
309
314
321
326
333
333
333
333
345
340
340
465
520
587
599
611
618
618
719
731
844
1
1
1
20
27
91
91
91
91
91
96
91
91
91
91
91
110
110
110
110
110
110
122
122
127
122
129
129
129
141
158
177
271
290
290
290
302
309
309
314
314
321
321
326
333
333
345
340
340
340
352
352
352
477
520
599
611
618
618
731
743
856
1
1
8
91
96
96
91
96
91
96
91
91
91
103
110
110
110
110
110
120
110
110
110
110
110
127
122
129
129
129
129
151
158
158
158
158
158
189
271
271
283
290
290
290
290
302
314
321
321
326
326
333
333
333
360
360
360
345
340
352
352
379
359
364
364
484
611
618
630
743
755
868
1
1
1
1
1
8
15
96
96
96
91
91
91
108
108
110
110
110
120
110
110
110
110
110
127
122
127
127
122
122
122
129
129
151
158
158
158
158
158
158
189
271
283
283
290
290
302
302
302
302
309
326
333
333
333
333
360
345
345
340
372
372
372
352
379
379
359
364
391
371
376
376
434
520
618
630
755
767
880
1
1
1
1
8
8
15
27
91
91
96
96
91
91
96
91
91
91
110
110
120
115
110
110
110
110
110
122
122
127
122
122
129
129
129
134
151
151
158
158
158
158
170
189
271
271
283
290
290
290
302
309
309
314
314
321
333
340
340
345
345
372
352
352
352
384
379
384
384
359
391
391
376
403
383
388
388
415
446
513
520
630
767
779
892
1
1
1
8
8
8
20
15
27
91
91
91
91
91
96
91
91
103
103
103
120
120
110
110
110
110
110
110
122
122
127
127
127
129
129
151
151
146
158
158
158
158
158
158
158
158
158
158
170
182
271
283
283
290
302
309
321
321
326
326
333
360
360
340
352
352
352
379
384
379
359
359
364
396
391
396
391
371
403
403
388
410
395
400
400
427
458
513
532
618
779
791
904
1
1
20
20
15
27
91
96
96
96
91
91
96
96
96
91
91
91
96
96
96
91
91
91
103
103
103
103
115
115
110
115
110
110
110
110
110
110
127
127
127
127
127
122
127
127
127
127
129
129
151
151
151
151
141
158
158
158
158
158
158
158
158
158
158
182
189
271
283
290
295
309
321
333
333
333
333
360
360
345
372
372
352
379
379
379
379
359
359
391
391
391
371
376
403
383
408
408
415
410
400
422
407
412
439
465
501
532
618
791
803
916
1
8
27
96
96
91
96
96
96
91
91
96
91
91
91
91
96
91
91
108
103
103
115
120
120
115
115
115
115
120
110
110
110
110
110
110
127
122
122
127
127
127
127
127
122
122
127
127
122
122
139
129
129
129
151
151
151
151
151
151
151
151
151
158
158
158
158
158
158
158
158
158
158
158
189
271
283
295
307
321
333
360
345
340
345
340
372
372
352
379
384
379
384
379
379
379
391
391
391
391
371
371
403
403
383
388
395
420
420
415
422
427
419
434
424
446
477
501
513
532
803
815
928
20
96
91
91
96
96
91
91
101
91
91
91
91
91
108
108
108
103
103
103
120
120
115
120
120
115
120
110
110
110
127
127
122
127
127
122
127
127
127
127
122
127
122
127
127
122
122
129
129
129
151
151
151
151
151
141
146
158
158
158
158
158
158
158
158
158
158
158
158
158
283
295
307
314
333
360
345
372
352
352
352
384
384
379
379
379
359
391
391
396
391
391
391
396
403
403
403
403
383
383
415
415
395
400
407
432
432
427
434
439
446
436
458
484
513
513
815
827
940
1
1
96
91
96
96
91
96
96
96
91
91
96
108
103
103
103
103
115
115
120
120
115
120
115
110
110
115
122
122
127
127
122
127
122
127
127
122
127
127
127
122
127
127
129
134
129
129
151
151
151
151
151
151
146
158
158
158
158
158
158
158
158
170
170
170
295
307
314
321
360
345
340
372
352
379
384
379
359
359
359
391
391
391
391
391
371
403
403
403
403
403
408
408
410
410
415
415
395
395
407
427
427
419
439
439
439
446
451
458
448
465
501
827
839
952
1
1
1
91
103
103
108
108
108
103
115
115
115
120
110
115
120
110
115
120
120
110
110
115
127
122
122
122
127
122
127
122
127
127
127
127
134
129
151
151
151
158
158
158
158
158
158
158
158
158
158
170
170
182
182
182
182
177
307
314
321
321
333
360
340
340
340
372
352
384
379
359
359
359
359
391
391
391
371
371
371
403
403
403
383
410
415
410
410
420
415
420
422
422
427
427
407
407
439
439
414
451
451
446
458
458
465
460
501
501
839
851
964
1
1
1
1
96
91
91
103
115
110
120
120
110
110
110
110
110
127
122
122
127
122
122
122
122
127
127
122
127
127
127
122
127
127
127
139
129
129
129
129
129
139
146
151
158
158
158
158
170
182
182
182
182
177
189
189
189
189
271
314
321
333
360
340
340
372
352
352
379
384
359
359
359
391
391
371
371
403
403
383
383
383
410
410
410
395
422
422
427
432
427
427
439
439
419
434
434
414
451
451
458
458
458
465
470
477
472
513
520
539
851
863
976
1
1
1
1
1
91
103
108
110
110
115
115
110
110
110
110
110
127
122
132
122
122
122
127
122
127
139
134
139
129
129
129
129
129
129
139
151
146
146
158
158
153
170
170
182
182
182
182
189
189
189
189
271
283
321
321
333
340
340
340
372
352
384
379
364
364
391
391
371
371
403
383
383
410
395
395
395
415
422
422
407
434
439
439
439
439
434
451
446
446
446
426
458
458
470
470
465
465
477
477
484
484
520
539
539
551
863
875
988
1
1
1
91
91
91
96
91
96
103
115
110
110
110
110
110
110
127
122
139
134
134
129
129
129
139
129
146
141
146
146
146
146
146
158
182
182
189
189
189
189
283
295
321
333
340
340
352
352
384
364
391
396
376
376
403
383
383
395
415
395
422
407
407
407
427
434
434
414
446
451
451
446
446
446
458
458
458
458
470
470
482
484
489
496
501
496
532
539
539
551
563
875
887
1000
1
1
1
1
1
1
91
91
91
91
96
91
91
96
103
108
108
110
115
110
110
110
115
115
122
127
122
139
129
129
151
141
141
141
146
146
158
153
182
189
189
295
307
352
352
359
359
364
364
391
376
403
408
388
388
410
395
395
407
427
407
419
434
419
439
414
446
446
458
458
458
458
458
458
470
465
465
465
477
477
494
501
508
508
532
532
539
551
563
570
887
899
1012
1
1
1
1
91
96
91
91
103
103
108
108
110
115
110
110
110
120
120
127
127
127
134
139
129
129
146
146
146
146
158
182
177
189
307
314
321
340
379
364
364
371
376
376
388
415
420
422
407
407
439
419
419
446
446
426
431
458
458
465
470
470
465
465
465
477
477
477
477
477
489
489
506
513
520
520
520
532
539
539
563
570
899
911
1024
1
1
1
1
1
1
1
1
91
91
96
91
91
96
91
96
91
96
108
115
110
115
110
110
120
120
127
127
127
127
127
139
146
146
146
146
146
182
177
189
314
321
352
359
391
376
376
383
388
388
427
427
434
419
446
426
431
458
458
443
465
465
477
482
477
477
477
477
489
489
484
484
484
501
501
518
525
520
532
532
539
539
551
570
911
923
1036
1
1
1
1
91
91
96
91
91
91
96
91
91
96
91
91
96
108
108
108
108
103
110
115
120
115
115
115
127
127
127
127
129
139
146
146
146
146
153
182
189
321
359
364
371
403
388
388
395
439
439
446
426
458
458
443
465
465
465
465
455
477
477
484
494
489
484
489
484
501
501
496
496
513
513
530
520
537
544
539
539
544
551
558
923
935
1048
1
1
1
1
27
91
91
91
96
91
91
96
91
91
91
96
108
108
108
108
103
110
120
120
115
120
120
115
115
115
127
122
122
127
127
139
129
146
146
146
146
146
146
177
177
177
189
321
340
371
376
383
415
407
414
446
446
458
458
465
455
477
477
467
484
484
496
506
501
496
501
513
513
508
508
525
525
542
532
549
539
539
556
551
556
558
935
947
1060
1
1
1
39
34
91
91
96
91
91
96
91
91
96
108
108
108
108
103
103
110
120
115
120
115
120
120
115
115
115
127
127
122
127
127
122
122
127
127
129
134
134
139
141
146
146
146
177
177
177
177
177
321
333
340
359
383
388
395
427
414
458
458
465
477
467
484
484
484
489
479
496
508
518
513
508
513
525
525
520
520
520
537
537
539
539
539
551
561
568
558
568
947
959
1072
1
1
34
34
51
91
91
91
91
96
91
108
108
108
103
108
108
103
103
110
115
110
110
120
120
115
115
115
120
122
127
127
122
122
127
127
134
134
134
139
141
146
146
146
146
146
146
146
177
177
177
333
340
359
371
395
407
439
414
446
426
465
477
477
489
484
479
496
496
501
491
508
520
530
525
520
525
520
537
537
532
532
549
549
539
539
551
551
558
580
580
959
971
1084
1
1
1
27
27
27
34
46
63
91
91
96
91
91
108
103
103
108
115
115
110
110
110
120
115
120
120
122
122
122
127
127
122
127
134
129
134
134
146
146
146
146
146
146
146
153
153
177
177
177
340
371
383
407
414
414
446
458
465
484
489
484
484
501
496
491
508
508
513
503
520
532
542
537
532
537
549
549
544
544
539
539
561
551
558
563
592
592
971
983
1096
1
27
27
39
34
58
75
91
96
91
91
96
103
108
103
103
115
110
115
120
115
115
110
122
122
127
127
127
122
134
129
134
134
134
141
146
141
146
146
146
146
153
153
153
177
177
177
290
340
383
395
414
414
458
465
484
484
496
501
496
513
508
503
520
520
525
515
532
544
549
544
549
539
561
556
556
551
563
573
570
604
604
983
995
1108
1
1
27
34
34
51
70
87
91
91
96
91
103
108
108
103
103
115
115
120
115
115
115
122
122
127
122
127
127
134
134
134
146
146
141
141
141
146
146
153
153
177
177
177
177
302
340
395
407
414
426
465
465
484
496
508
513
508
525
520
515
532
532
537
527
544
539
539
556
561
556
561
568
568
563
570
585
616
995
1007
1120
27
27
27
34
34
63
82
99
91
103
108
103
103
115
115
120
120
115
122
122
127
122
127
127
134
134
134
139
146
141
146
146
146
153
153
177
177
177
177
309
340
407
414
446
426
477
484
496
508
520
525
520
537
532
527
544
544
549
539
539
539
556
551
568
568
570
575
580
597
628
1007
1019
1132
1
34
34
34
46
75
94
111
103
103
108
103
103
115
110
120
115
122
127
127
134
134
134
139
146
146
146
146
146
146
146
153
153
177
177
316
414
426
465
496
508
520
532
537
532
549
544
539
539
539
539
539
556
556
551
551
568
558
575
592
609
640
1019
1031
1144
27
34
46
53
82
101
123
103
108
103
115
110
110
115
122
127
127
127
134
146
146
146
146
146
153
153
153
177
321
340
414
477
484
508
520
532
544
549
544
539
539
539
539
561
556
551
551
551
568
558
563
563
575
604
621
652
1031
1043
1156
53
53
75
94
91
91
91
113
103
135
110
115
122
127
127
134
139
146
146
153
153
153
177
177
321
340
414
496
520
532
544
539
539
539
539
556
561
556
551
551
568
558
558
563
575
575
575
616
633
664
1043
1055
1168
82
72
101
91
91
91
91
91
103
125
115
110
110
147
127
127
134
139
141
146
153
177
228
247
290
321
321
340
508
532
544
539
539
539
539
556
551
551
568
568
558
558
575
575
575
587
628
645
676
1055
1067
1180
53
53
72
72
91
91
91
91
91
113
110
132
127
127
154
139
141
146
177
228
228
228
240
247
259
271
302
321
321
340
520
544
539
539
556
551
551
568
558
558
575
575
587
599
640
657
688
1067
1079
1192
53
60
60
60
60
72
72
72
84
91
91
91
91
91
125
139
166
146
158
240
240
240
247
247
247
259
266
283
309
321
321
340
532
539
539
556
551
568
558
558
563
575
575
599
611
652
669
700
1079
1091
1204
1
53
53
53
60
60
72
72
72
72
72
91
91
91
91
91
91
91
91
91
91
91
91
91
103
137
137
146
178
178
158
228
228
247
247
252
252
259
259
266
278
290
316
321
321
360
544
539
539
551
558
563
563
575
611
623
664
681
712
1091
1103
1216
8
53
53
72
72
72
72
72
72
72
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
103
135
110
122
149
149
190
190
228
228
228
240
240
247
247
247
247
247
259
264
264
271
271
278
290
297
321
372
359
458
556
551
558
623
635
676
693
724
1103
1110
1110
1228
1
15
53
53
60
60
72
72
72
72
72
72
72
72
72
72
91
91
91
91
91
91
91
91
91
91
103
103
125
110
110
147
156
156
197
197
240
240
240
247
247
247
247
247
247
247
252
259
259
259
259
259
266
271
271
283
283
290
302
321
340
359
359
384
371
458
558
563
575
635
647
736
1115
1122
1122
1240
1
1
1
1
8
27
60
60
60
60
72
72
72
72
72
91
91
91
91
91
91
91
91
91
91
91
91
91
91
103
115
110
110
132
154
209
209
228
228
247
247
247
247
247
247
252
259
259
259
259
259
259
264
266
266
271
271
271
278
278
278
290
290
302
297
309
340
359
359
371
391
383
446
518
563
575
647
659
748
1127
1134
1134
1252
1
1
8
20
60
60
65
60
60
60
60
72
72
72
72
72
72
79
84
79
79
79
91
91
91
91
91
91
103
103
103
103
110
110
122
166
158
221
221
221
221
228
240
240
247
259
259
259
259
264
266
266
266
266
271
271
271
278
278
283
283
283
290
290
290
297
297
309
316
340
340
359
371
383
403
390
458
530
659
671
760
1134
1134
1146
1146
1264
1
1
15
53
60
60
60
60
60
72
72
72
72
72
79
84
84
84
84
79
79
79
79
79
91
91
91
91
91
91
91
91
103
103
103
103
103
103
115
110
110
110
127
127
122
127
178
221
221
221
221
221
233
233
233
233
240
247
247
259
266
266
271
271
271
278
278
283
283
278
290
290
290
290
290
302
324
324
324
324
309
309
316
328
340
340
359
359
379
383
390
410
477
477
525
542
671
683
772
1158
1158
1276
1
1
1
8
27
60
60
60
60
60
60
60
60
72
72
72
72
72
72
84
84
79
84
79
79
79
79
79
79
79
96
96
91
91
91
91
103
103
103
103
120
120
115
110
110
110
127
127
127
127
122
122
127
190
221
221
221
233
233
233
233
233
228
240
240
245
245
247
247
252
271
278
278
283
278
283
290
290
290
290
290
297
302
297
297
297
297
302
324
324
324
309
336
336
336
336
321
321
340
340
340
359
359
371
391
390
446
465
465
537
554
683
695
784
1170
1170
1288
1
1
1
1
8
20
60
60
60
70
65
60
60
60
60
60
60
72
72
72
84
79
84
79
79
79
84
79
79
79
79
79
79
79
79
79
79
79
79
79
96
96
91
91
91
91
91
91
91
103
103
103
103
103
103
115
115
120
120
115
115
110
110
127
127
127
127
127
202
202
221
221
221
221
221
233
233
233
240
240
240
245
245
245
252
257
257
259
259
264
283
290
290
290
290
290
302
302
297
297
297
324
309
309
309
309
309
336
336
336
316
316
348
348
348
348
333
333
340
352
359
359
371
378
403
465
465
465
537
549
566
695
707
796
1182
1182
1300
1
1
1
1
1
8
8
15
65
60
60
60
65
60
60
60
72
72
72
72
72
72
72
72
72
72
79
84
79
79
79
79
84
79
79
79
84
79
84
84
84
84
79
79
79
79
79
79
96
96
96
96
91
91
91
91
91
91
103
103
103
103
103
103
103
103
103
103
120
120
115
110
110
127
127
127
127
127
122
139
158
202
202
202
214
214
221
221
221
221
221
233
233
233
233
233
240
240
245
252
247
257
257
257
264
264
264
266
271
271
290
302
297
297
302
297
297
324
324
324
324
324
309
309
309
309
336
321
316
321
321
316
348
348
348
328
360
360
355
355
345
345
340
364
359
359
359
379
371
378
410
465
477
477
539
549
561
578
707
719
808
1194
1194
1312
1
1
8
20
15
27
65
60
65
60
65
60
60
60
72
77
72
72
72
72
72
79
84
79
79
79
79
84
79
79
84
79
84
84
79
79
84
79
91
91
96
91
96
96
91
91
91
91
91
108
108
103
103
103
103
103
98
98
103
103
120
120
115
115
115
120
120
115
110
110
127
127
127
127
122
122
127
127
122
139
151
202
202
214
214
214
221
221
221
221
233
233
233
233
233
240
240
240
240
245
247
252
257
264
264
264
264
276
271
271
278
283
278
278
297
297
324
324
324
309
309
309
309
336
336
336
336
336
316
316
321
321
316
348
333
328
333
333
328
360
355
355
340
340
367
372
372
357
359
359
359
359
376
371
371
391
378
422
477
477
477
539
539
561
573
590
719
731
820
1206
1206
1324
1
20
27
60
65
65
65
60
60
65
70
60
77
72
72
72
72
72
72
79
84
79
84
84
79
79
79
84
84
79
79
96
91
96
91
96
96
96
91
91
91
91
91
103
103
103
103
103
103
98
98
103
98
98
115
120
120
115
120
120
115
110
110
110
110
115
110
115
110
127
127
127
127
127
127
127
127
122
127
122
127
151
158
202
202
214
214
221
221
221
221
233
233
240
240
240
245
245
252
252
252
257
259
264
264
281
276
271
271
271
283
283
278
283
290
290
290
324
309
336
336
336
316
316
321
316
321
348
348
348
348
348
328
333
333
345
340
345
345
360
340
340
367
352
372
379
384
384
359
359
371
371
378
383
403
388
429
429
465
539
539
573
585
602
731
743
832
1218
1218
1336
1
65
65
60
60
65
65
65
60
60
72
72
72
72
79
84
89
84
79
84
79
79
79
84
84
84
84
79
84
79
79
79
79
79
91
91
96
96
96
91
91
91
103
103
108
103
103
103
103
103
98
103
103
98
103
98
98
103
120
120
120
120
115
110
110
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
122
122
139
134
158
202
214
214
221
221
221
226
233
240
245
252
252
252
257
257
264
264
264
264
281
281
281
281
276
271
271
293
283
283
290
295
295
302
297
297
324
324
324
336
316
321
316
348
348
348
328
328
333
328
333
360
360
355
355
340
345
345
360
352
372
352
357
379
364
384
359
391
396
396
371
378
383
390
410
400
458
465
477
539
539
585
597
614
743
755
844
1230
1230
1348
1
1
65
65
60
72
72
77
77
72
72
72
84
79
79
84
79
84
79
79
79
79
79
79
79
91
96
96
91
96
96
96
96
91
91
91
91
103
103
103
108
103
103
103
103
103
98
103
98
98
120
120
115
120
120
115
115
115
110
110
115
110
127
127
127
127
127
127
127
127
127
127
122
127
127
139
139
134
151
202
202
214
221
221
226
233
233
238
240
252
257
264
264
264
264
264
281
281
276
276
271
276
293
293
293
293
283
278
283
305
290
295
297
302
307
297
307
324
324
324
309
309
336
336
336
316
348
333
360
355
355
340
340
345
340
345
367
352
372
372
372
364
384
364
359
359
369
391
376
396
403
403
403
383
390
422
412
458
465
465
539
539
597
609
626
755
767
856
1242
1242
1360
1
1
1
65
60
72
77
72
84
84
84
84
84
79
79
79
79
79
91
91
96
96
96
96
91
91
103
103
103
108
103
103
103
103
103
103
103
98
98
103
98
98
120
120
115
120
115
120
110
115
110
110
127
127
127
122
122
127
122
127
127
139
139
151
151
158
214
214
226
233
238
245
245
245
252
264
264
281
276
271
271
276
276
293
293
283
283
283
278
283
305
305
305
305
290
290
317
307
297
309
314
319
319
336
336
336
316
321
316
348
348
348
328
360
345
367
352
352
372
352
357
364
379
384
384
384
359
359
359
359
376
391
376
371
381
403
403
383
410
415
415
390
429
446
477
539
539
539
609
621
638
767
779
868
1254
1254
1372
1
1
1
1
65
60
72
72
84
84
84
84
79
79
79
96
96
91
91
91
91
91
103
103
108
103
98
103
120
120
120
115
115
120
110
110
127
127
127
127
127
127
122
127
139
134
151
151
158
158
221
226
238
240
245
257
257
252
264
276
271
293
283
283
283
283
305
305
290
290
295
290
312
317
312
297
302
297
317
324
319
329
316
316
316
321
326
316
331
331
348
348
348
328
333
328
355
355
360
340
372
357
364
364
379
384
364
359
359
359
359
391
396
391
396
371
371
403
378
383
393
383
388
410
415
422
422
422
458
465
465
539
539
539
621
633
650
779
791
880
1266
1266
1384
1
1
1
60
72
84
84
79
84
79
79
96
96
96
96
96
91
91
91
91
96
103
103
98
103
103
115
120
115
115
110
110
115
110
127
127
127
127
127
127
122
127
134
151
151
151
151
146
158
158
238
245
252
252
252
264
264
264
281
276
271
271
278
283
283
305
290
290
290
290
290
312
312
302
307
302
314
329
329
336
331
341
328
328
333
338
328
343
355
355
340
345
340
360
367
367
372
352
384
359
359
359
359
376
391
396
376
371
371
371
403
403
403
403
378
378
383
410
410
405
400
422
422
429
434
434
477
539
539
539
633
645
662
791
803
892
1278
1278
1396
1
1
1
60
60
72
72
72
79
79
79
79
84
84
91
96
96
91
91
91
91
96
108
103
103
98
103
98
98
103
98
98
108
115
120
115
115
120
110
110
115
115
115
127
127
127
122
122
127
122
134
151
158
158
158
158
202
245
252
264
264
281
271
271
271
293
283
283
283
290
290
302
317
297
302
302
314
319
314
326
341
341
348
353
340
340
345
350
340
355
367
367
352
357
352
372
384
379
379
364
359
359
359
359
396
371
371
403
403
378
378
383
383
410
415
415
410
417
412
429
441
446
446
446
465
539
539
645
657
674
803
815
904
1290
1290
1408
1
1
1
1
1
60
65
65
72
72
72
79
84
84
79
84
79
84
79
79
91
91
96
96
91
103
103
98
98
103
103
103
98
98
98
108
120
115
120
110
110
115
115
120
127
127
127
122
134
134
151
146
146
158
202
214
252
252
264
276
271
271
293
283
283
305
290
295
295
302
314
329
309
314
314
326
331
316
326
338
353
348
360
360
352
352
357
352
367
364
379
364
379
384
359
359
359
359
396
391
391
371
371
371
371
403
378
378
410
415
422
422
422
422
429
429
424
453
458
458
539
539
657
669
681
815
827
916
1302
1302
1420
1
1
1
1
1
1
34
34
60
60
65
65
72
77
84
79
79
79
79
79
96
91
96
96
91
96
103
98
98
98
103
103
98
108
98
108
115
110
110
115
115
120
127
127
122
127
127
134
151
146
146
158
214
226
252
264
271
271
271
283
283
283
305
290
295
290
317
302
307
307
314
326
341
326
326
338
328
338
350
360
360
372
372
364
364
364
359
359
379
376
391
391
391
371
371
371
371
403
403
403
378
378
415
410
422
422
422
429
434
434
441
436
465
470
470
465
484
484
484
539
539
669
681
827
839
928
1314
1314
1432
1
1
1
1
1
34
60
65
60
72
72
77
84
79
84
79
79
79
79
96
91
91
96
103
98
108
98
108
108
110
115
110
115
115
115
115
115
127
127
127
127
158
226
238
281
271
283
283
290
290
295
295
290
302
307
317
302
329
314
319
319
326
338
348
338
338
340
350
345
372
367
384
379
359
359
376
371
391
371
371
371
403
403
403
378
378
415
410
410
422
422
422
429
434
441
446
446
453
448
477
482
482
484
496
496
681
681
693
839
851
940
1326
1326
1444
1
1
1
1
1
34
65
65
72
72
72
79
84
79
79
79
84
84
96
96
91
96
91
103
103
98
103
103
98
98
108
98
108
115
110
115
115
115
115
120
127
134
134
151
146
146
146
238
245
252
271
271
293
295
290
295
302
307
307
302
314
319
329
314
341
326
338
360
350
345
350
352
362
379
391
371
371
371
378
403
383
410
410
410
422
422
422
422
434
434
434
446
453
458
458
465
460
489
494
494
503
508
688
700
851
863
952
1338
1338
1456
1
1
1
1
34
60
65
65
65
72
77
72
72
72
79
84
79
79
84
79
79
84
84
96
96
96
91
91
96
103
103
103
108
108
98
108
115
115
115
115
115
115
115
115
120
127
134
151
146
158
245
252
271
283
278
305
290
307
302
307
314
319
319
314
326
341
326
348
338
367
357
362
364
374
403
378
415
422
422
422
422
422
429
434
429
446
446
446
458
465
470
470
477
472
484
484
484
484
501
506
506
515
712
858
858
875
964
1350
1350
1468
1
1
1
1
34
34
34
65
60
65
65
65
72
77
72
72
84
79
84
84
79
96
96
91
96
96
96
91
91
98
108
98
98
108
108
108
115
115
115
115
115
115
120
127
127
127
146
146
158
252
278
290
295
317
302
319
314
319
326
326
338
348
338
360
345
367
379
374
386
371
371
410
422
427
429
429
434
434
441
446
441
458
458
458
470
477
482
482
484
484
484
484
496
496
513
518
719
870
870
887
976
1362
1362
1480
1
1
1
34
34
65
60
65
65
72
72
72
79
84
84
79
84
84
96
96
96
91
91
96
91
108
103
98
108
108
108
98
108
115
115
115
115
115
115
115
115
120
127
127
134
134
228
252
278
302
307
329
314
326
326
338
338
350
360
345
345
345
367
386
398
383
410
422
434
429
429
429
429
439
441
446
446
453
458
453
470
470
470
482
489
494
494
484
484
484
484
484
484
484
496
496
503
503
530
882
882
894
988
1374
1374
1492
1
1
34
65
65
65
72
72
72
84
84
84
84
84
96
91
91
96
96
96
108
98
103
103
108
98
108
108
115
115
115
115
115
110
115
120
115
115
115
115
127
134
146
146
146
240
252
264
278
290
297
314
319
341
326
338
338
350
345
367
357
357
379
398
410
410
410
422
422
446
441
441
441
451
453
458
458
465
470
465
482
482
482
494
484
501
506
496
496
496
496
503
503
542
688
688
700
700
894
894
906
1000
1386
1386
1504
1
13
34
34
65
60
65
65
72
72
72
84
84
84
96
91
91
96
91
96
96
96
103
108
108
103
103
108
108
115
115
110
115
115
115
115
115
115
115
120
115
127
127
146
146
146
146
247
264
278
290
302
297
297
326
348
338
350
350
345
345
367
357
357
369
410
422
422
429
434
434
458
453
453
453
463
465
470
470
477
482
477
494
494
494
484
484
484
484
506
513
503
503
508
503
554
688
700
712
712
906
918
1012
1398
1398
1516
1
1
13
25
34
65
60
65
72
72
77
84
84
84
96
96
91
91
91
96
91
108
103
98
108
108
103
103
108
108
115
115
115
115
115
115
120
115
115
115
115
127
127
127
134
146
146
146
247
254
302
297
297
314
338
360
345
345
362
357
357
381
422
422
429
434
441
446
446
470
465
465
465
475
477
482
482
489
494
489
484
484
484
484
506
506
496
496
518
515
566
712
719
719
918
930
1024
1410
1410
1528
1
25
37
34
34
65
65
72
77
84
84
96
96
91
108
98
103
108
108
115
115
115
110
115
120
120
115
115
115
127
127
127
134
134
146
146
259
271
297
297
297
314
326
345
345
367
367
374
369
359
393
434
429
434
441
446
453
458
458
482
477
477
477
487
489
494
494
484
484
484
484
501
506
501
496
496
503
503
530
578
719
930
942
1036
1422
1422
1540
1
37
37
49
49
34
65
72
72
72
84
96
103
103
108
108
115
115
110
115
115
115
120
127
127
127
127
134
134
146
146
271
266
297
297
297
326
338
345
367
357
359
359
386
381
405
429
446
441
446
453
458
465
470
470
494
489
489
489
499
484
484
484
484
501
506
506
496
496
513
503
503
508
542
590
942
954
1048
1434
1434
1552
44
44
34
34
56
56
65
72
72
72
72
72
72
77
84
96
91
103
103
108
103
103
115
115
115
115
127
127
134
134
146
146
204
204
271
273
297
297
338
345
367
357
359
359
398
393
417
441
458
453
458
465
470
477
482
482
484
484
484
484
506
501
501
501
511
496
496
513
503
503
518
554
602
954
966
1060
1446
1446
1559
34
34
34
34
34
34
68
68
65
60
72
72
72
77
77
72
84
96
108
103
103
103
103
115
115
115
127
134
146
146
204
204
204
204
216
216
247
271
273
297
297
345
357
359
359
410
405
429
453
470
465
470
477
482
489
494
494
496
496
513
513
523
503
503
508
530
566
966
978
1072
1458
1458
1571
27
27
34
34
34
80
80
72
72
72
72
72
77
77
72
72
79
96
108
103
103
115
115
115
127
127
134
146
204
204
216
216
216
216
221
223
223
252
259
271
278
297
297
345
359
359
359
422
417
441
465
482
477
482
489
494
501
506
503
503
535
520
520
542
578
978
990
1084
1470
1470
1583
34
34
34
34
34
34
34
34
34
34
87
92
92
72
72
72
72
72
77
72
72
84
103
103
115
115
127
127
134
134
204
204
204
216
216
223
223
228
228
233
235
252
271
266
278
297
297
345
359
359
359
434
429
453
477
494
489
494
501
506
508
508
547
554
590
990
1002
1096
1482
1482
1595
34
34
34
34
34
34
34
72
72
72
72
72
72
72
72
72
104
99
99
104
84
79
91
127
127
134
134
204
204
204
204
216
216
216
228
228
235
240
240
240
247
252
252
271
273
278
297
324
359
359
359
446
441
463
465
489
506
501
506
513
518
559
602
1002
1014
1108
1494
1489
1559
1607
27
34
34
34
34
34
34
34
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
79
111
106
106
111
96
115
149
149
149
149
134
202
204
204
204
216
216
216
216
223
223
228
240
240
247
247
247
247
252
252
259
278
297
297
336
359
359
359
422
458
453
475
477
501
513
518
530
520
571
1014
1026
1120
1506
1571
1619
34
34
34
34
34
34
34
34
34
34
41
72
72
72
72
72
72
72
72
72
72
84
84
91
123
123
103
149
149
149
161
161
161
161
204
204
204
204
214
216
216
216
223
223
228
228
235
240
247
247
252
252
259
254
254
266
271
278
297
348
359
359
359
422
470
465
487
489
513
530
520
520
542
583
1026
1038
1132
1518
1583
1631
1
34
34
34
34
34
34
34
34
34
34
41
41
41
41
80
60
60
60
60
60
60
60
60
60
72
72
72
72
72
72
84
84
91
91
135
135
135
135
149
161
161
161
168
168
173
173
204
216
216
216
216
221
223
223
228
235
240
240
247
247
252
252
254
254
254
266
266
266
271
273
273
316
316
316
355
359
359
410
482
477
499
501
520
520
542
554
595
1038
1050
1144
1530
1595
1643
27
34
34
34
34
34
34
34
34
34
34
34
34
41
41
53
53
53
53
53
53
53
60
60
60
60
60
60
60
60
60
60
60
60
60
60
87
72
72
72
72
72
72
72
72
72
72
79
96
91
91
91
135
135
135
135
135
147
137
147
137
147
147
161
178
178
178
178
178
168
178
168
173
185
185
216
221
223
223
228
228
228
235
235
240
247
247
247
252
259
254
271
273
278
278
285
297
316
328
328
367
422
489
484
489
511
513
520
520
554
566
607
1050
1062
1156
1542
1607
1655
34
34
34
34
34
34
34
34
34
34
34
34
41
41
41
41
41
41
41
53
53
53
53
53
53
53
53
53
60
60
60
60
60
65
60
60
60
60
60
60
60
60
72
72
72
72
72
72
72
72
99
84
91
91
103
103
135
135
135
147
137
137
147
137
147
137
147
147
149
149
149
154
154
149
159
159
178
178
178
178
178
178
178
178
173
190
190
190
190
190
190
185
192
192
204
228
233
235
235
240
240
247
247
247
252
259
254
254
254
254
266
266
271
271
290
290
297
335
340
374
484
489
496
523
508
520
566
578
619
1062
1074
1168
1489
1554
1619
1667
1
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
41
41
46
41
53
53
53
53
53
53
53
53
53
53
53
60
60
60
60
60
60
60
60
60
60
60
60
60
60
72
72
72
72
72
72
111
91
91
91
91
91
103
135
135
135
135
147
147
147
137
127
149
149
149
149
154
154
159
159
159
156
161
156
166
161
171
171
178
178
178
190
190
190
190
190
190
190
190
185
197
197
192
202
202
202
202
199
199
216
228
240
240
247
247
247
247
259
254
254
259
266
266
266
266
271
271
273
278
302
302
309
324
316
316
316
316
347
410
422
484
535
520
532
578
590
631
1074
1086
1180
1566
1631
1679
1
8
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
53
53
53
53
58
53
53
60
60
60
60
60
60
60
65
60
60
60
60
60
60
60
72
72
72
72
72
72
72
72
72
72
72
72
79
111
111
91
123
103
103
103
135
135
135
135
137
147
147
147
147
149
154
154
149
159
156
156
166
171
171
161
161
171
178
173
178
178
173
178
190
190
190
197
197
197
197
197
197
202
202
192
209
209
199
214
214
214
214
228
247
247
254
259
254
259
254
266
266
266
271
271
273
278
278
278
285
290
314
314
321
316
316
316
316
316
316
316
336
328
328
410
422
484
508
547
539
590
602
643
1086
1098
1192
1578
1643
1691
1
1
1
8
15
34
34
34
34
34
34
34
34
41
41
41
46
41
53
58
53
53
53
53
53
60
60
60
60
60
60
65
60
60
60
60
72
72
72
72
72
72
72
72
84
79
79
79
79
79
91
91
91
123
123
135
130
137
147
147
137
147
147
149
154
154
154
159
161
166
156
171
178
178
178
178
178
173
173
178
190
185
190
185
185
185
197
202
202
209
209
209
209
214
214
199
199
199
221
221
221
221
221
221
240
254
254
254
266
266
266
266
266
271
271
273
278
273
290
290
290
290
297
302
316
316
316
316
316
326
333
328
328
328
328
348
335
335
410
422
422
484
559
602
614
655
1098
1110
1204
1590
1655
1703
1
1
1
1
1
1
1
8
20
27
34
34
34
34
34
34
34
34
34
34
46
41
41
46
41
41
53
53
53
53
53
53
53
53
53
53
53
60
65
60
60
60
60
65
72
72
72
72
72
72
72
84
79
79
79
79
96
111
91
91
103
103
130
130
135
147
137
149
154
154
149
159
159
166
166
171
161
178
178
178
173
178
190
190
190
185
185
180
180
185
192
197
197
192
202
197
209
214
214
221
221
221
221
221
221
233
228
228
228
228
233
247
254
266
266
271
271
278
273
278
273
273
273
285
290
285
290
290
302
302
302
302
309
314
328
328
335
335
340
335
355
345
410
422
422
484
496
496
496
520
520
520
571
614
626
667
1110
1122
1216
1602
1667
1715
1
1
8
15
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
41
41
53
53
53
53
53
53
53
53
58
53
65
60
60
60
60
60
60
60
60
65
72
72
72
72
72
72
72
72
72
72
72
89
84
79
79
111
96
96
96
111
91
91
123
135
135
135
135
147
149
159
156
166
166
171
171
161
178
178
178
173
190
190
190
185
185
197
197
197
202
187
187
199
204
199
209
199
214
209
221
221
221
233
233
228
228
233
233
245
240
240
240
240
247
269
269
269
254
254
266
271
273
273
278
278
290
290
285
285
290
290
297
302
297
302
314
314
314
314
321
316
316
316
316
316
316
335
335
347
367
357
410
410
422
482
484
532
532
532
583
626
638
679
1122
1134
1228
1614
1679
1727
1
1
1
1
8
20
27
34
34
34
34
34
34
34
34
46
41
41
41
41
41
53
53
53
58
53
53
53
53
53
53
65
65
65
60
60
60
60
65
60
60
72
72
72
72
72
72
72
89
84
84
96
96
96
111
96
96
96
96
96
96
96
91
91
91
91
91
123
123
135
130
147
147
147
137
137
147
154
156
171
178
178
178
173
178
178
190
190
185
180
197
202
197
192
209
204
199
209
214
199
199
216
221
221
221
233
228
228
228
228
245
245
245
240
240
240
240
240
257
247
252
252
247
269
269
269
269
254
254
254
281
281
281
266
271
278
273
285
285
290
290
290
290
302
302
297
297
302
309
314
309
314
321
316
316
316
316
326
333
328
328
328
374
369
422
422
470
494
484
539
539
539
595
638
650
691
1134
1146
1240
1626
1691
1739
1
1
1
8
8
15
34
34
34
34
34
41
41
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
60
65
60
60
60
60
60
60
77
72
72
72
72
72
72
72
84
84
84
84
84
84
89
79
79
96
96
96
96
111
96
96
96
91
91
91
91
123
108
103
103
130
135
130
147
127
154
149
149
154
159
159
166
178
178
190
185
185
180
190
190
197
197
197
187
209
214
204
199
221
221
221
228
233
228
233
245
240
240
240
240
257
257
257
247
247
252
247
247
269
269
259
264
264
259
281
281
281
281
266
266
271
293
293
293
273
278
290
285
290
290
290
290
297
297
302
302
302
314
314
309
309
314
321
321
321
316
316
316
316
328
328
338
335
335
335
374
381
422
422
482
506
607
650
662
703
688
1146
1158
1252
1638
1703
1751
1
1
8
20
15
27
34
34
34
34
34
34
41
41
41
53
53
53
53
53
53
53
53
53
53
58
53
53
53
53
53
53
65
65
65
65
65
65
65
65
65
60
60
60
60
60
72
72
72
72
72
72
72
72
72
89
89
89
84
89
89
89
84
84
84
84
89
84
84
79
79
79
79
79
111
96
96
96
96
96
91
108
123
103
130
120
147
127
154
166
156
166
161
171
171
178
190
185
197
197
187
197
197
204
199
204
209
199
221
216
221
228
233
228
233
245
245
240
245
245
257
247
252
252
252
269
269
269
269
269
269
254
259
264
259
276
281
271
276
276
271
271
281
293
293
293
293
278
305
305
300
285
290
290
290
290
290
302
297
302
302
309
309
314
314
321
321
321
316
316
316
316
333
328
328
328
335
335
350
367
374
393
410
494
518
662
674
715
700
700
1158
1170
1264
1650
1715
1763
1
20
27
34
34
34
34
41
41
41
41
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
65
60
60
60
60
77
77
77
77
72
72
77
77
72
72
72
72
72
72
72
89
89
89
84
89
84
84
84
79
79
79
96
96
111
96
96
96
96
91
91
91
96
96
96
91
96
96
96
123
108
103
103
120
130
127
154
166
178
173
178
178
178
190
202
197
209
199
199
204
204
216
221
228
228
228
233
240
245
240
257
257
252
247
257
269
269
269
259
264
264
264
281
281
276
281
281
281
266
271
276
271
293
283
273
283
288
293
300
305
290
305
305
290
290
290
312
297
302
317
317
302
302
314
309
309
314
321
321
321
316
316
333
328
328
333
335
335
362
379
405
422
422
506
530
674
686
727
712
1170
1182
1271
1662
1727
1775
34
34
34
34
41
41
41
41
58
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
60
60
60
65
60
60
77
77
72
72
77
72
77
72
72
72
72
89
89
89
84
84
84
89
84
79
79
79
84
84
84
84
96
96
96
96
96
96
96
111
96
96
96
96
96
91
91
96
96
123
108
103
103
120
135
127
166
178
190
180
185
190
185
197
199
214
221
216
216
228
233
228
228
245
245
240
240
240
252
247
247
269
269
269
269
264
269
276
281
281
271
276
276
276
293
293
293
278
283
273
283
293
293
300
295
285
295
290
290
290
290
300
305
312
302
317
317
317
302
309
324
329
329
309
314
321
321
333
328
328
335
335
340
345
367
367
374
484
518
686
686
698
739
719
1182
1194
1283
1674
1739
1787
1
34
34
34
41
41
53
58
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
65
65
60
60
60
72
72
77
77
72
72
72
72
72
72
84
84
84
84
89
89
84
89
89
84
84
84
84
79
84
79
84
96
96
96
96
96
96
96
111
96
96
96
91
91
96
96
108
123
103
103
103
120
135
115
127
147
178
190
197
187
197
197
187
204
221
233
228
228
228
228
245
245
245
240
245
240
257
257
252
252
247
247
269
269
269
264
259
259
281
281
281
276
281
293
293
283
288
300
305
290
295
285
305
295
305
305
290
290
290
290
290
290
312
307
297
307
302
302
312
312
329
324
329
329
309
321
336
341
341
321
333
328
335
340
357
379
379
386
484
530
698
698
710
751
1194
1206
1295
1686
1751
1799
1
1
1
1
34
34
41
53
53
53
53
53
53
65
65
65
65
60
60
65
60
60
65
72
72
72
72
77
77
72
72
72
77
72
72
72
84
84
84
89
89
84
89
84
84
79
79
79
84
96
96
96
96
96
96
96
96
96
96
91
96
108
108
123
103
103
120
135
115
127
147
154
190
185
187
197
204
199
204
216
228
245
240
240
240
240
257
257
257
252
247
247
247
252
269
269
269
269
264
264
259
281
281
281
276
271
271
293
293
293
293
305
305
295
290
290
290
290
312
302
297
317
317
307
317
317
302
302
302
324
309
309
309
319
324
314
324
341
336
336
336
348
348
348
328
340
367
367
398
484
484
542
710
710
722
763
1206
1218
1307
1698
1763
1811
1
1
1
1
34
34
34
34
41
53
53
53
53
65
65
65
60
60
60
60
65
72
72
72
72
72
72
77
77
72
84
89
89
84
84
84
89
89
89
84
79
84
84
96
96
96
96
91
91
96
108
103
103
108
120
120
120
135
147
127
154
161
161
185
185
197
204
204
204
204
216
216
228
228
228
257
247
247
252
252
252
269
269
269
269
259
259
259
264
259
276
276
281
281
276
271
293
293
293
283
283
283
300
300
305
290
290
290
290
305
307
317
317
302
302
309
329
324
329
324
324
309
309
309
314
336
321
331
336
331
348
348
348
348
355
360
360
340
379
410
484
484
554
722
722
734
775
1213
1230
1271
1319
1710
1775
1823
1
1
1
1
1
1
34
41
53
53
53
53
65
65
65
65
60
60
60
60
77
72
72
72
72
77
77
84
89
84
84
89
89
79
84
84
79
79
96
96
96
96
96
96
96
108
120
120
120
115
147
127
127
127
154
161
173
185
185
187
197
204
204
204
204
216
216
216
228
228
228
228
240
240
269
269
259
264
264
259
254
281
276
281
271
281
271
271
276
293
293
283
300
305
305
295
295
290
290
290
290
295
312
312
317
302
302
317
329
329
309
309
314
321
341
336
336
336
336
348
343
348
328
360
355
355
355
340
367
367
367
367
367
429
429
484
484
566
734
734
746
787
1242
1283
1331
1722
1787
1835
1
1
1
1
1
34
34
34
41
41
41
41
65
65
60
60
60
65
65
72
77
72
89
84
84
84
84
84
79
84
79
96
111
96
91
96
96
91
96
103
120
120
120
120
115
127
127
127
154
161
161
173
185
185
185
187
197
209
216
216
228
228
228
240
240
240
240
247
252
252
247
254
281
276
271
276
271
293
293
283
293
283
283
288
300
305
295
290
290
290
290
312
317
317
307
302
302
307
302
324
324
324
309
309
329
314
341
341
331
348
348
348
343
343
328
328
355
355
360
367
367
367
367
367
367
374
379
379
429
429
441
484
484
578
746
746
758
799
1254
1295
1343
1734
1799
1847
1
1
1
1
34
34
34
34
34
41
41
41
53
53
53
53
53
53
53
53
53
53
53
60
60
60
65
60
60
60
77
72
84
84
89
84
84
84
84
84
96
96
111
96
123
103
103
120
127
127
127
127
161
161
173
185
185
197
197
209
204
221
228
228
240
240
240
252
247
247
252
252
259
264
259
259
254
293
283
288
305
295
305
295
295
305
290
290
312
317
302
302
302
329
324
329
309
309
319
314
319
336
336
336
341
348
348
328
360
355
355
355
340
367
372
367
379
374
379
379
386
391
391
429
429
441
448
484
590
688
719
758
758
770
811
1266
1307
1355
1746
1811
1859
1
1
1
1
1
34
34
34
34
41
41
41
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
60
60
65
65
65
65
65
72
72
72
89
79
79
84
84
84
84
84
84
84
96
96
123
103
103
135
115
127
173
185
187
197
197
204
204
209
209
221
216
233
240
240
252
252
252
264
259
264
259
254
271
276
271
295
305
290
290
317
312
307
317
302
302
302
324
329
309
309
336
336
336
331
316
331
343
348
348
353
328
360
360
367
367
367
367
374
384
391
391
391
398
403
403
429
429
441
448
484
700
700
770
770
782
823
1213
1278
1319
1367
1758
1823
1871
1
1
1
1
1
1
34
34
34
34
34
34
34
41
41
53
53
53
53
53
53
53
53
53
53
60
65
65
65
65
65
65
65
65
72
72
77
77
77
77
72
72
79
79
84
84
84
84
84
84
91
96
96
103
135
115
115
115
147
161
185
197
209
209
216
221
221
233
223
252
252
264
264
264
254
254
271
276
271
283
288
283
317
302
302
324
324
329
309
314
336
336
316
348
348
348
343
343
328
355
355
365
367
367
367
379
374
379
386
396
403
403
403
410
415
415
429
429
441
448
712
782
782
794
835
1290
1331
1379
1770
1835
1883
1
1
1
1
1
1
34
34
34
34
34
41
41
53
53
53
53
53
53
53
60
65
65
65
65
65
72
77
77
77
77
77
72
72
84
84
84
84
84
84
84
84
84
84
96
96
96
108
115
115
147
154
197
209
221
221
228
233
233
230
264
254
254
271
276
276
283
288
295
295
302
329
309
336
331
336
316
348
348
355
355
355
355
355
355
355
367
367
367
377
379
379
391
391
398
408
415
415
415
422
427
427
429
441
448
719
789
789
806
847
1302
1343
1391
1782
1847
1895
1
1
1
1
34
34
34
34
41
53
53
53
53
53
53
53
53
53
65
65
65
65
72
77
77
84
79
84
84
84
84
84
84
84
84
84
96
96
103
108
108
115
115
154
161
209
204
204
221
233
233
240
254
254
254
271
288
288
295
307
302
302
336
316
343
348
343
343
355
355
367
367
367
367
367
367
374
374
379
389
391
391
403
403
410
427
427
427
434
439
439
429
429
429
429
441
448
801
801
818
859
1314
1355
1403
1794
1859
1907
1
1
34
34
34
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
77
77
72
84
84
84
84
84
84
84
84
84
96
103
108
115
115
115
115
161
161
185
204
221
216
216
233
252
254
254
254
300
300
307
302
302
302
316
348
355
367
367
367
379
374
374
379
379
379
386
386
391
401
403
403
415
415
422
439
439
439
429
429
429
446
451
451
441
441
453
789
813
808
825
871
1326
1367
1415
1806
1871
1919
1
1
34
34
34
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
60
65
65
65
65
77
77
77
72
72
72
72
84
84
84
84
84
84
84
96
103
115
115
115
161
173
185
204
216
233
228
228
223
257
259
254
254
254
312
312
302
302
314
314
316
343
355
367
374
379
374
391
386
391
391
391
398
398
403
413
415
415
427
427
434
429
429
451
441
458
453
448
463
463
460
719
789
801
837
883
1338
1379
1427
1818
1883
1931
1
1
34
34
34
34
53
53
53
53
53
65
60
65
65
65
65
65
60
77
77
77
72
72
72
72
72
72
72
77
77
84
84
84
84
84
84
84
84
84
84
96
103
115
173
185
187
204
216
228
228
240
230
269
259
254
254
271
324
324
314
326
316
367
367
374
374
374
386
391
386
403
398
403
403
403
410
410
415
425
427
427
439
439
429
429
446
441
448
460
475
475
719
789
801
813
849
895
1350
1391
1439
1830
1895
1943
1
1
34
34
34
34
53
53
53
53
65
60
65
65
65
60
77
72
72
72
72
72
72
77
77
84
84
84
84
84
84
84
84
84
84
84
96
96
96
103
115
115
115
115
178
185
187
216
228
228
240
230
252
259
259
254
254
281
302
331
336
336
316
326
338
355
355
367
379
386
386
398
403
398
415
410
415
415
422
422
427
437
439
439
429
429
429
429
451
441
458
448
487
801
813
820
861
907
1362
1403
1451
1842
1907
1955
1
1
34
34
34
34
34
34
34
53
53
53
53
60
65
65
65
65
60
72
72
72
72
77
72
84
84
84
84
84
84
84
84
84
84
96
96
96
103
103
103
125
115
115
115
135
137
161
185
190
187
199
228
228
240
252
259
259
254
254
276
293
314
343
348
348
338
355
350
367
379
374
374
391
398
398
410
415
410
427
422
427
427
434
434
439
449
429
429
429
429
451
451
441
441
448
499
496
813
820
873
919
1374
1415
1463
1854
1919
1967
34
34
34
34
34
34
34
53
53
53
53
53
53
53
53
53
65
65
65
72
72
77
72
72
72
72
84
84
84
84
84
84
84
84
84
96
96
96
103
103
103
125
115
115
137
147
149
161
161
161
173
185
197
187
199
199
228
240
230
252
259
259
288
305
316
355
360
360
350
367
374
391
386
386
403
410
410
422
427
422
439
434
439
446
446
451
461
441
441
448
448
494
511
508
520
719
789
825
825
885
931
1386
1427
1475
1866
1931
1979
34
34
34
34
34
34
34
34
34
34
53
53
53
53
53
53
53
53
65
65
65
65
65
65
77
72
72
72
72
72
84
84
84
84
84
84
96
96
96
103
103
103
125
125
125
115
115
115
137
144
154
149
161
161
161
156
173
173
173
180
185
187
204
199
199
228
252
259
254
276
271
290
300
317
316
372
372
362
386
403
398
398
415
422
422
434
439
434
429
429
446
458
473
448
448
463
453
506
523
532
801
837
897
943
1398
1439
1487
1878
1943
1991
34
34
34
34
34
34
34
34
34
34
34
53
53
53
53
53
53
65
65
65
77
77
77
72
72
72
84
84
84
84
84
84
84
96
96
103
103
103
125
115
115
137
137
137
144
161
161
161
161
161
173
173
173
163
180
185
185
192
199
199
228
228
259
271
288
290
312
329
316
316
384
384
374
398
415
410
410
427
434
434
446
451
446
441
453
453
485
475
518
535
539
808
849
909
955
1410
1451
1499
1890
1955
2003
34
34
34
34
34
34
34
34
53
53
53
53
53
53
53
65
65
77
72
72
84
84
84
84
84
84
96
96
96
103
103
125
115
115
137
144
149
149
161
173
173
173
168
180
185
185
185
192
197
197
204
199
199
228
228
228
271
290
300
290
324
341
316
316
396
396
386
410
427
422
422
439
446
446
458
448
453
497
487
530
547
861
921
967
1422
1463
1511
1902
1962
2015
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
53
53
53
53
53
60
77
72
72
84
96
96
103
103
103
125
125
137
144
161
161
161
161
161
161
161
180
185
185
185
175
192
197
197
204
204
204
199
216
228
228
228
259
273
273
290
290
312
336
316
316
353
408
408
398
422
439
434
434
451
458
453
453
509
499
542
873
933
979
1434
1475
1523
1914
1974
2027
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
53
53
53
53
53
53
53
65
92
84
103
103
125
125
135
137
137
149
161
161
161
161
161
173
173
173
173
168
168
178
185
175
192
197
197
204
204
204
199
216
211
211
223
228
228
228
259
273
273
290
290
285
324
316
316
348
365
420
420
410
434
451
446
446
465
521
511
554
885
945
991
1446
1487
1535
1921
1986
2039
27
34
34
34
34
34
34
34
34
34
34
34
34
46
46
53
53
53
53
53
53
53
53
53
53
53
92
72
72
104
99
111
125
135
125
137
137
147
144
144
161
161
161
161
161
173
173
173
173
180
180
185
185
175
175
185
190
204
204
204
204
199
199
216
211
211
223
223
223
228
228
230
273
273
290
290
285
292
336
316
360
377
432
432
422
446
458
453
465
496
533
523
566
897
957
1003
1458
1499
1547
1998
2051
27
27
27
34
34
34
34
34
34
46
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
92
92
72
99
104
111
106
96
123
135
135
135
135
125
135
137
147
137
144
149
154
161
161
173
173
168
180
185
185
185
185
192
192
197
197
197
187
199
216
211
211
211
211
223
223
223
228
228
230
235
235
242
269
273
273
290
290
290
285
292
316
348
372
389
444
444
453
465
508
545
520
535
539
578
909
969
1015
1470
1511
1559
1962
2010
2063
27
27
27
27
27
27
34
34
34
34
34
34
34
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
92
72
72
104
104
84
106
111
96
123
125
125
125
125
135
125
130
147
147
147
147
132
147
144
154
149
161
161
161
161
161
180
185
175
192
197
197
197
187
204
204
204
204
204
211
223
223
223
228
230
235
235
247
247
254
269
281
273
273
273
273
290
290
290
285
292
360
355
384
401
456
456
453
465
557
532
590
921
981
1027
1482
1523
1571
1974
2022
2075
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
92
92
92
72
72
72
72
72
104
99
84
116
116
123
125
135
135
132
132
147
132
137
137
137
154
154
154
159
159
161
166
161
161
173
168
192
197
187
204
204
204
204
204
204
211
211
216
216
228
230
235
235
242
247
247
259
259
266
281
273
273
293
290
290
285
285
285
292
372
367
367
384
396
413
468
468
453
569
539
597
933
993
1039
1494
1535
1583
1986
2034
2087
1
27
27
27
27
34
34
34
34
34
34
34
34
34
46
41
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
60
60
60
92
72
99
104
99
99
104
99
104
84
84
111
106
128
128
125
125
125
135
147
147
137
159
144
144
166
166
166
171
171
161
173
168
178
175
185
175
175
185
187
204
204
204
204
211
211
211
216
211
211
211
216
223
223
223
223
228
247
247
254
259
259
271
271
278
273
273
273
273
273
273
293
290
290
300
297
297
292
355
355
384
396
408
420
480
480
581
597
597
609
945
1005
1051
1506
1547
1595
1921
1998
2046
2099
1
1
1
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
46
53
53
53
53
53
53
53
53
53
53
53
53
65
65
60
60
60
92
92
72
104
84
106
111
111
106
116
111
111
123
125
125
135
125
135
135
135
132
132
137
147
159
154
144
171
151
151
161
178
178
178
178
178
175
190
185
185
197
187
204
204
211
216
211
216
223
223
223
223
223
223
228
235
235
230
230
230
259
259
266
271
271
283
290
290
290
285
285
285
300
312
304
304
355
355
396
408
420
453
492
492
539
539
593
609
609
616
957
1017
1063
1518
1559
1607
2010
2058
2111
1
8
8
27
27
27
34
34
34
34
34
34
34
34
41
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
60
72
72
99
99
104
99
104
99
84
116
123
123
128
118
118
125
125
125
135
147
147
137
142
142
137
137
137
144
144
154
171
161
151
178
163
163
163
190
175
190
190
185
185
185
197
197
204
204
211
216
223
223
228
235
235
230
235
235
235
247
247
242
242
247
247
247
247
247
247
271
271
278
273
273
273
273
283
290
290
292
292
292
312
302
319
367
408
420
432
453
504
504
605
621
621
969
1029
1075
1530
1571
1619
2022
2070
2123
1
8
15
15
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
46
46
41
53
53
53
53
53
53
53
53
53
53
53
53
65
65
60
60
92
72
99
99
106
111
111
106
111
111
96
128
125
135
135
135
125
125
135
132
132
137
147
159
149
154
159
154
144
144
151
161
156
178
173
163
185
185
185
197
197
197
197
197
204
204
204
204
211
223
228
230
230
230
235
247
247
242
247
247
247
247
259
259
254
254
259
259
259
259
273
273
273
273
290
285
285
295
319
314
355
367
420
420
432
444
516
516
617
628
628
981
1041
1087
1542
1583
1631
2034
2082
2135
1
8
20
27
27
27
27
27
34
34
34
34
34
34
34
34
46
41
41
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
60
72
92
72
72
99
104
99
99
96
111
111
96
123
123
118
123
125
135
147
142
137
147
147
144
144
154
171
156
166
171
166
151
151
163
163
175
185
185
185
185
185
185
197
204
204
204
209
209
204
204
211
216
211
216
230
235
230
235
245
242
242
259
259
254
259
259
271
271
266
266
266
271
266
271
273
273
285
285
292
292
326
355
355
367
427
427
444
451
451
528
528
539
597
629
993
1053
1099
1554
1595
1643
2046
2094
2147
1
1
1
20
27
27
27
27
27
34
34
34
34
41
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
60
72
72
72
72
72
89
99
99
104
99
84
96
96
96
106
106
116
111
118
123
125
125
135
125
135
130
142
137
159
154
144
154
154
151
156
161
161
178
163
178
178
178
175
170
185
197
197
197
197
209
209
204
204
221
211
216
211
211
221
221
216
223
228
223
230
242
247
242
247
247
247
247
247
247
257
254
254
271
271
266
271
278
278
278
278
273
273
285
292
292
338
355
355
367
429
456
463
463
540
540
609
641
1005
1065
1111
1566
1607
1655
2058
2106
2159
1
1
1
8
27
34
34
34
34
41
53
53
53
53
53
53
58
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
60
60
72
72
72
72
72
89
84
84
84
96
96
96
96
96
106
111
111
111
118
128
118
125
125
125
125
130
132
132
147
147
137
154
144
171
166
151
161
161
163
163
173
185
185
175
190
185
190
185
182
209
209
209
204
209
209
204
204
204
221
221
221
221
221
211
211
221
216
233
223
228
223
223
233
235
240
230
242
247
247
247
247
247
247
254
259
254
259
259
259
269
266
266
278
285
285
290
285
292
343
350
367
367
427
429
468
470
470
552
552
616
653
1017
1077
1123
1578
1619
1667
2070
2118
2171
1
1
1
1
15
27
27
27
27
34
34
34
34
41
41
53
53
53
53
53
53
53
53
53
53
53
53
65
60
60
60
72
77
77
72
72
72
72
72
72
89
89
84
84
84
84
99
84
96
96
96
96
96
108
123
123
118
125
135
130
125
132
132
137
137
144
154
154
166
151
161
178
178
173
173
170
185
185
185
197
197
202
209
197
204
204
204
204
221
221
221
221
221
216
221
221
216
216
233
233
233
233
233
223
223
245
235
230
240
245
247
252
242
247
247
247
247
247
247
254
259
259
259
266
266
266
266
266
276
278
278
285
285
292
302
319
343
355
362
427
439
429
480
564
564
665
1029
1089
1135
1590
1631
1679
2082
2130
2183
1
1
8
27
27
27
27
27
34
34
34
41
53
53
53
58
53
53
53
53
53
53
53
53
53
53
65
65
72
72
72
72
72
72
84
89
89
84
84
84
84
84
99
99
99
96
96
96
96
96
96
111
108
120
135
130
125
137
142
137
137
142
144
144
161
161
156
178
185
190
185
185
185
182
197
197
209
209
209
204
204
221
221
221
221
221
209
216
216
233
233
233
228
223
228
233
233
245
245
245
240
245
252
247
242
252
247
247
257
259
264
254
259
259
259
266
266
266
266
278
278
288
285
314
343
355
367
374
427
427
439
429
451
451
451
492
576
576
677
1041
1101
1147
1602
1638
1691
2094
2142
2195
1
1
1
8
20
27
34
41
41
41
53
53
53
53
53
53
53
53
53
53
65
65
65
65
60
72
77
72
72
72
72
72
72
89
89
84
84
84
84
84
99
84
96
96
96
96
96
96
96
96
106
106
111
108
118
120
147
137
137
142
127
154
144
149
154
151
156
161
173
173
163
185
190
185
197
197
197
209
209
204
221
221
221
221
216
233
233
233
233
233
221
223
228
245
245
240
240
235
245
257
252
252
252
247
247
247
247
264
259
254
259
264
266
266
266
266
276
278
290
295
285
326
355
367
451
463
463
463
504
588
588
689
789
1053
1113
1159
1609
1650
1703
2106
2154
2207
1
1
1
8
15
27
27
27
34
34
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
65
77
72
77
72
72
72
72
72
72
72
89
89
84
89
89
84
84
84
84
96
96
96
96
96
96
96
96
111
96
96
108
118
118
103
103
120
125
127
137
154
154
166
156
166
161
161
163
185
185
170
185
197
209
209
204
209
204
204
221
221
209
221
221
233
233
228
245
245
245
245
245
235
228
252
252
252
247
247
257
264
264
269
259
259
266
276
266
276
278
288
290
297
297
331
338
355
367
463
470
470
475
600
600
701
719
801
1065
1125
1171
1638
1662
1715
2118
2166
2219
1
20
27
27
34
41
41
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
77
77
77
77
72
72
72
72
84
89
89
89
89
89
84
84
89
89
84
84
84
96
96
96
96
96
96
96
96
108
123
103
103
103
120
130
125
137
142
137
127
161
161
166
178
163
163
178
173
170
185
197
197
197
209
209
204
204
204
221
221
221
221
221
221
216
221
216
233
233
221
228
245
245
235
257
257
257
257
257
247
247
264
259
259
276
276
281
266
266
278
288
288
300
285
285
297
319
343
343
429
475
487
612
612
713
813
1077
1137
1183
1650
1674
1727
2130
2178
2231
27
27
34
34
41
41
53
53
53
53
53
53
58
53
53
53
53
53
53
65
65
65
65
60
77
77
77
72
72
72
72
72
89
89
89
89
89
84
84
84
84
84
84
84
96
96
96
96
96
96
96
96
96
96
96
96
130
115
137
137
137
142
127
154
161
161
173
163
173
178
190
185
197
209
209
209
209
204
204
204
204
221
221
221
216
216
211
233
233
233
233
233
228
223
228
233
245
245
228
257
257
247
247
269
269
269
269
269
259
276
266
288
288
293
300
285
285
312
343
355
429
487
499
624
624
725
820
1089
1149
1195
1662
1686
1739
2142
2190
2243
1
1
27
27
34
34
34
41
58
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
60
77
77
72
72
72
72
72
72
72
89
84
89
89
84
84
84
84
84
84
96
96
96
96
96
96
96
96
96
96
96
96
108
103
137
144
154
166
161
161
173
185
175
185
197
197
209
209
204
204
204
204
204
204
221
221
221
221
221
216
216
211
233
233
228
223
245
245
245
245
245
240
245
228
252
252
247
247
269
269
259
281
281
281
281
281
266
288
300
300
300
307
297
324
343
367
429
429
511
636
636
737
724
1101
1161
1202
1609
1674
1698
1751
2154
2202
2255
1
1
1
1
1
27
27
34
41
41
53
53
53
53
53
53
53
53
65
65
65
65
65
60
65
72
72
72
77
72
72
84
84
84
89
84
89
89
84
84
84
84
96
96
96
96
96
96
96
96
96
96
108
108
103
120
142
137
156
166
178
173
173
185
197
197
209
209
209
204
204
204
204
221
221
221
221
221
216
216
216
216
211
211
233
233
223
223
228
228
245
245
240
228
252
252
257
257
257
252
257
264
259
281
281
266
293
293
288
288
288
300
295
285
307
307
312
319
355
429
429
523
648
648
749
736
1113
1173
1214
1686
1710
1763
2166
2214
2267
1
1
1
1
1
1
27
27
34
41
53
53
53
53
53
53
53
53
65
65
65
65
60
65
72
72
72
72
72
77
77
72
77
84
84
84
84
84
89
89
84
84
84
96
96
96
96
108
108
103
120
120
120
127
149
161
168
178
185
180
197
209
209
204
204
204
204
221
221
216
216
216
211
211
233
233
233
233
228
223
223
228
228
228
245
245
257
257
252
264
269
269
269
264
269
276
266
293
288
300
300
300
300
300
285
307
319
319
319
326
331
374
429
429
535
660
660
761
748
1125
1185
1226
1698
1722
1775
2178
2226
2279
1
1
1
1
1
34
34
34
53
53
53
53
53
65
65
72
72
77
77
72
72
77
84
84
84
89
89
84
84
84
84
96
96
96
96
96
120
120
115
127
127
127
161
173
180
197
187
209
209
204
204
221
221
216
216
216
211
211
233
233
223
223
245
245
240
245
240
240
252
257
269
269
259
281
281
276
276
281
271
288
300
300
312
312
307
307
307
319
326
326
331
338
343
374
386
429
429
547
672
672
773
760
1137
1197
1238
1710
1734
1787
2190
2238
2291
1
1
1
34
41
53
53
53
65
65
65
65
72
72
77
72
77
84
84
84
84
84
84
84
84
96
96
96
96
103
120
120
120
120
127
127
173
185
192
197
209
204
204
221
216
216
211
211
211
233
223
223
228
240
245
252
257
252
257
252
264
269
281
281
293
288
288
288
293
300
312
307
319
319
319
319
319
326
338
343
350
374
374
398
429
559
684
684
785
772
789
820
1144
1209
1250
1722
1746
1799
2202
2250
2303
1
1
1
1
34
53
53
53
53
53
53
53
53
53
65
65
77
72
72
72
77
84
84
89
84
84
84
84
84
84
84
84
84
84
84
96
103
103
120
120
115
115
127
127
127
127
151
180
197
192
204
204
199
216
216
211
211
211
233
223
245
257
264
269
269
264
259
281
276
293
288
300
300
300
295
305
307
307
319
331
331
331
331
350
355
362
374
374
374
374
374
386
405
429
696
696
719
797
784
801
1221
1262
1734
1758
1811
2214
2262
2315
1
1
1
1
34
34
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
72
77
89
84
84
84
84
84
84
84
84
84
96
96
96
96
96
103
115
115
127
127
142
151
151
187
209
204
216
211
211
223
245
257
269
259
281
276
281
276
288
288
273
300
300
312
307
307
317
319
319
331
343
343
343
343
362
367
374
374
374
374
386
386
386
393
708
703
809
796
813
1233
1274
1746
1770
1823
2226
2274
2327
1
1
1
1
1
27
34
34
34
34
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
77
77
77
77
84
84
84
84
96
96
96
103
103
103
108
125
142
151
163
190
175
216
216
211
211
223
257
269
259
276
271
288
288
288
273
300
300
288
312
307
319
319
319
326
343
355
355
355
355
374
379
374
374
374
386
386
393
398
393
720
715
821
803
820
1245
1286
1758
1782
1835
2238
2286
2339
1
1
1
1
1
34
34
34
34
34
53
53
53
53
53
53
53
53
65
65
65
77
77
77
77
92
77
84
84
84
84
84
84
103
108
115
125
142
137
166
151
151
175
202
187
199
211
233
228
269
281
271
288
283
273
300
300
300
307
307
307
300
319
319
331
331
326
326
338
355
367
367
367
367
374
374
374
374
374
386
391
386
386
398
393
405
732
727
833
832
1257
1298
1770
1794
1847
2250
2298
2351
1
1
1
1
1
1
34
34
34
34
53
53
53
53
53
53
53
65
65
72
77
77
77
84
84
84
84
84
84
84
104
84
101
115
115
125
137
142
132
144
151
151
178
190
175
214
211
211
245
240
247
276
288
283
273
295
295
307
307
307
307
307
307
319
319
319
312
331
331
343
343
338
350
367
379
379
379
379
374
374
386
386
398
403
393
398
410
739
739
803
803
845
820
820
839
1269
1310
1782
1806
1859
2262
2310
2363
1
27
34
34
34
34
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
77
72
77
72
84
84
84
84
84
84
84
84
84
101
96
111
113
115
115
125
137
142
132
149
139
151
163
190
202
226
211
211
233
257
247
259
288
295
300
295
307
319
319
319
319
326
326
331
331
324
343
343
355
355
350
362
379
374
374
374
374
374
391
391
391
391
386
393
393
410
405
422
597
751
857
832
832
1281
1322
1794
1818
1871
2274
2322
2375
1
1
1
27
34
34
34
34
34
34
34
34
34
34
34
34
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
65
65
77
77
72
72
84
84
84
84
84
84
84
84
111
96
96
113
108
118
120
115
115
125
137
137
137
149
139
156
151
175
175
202
214
204
211
238
245
247
269
271
273
295
307
307
319
331
326
326
338
338
343
343
355
355
367
367
362
374
374
391
386
386
386
403
403
393
422
434
539
609
763
869
839
839
1293
1334
1806
1830
1883
2286
2334
2387
1
1
1
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
65
77
77
77
72
72
72
77
77
94
84
84
84
84
84
84
84
101
111
96
123
108
108
120
115
115
137
137
137
137
137
149
149
149
156
151
168
185
175
175
214
204
226
211
250
247
257
281
283
273
295
307
319
319
319
326
326
326
331
343
338
338
350
350
355
355
367
367
379
379
374
374
374
386
403
393
398
393
434
446
621
775
881
1305
1346
1818
1842
1895
2298
2346
2399
1
1
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
46
53
53
53
53
53
53
65
65
65
65
65
65
65
77
77
72
72
72
77
77
72
72
77
94
84
84
84
84
84
84
84
84
84
99
101
101
111
96
96
113
123
108
130
115
115
115
115
115
115
125
125
137
137
149
149
149
156
156
161
168
180
185
185
175
187
204
204
226
238
262
247
247
269
273
273
295
295
307
307
319
331
326
326
338
338
343
355
350
350
362
362
367
367
379
379
391
391
386
386
398
425
405
446
544
628
787
803
820
893
1317
1358
1830
1854
1907
2310
2358
2411
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
77
72
72
72
77
72
72
72
72
72
94
84
84
84
84
84
84
84
84
84
84
84
84
84
111
111
101
101
111
96
96
96
106
113
123
108
103
130
115
115
115
115
125
125
125
135
137
142
149
149
156
156
161
151
151
151
168
173
180
185
185
192
204
204
211
238
250
230
247
247
274
281
273
273
307
307
307
319
343
338
338
350
350
355
367
362
362
374
374
379
379
374
374
391
391
403
398
393
410
437
556
799
832
905
1329
1370
1842
1866
1919
2322
2370
2423
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
72
72
72
72
72
94
94
94
84
84
84
84
84
84
84
84
84
84
111
111
101
96
96
96
96
123
123
113
123
108
103
108
113
130
115
115
115
115
125
115
115
142
137
137
137
137
137
137
147
149
154
161
151
151
161
168
173
163
163
170
180
180
185
185
175
192
199
204
204
204
211
250
230
262
247
247
242
286
293
273
273
319
331
355
350
350
362
362
367
379
374
374
386
386
391
391
386
403
403
410
449
568
811
839
917
1341
1382
1854
1878
1931
2334
2382
2435
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
53
53
53
53
53
53
53
53
53
53
53
53
53
75
75
65
65
65
65
77
72
72
84
84
84
84
84
99
111
101
101
101
101
96
96
96
96
106
106
123
123
108
103
103
108
130
115
125
115
135
115
135
125
137
137
142
137
137
137
137
142
149
149
149
149
154
144
154
151
166
161
173
173
180
170
175
180
175
185
185
175
182
192
187
199
204
204
204
206
211
230
230
262
247
247
247
274
254
298
273
273
305
331
343
367
362
362
374
374
379
391
386
386
398
398
403
393
415
417
461
580
823
929
1353
1394
1866
1890
1943
2346
2394
2447
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
53
53
53
53
53
53
53
80
80
65
65
82
82
77
77
72
72
94
84
84
101
111
111
101
96
96
106
123
113
113
113
108
103
103
103
113
113
130
130
115
115
115
125
137
142
137
147
147
142
149
149
149
149
149
154
144
156
156
161
151
151
161
166
151
161
163
173
173
180
180
185
187
187
192
187
194
199
199
204
204
204
206
218
230
230
230
247
247
242
274
286
261
273
310
317
343
355
379
374
374
386
386
391
398
398
410
405
427
427
473
597
592
628
835
941
1365
1406
1878
1902
1955
2358
2406
2459
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
41
53
53
53
53
53
80
80
80
80
65
75
75
87
87
77
72
72
72
72
94
84
84
111
96
106
113
123
123
113
103
103
113
120
120
125
115
135
120
120
142
142
137
142
149
154
144
154
154
156
156
156
156
161
151
166
151
161
168
173
163
173
173
170
175
180
180
185
187
187
199
199
199
199
204
204
204
206
206
211
230
230
230
230
230
247
247
242
242
249
286
298
273
322
329
367
391
386
386
398
398
410
410
405
417
439
451
485
539
609
604
847
953
1377
1418
1890
1914
1967
2370
2418
2471
27
27
27
27
27
27
34
34
34
34
34
34
34
41
41
53
53
53
53
53
53
53
53
53
53
75
80
75
80
87
87
82
82
72
72
92
72
92
72
99
94
94
84
101
111
106
96
123
103
113
130
130
125
125
137
137
147
132
132
137
142
149
154
154
151
166
161
151
161
161
168
168
168
173
173
170
180
180
175
180
180
185
185
182
187
192
187
187
199
199
204
204
204
211
206
211
221
218
218
223
230
230
230
230
230
242
247
247
242
242
249
254
298
310
334
341
379
403
398
398
410
405
417
463
497
621
616
859
965
1389
1430
1902
1926
1979
2382
2430
2483
27
27
34
34
34
34
34
34
34
34
34
34
34
34
41
41
41
53
53
53
53
53
53
80
80
80
72
72
92
87
72
92
87
99
94
84
99
99
84
106
106
111
96
113
123
118
135
120
142
142
137
137
142
149
144
154
144
151
161
166
166
161
161
163
173
173
173
173
180
180
180
180
180
185
187
192
187
187
187
194
199
204
199
204
204
204
204
204
211
211
221
223
233
230
235
230
230
230
230
230
247
242
242
254
254
249
261
310
322
346
353
391
410
405
427
417
470
509
628
623
871
977
1401
1442
1914
1938
1991
2394
2442
2495
27
27
27
27
27
27
27
34
34
34
34
34
34
53
53
53
53
53
80
75
80
80
80
80
87
87
72
72
92
72
99
94
99
94
84
106
111
106
106
113
118
118
118
135
125
125
137
147
132
144
154
154
144
144
161
151
161
151
151
156
173
173
173
173
175
180
180
185
185
187
192
192
192
192
187
187
187
199
199
199
199
204
204
206
216
211
206
216
216
223
223
233
235
230
230
230
230
230
245
242
247
242
242
242
249
249
266
261
322
334
358
417
417
439
451
521
628
623
640
883
989
1413
1454
1926
1950
2003
2406
2454
2507
1
27
27
34
34
34
34
34
34
34
34
34
34
53
53
53
53
53
80
80
87
87
92
92
87
92
72
99
99
106
101
106
101
113
118
118
118
120
125
125
147
137
132
149
154
151
166
166
151
161
151
161
173
173
168
180
180
180
180
187
187
187
197
197
199
199
204
199
199
199
199
204
204
204
204
211
206
211
218
228
223
218
228
228
235
235
230
245
247
242
242
242
252
254
254
249
249
278
307
329
319
341
365
417
463
528
528
628
623
640
647
895
1001
1425
1466
1938
1962
2015
2418
2466
2519
1
27
27
27
27
34
34
34
34
34
34
34
34
34
41
53
53
53
53
75
80
75
80
87
92
72
99
99
99
94
104
84
111
106
120
125
130
130
132
132
137
154
144
144
161
161
161
161
161
161
173
173
173
173
180
185
180
175
187
192
199
199
199
209
211
206
206
216
206
206
206
211
211
216
216
223
218
223
240
235
230
235
235
230
230
230
230
247
247
252
249
254
249
264
266
266
290
307
307
377
372
417
470
470
540
540
640
647
907
1013
1437
1478
1950
1974
2027
2430
2478
2531
27
27
27
27
27
27
34
34
34
34
34
34
41
53
53
53
53
53
53
80
75
80
75
80
87
92
87
72
87
72
99
99
111
106
106
101
111
118
118
132
142
144
149
161
151
161
161
161
161
161
173
173
173
173
180
180
180
185
185
170
170
170
170
187
187
197
192
199
204
211
223
218
228
218
218
223
223
223
223
235
230
235
247
242
242
242
252
259
264
261
271
278
278
302
319
348
372
384
384
417
552
552
628
623
647
919
1025
1449
1490
1962
1986
2039
2442
2490
2543
1
27
27
27
34
34
34
34
34
34
34
34
41
41
41
53
53
53
87
92
87
92
72
72
87
99
99
94
99
106
106
118
118
118
125
130
151
151
161
161
161
161
161
173
173
173
173
185
180
180
180
187
187
192
192
197
197
182
182
199
204
204
204
204
204
211
216
206
223
235
230
240
230
230
235
235
230
230
247
242
247
254
249
249
264
271
290
290
319
360
384
396
405
559
559
640
931
1037
1202
1461
1502
1974
1998
2051
2454
2502
2555
8
27
27
27
27
34
34
34
41
53
53
53
80
72
72
99
94
104
99
99
106
101
111
106
96
113
125
130
130
137
151
161
151
173
173
173
185
185
180
180
180
170
170
187
197
187
187
199
204
204
189
189
209
211
206
206
216
206
216
216
223
228
218
235
247
242
242
242
242
247
254
259
266
276
307
302
319
341
341
365
365
372
396
408
417
470
528
647
943
1049
1214
1473
1514
1986
2010
2063
2466
2514
2567
1
15
27
34
34
34
34
34
34
41
41
53
53
87
72
72
106
101
111
106
106
96
118
118
113
142
132
149
161
161
161
161
161
173
180
180
180
180
170
170
185
197
187
197
192
182
199
199
209
211
216
216
206
223
218
218
228
218
223
223
235
230
240
254
254
254
249
259
266
271
288
273
307
319
377
377
384
408
420
405
540
955
1061
1226
1485
1526
1998
2022
2075
2478
2526
2579
1
8
27
27
27
34
34
34
34
34
34
41
53
53
72
72
99
84
118
113
113
130
125
132
154
161
161
173
173
173
185
180
192
192
182
197
204
189
211
221
223
228
228
218
235
230
230
230
235
247
242
252
259
266
261
271
300
307
307
319
384
384
396
420
432
547
967
1073
1238
1497
1538
2010
2034
2087
2490
2538
2591
1
8
20
27
27
34
34
34
34
34
41
53
53
72
72
72
84
106
118
118
113
125
137
166
161
161
173
185
180
180
197
192
204
204
189
209
216
223
233
235
230
235
247
242
242
242
254
264
273
312
307
307
319
374
374
432
444
825
979
1085
1144
1250
1509
1550
2022
2046
2099
2502
2550
2603
1
1
1
1
1
1
8
15
27
27
34
34
41
53
53
53
53
53
53
53
65
72
72
84
96
96
113
113
130
125
137
149
144
144
151
173
173
173
185
180
180
197
204
216
216
221
228
235
240
242
254
254
254
276
261
261
295
307
324
319
374
374
374
444
456
837
991
1097
1262
1521
1557
2034
2058
2111
2514
2562
2615
1
1
1
8
8
15
27
27
34
34
41
53
53
53
53
53
53
65
77
72
89
89
84
84
96
96
125
142
149
161
156
161
161
151
173
185
185
180
180
197
192
216
228
228
233
240
252
254
266
271
271
261
261
288
273
307
374
374
374
456
468
849
1003
1104
1274
1528
1557
1569
2046
2070
2123
2526
2574
2627
1
1
8
20
20
27
27
34
34
34
58
53
53
53
53
53
72
72
72
72
72
72
89
89
84
84
84
96
96
96
96
154
161
151
173
173
163
173
168
185
185
185
197
197
192
209
204
228
240
235
247
259
261
273
273
319
319
374
374
374
468
480
861
1015
1116
1286
1569
1581
2058
2082
2135
2538
2586
2639
1
1
1
1
8
15
34
34
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
72
72
72
72
84
84
89
96
96
96
96
96
96
96
96
96
96
96
96
96
108
137
161
161
166
151
173
168
185
185
185
185
180
197
197
197
187
204
209
204
216
216
235
247
261
273
295
307
319
374
374
480
492
820
873
1027
1128
1298
1581
1593
2070
2094
2147
2550
2598
2651
1
8
8
15
27
53
53
53
53
53
53
53
58
53
53
53
53
53
53
53
65
65
65
65
65
65
65
65
65
72
72
77
72
84
89
84
84
84
89
84
84
89
89
84
84
96
96
96
96
96
96
96
96
96
108
103
120
120
149
161
161
173
173
173
163
173
185
185
185
197
197
197
197
187
187
204
209
209
216
216
228
228
261
295
307
307
374
492
803
820
832
885
1039
1140
1310
1528
1593
1605
2082
2106
2159
2562
2610
2663
1
1
1
20
20
27
34
34
53
53
53
53
53
53
53
58
53
53
65
65
65
65
72
77
77
72
72
72
72
72
72
72
72
72
84
89
89
84
89
89
89
84
84
84
89
89
84
84
84
96
96
96
96
96
108
108
103
120
120
127
147
137
139
156
173
173
173
185
185
185
185
190
180
197
197
197
187
187
209
209
209
209
221
221
216
216
228
228
240
235
261
307
307
319
374
803
832
844
897
1046
1152
1322
1605
1617
2094
2118
2171
2574
2622
2675
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
72
77
77
77
72
72
72
72
72
89
89
89
84
84
84
84
94
96
96
96
96
96
96
96
96
96
96
96
96
96
96
96
96
96
106
108
108
120
115
127
132
159
149
161
151
173
173
163
185
185
185
185
185
197
192
197
197
202
192
187
209
204
209
216
216
221
221
233
233
228
228
240
235
252
261
295
307
374
844
851
909
1164
1334
1617
1629
2106
2130
2183
2586
2634
2687
58
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
72
77
77
77
72
77
84
84
84
84
84
84
89
89
84
84
84
84
84
96
96
96
96
96
96
96
96
96
96
96
96
96
96
106
101
101
108
103
103
120
120
120
127
161
161
161
171
151
156
173
173
173
173
185
185
185
192
197
197
197
197
187
187
187
204
209
209
214
204
216
216
228
228
233
233
245
245
240
240
252
264
307
851
851
921
1176
1346
1629
1641
2118
2142
2195
2598
2646
2699
1
1
53
53
53
53
53
53
53
58
53
53
65
65
65
65
65
65
65
72
72
77
72
72
72
89
84
84
84
89
89
89
84
84
84
89
89
84
84
84
84
84
84
96
96
96
96
96
96
106
101
108
108
103
103
108
120
127
127
151
173
173
173
183
163
185
185
185
185
197
197
197
187
187
209
209
209
209
221
221
226
216
228
228
240
240
245
240
257
257
252
252
264
259
271
928
1188
1358
1641
1653
2130
2154
2207
2610
2658
2711
1
1
1
1
27
53
53
53
53
53
53
53
53
53
65
65
65
65
80
65
72
72
72
77
77
72
72
72
89
89
89
89
89
84
84
84
84
96
96
96
96
96
96
96
96
96
96
106
108
103
103
113
120
115
127
132
161
161
163
185
185
185
185
195
192
197
197
197
187
187
187
204
204
209
221
216
221
221
233
233
238
228
240
240
252
252
252
252
264
264
264
264
271
283
295
1200
1370
1653
1665
2142
2166
2219
2622
2670
2723
1
1
1
1
34
34
53
53
53
53
53
65
65
75
65
65
72
77
72
72
72
72
77
77
77
72
87
77
84
89
89
84
89
84
84
84
84
96
96
96
96
96
96
96
96
96
101
108
108
103
103
118
120
120
120
130
120
127
161
151
151
173
173
197
192
197
197
207
187
187
204
204
209
216
216
228
233
233
228
245
240
250
230
252
252
264
264
264
259
276
276
276
276
283
290
295
633
1212
1382
1665
1677
2154
2178
2231
2634
2682
2735
1
1
1
1
1
27
34
53
53
65
65
65
72
72
77
82
77
77
84
84
89
84
84
84
84
84
84
84
94
84
96
96
96
96
96
101
108
103
113
120
120
120
120
120
120
127
127
127
142
142
161
161
156
151
151
163
185
185
187
209
209
209
219
204
216
221
228
228
240
245
245
240
230
230
230
257
252
262
264
264
271
271
271
271
283
283
283
288
288
290
302
307
326
326
645
1224
1394
1677
1689
2166
2190
2243
2646
2694
2747
1
1
1
1
27
34
53
53
72
72
77
84
84
84
84
84
84
89
84
84
96
96
96
96
96
96
106
111
113
120
120
115
115
127
127
127
127
127
154
154
139
161
161
156
161
151
173
168
197
197
187
187
204
221
221
221
231
233
228
240
240
230
230
230
252
257
252
247
264
259
274
271
271
283
283
283
283
295
295
295
300
300
307
314
326
326
326
326
326
338
657
1236
1406
1689
1701
2178
2202
2255
2658
2706
2759
1
1
1
1
1
27
34
34
53
53
53
53
53
53
53
53
53
65
65
87
72
72
84
84
84
84
84
84
84
84
84
96
96
106
101
103
103
103
103
123
120
120
115
120
127
127
166
161
166
151
161
151
173
168
185
180
187
187
209
209
204
233
228
233
243
240
240
230
230
230
252
252
264
264
264
276
286
283
283
290
290
295
307
307
307
312
312
326
326
326
326
338
338
338
345
669
851
1248
1418
1701
1713
2190
2214
2267
2670
2718
2771
1
1
1
1
1
34
34
34
34
34
34
34
34
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
82
87
77
99
84
84
84
84
84
96
96
106
101
103
108
120
130
127
127
127
161
161
151
178
178
163
185
180
197
192
204
221
221
240
240
245
255
230
230
230
252
252
264
259
271
276
271
283
298
290
290
302
302
307
319
319
319
324
324
326
326
326
326
338
338
345
350
345
470
681
928
1260
1430
1713
1725
2202
2226
2279
2682
2730
2783
1
1
1
1
1
1
34
34
34
34
34
34
34
34
34
34
34
34
46
53
53
53
53
53
53
53
53
65
65
65
65
82
77
72
72
77
77
77
77
89
99
84
84
84
84
106
96
113
113
113
103
108
118
115
115
127
137
161
161
161
151
151
190
170
170
197
192
187
209
204
233
228
230
252
247
252
267
259
259
271
271
283
283
283
283
295
310
314
314
319
334
331
331
331
336
336
326
326
326
326
338
338
350
345
357
528
628
628
693
1272
1442
1725
1737
2214
2238
2291
2694
2742
2795
1
1
1
1
1
27
27
34
34
34
34
34
34
34
46
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
80
65
77
72
72
77
77
77
89
89
84
84
84
84
84
84
84
84
84
84
106
96
106
113
113
113
118
113
113
103
125
125
125
115
115
115
161
161
161
161
151
151
170
202
182
187
209
204
204
204
221
216
240
240
230
259
259
264
279
271
271
283
283
278
290
295
295
290
307
326
326
331
346
326
326
326
326
343
343
343
338
338
345
345
362
470
540
623
623
640
640
705
1284
1454
1737
1749
2226
2250
2303
2706
2754
2807
1
1
1
34
34
34
34
34
34
34
34
34
34
34
34
34
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
87
77
77
87
77
89
84
84
84
84
84
84
84
84
84
96
96
96
106
113
118
108
125
125
125
125
125
115
130
132
132
132
144
144
161
161
151
151
170
170
187
214
204
189
221
216
216
228
228
230
252
247
259
271
271
271
291
278
290
295
290
302
307
307
302
319
341
338
338
343
358
338
338
355
355
355
345
345
374
552
652
652
717
1296
1466
1749
1761
2238
2262
2315
2718
2766
2819
1
1
1
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
82
87
77
72
77
77
72
72
72
77
99
89
89
84
84
84
84
84
94
84
96
96
101
101
113
113
113
108
103
125
115
115
130
115
115
132
132
132
137
142
137
137
127
144
144
161
161
170
170
170
170
180
182
226
228
223
240
240
247
259
283
283
283
278
290
307
302
314
319
319
314
331
326
326
326
353
350
350
355
370
365
345
345
367
367
386
475
559
659
659
729
1308
1478
1761
1773
2250
2274
2327
2730
2778
2831
1
1
1
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
65
65
77
77
82
87
87
87
72
77
77
77
77
72
72
72
72
72
99
84
84
84
84
84
84
84
84
94
84
84
96
101
101
101
111
96
106
113
113
113
113
113
103
113
113
125
125
125
115
115
120
115
120
115
125
125
142
137
144
144
149
149
149
156
156
161
161
161
151
170
170
180
182
192
189
204
204
238
240
247
252
271
271
278
290
290
295
295
295
302
319
314
326
331
331
326
326
343
338
338
362
362
382
377
379
398
487
659
736
1320
1490
1773
1785
2262
2286
2339
2742
2790
2843
1
1
1
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
53
63
63
53
53
53
53
53
53
53
53
65
65
65
65
65
65
65
82
77
77
77
72
72
72
77
72
72
72
89
89
99
99
99
84
84
84
84
84
84
94
84
84
84
84
96
111
96
101
96
113
108
113
113
113
123
108
113
125
125
125
125
125
115
120
115
125
132
132
137
132
132
137
149
149
144
156
156
156
156
156
161
161
151
168
168
170
170
180
180
189
204
216
250
247
247
259
259
264
271
283
290
290
302
302
307
307
307
314
331
326
326
326
338
343
343
338
355
345
350
374
374
394
384
470
499
528
1332
1502
1785
1797
2274
2298
2351
2754
2802
2855
1
27
27
27
27
27
27
27
27
34
34
34
49
34
34
34
49
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
53
63
53
53
53
53
53
53
53
65
70
70
65
65
65
65
77
82
77
87
72
72
72
72
77
77
72
72
89
84
84
84
84
84
94
84
84
84
84
96
96
106
106
101
96
111
101
96
96
113
113
113
113
113
113
108
123
103
108
108
125
115
115
115
115
120
120
115
115
130
115
125
125
132
132
132
132
137
132
137
144
149
144
144
144
156
156
161
151
168
163
168
163
168
175
175
170
170
180
180
180
180
192
204
204
211
206
206
206
206
206
223
247
262
259
271
271
276
295
290
290
302
302
314
314
319
319
319
326
341
326
326
343
338
338
350
355
355
350
367
357
406
511
540
559
1344
1514
1797
1809
2286
2310
2363
2766
2814
2867
1
37
37
27
27
27
27
27
27
34
49
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
46
46
41
41
41
61
61
63
63
53
53
53
53
53
53
53
53
53
53
53
53
70
65
65
65
65
65
87
82
82
87
72
72
72
77
72
72
72
72
89
89
89
99
84
84
84
84
84
84
84
84
84
84
84
101
96
101
96
101
96
96
118
118
113
113
108
123
108
103
103
125
125
125
125
125
125
115
115
120
115
130
120
115
115
125
125
137
127
127
137
137
144
144
144
149
144
144
144
156
156
156
156
163
175
175
180
175
175
170
180
180
182
182
182
192
192
192
199
206
206
206
218
218
218
247
283
288
290
307
302
302
314
314
326
326
331
331
331
326
326
338
353
338
355
350
365
345
362
367
362
418
528
523
547
659
1356
1526
1809
1821
2298
2322
2375
2778
2826
2879
27
37
37
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
49
49
34
41
61
63
53
63
53
53
53
53
53
53
68
53
53
53
53
53
68
65
65
65
65
65
65
75
75
65
77
82
82
77
72
72
72
72
72
99
99
94
84
94
84
84
84
84
84
84
101
96
111
101
96
96
96
101
113
108
113
108
108
103
103
113
113
125
120
130
130
115
115
130
115
120
115
115
132
132
132
132
132
137
137
137
137
149
149
144
156
156
156
156
156
168
163
163
168
175
180
180
180
180
182
187
192
187
182
194
194
204
189
199
204
204
206
206
206
206
218
225
230
225
247
295
302
319
314
314
326
326
338
338
343
343
343
338
350
345
362
377
374
374
430
470
540
535
736
1368
1538
1821
1833
2310
2334
2387
2790
2838
2891
27
37
27
27
27
34
49
34
49
34
34
34
34
49
34
34
49
34
34
34
34
46
46
56
56
53
53
53
68
53
53
53
53
70
65
65
75
75
75
65
87
77
72
72
72
77
77
72
72
82
82
72
72
89
89
94
84
84
84
84
84
111
101
106
96
96
111
96
96
108
123
113
103
113
103
108
113
115
115
120
115
115
120
115
125
132
137
142
142
137
144
144
144
149
149
149
144
156
161
163
168
163
168
168
175
175
180
180
180
180
180
180
187
192
192
199
204
199
206
206
211
211
206
206
206
206
218
218
225
237
307
314
331
326
326
338
338
350
350
355
355
345
362
384
374
381
437
552
547
1380
1550
1833
1845
2322
2346
2399
2802
2850
2903
37
27
27
37
27
27
34
34
49
49
34
34
49
34
34
34
34
34
34
34
56
61
56
61
63
53
53
53
63
63
53
65
65
75
82
72
72
77
72
82
72
87
87
72
99
89
84
84
84
89
89
101
101
96
96
101
96
96
113
123
108
113
108
103
123
103
108
115
115
130
120
120
115
120
125
125
127
137
137
132
144
149
149
149
149
156
156
156
156
161
156
163
173
173
175
175
175
175
180
182
187
182
192
192
192
199
199
199
211
216
211
206
206
206
206
206
206
206
218
218
218
218
225
225
319
326
343
338
338
350
350
362
362
362
362
374
386
449
559
554
1392
1562
1845
1857
2334
2358
2411
2814
2862
2915
37
27
37
27
27
27
49
44
34
49
34
34
34
34
34
34
34
56
61
61
63
63
68
53
63
53
68
68
70
65
82
72
87
72
89
84
89
84
99
99
84
96
101
111
108
108
113
108
113
103
125
130
120
120
115
130
115
137
127
137
127
127
127
137
149
149
156
156
156
156
161
168
168
163
173
163
163
175
180
180
185
187
182
182
182
194
199
194
199
199
204
211
206
206
206
223
223
218
218
218
218
228
230
230
225
225
331
338
355
350
350
362
362
374
369
381
456
571
1404
1574
1857
1869
2346
2370
2423
2826
2874
2927
27
27
27
27
27
49
49
44
49
34
34
34
34
34
34
34
56
56
41
61
63
68
68
68
53
53
53
70
75
75
75
75
72
72
89
99
84
101
111
108
113
123
120
115
120
115
120
137
132
137
127
137
149
149
139
144
156
161
161
163
163
168
173
163
175
175
175
175
175
187
182
182
192
197
199
194
206
211
206
211
206
206
223
218
235
225
225
230
225
240
235
242
242
343
350
362
362
374
369
381
559
554
578
1416
1586
1869
1881
2358
2382
2435
2838
2886
2939
1
27
27
27
27
34
34
34
34
34
34
34
56
56
56
61
41
63
63
53
53
73
68
53
53
53
53
75
75
75
75
87
82
72
87
82
72
72
101
113
123
115
120
130
127
127
149
149
161
161
151
163
168
173
173
175
180
175
180
180
182
182
187
187
199
194
194
199
204
211
206
206
206
218
223
218
218
235
225
237
252
254
254
312
362
374
369
381
571
1428
1598
1881
1893
2370
2394
2447
2850
2898
2951
37
27
27
34
34
34
34
34
34
41
63
53
73
68
53
68
53
53
53
53
80
75
75
87
82
87
82
72
99
89
99
96
113
120
127
137
137
127
139
161
156
173
163
173
163
180
185
185
182
187
192
187
192
194
194
199
199
211
206
206
206
206
216
223
218
218
230
230
235
225
259
266
324
324
374
381
381
578
1440
1610
1893
1905
2382
2406
2459
2862
2910
2963
37
27
27
44
49
34
34
34
34
34
41
53
53
53
80
75
75
72
72
72
87
82
87
99
89
99
84
111
120
137
127
127
137
127
149
151
156
173
163
163
175
175
192
182
182
182
197
197
199
204
199
199
206
206
211
211
223
218
218
218
223
230
235
225
242
242
336
336
381
381
1452
1622
1905
1917
2394
2418
2471
2874
2922
2975
27
27
27
27
44
34
34
34
34
34
34
56
56
53
53
53
72
72
87
82
82
72
99
94
111
123
120
127
137
127
149
149
161
163
168
163
163
175
187
182
182
204
194
194
194
209
211
211
216
218
218
223
230
230
225
247
242
249
271
348
348
369
381
1464
1634
1917
1929
2406
2430
2483
2886
2934
2987
1
27
27
34
34
34
34
56
41
53
68
53
63
53
53
75
72
72
87
72
99
94
111
101
123
130
127
149
161
156
161
173
175
180
175
182
187
182
199
194
206
206
206
211
216
223
230
230
235
242
237
259
254
271
360
360
381
1476
1646
1929
1941
2418
2442
2495
2898
2946
2999
27
27
34
34
34
34
34
53
63
53
75
70
72
87
72
84
99
111
106
101
123
130
161
173
168
173
192
182
194
199
194
211
206
218
218
218
228
235
242
242
249
271
283
372
372
369
1488
1658
1941
1953
2430
2454
2507
2910
2958
3011
27
34
34
34
41
53
70
72
82
72
99
111
96
123
118
113
130
156
173
180
180
182
204
206
211
206
218
230
230
230
235
247
237
259
249
326
384
381
856
1500
1670
1953
1965
2442
2466
2519
2922
2970
3023
27
34
34
34
53
75
94
84
111
101
96
123
130
130
161
168
180
192
182
216
218
218
230
242
237
237
249
271
283
312
326
326
381
856
868
1512
1682
1965
1977
2454
2478
2531
2934
2982
3035
27
34
34
53
84
106
101
123
135
137
173
180
180
204
223
230
230
237
249
249
283
283
324
326
326
369
868
880
1524
1694
1977
1989
2466
2490
2543
2946
2994
3047
1
1
27
34
34
53
118
113
108
113
135
142
185
192
192
211
235
237
237
259
249
283
326
326
336
880
892
1536
1706
1989
2001
2478
2502
2555
2958
3006
3059
1
1
1
8
8
34
82
101
108
130
125
142
163
180
192
192
204
204
223
247
237
249
283
326
326
348
892
904
1548
1718
2001
2013
2490
2514
2567
2970
3018
3071
1
1
1
1
1
8
15
15
34
53
89
113
108
113
125
137
132
166
163
163
204
204
216
211
237
259
271
283
326
326
360
904
916
1560
1730
2013
2025
2502
2526
2579
2982
3030
3083
1
1
1
1
1
8
8
8
20
27
27
53
53
53
75
72
72
89
89
96
96
125
137
137
139
178
163
216
211
228
237
259
283
326
372
916
928
1572
1742
2025
2037
2514
2538
2591
2994
3042
3095
1
1
1
1
1
8
8
8
15
15
20
27
53
53
53
53
53
53
53
53
53
65
75
72
72
72
72
72
89
96
96
96
96
101
101
113
120
137
137
132
149
149
163
163
190
228
240
247
237
271
384
928
935
1584
1754
2037
2049
2526
2550
2603
3006
3054
3107
1
8
8
20
20
15
27
27
53
53
58
53
53
53
53
53
53
53
53
53
53
53
53
63
65
65
65
65
65
72
72
72
72
72
72
87
89
84
84
84
89
96
96
96
96
96
96
96
96
111
106
101
113
108
125
137
137
137
137
137
137
149
149
139
161
161
156
163
202
240
252
247
237
259
326
933
935
1596
1766
2049
2061
2538
2562
2615
3018
3066
3119
8
20
15
27
49
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
65
75
70
72
77
72
72
72
72
77
72
89
84
84
89
84
89
84
89
89
84
84
89
84
96
96
96
96
96
96
96
96
96
96
111
108
113
113
123
118
108
125
120
137
137
137
137
149
149
149
149
149
149
161
161
173
173
168
163
163
163
214
206
252
247
247
326
664
945
1608
1778
2061
2073
2550
2574
2627
3030
3078
3131
20
27
27
34
56
58
53
53
53
58
53
53
53
53
53
53
53
53
53
53
58
53
53
53
53
53
65
65
65
65
65
65
65
65
65
65
65
65
72
72
77
72
72
72
72
87
77
89
84
84
89
89
84
84
89
89
84
84
89
89
84
84
84
84
96
96
96
96
96
96
96
96
96
96
96
96
113
108
113
123
120
125
125
135
130
120
137
137
137
137
137
144
149
149
149
161
161
161
161
161
161
168
173
163
163
163
185
185
180
180
206
206
259
259
326
564
664
676
957
1620
1790
2073
2085
2562
2586
2639
3042
3090
3143
1
34
34
53
58
53
53
53
53
53
53
53
53
53
53
63
53
53
65
65
65
65
65
65
65
65
65
72
72
72
77
77
77
72
72
72
72
77
72
72
72
72
87
77
77
84
84
84
89
84
84
84
89
89
89
84
84
89
84
89
96
96
96
96
96
96
96
96
96
96
96
96
96
96
108
108
113
108
125
120
125
135
137
137
137
137
127
147
142
132
137
127
149
144
149
149
139
161
161
161
168
173
173
168
168
173
163
180
185
180
180
197
197
192
206
206
211
247
326
576
676
688
969
1632
1802
2085
2097
2574
2598
2651
3054
3102
3155
53
53
53
58
53
53
65
65
65
65
65
65
65
75
72
72
72
77
72
72
72
77
77
72
72
72
72
77
84
89
84
84
84
84
89
84
89
84
84
99
89
84
89
96
96
96
96
96
96
96
96
96
96
96
96
96
96
96
108
113
108
108
108
113
103
103
120
120
125
120
120
137
137
137
137
137
127
147
137
127
149
149
144
149
159
154
161
161
161
168
168
168
163
163
180
180
185
185
185
180
180
197
192
209
209
204
206
206
247
290
290
588
688
700
935
981
1644
1814
2097
2109
2586
2610
2663
3066
3114
3167
1
27
65
65
65
75
72
72
72
77
77
72
72
72
72
77
72
72
84
89
84
84
89
84
84
84
84
84
84
84
84
96
96
96
96
96
96
96
96
106
96
108
113
113
108
108
103
103
103
108
120
125
120
120
120
125
125
137
137
127
127
127
137
137
127
149
144
144
149
149
159
139
161
161
161
171
166
168
168
173
163
180
180
180
180
192
197
197
197
192
209
204
216
221
206
206
216
247
290
290
302
600
700
712
988
1656
1826
2109
2121
2598
2622
2675
3078
3126
3179
1
1
27
27
27
34
34
34
63
53
63
53
53
65
77
72
72
72
72
72
72
72
84
84
89
89
84
84
84
84
84
96
96
96
96
96
96
96
96
96
96
113
108
103
113
113
103
120
120
125
125
120
115
137
137
137
137
127
127
127
127
132
137
144
149
161
161
161
171
168
173
173
183
178
163
163
180
180
185
180
180
180
192
192
204
209
209
204
204
216
216
206
206
228
233
228
247
290
290
302
309
612
712
724
1668
1838
2121
2133
2610
2634
2687
3090
3138
3191
1
1
1
1
39
34
34
34
39
34
34
34
34
34
34
46
63
53
53
63
53
53
53
65
65
70
75
65
65
72
72
72
84
89
84
84
84
89
89
84
84
89
84
96
96
96
96
96
103
103
103
103
120
120
120
125
120
125
125
120
137
137
137
127
127
127
137
137
127
127
144
149
149
144
161
168
168
173
163
180
185
185
195
180
180
197
192
192
192
204
204
216
216
216
216
216
206
206
228
223
235
245
259
290
290
302
309
389
559
624
724
736
741
1680
1850
2133
2145
2622
2646
2699
3102
3150
3203
1
1
1
1
1
27
27
27
27
37
34
34
34
34
34
34
51
51
51
46
58
58
53
53
53
75
70
65
65
75
65
77
72
72
77
82
77
72
77
89
84
84
89
84
89
84
96
96
96
96
96
96
96
96
103
103
120
120
120
125
125
120
137
127
127
127
127
137
137
127
127
149
149
149
161
161
173
180
180
185
180
180
192
192
197
207
204
204
204
204
216
216
206
223
228
228
223
223
235
235
247
247
278
290
290
302
309
401
554
571
636
736
753
743
1692
1862
2145
2157
2634
2658
2711
3114
3162
3215
1
1
1
1
1
1
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
44
51
51
58
58
53
53
63
63
63
53
63
53
53
53
63
65
65
65
65
82
77
77
77
89
89
84
84
89
94
84
84
84
96
101
96
96
96
96
96
96
113
113
103
103
113
120
120
125
125
137
127
127
127
137
127
127
144
161
161
161
168
173
185
180
180
180
180
192
197
192
204
204
204
219
216
216
216
216
206
223
223
223
235
235
235
235
247
242
259
278
278
278
290
302
309
413
583
648
743
765
935
1704
1874
2157
2169
2646
2670
2723
3126
3174
3227
1
1
1
1
25
37
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
51
51
51
41
51
53
53
53
53
53
53
53
53
65
65
75
75
70
75
65
70
75
65
77
77
72
77
72
72
89
89
89
94
84
84
84
84
84
84
89
84
101
96
101
106
96
108
103
103
113
113
103
120
125
125
127
127
127
137
127
149
173
173
173
180
185
180
180
197
192
204
204
204
216
211
216
231
206
223
223
223
228
235
235
235
242
247
242
259
254
271
290
290
290
290
290
302
309
425
559
590
660
777
988
1716
1886
2169
2181
2658
2682
2735
3138
3186
3239
1
1
1
1
1
25
27
27
37
27
34
34
34
34
34
44
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
51
41
41
41
53
58
58
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
65
75
77
72
82
82
72
82
87
82
87
77
72
89
89
89
89
89
89
84
84
84
84
89
84
84
84
101
101
106
96
101
108
108
118
103
108
120
120
125
137
137
127
127
137
127
139
161
185
180
185
192
197
192
182
182
204
199
216
216
216
223
223
243
235
235
242
242
247
254
259
271
266
283
290
290
290
290
302
297
302
309
437
437
554
559
554
571
667
743
789
1728
1898
2181
2193
2670
2694
2747
3150
3198
3251
1
1
1
1
1
1
27
27
27
37
32
27
34
34
34
39
34
34
34
44
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
51
56
41
41
41
41
53
53
53
53
63
53
53
53
53
53
53
53
53
53
53
63
53
53
53
70
65
65
65
65
65
65
65
70
65
77
72
72
77
77
72
82
89
94
94
89
89
89
89
89
89
89
84
84
89
89
99
89
99
84
84
84
84
84
84
101
101
101
101
101
96
96
101
108
118
108
113
120
120
120
115
125
115
120
125
127
132
137
127
144
149
151
156
156
156
168
180
180
192
192
197
182
182
204
204
199
194
216
223
223
223
235
235
235
242
242
254
259
266
271
283
278
295
290
290
302
302
309
309
384
449
449
571
583
796
1740
1910
2193
2205
2682
2706
2759
3162
3210
3263
1
1
1
25
27
37
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
49
34
34
34
46
46
51
51
56
41
46
41
41
41
41
41
41
41
53
53
58
63
53
53
63
53
53
53
53
53
68
63
53
70
65
65
70
75
65
65
65
65
65
70
65
77
77
72
72
77
77
72
77
77
72
72
82
77
89
89
89
89
89
89
89
89
89
84
84
84
84
84
84
84
94
101
101
101
101
101
101
101
101
96
101
106
96
106
96
106
106
96
108
108
103
108
113
113
113
120
115
125
120
125
115
115
127
132
132
132
132
127
144
161
156
163
168
168
180
192
182
182
182
204
199
204
194
216
216
201
223
223
235
235
235
247
242
254
266
271
278
283
278
295
290
290
290
307
302
309
309
461
461
559
554
578
590
1752
1922
2205
2217
2694
2718
2771
3174
3222
3275
1
1
1
1
25
25
27
27
37
27
37
27
27
27
27
37
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
49
34
34
46
51
41
41
41
51
51
51
51
41
46
41
41
56
53
53
53
53
53
53
53
63
53
53
53
68
53
53
53
65
75
70
65
70
75
65
65
65
75
65
82
87
77
72
72
72
72
77
82
72
72
77
89
89
89
89
89
89
89
89
89
89
84
84
84
84
84
84
89
84
84
94
84
101
101
101
101
101
101
101
101
96
96
96
101
108
108
108
108
108
113
113
108
113
113
108
113
118
118
103
113
120
120
115
115
125
125
125
127
132
132
132
132
127
127
127
144
144
144
144
151
173
175
180
180
175
180
192
182
182
182
199
194
194
211
216
201
223
223
235
235
235
242
242
259
254
266
278
283
278
290
295
290
290
290
307
302
302
319
309
468
468
571
667
1764
1934
2217
2229
2706
2730
2783
3186
3234
3287
1
1
25
25
27
37
27
27
37
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
44
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
49
34
34
34
34
44
34
34
46
46
46
46
51
46
51
41
51
51
56
63
63
53
58
63
53
53
58
53
53
53
53
53
63
63
53
53
65
65
65
65
65
70
75
65
60
65
65
75
72
77
72
82
87
72
72
72
82
87
72
82
82
89
89
89
89
89
89
89
89
99
84
84
84
84
84
84
84
84
94
84
84
101
101
101
101
101
101
101
101
96
96
96
101
96
101
108
108
108
108
108
108
113
113
113
103
120
120
115
115
125
125
125
115
125
125
125
125
115
125
127
132
132
132
132
132
139
144
144
139
139
156
151
151
156
156
156
156
156
158
180
192
187
187
182
182
182
182
204
194
211
206
201
223
235
235
247
247
242
242
254
254
271
266
278
290
295
290
290
302
307
302
302
319
314
309
480
578
743
1776
1946
2229
2241
2718
2742
2795
3198
3246
3299
1
1
1
25
27
27
32
27
37
27
27
27
34
34
34
34
34
34
34
44
34
34
34
34
34
34
34
34
34
34
34
34
44
46
46
41
46
51
41
41
56
46
46
41
56
51
58
53
53
58
63
53
53
53
53
53
53
53
53
53
63
63
53
53
53
53
75
75
75
65
65
65
65
65
65
70
65
75
65
72
72
77
82
72
72
72
72
77
77
72
82
72
72
89
89
89
89
89
84
84
89
99
84
84
84
94
84
99
94
101
101
101
101
101
101
101
106
96
96
96
101
96
108
108
108
108
108
108
113
113
103
103
108
103
113
120
120
120
115
125
125
115
125
115
132
132
132
132
137
132
137
132
132
132
127
127
144
144
139
139
139
151
151
151
146
156
168
158
158
168
168
168
170
192
182
182
182
182
199
199
194
194
216
201
213
235
242
242
242
242
259
259
254
266
266
283
278
290
290
290
302
307
302
314
319
309
309
326
468
468
487
796
1788
1958
2241
2253
2730
2754
2807
3210
3258
3311
1
1
1
25
27
37
27
37
27
34
34
34
34
34
34
34
34
34
34
34
39
34
44
34
34
34
51
46
41
41
46
51
56
51
46
41
41
51
41
53
53
63
53
53
53
53
53
53
68
53
53
53
63
53
53
53
53
53
53
53
53
70
65
75
65
60
65
75
70
65
65
65
65
65
82
82
72
72
77
77
87
77
72
77
72
87
72
72
82
82
89
89
84
84
89
84
84
84
84
84
84
101
101
101
101
96
106
96
101
96
106
106
101
108
108
108
113
108
113
108
113
103
113
103
113
108
103
120
120
120
120
115
120
125
125
115
115
125
132
132
132
132
132
132
127
127
144
144
139
139
149
139
149
139
144
139
139
151
151
151
151
163
158
163
180
170
175
175
180
182
182
182
182
182
182
199
194
194
211
201
201
223
223
223
235
242
254
254
254
254
271
271
266
278
278
278
278
295
290
302
302
314
309
326
338
480
1800
1970
2253
2265
2742
2766
2819
3222
3270
3323
1
1
1
25
37
27
37
27
27
27
27
34
34
34
34
34
34
34
34
34
44
34
34
34
34
34
34
49
34
34
34
34
34
34
34
34
41
41
41
51
51
41
51
51
58
63
53
58
53
63
53
53
53
68
63
53
53
53
53
53
53
75
70
65
75
75
65
65
65
60
65
65
77
72
87
72
72
77
72
87
77
72
77
72
72
72
89
89
89
89
89
84
84
89
99
84
84
84
84
84
84
94
101
101
96
96
96
96
108
103
113
108
113
108
103
113
113
113
118
120
120
120
125
120
115
125
125
115
125
115
125
120
115
115
115
132
132
132
132
132
132
132
127
132
132
144
144
139
139
139
139
144
139
151
151
151
151
156
146
156
156
161
158
163
163
163
175
175
192
182
187
182
182
182
182
182
199
194
194
194
194
201
201
223
235
235
235
242
247
242
266
266
266
266
283
283
278
290
290
290
290
290
307
302
314
309
326
487
1812
1982
2265
2277
2754
2778
2831
3234
3282
3335
1
1
25
25
27
37
27
37
27
27
34
34
34
34
49
34
34
34
34
49
34
34
34
34
34
46
46
41
41
51
51
56
56
41
41
41
41
41
63
53
58
53
53
63
58
53
53
53
53
53
53
75
70
75
65
75
70
65
65
60
65
65
82
77
72
72
82
87
72
72
72
77
72
72
72
72
89
89
89
89
99
84
84
84
84
84
84
84
84
84
84
84
84
84
101
101
101
101
101
96
96
106
96
96
96
101
108
108
103
103
103
103
120
125
125
115
115
125
115
125
130
132
132
132
132
137
132
137
132
132
127
127
144
144
144
139
139
139
144
144
139
144
139
151
151
151
151
151
146
158
158
163
163
168
168
170
175
175
175
187
182
182
182
182
199
194
194
194
204
211
206
201
206
201
235
242
247
242
242
254
259
254
278
278
278
278
295
295
290
290
290
302
302
297
302
319
314
321
1824
1994
2277
2289
2766
2790
2843
3246
3294
3347
1
32
37
27
27
27
27
27
34
34
34
34
44
44
34
34
34
34
34
34
34
34
41
51
56
41
61
63
58
63
53
53
63
53
53
53
53
53
53
53
58
53
75
65
70
65
65
65
65
65
60
65
82
77
82
72
82
77
72
72
72
72
72
89
89
84
94
84
84
84
84
84
84
84
84
84
84
101
101
101
106
96
96
96
96
101
96
108
108
108
113
103
113
113
103
113
103
113
103
120
115
115
115
115
115
132
137
127
132
137
132
142
139
144
144
139
149
139
149
144
144
139
151
151
151
151
151
156
151
151
151
158
158
163
163
158
170
175
175
180
175
182
187
187
187
182
182
199
194
194
206
201
201
223
218
213
242
242
254
259
254
254
266
271
266
290
290
290
290
307
307
302
302
314
314
309
321
1836
2006
2289
2301
2778
2802
2855
3258
3306
3359
27
34
34
34
34
44
34
34
34
34
34
34
44
41
41
41
41
41
41
51
56
41
41
63
63
53
53
53
53
53
53
53
53
63
53
68
53
75
65
75
65
65
60
70
65
65
65
65
60
82
72
72
77
72
72
77
77
72
72
89
84
84
84
84
84
84
84
101
96
106
101
96
96
96
108
108
113
113
108
103
103
103
113
103
108
103
120
120
115
115
115
125
125
115
115
125
115
125
127
132
139
149
139
144
149
139
139
151
151
151
151
151
146
158
158
158
163
163
158
168
163
158
158
170
175
175
170
182
187
187
182
182
192
194
199
199
199
194
211
201
201
223
218
230
254
266
271
266
266
278
283
278
302
302
302
302
319
314
309
326
321
1848
2018
2301
2313
2790
2814
2867
3270
3318
3371
27
34
34
34
34
34
34
34
34
34
34
41
51
41
51
41
41
53
53
53
53
63
53
53
53
53
53
63
53
53
53
53
75
65
75
65
65
65
65
75
65
75
75
82
72
72
72
87
72
77
72
77
72
72
72
84
84
89
84
84
84
84
84
101
96
96
96
108
108
108
103
103
113
103
120
120
115
125
115
110
115
125
115
132
137
132
132
132
132
139
144
151
151
151
151
151
158
158
158
170
170
175
175
170
180
170
170
182
187
187
182
182
182
194
199
199
194
204
206
211
211
201
242
266
278
283
278
278
290
295
290
314
314
314
314
321
321
338
1860
2030
2313
2325
2802
2826
2879
3282
3330
3383
27
27
34
34
34
34
34
34
41
41
41
41
63
53
53
53
53
58
53
53
53
53
53
75
60
60
60
60
60
60
65
60
70
60
60
65
60
60
87
72
72
72
72
77
82
72
87
87
84
84
84
84
84
84
87
96
101
96
96
108
108
113
103
103
120
115
115
115
115
132
137
132
132
132
127
144
149
139
144
139
139
151
151
163
158
158
163
158
170
170
170
182
182
187
187
182
182
182
182
187
194
199
199
194
194
206
211
201
218
223
278
290
295
290
290
302
307
302
326
326
326
321
321
1872
2042
2325
2337
2814
2838
2891
3294
3342
3395
27
34
34
34
34
34
41
41
63
53
53
53
53
53
53
53
53
75
60
60
65
60
60
60
60
60
60
60
72
72
72
72
72
72
72
82
67
67
87
67
67
72
84
84
89
99
99
96
96
96
99
113
103
113
103
103
103
108
115
115
115
110
127
132
132
144
149
139
139
144
144
139
151
151
151
163
158
158
158
158
170
175
170
170
182
182
182
194
194
199
199
194
194
194
206
206
201
218
223
235
290
302
307
302
302
314
319
314
333
333
1884
2054
2337
2349
2826
2850
2903
3306
3354
3407
27
27
34
34
34
34
34
34
34
41
41
53
53
53
53
53
75
60
60
60
60
60
60
65
60
60
60
72
67
67
87
67
67
72
67
67
72
84
84
79
79
94
79
79
99
79
79
89
96
111
106
96
103
103
103
103
111
120
127
137
139
139
144
144
139
139
139
151
151
156
151
151
158
158
158
170
170
170
170
170
170
182
187
182
194
194
194
206
206
206
206
201
218
213
213
247
302
314
319
314
314
326
321
321
1896
2066
2349
2361
2838
2862
2915
3318
3366
3419
27
27
34
34
34
34
34
34
41
41
41
53
53
53
53
60
60
60
60
60
60
60
72
72
72
72
72
87
67
67
72
89
79
79
99
84
84
91
86
91
86
106
91
91
106
91
91
101
96
103
123
113
113
118
137
139
139
139
139
139
149
151
151
151
156
151
158
158
158
158
158
163
158
168
158
158
158
170
170
170
170
182
182
182
182
194
194
206
206
206
218
213
213
218
213
259
314
326
326
321
333
1908
2078
2361
2373
2850
2874
2927
3330
3378
3431
34
34
34
34
34
41
46
41
41
53
53
53
53
53
53
53
60
60
60
60
60
60
65
65
60
60
60
72
72
67
67
84
84
79
79
99
84
89
84
101
91
91
106
98
98
98
98
118
113
103
103
125
130
132
139
139
139
149
151
151
151
161
163
158
168
158
158
158
158
158
170
170
170
175
170
180
170
170
170
182
182
182
194
194
194
194
206
206
218
213
213
225
271
326
333
333
1920
2090
2373
2385
2862
2886
2939
3342
3390
3443
1
34
34
34
34
34
34
41
41
41
41
63
53
53
53
53
60
60
60
65
65
72
72
72
72
67
67
67
67
72
79
79
79
79
89
91
86
91
86
106
113
113
110
110
125
115
115
125
139
144
139
139
151
161
163
158
158
168
175
170
180
170
170
182
182
182
187
182
192
182
182
194
194
194
206
206
206
206
213
213
225
264
283
288
333
333
333
1932
2102
2385
2397
2874
2898
2951
3354
3402
3455
1
34
34
34
34
34
34
41
41
41
41
63
53
53
53
53
53
63
60
60
75
60
65
60
72
67
67
77
79
79
79
79
84
79
79
86
86
91
91
98
98
98
98
113
113
125
127
127
139
139
156
151
151
163
168
175
180
187
182
182
182
187
194
194
194
194
194
194
199
206
206
206
218
213
223
213
213
276
295
300
321
333
1944
2114
2397
2409
2886
2910
2963
3366
3414
3467
1
34
34
34
34
34
34
34
41
41
41
41
41
53
53
53
53
60
60
75
60
60
60
60
60
60
60
80
75
72
72
87
72
84
79
79
89
86
86
86
86
98
98
108
110
110
125
139
139
139
151
151
158
158
168
163
163
158
175
180
187
187
194
194
194
206
206
206
206
206
206
218
218
213
223
225
225
288
307
312
321
1956
2126
2409
2421
2898
2922
2975
3378
3426
3479
1
8
37
34
34
34
34
34
41
41
41
53
68
63
60
60
65
70
72
72
72
72
87
72
67
67
67
67
92
99
79
79
89
96
96
113
98
98
98
98
113
105
105
139
151
151
151
163
163
168
158
170
180
175
175
187
187
206
206
206
218
218
218
218
213
225
235
225
225
264
300
319
324
333
1968
2138
2421
2433
2910
2934
2987
3390
3438
3491
8
15
27
34
34
34
34
44
34
41
41
41
63
60
60
80
72
72
77
79
79
99
79
79
79
79
104
89
106
86
86
96
96
108
113
110
110
105
105
125
151
163
163
163
175
175
180
182
187
187
187
218
223
223
213
213
225
230
230
225
276
312
331
336
321
1980
2150
2433
2445
2922
2946
2999
3402
3450
3503
1
20
27
34
34
41
41
41
51
51
53
53
53
65
72
72
67
67
92
77
79
79
84
84
86
86
106
86
86
116
101
113
98
98
108
125
117
117
137
142
139
163
158
175
175
175
187
187
192
194
223
213
225
235
225
242
242
288
290
290
321
343
940
940
1992
2162
2445
2457
2934
2958
3011
3414
3462
3515
1
1
27
34
39
34
34
34
34
41
41
41
41
48
48
53
48
48
63
58
70
65
65
77
67
67
67
67
77
79
79
104
89
86
86
86
86
86
86
86
86
106
96
98
98
113
113
98
98
128
108
108
105
105
132
137
139
149
154
139
158
168
175
170
187
187
187
204
206
223
213
235
235
225
254
254
278
290
300
355
952
952
2004
2174
2457
2469
2946
2970
3023
3426
3474
3527
1
1
8
27
39
39
34
34
46
41
41
46
41
41
53
53
48
48
53
63
60
65
70
65
60
60
65
82
77
67
67
67
67
89
79
79
86
86
86
86
86
86
86
86
116
96
96
101
98
98
113
98
98
98
98
118
110
110
125
105
105
140
115
139
144
144
139
161
166
158
170
180
187
182
187
199
199
216
213
223
223
213
266
266
290
290
312
367
964
964
2016
2186
2469
2481
2958
2982
3035
3438
3486
3539
1
1
8
15
34
34
34
46
41
41
41
51
58
48
53
48
53
48
63
60
65
60
60
72
82
72
67
67
67
67
67
67
82
94
89
79
79
89
101
98
98
98
98
128
113
108
125
110
110
110
110
110
110
130
120
117
117
152
139
139
139
156
156
158
173
178
170
182
192
182
187
194
211
211
213
223
213
225
235
278
278
290
290
324
379
748
976
976
2028
2198
2481
2493
2970
2994
3047
3450
3498
3551
1
1
1
20
25
27
34
34
34
34
34
46
41
41
41
51
53
53
48
53
48
60
65
65
65
60
60
70
75
72
67
67
67
67
82
77
84
94
79
79
79
79
101
101
108
108
113
110
110
140
115
117
122
122
117
122
122
142
127
139
164
139
139
168
163
170
190
182
182
194
204
206
223
223
213
213
223
223
290
290
290
290
336
391
595
760
988
988
2040
2210
2493
2505
2982
3006
3059
3462
3510
3563
1
1
1
1
1
1
8
27
32
34
34
39
34
46
41
51
51
58
53
48
48
53
53
53
65
70
65
70
65
70
70
65
65
60
60
70
77
77
77
67
67
72
82
82
77
79
79
79
79
89
101
86
86
86
86
91
108
108
113
120
117
117
152
127
134
134
134
134
139
154
139
139
139
176
180
182
202
182
194
206
216
211
213
213
223
235
235
235
278
290
290
302
302
403
607
772
993
1000
1000
2052
2222
2505
2517
2994
3018
3071
3474
3522
3575
1
1
1
1
1
8
8
15
27
34
34
34
39
39
39
41
46
41
46
41
41
46
41
58
48
53
53
53
48
48
60
65
65
65
60
65
70
65
65
77
77
82
82
82
82
77
72
67
67
67
67
82
82
89
79
79
84
84
89
101
98
98
113
120
115
132
127
139
164
139
139
146
146
146
146
166
188
182
182
192
194
214
199
206
213
213
235
235
247
247
290
290
290
314
314
415
590
619
748
784
1005
1012
1012
2064
2234
2517
2529
3006
3030
3083
3486
3534
3587
1
1
1
1
1
8
8
15
20
27
27
27
34
39
34
34
34
34
46
41
41
46
46
41
58
58
53
48
53
53
53
58
48
53
53
65
70
65
70
65
70
60
65
65
72
77
72
82
67
67
82
72
94
94
94
94
89
79
79
84
84
101
108
113
113
103
105
105
132
127
144
139
139
139
176
156
156
158
158
158
158
163
200
182
182
204
206
211
213
223
225
259
259
278
278
290
326
326
427
468
595
590
631
672
760
796
1017
1024
1024
2076
2246
2529
2541
3018
3042
3095
3498
3546
3599
1
1
1
1
1
1
1
8
13
20
27
27
27
34
34
34
39
34
34
34
34
39
34
34
34
34
34
34
34
34
34
41
41
51
46
41
41
41
46
46
41
41
51
58
58
58
58
53
53
53
48
48
53
60
70
65
65
65
70
65
60
65
65
65
65
82
82
82
82
67
67
89
84
94
79
79
106
106
101
101
106
108
98
98
113
113
105
105
115
117
117
127
127
127
144
139
139
156
156
156
188
170
170
170
170
182
182
182
199
211
213
223
225
271
271
290
338
338
439
468
468
480
607
643
684
772
801
808
1029
1036
1036
2088
2258
2541
2553
3030
3054
3107
3510
3558
3611
1
1
1
1
1
1
8
13
13
13
8
15
27
27
27
34
34
34
34
34
39
34
34
34
34
34
46
46
46
51
41
41
41
46
51
46
46
41
46
41
41
46
46
41
41
51
53
58
58
58
58
53
58
58
48
58
58
53
48
58
48
48
53
48
65
65
65
70
65
60
65
65
65
65
65
82
82
82
82
77
77
67
67
94
94
94
94
89
101
101
91
108
98
98
118
118
118
113
113
103
120
110
110
105
105
105
105
127
139
139
139
139
156
156
156
156
156
163
182
182
182
182
182
182
182
199
225
283
283
350
350
451
468
480
492
619
655
696
784
813
820
1041
1043
1043
2100
2270
2553
2565
3042
3066
3119
3522
3570
3623
1
1
1
1
1
1
1
1
13
13
13
20
27
27
27
27
27
27
39
34
34
34
34
34
34
46
46
41
46
46
51
46
41
41
46
41
41
41
46
41
41
58
58
53
53
58
53
53
48
58
58
58
53
53
48
58
58
58
53
58
48
53
53
48
53
53
60
65
65
60
65
65
65
60
60
65
65
65
77
82
77
82
82
77
77
77
67
67
82
82
94
94
94
94
84
84
106
106
106
86
86
106
113
113
113
113
103
103
120
110
110
130
130
130
115
115
132
117
117
117
117
127
127
127
139
156
146
163
168
175
182
182
182
194
194
194
194
211
213
295
295
362
362
463
492
499
631
667
708
796
825
832
1048
1043
2112
2282
2565
2577
3054
3078
3131
3534
3582
3635
1
1
1
1
1
1
1
1
1
13
13
13
27
27
27
27
27
27
34
39
34
34
34
39
34
34
34
34
34
34
34
34
34
46
46
41
46
46
46
41
41
41
41
46
46
41
41
58
48
53
53
53
48
58
53
53
53
58
58
53
53
48
53
53
58
58
53
53
53
53
65
60
65
60
70
65
65
65
65
65
65
60
65
65
65
77
77
77
77
72
77
67
67
72
94
89
94
94
84
84
89
89
89
94
84
84
79
106
101
106
106
86
86
96
113
118
98
98
118
118
113
113
125
115
110
132
142
137
142
127
117
117
117
117
127
127
127
144
139
139
139
175
175
182
182
182
199
206
206
206
206
213
307
307
374
374
475
499
643
674
720
808
837
844
2124
2294
2577
2589
3066
3090
3143
3546
3594
3647
1
1
1
1
1
1
1
1
1
13
13
13
13
13
25
27
27
27
27
27
27
27
34
34
39
34
39
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
46
46
46
41
46
51
46
41
46
46
41
41
53
48
58
58
53
53
53
48
58
53
53
58
53
53
48
48
53
58
53
53
58
63
53
53
53
53
53
53
65
60
60
65
65
65
65
60
65
65
60
60
65
65
77
77
82
77
77
77
82
77
82
72
67
67
82
82
89
89
79
89
89
89
84
84
84
106
101
106
101
96
101
101
101
118
113
98
98
118
108
113
113
113
103
125
130
130
130
105
105
137
117
117
132
144
149
149
149
139
139
139
139
156
156
146
156
156
182
182
194
218
218
218
218
319
319
386
386
487
655
727
820
849
851
1043
2136
2306
2589
2601
3078
3102
3155
3558
3606
3659
1
1
1
1
1
1
1
1
1
13
13
13
25
25
27
27
27
27
27
27
27
27
27
27
27
27
27
32
27
34
34
39
34
39
34
34
39
34
39
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
46
51
51
46
46
51
46
46
41
46
41
58
53
53
53
53
53
58
58
53
53
53
53
48
53
58
53
53
58
53
53
53
60
60
65
65
65
60
65
60
70
65
70
70
65
60
65
60
75
65
65
77
72
77
77
72
77
67
67
82
82
77
77
89
89
94
89
89
89
94
89
94
89
89
94
96
101
96
101
91
118
108
113
108
108
108
113
113
113
103
125
130
115
120
130
105
105
142
137
142
137
117
117
127
127
132
144
139
144
139
156
161
161
156
151
146
163
168
182
206
230
230
230
230
242
331
331
398
398
499
667
832
856
1048
2148
2318
2601
2613
3090
3114
3167
3570
3618
3671
1
1
1
1
1
1
1
1
1
1
1
1
1
8
13
25
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
32
27
32
27
27
27
27
39
34
39
34
34
34
34
34
34
39
34
34
39
34
34
39
34
34
34
34
34
39
34
39
34
34
34
34
46
46
46
51
51
51
41
46
46
46
41
41
46
46
46
41
41
46
41
41
58
58
58
58
58
58
48
53
58
48
53
58
58
48
48
53
53
60
60
65
65
60
60
60
65
65
65
60
70
65
65
60
70
70
72
82
77
77
77
82
77
82
77
77
82
77
72
67
72
67
67
82
77
77
84
89
89
84
89
94
84
84
84
101
106
101
106
96
96
101
96
96
101
101
108
108
108
113
113
125
115
120
130
115
115
110
142
127
137
132
142
117
117
132
132
149
149
149
149
139
139
156
156
163
168
168
168
163
158
175
175
218
242
242
242
242
242
242
242
254
343
343
410
410
511
674
844
2160
2330
2613
2625
3102
3126
3179
3582
3630
3683
1
1
1
1
1
1
1
1
1
13
13
13
13
13
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
32
27
27
27
34
39
34
39
34
34
39
34
34
34
34
39
39
34
34
34
34
34
34
39
39
34
34
34
34
34
39
34
34
39
34
34
34
34
34
51
51
46
46
46
51
46
51
46
41
46
46
46
46
51
51
41
41
41
51
46
41
46
41
41
41
41
41
53
58
58
48
53
58
58
53
58
58
53
53
48
48
58
58
58
53
58
53
48
63
48
63
53
48
48
53
53
53
53
70
70
65
65
60
60
60
65
65
70
70
65
65
77
77
72
82
77
77
77
67
82
72
72
67
67
82
82
82
84
94
89
94
89
89
94
89
89
84
89
84
84
79
84
89
84
84
84
96
96
96
91
101
101
118
108
113
113
108
108
113
115
120
115
105
105
115
115
132
137
142
127
132
149
139
149
154
144
161
161
156
161
146
163
158
163
158
175
180
180
175
170
182
230
242
242
242
242
254
254
254
254
254
266
355
355
422
422
523
727
851
851
2172
2342
2625
2637
3114
3138
3191
3594
3642
3695
1
1
1
1
1
1
1
1
13
8
13
13
8
13
13
13
25
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
39
34
34
34
39
34
34
34
34
39
34
34
34
34
39
34
34
34
34
34
34
34
34
34
39
34
34
34
39
34
34
34
34
34
34
46
51
51
51
51
51
51
46
46
51
46
41
41
46
51
46
41
41
41
51
41
46
41
46
41
51
41
41
41
58
58
58
58
58
58
58
58
58
53
58
58
58
48
53
58
53
58
58
53
53
58
63
48
63
53
58
58
48
53
60
65
65
70
65
60
65
65
65
60
65
70
60
70
70
60
75
75
60
65
82
77
72
77
77
82
82
82
82
67
67
77
84
94
89
89
89
84
89
84
89
94
106
101
106
96
96
96
101
91
96
96
96
91
108
108
108
113
125
115
130
125
115
115
105
105
127
132
127
132
132
132
149
154
139
139
144
161
151
161
161
151
168
168
168
168
158
158
158
158
170
182
192
192
187
182
194
242
242
242
242
242
242
242
254
254
266
266
266
266
261
273
367
367
434
434
535
856
851
2184
2354
2637
2649
3126
3150
3203
3606
3654
3707
1
1
1
1
1
1
13
13
8
13
20
25
25
27
27
27
27
27
27
27
27
27
27
27
27
27
32
27
27
27
27
27
27
34
34
34
34
34
39
34
39
34
34
34
34
34
34
39
34
39
34
34
34
39
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
46
51
46
46
46
46
46
46
46
41
41
46
41
41
46
41
41
41
51
41
51
41
41
48
58
58
58
58
58
58
58
58
58
53
53
58
58
53
53
63
48
53
63
58
58
58
53
48
48
60
70
65
65
60
65
65
70
65
60
60
70
70
60
70
65
75
60
70
70
65
65
77
82
77
77
77
67
72
67
72
77
82
82
82
72
82
82
72
67
67
77
84
94
89
84
89
89
89
94
89
94
84
106
101
91
101
96
91
86
86
101
113
108
108
118
108
108
113
108
115
120
120
115
115
115
127
137
142
137
127
132
132
139
139
139
134
144
161
161
151
156
168
163
168
173
158
158
158
158
158
158
180
180
180
170
170
182
204
204
189
206
242
242
242
242
242
254
254
254
254
254
261
261
278
278
278
278
379
379
446
446
547
2196
2366
2649
2661
3138
3162
3215
3618
3666
3719
1
1
1
1
1
1
20
25
27
27
27
27
27
27
27
27
27
27
27
27
27
27
32
32
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
39
34
39
34
34
34
34
39
34
34
34
34
39
34
34
34
39
34
34
34
34
34
34
46
41
51
51
46
46
46
46
46
51
51
46
51
51
46
41
41
41
46
46
41
46
41
51
51
46
41
41
41
41
58
58
58
58
58
48
53
58
53
53
48
48
53
58
53
53
58
58
53
53
53
63
48
48
53
53
65
70
70
65
65
60
65
60
70
70
65
60
60
70
75
65
65
65
60
60
72
77
77
77
72
77
77
67
72
77
82
82
72
82
82
72
77
77
77
82
67
67
89
84
94
89
89
89
79
79
84
84
89
89
94
89
89
89
84
89
84
106
101
91
96
101
96
101
101
96
91
86
86
86
86
113
108
108
108
98
98
125
120
130
115
120
115
115
115
115
120
132
132
127
139
149
154
144
139
139
144
151
151
151
168
173
163
158
163
158
158
158
158
158
180
180
170
170
170
170
192
192
187
182
177
189
216
216
218
242
242
242
242
242
254
254
266
261
266
266
261
290
290
290
290
391
391
458
458
559
2208
2378
2661
2673
3150
3174
3227
3630
3678
3731
1
1
1
1
1
13
27
27
27
27
27
27
27
27
27
32
27
27
27
27
27
27
27
34
34
34
34
39
34
34
39
39
34
34
39
34
39
34
34
34
34
34
39
34
34
34
34
34
34
46
51
46
46
51
51
46
46
46
46
41
41
51
46
41
51
51
41
41
41
41
41
41
58
58
53
58
58
58
58
58
58
58
58
58
58
58
58
58
53
48
53
58
53
58
58
58
58
53
53
53
53
58
53
48
48
65
65
65
65
65
60
70
65
70
70
65
65
70
75
77
72
72
77
82
82
72
72
67
82
82
82
77
82
67
67
84
79
84
89
89
84
89
89
94
89
79
84
84
89
89
94
84
106
101
101
91
101
96
91
96
96
96
101
96
101
101
101
86
86
86
86
96
108
108
108
108
108
108
108
118
98
98
125
115
120
110
110
132
142
127
137
132
127
127
132
132
139
139
139
134
151
161
161
156
156
151
151
163
158
158
158
158
158
158
158
158
180
180
175
170
170
187
187
192
182
177
182
182
204
204
199
189
228
230
242
242
242
242
242
242
242
254
254
266
261
273
273
278
302
302
302
302
403
403
470
470
571
2220
2390
2673
2685
3162
3186
3239
3642
3690
3743
1
1
1
1
8
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
39
39
39
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
46
51
41
41
46
46
51
51
41
51
51
41
41
46
46
41
41
41
41
41
41
41
58
58
58
58
58
58
58
58
53
53
53
53
63
58
58
58
53
53
53
53
53
53
48
63
48
48
70
65
65
65
70
70
60
60
70
65
70
65
65
65
65
70
70
60
65
70
60
60
70
70
77
72
77
72
77
67
82
82
77
82
82
84
89
94
84
84
79
79
79
89
89
84
89
94
94
91
96
96
96
96
101
101
96
101
101
101
91
86
86
108
108
118
108
108
108
108
108
113
113
108
98
98
108
115
115
120
120
120
130
110
110
115
115
137
132
117
117
149
139
149
139
139
134
134
144
151
163
168
173
163
168
163
158
158
158
158
158
158
158
158
158
175
170
170
170
170
187
192
182
177
187
199
204
189
189
189
216
216
211
242
242
242
242
242
242
242
254
254
254
254
261
261
273
290
314
314
314
314
415
415
482
482
583
2232
2402
2685
2697
3174
3198
3251
3654
3702
3755
1
1
1
8
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
39
34
34
34
34
34
39
34
34
34
34
39
34
34
34
34
34
34
34
34
41
51
51
41
41
46
46
51
51
46
51
41
41
41
41
41
46
46
41
46
41
58
53
53
58
58
58
53
53
63
53
53
53
53
53
53
53
53
53
63
53
58
53
48
65
65
65
70
70
65
65
65
65
65
60
60
70
60
60
70
70
77
77
77
72
82
82
72
82
67
77
77
72
82
82
82
72
77
67
77
77
67
67
84
84
84
84
84
84
89
89
89
89
89
89
101
96
91
91
91
96
101
101
101
101
86
86
103
108
108
108
108
108
108
108
108
108
98
98
115
115
130
115
120
120
120
125
125
115
110
110
120
115
115
115
127
127
132
132
132
142
117
117
127
149
144
139
161
151
161
151
158
158
158
158
158
158
158
158
158
180
180
175
170
170
170
170
170
177
187
177
177
199
204
189
199
211
216
228
223
242
242
242
254
254
254
254
261
261
266
261
302
326
326
326
326
427
427
494
494
595
2244
2414
2697
2709
3186
3210
3263
3666
3714
3767
1
1
1
1
8
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
39
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
46
51
51
41
41
51
46
41
41
41
41
41
41
41
41
51
41
41
41
46
41
53
58
53
53
58
58
58
58
58
53
53
58
53
48
53
53
53
53
53
63
53
63
58
53
53
48
70
60
70
60
60
65
65
65
70
60
70
65
65
65
77
77
77
82
82
77
77
72
72
77
72
82
77
67
67
89
94
94
89
84
89
89
84
84
89
94
89
84
84
84
79
84
89
84
79
96
91
96
96
96
101
96
101
86
86
108
108
108
113
108
108
108
98
98
115
120
120
120
115
120
115
115
120
110
110
127
142
132
132
132
137
137
117
117
132
127
139
139
144
144
144
149
139
134
161
156
168
163
168
158
158
158
158
158
158
158
158
170
170
170
170
170
187
192
187
177
187
177
177
182
177
187
211
216
223
228
235
242
242
254
266
261
266
261
273
314
338
338
338
338
439
439
506
506
607
2256
2426
2709
2721
3198
3222
3275
3678
3726
3779
1
1
1
8
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
46
41
46
51
46
51
41
41
41
46
46
41
41
51
46
46
41
41
41
53
58
58
58
58
53
58
53
53
53
63
53
48
48
63
48
48
53
48
58
65
70
65
60
60
70
65
70
60
60
60
60
65
70
65
70
65
60
65
65
82
72
82
67
67
77
77
77
77
77
77
67
67
84
89
84
89
89
89
89
84
79
84
84
89
89
79
96
101
101
96
101
101
96
96
101
96
91
96
91
96
96
101
86
86
86
86
108
103
108
113
108
108
113
120
120
125
115
120
120
110
110
127
132
132
132
127
132
127
132
117
117
139
149
144
144
144
139
134
151
151
156
156
161
156
168
168
163
158
158
158
158
158
158
158
158
180
175
180
170
170
170
170
177
177
182
177
199
204
199
199
189
199
223
228
235
240
247
242
242
254
261
273
326
350
350
350
350
451
451
518
518
619
2268
2438
2721
2733
3210
3234
3287
3690
3738
3791
1
1
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
41
46
51
51
46
51
46
51
41
46
46
41
41
41
41
41
41
41
46
58
58
53
58
58
58
58
58
53
53
53
53
53
63
58
53
53
53
53
53
53
65
65
65
60
65
70
70
65
60
75
60
65
65
77
72
82
72
77
77
72
67
67
77
77
77
77
67
77
72
67
67
67
67
89
84
84
89
79
79
89
84
84
84
84
89
89
96
91
91
96
96
96
96
101
91
96
96
96
96
86
86
86
86
108
108
108
108
103
108
108
108
108
108
108
108
108
113
98
98
98
98
98
115
115
120
120
120
125
120
132
132
137
127
132
132
117
117
139
144
144
139
139
144
139
151
161
156
156
163
163
168
158
158
158
158
158
158
163
168
180
170
170
170
170
192
187
177
182
187
187
177
177
189
211
216
211
211
235
240
247
242
242
259
254
261
338
362
362
362
362
463
463
530
530
631
2280
2450
2733
2745
3222
3246
3299
3702
3750
3803
1
1
8
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
46
46
51
41
41
41
41
41
41
41
46
41
41
46
41
41
41
41
53
58
58
58
58
58
48
53
53
53
63
53
63
58
53
53
48
48
53
53
53
53
53
53
53
53
65
65
65
60
70
65
70
65
65
65
60
65
70
77
77
72
77
77
72
67
82
72
72
67
67
67
67
72
77
84
94
84
84
84
84
84
89
89
89
79
79
79
89
96
91
96
91
91
101
96
96
101
86
86
86
86
86
86
108
103
103
108
103
108
108
113
108
108
108
108
98
98
98
98
120
120
115
115
115
120
120
120
120
115
115
120
115
125
105
110
105
110
115
127
132
132
132
137
144
144
139
144
144
139
151
156
151
151
156
163
168
158
168
158
158
158
163
175
175
180
170
170
170
187
182
177
182
177
177
204
199
189
199
223
228
223
223
247
242
242
259
254
271
261
350
374
374
374
374
475
475
542
542
643
2292
2462
2745
2757
3234
3258
3311
3714
3757
3815
1
1
8
8
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
51
41
41
41
46
41
46
41
41
46
41
41
41
41
46
58
53
53
53
53
53
53
53
53
48
48
63
53
53
53
53
48
53
53
48
70
70
60
70
65
70
65
60
65
65
60
60
60
60
60
65
65
77
77
82
77
77
72
77
72
72
67
72
72
82
67
67
67
67
77
84
89
84
89
79
79
84
79
89
84
79
96
101
96
91
96
96
96
101
96
86
86
86
86
86
108
113
108
108
98
98
103
103
108
120
115
120
120
120
125
115
115
115
120
120
110
110
110
110
115
132
132
127
127
132
132
132
132
127
127
132
127
117
117
139
144
144
144
156
151
156
156
158
163
163
168
168
158
158
158
158
158
180
180
175
170
182
182
187
177
177
199
194
189
216
211
211
235
240
235
235
254
254
271
261
386
386
386
386
487
487
554
554
655
2304
2474
2757
2769
3246
3265
3323
3726
3769
3827
1
8
27
27
27
27
27
27
34
34
34
34
34
34
34
34
46
51
41
41
41
46
46
46
41
41
41
41
41
41
41
41
41
46
46
41
53
58
53
53
58
58
53
53
53
53
48
53
53
48
48
48
48
53
53
65
65
60
60
60
60
75
60
65
60
65
60
80
65
82
82
72
77
77
77
77
72
72
67
67
72
77
67
67
89
89
84
89
89
89
84
84
79
84
84
89
79
84
84
89
96
96
96
96
96
96
91
96
91
86
86
96
108
108
108
103
113
98
98
103
120
115
120
110
110
115
115
120
132
127
132
132
132
127
127
127
132
132
117
117
117
117
144
144
139
139
144
144
144
139
139
139
144
151
156
151
163
168
168
158
158
163
175
180
170
175
170
182
192
187
177
194
189
199
211
206
228
223
247
247
261
278
398
398
398
398
499
499
566
566
667
2316
2486
2769
2781
3258
3277
3335
3738
3781
3839
13
27
27
27
27
27
27
34
34
34
34
34
34
39
46
41
41
41
41
41
46
41
56
58
53
53
53
53
53
53
48
53
48
48
53
48
53
53
53
53
53
58
65
65
65
60
60
60
60
65
60
65
60
65
60
70
65
77
72
67
72
72
82
77
72
72
72
67
67
92
89
89
84
84
89
84
84
79
84
79
79
79
84
89
96
96
96
96
96
101
96
91
91
96
91
96
96
86
86
108
108
103
108
108
103
103
98
98
103
108
103
115
120
120
120
115
125
115
115
110
110
132
127
132
117
117
127
127
144
139
144
144
139
139
139
156
156
151
156
156
151
151
151
146
163
168
158
158
158
158
175
170
175
180
177
177
182
194
204
199
206
211
223
218
235
259
254
410
410
410
410
511
511
578
578
679
2328
2498
2781
2793
3270
3289
3347
3750
3793
3851
1
20
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
39
41
41
41
41
46
41
41
46
53
53
53
48
53
53
53
53
53
53
68
65
65
65
60
65
60
60
65
65
60
65
65
77
72
72
67
67
72
77
67
72
67
72
67
67
77
82
79
79
84
84
89
89
84
84
104
96
96
96
91
96
96
91
91
91
91
96
86
86
103
103
108
113
103
98
98
103
103
120
115
115
120
120
115
115
115
115
110
110
120
115
110
127
132
132
132
127
127
127
117
117
139
144
156
151
151
151
146
151
168
168
163
168
168
163
163
163
158
158
158
158
158
170
170
170
175
177
192
206
216
211
218
223
235
230
247
271
422
422
422
422
523
523
590
590
691
2340
2510
2793
2805
3282
3301
3359
3757
3805
3863
27
27
27
27
34
34
34
34
34
34
34
41
41
41
46
41
41
41
41
41
41
41
53
48
48
53
53
53
53
48
53
48
65
65
80
77
72
72
72
72
67
67
77
84
84
89
79
79
84
89
79
79
79
84
94
91
91
91
91
96
96
96
91
86
86
86
86
86
86
86
86
96
116
108
103
103
113
115
115
120
125
115
115
110
110
110
132
127
127
132
132
127
127
127
127
117
117
132
127
139
144
144
139
139
139
151
156
168
163
163
163
158
158
158
158
180
175
170
170
170
175
175
170
182
177
177
204
218
228
223
230
235
247
242
259
254
278
434
434
434
434
535
535
602
602
703
2352
2522
2805
2817
3289
3313
3371
3817
3875
1
1
27
27
27
27
34
34
34
34
34
46
41
41
46
41
41
41
53
53
53
53
53
53
53
48
53
53
53
48
48
48
60
60
65
60
60
65
67
67
67
92
84
84
79
96
91
96
96
96
101
91
91
86
86
86
86
86
86
86
86
101
103
108
103
98
98
98
98
98
98
108
128
108
115
115
125
127
127
132
127
127
117
117
144
139
139
139
139
139
139
144
139
151
156
156
151
151
151
151
163
158
158
158
158
163
170
170
170
175
170
170
177
177
182
194
216
216
230
240
235
242
247
259
254
254
266
446
446
446
446
547
547
614
614
715
2364
2534
2817
2829
3325
3383
3829
3887
27
27
34
34
34
39
46
41
46
41
41
46
46
53
53
53
53
53
53
48
48
53
48
58
60
65
60
60
60
60
65
60
67
67
72
72
67
72
82
79
79
79
104
96
91
86
86
86
86
86
86
96
96
108
103
98
98
98
98
98
103
108
113
120
105
105
110
105
105
110
120
110
140
127
127
137
139
139
139
139
156
151
151
151
151
151
156
151
146
146
151
163
168
163
163
158
158
163
158
170
170
170
177
177
206
228
228
242
252
247
254
259
266
261
458
458
458
458
559
559
626
626
727
2376
2546
2829
2841
3337
3395
3841
3899
27
34
39
41
41
41
48
48
53
53
53
53
53
58
48
53
58
60
65
65
65
72
72
67
72
67
67
72
72
82
79
79
79
84
79
79
79
79
94
84
91
86
86
86
86
86
86
86
86
86
86
116
96
108
98
98
118
115
120
105
110
105
110
120
120
132
117
117
132
139
139
149
151
151
151
146
146
146
163
163
163
163
168
163
158
158
163
158
175
170
170
170
177
177
218
240
240
254
264
259
271
261
470
470
470
470
504
571
571
638
638
739
2388
2558
2841
2853
3349
3407
3853
3911
27
27
34
34
41
53
53
53
53
48
48
65
70
70
65
60
65
65
72
67
67
67
82
72
82
84
79
84
79
79
79
84
91
91
91
86
86
86
86
86
106
96
98
98
98
98
98
98
105
105
130
127
132
117
117
132
144
144
151
146
151
161
156
163
163
158
158
158
175
180
175
170
170
170
170
177
182
230
252
252
276
271
261
283
482
482
482
482
504
516
583
583
650
650
751
2400
2570
2853
2865
3361
3419
3865
3923
13
39
39
41
41
48
48
48
48
65
67
82
72
82
82
77
72
79
79
79
79
79
94
91
91
91
86
86
86
86
86
86
86
96
96
96
98
98
98
98
118
105
105
105
105
115
142
139
144
144
151
156
163
163
168
175
170
170
192
187
177
182
242
242
264
266
288
283
295
494
494
494
494
516
528
595
595
662
657
679
763
1053
2412
2582
2865
2877
3373
3431
3877
3935
1
20
27
27
39
41
41
46
53
48
53
60
65
67
67
72
72
82
82
79
94
84
89
84
89
89
86
86
86
86
86
86
86
96
106
98
98
103
98
98
105
105
130
115
144
154
151
151
168
158
158
158
175
170
177
182
204
199
242
254
266
300
295
307
506
506
506
506
528
540
607
607
674
669
691
775
861
1065
2424
2594
2877
2889
3385
3443
3889
3947
1
27
34
39
34
39
34
48
58
53
58
53
82
79
79
84
84
89
89
84
106
86
96
86
101
96
98
98
103
118
113
105
105
115
115
156
151
166
156
163
158
158
158
180
187
216
211
242
261
312
307
319
518
518
513
513
540
552
619
619
679
674
686
681
703
787
873
1077
2436
2606
2889
2901
3397
3455
3901
3959
1
34
39
34
41
51
51
53
53
70
70
72
82
79
86
96
96
96
86
86
96
96
96
118
108
103
108
105
105
130
115
125
132
144
151
168
178
158
168
168
170
228
223
242
324
319
331
530
530
525
525
552
564
631
631
674
691
693
693
715
799
885
1089
2448
2618
2901
2913
3409
3467
3913
3971
27
34
34
34
34
39
41
53
53
53
58
58
58
65
82
77
72
84
89
86
86
86
96
91
96
96
96
108
108
98
98
130
120
115
115
115
120
142
132
132
144
156
158
158
180
190
228
240
235
242
336
331
343
542
542
537
537
564
576
643
643
703
705
727
811
897
1101
2460
2630
2913
2925
3421
3479
3925
3983
1
27
27
34
39
41
46
46
53
53
65
65
65
65
65
77
72
72
94
84
86
86
96
86
86
96
96
96
120
120
115
115
142
132
132
127
132
132
127
154
144
156
168
158
158
180
192
228
240
252
247
242
348
343
355
549
549
549
549
576
583
655
655
715
717
732
739
823
909
1113
2472
2642
2925
2937
3433
3491
3937
3995
1
1
1
8
27
27
34
41
46
41
46
53
53
58
53
48
53
60
65
77
72
72
72
89
84
89
86
86
86
96
96
106
96
96
108
115
115
115
115
132
132
132
154
144
134
144
166
156
158
168
158
168
180
180
180
180
204
240
252
242
264
259
360
355
367
561
561
583
667
667
727
729
744
751
835
921
1125
2484
2654
2937
2949
3445
3503
3949
4007
1
1
1
1
8
15
34
34
34
34
34
41
41
51
53
53
58
53
48
53
60
65
60
65
72
77
72
72
89
84
84
84
84
86
86
86
86
96
96
91
96
118
120
115
115
115
132
132
127
144
144
166
156
151
163
168
178
158
158
168
158
163
180
180
187
192
192
192
216
252
242
264
276
271
372
367
379
573
573
679
679
739
741
756
763
847
933
1137
2496
2666
2949
2961
3457
3515
3961
4019
1
1
1
1
1
1
8
8
15
27
27
27
34
34
46
41
46
41
46
41
41
53
53
53
53
53
48
48
48
58
60
60
70
60
65
72
72
77
72
72
84
84
84
89
84
86
86
86
101
86
96
96
91
91
130
115
115
115
132
132
127
134
156
156
178
168
158
158
158
163
168
180
190
180
187
192
199
204
204
204
228
242
264
276
288
283
384
379
391
585
585
691
691
751
753
768
775
859
945
1149
2508
2678
2961
2973
3469
3527
3973
4031
1
1
1
1
1
1
1
8
8
8
8
15
20
20
27
27
34
34
34
34
34
34
34
34
39
46
41
46
41
41
58
58
53
53
48
48
48
60
60
60
65
65
72
77
82
72
72
72
84
84
84
79
84
86
86
86
86
86
86
96
96
96
91
96
113
103
142
132
127
132
132
144
134
168
168
168
168
158
158
158
158
158
168
168
190
180
192
202
192
211
216
216
216
240
242
242
276
300
295
396
391
403
597
597
703
703
763
765
780
782
871
856
957
1048
1161
2520
2690
2973
2985
3481
3539
3985
4043
1
1
1
1
1
1
1
1
1
1
8
13
13
8
13
20
20
20
20
20
20
27
27
34
34
34
34
34
34
51
46
46
41
46
46
41
41
41
51
58
58
53
58
58
53
48
48
48
58
53
60
65
65
65
60
65
72
67
72
72
77
84
84
79
89
94
84
84
86
86
86
86
86
96
96
91
91
96
103
108
125
115
115
120
154
134
144
156
168
158
158
158
158
158
168
180
180
180
187
202
192
204
214
204
223
228
228
228
252
242
288
312
307
408
403
415
609
609
715
715
775
777
787
883
868
969
1060
1173
2532
2702
2985
2997
3493
3551
3997
4055
1
1
1
1
1
1
1
1
1
8
13
13
8
8
8
13
13
13
20
20
20
20
20
25
20
20
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
51
46
46
46
41
46
41
41
46
41
41
58
58
58
53
53
58
53
48
48
48
63
58
70
65
60
65
65
65
60
65
65
77
77
77
67
77
67
72
72
72
84
84
84
84
84
84
79
89
84
89
91
86
86
86
86
91
96
91
96
98
103
108
125
125
125
125
115
115
120
137
127
166
151
156
168
158
158
158
158
158
187
192
192
192
199
204
214
216
226
235
240
240
240
242
242
264
324
319
420
415
427
621
621
727
727
782
789
856
895
880
981
1048
1072
1180
2544
2714
2997
3009
3505
3563
4009
4067
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
8
13
8
13
13
13
8
13
13
13
13
15
20
20
20
20
20
25
20
20
20
25
27
27
27
27
27
27
27
27
27
27
32
27
27
27
27
27
34
34
34
39
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
39
34
34
46
51
46
51
46
46
46
41
46
41
51
41
46
41
58
58
58
53
58
58
48
53
48
53
48
53
65
65
60
60
65
65
65
65
70
60
75
70
77
72
77
77
77
82
77
67
67
77
72
72
72
72
72
84
84
84
84
84
84
84
89
79
84
91
96
96
96
96
96
86
86
86
91
101
98
98
98
108
125
125
115
115
137
137
127
132
149
134
158
158
158
178
158
158
168
180
204
204
204
211
216
226
228
238
247
252
252
252
242
242
276
336
331
432
427
439
633
633
739
739
787
801
868
907
892
988
1060
1084
2556
2726
3009
3021
3517
3575
4021
4079
1
1
1
1
1
1
1
1
1
1
1
13
13
13
8
13
8
13
13
13
8
13
8
13
13
13
20
20
20
20
20
20
20
25
20
20
20
15
20
20
25
25
27
27
27
27
27
27
27
27
27
27
27
27
27
32
27
27
27
27
27
27
27
27
32
27
34
34
34
34
34
34
34
34
34
34
34
39
34
34
39
34
34
34
34
34
34
39
34
34
34
34
39
34
34
39
34
34
34
34
34
34
46
46
46
51
51
46
46
51
46
46
46
41
51
41
41
53
58
58
58
58
53
63
58
63
58
48
58
48
53
48
58
65
70
65
60
65
65
60
77
72
77
77
77
72
77
67
72
77
67
67
87
82
84
84
84
84
89
89
79
79
84
89
96
96
96
96
96
86
96
96
96
91
103
103
103
103
108
108
108
108
108
98
98
98
98
113
108
108
103
125
125
115
115
120
115
115
137
127
149
149
134
139
161
158
158
158
158
158
158
190
192
182
182
187
216
216
216
223
228
238
240
250
242
242
259
264
264
288
348
343
444
439
451
645
645
751
751
813
880
919
904
1072
1096
2568
2738
3021
3033
3529
3587
4033
4091
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
13
13
13
8
13
8
13
8
13
20
20
20
20
20
20
15
20
20
20
20
15
20
20
15
20
20
27
27
27
27
27
32
27
27
27
27
27
27
27
27
27
27
32
32
27
34
34
34
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
39
34
34
34
39
34
39
34
34
34
39
34
34
34
46
46
46
46
46
46
46
51
51
51
46
46
51
51
46
51
46
46
51
46
51
46
41
51
41
46
46
53
53
58
58
53
58
58
58
58
58
58
53
63
58
58
58
58
58
48
48
53
48
65
65
65
65
65
65
60
70
65
70
70
60
65
60
60
65
72
72
82
67
72
67
67
67
67
67
67
67
84
84
84
84
89
89
79
84
84
99
94
91
96
96
96
101
86
86
91
91
91
96
103
103
103
103
108
108
108
108
108
98
98
103
108
108
103
103
115
115
115
120
120
120
120
120
115
125
115
115
120
115
115
115
137
127
132
127
144
144
149
134
161
161
156
173
158
158
158
158
158
202
187
187
204
194
199
228
228
223
235
240
250
252
262
242
242
276
276
300
360
355
456
451
463
657
657
763
763
825
892
931
916
1084
1108
2580
2750
3033
3045
3541
3599
4045
4103
1
1
1
1
1
1
1
1
1
1
1
13
13
8
13
8
13
8
13
13
8
8
8
8
8
20
20
20
15
20
25
15
25
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
39
34
34
34
34
34
39
34
34
34
39
34
39
34
34
34
39
34
39
34
34
39
39
34
34
34
46
46
51
46
46
51
51
46
46
46
46
46
51
46
41
51
41
51
41
51
46
51
41
41
53
53
58
58
58
58
53
53
63
53
53
58
58
53
58
58
58
63
53
58
53
48
48
48
53
53
58
63
58
48
48
48
53
53
48
58
48
48
53
48
65
65
65
65
65
65
65
65
60
65
70
65
70
70
65
65
65
65
60
65
77
77
72
72
82
72
82
82
72
72
67
67
67
84
84
89
84
84
79
79
79
79
84
91
96
96
96
96
96
86
91
96
111
106
96
103
108
108
108
108
98
103
108
108
103
115
120
120
120
120
120
115
115
115
120
115
115
115
127
127
127
132
132
127
137
127
132
132
127
127
149
134
139
134
156
161
173
158
158
168
185
187
199
216
201
211
240
240
235
247
262
247
242
242
274
288
288
312
372
367
468
463
475
669
669
775
775
837
904
943
928
1096
1120
2592
2762
3045
3057
3553
3611
4057
4115
1
1
1
1
1
1
1
1
13
13
8
13
13
13
20
20
20
15
25
20
15
20
15
15
15
15
15
27
27
27
27
27
27
27
27
27
27
27
32
27
27
27
27
27
27
27
37
39
34
34
34
34
34
39
34
39
34
34
39
34
34
39
34
39
39
34
34
34
39
34
34
39
34
34
39
34
39
34
39
34
34
46
46
46
51
46
46
46
51
51
46
51
41
51
46
51
51
41
51
51
41
58
58
58
58
58
53
53
53
53
58
58
53
53
48
48
48
53
63
58
48
58
53
53
58
63
48
58
53
63
65
65
65
65
65
70
65
70
65
65
65
70
60
60
65
65
65
65
60
60
65
60
60
65
60
60
77
72
72
72
72
77
72
77
77
72
72
72
72
77
72
72
67
89
84
84
89
84
89
94
84
96
96
101
86
96
96
86
91
86
91
96
96
103
103
103
108
108
108
108
108
98
103
123
118
108
108
115
120
120
115
120
115
115
115
115
120
115
115
127
132
127
127
132
127
127
132
139
139
139
144
139
149
134
144
139
134
134
161
168
158
158
158
185
197
182
182
211
223
223
218
247
247
242
242
259
274
259
281
295
300
319
384
379
480
475
487
681
681
787
787
849
916
955
940
1108
1132
2604
2774
3057
3069
3565
3623
4069
4127
1
1
1
1
1
1
1
1
1
8
20
20
15
20
20
20
27
27
27
27
32
27
27
27
27
27
27
27
27
27
27
39
39
39
34
34
34
34
34
34
34
39
34
34
39
34
34
34
34
34
39
39
34
34
34
34
34
49
46
46
46
46
46
41
41
51
46
46
51
51
51
51
46
46
51
46
51
46
51
51
46
41
63
58
53
58
53
58
53
63
58
48
48
48
53
63
53
53
53
53
53
53
63
58
63
48
53
53
48
53
53
63
65
65
70
65
65
65
65
60
60
65
70
65
60
65
60
65
60
60
65
65
75
60
60
75
60
72
72
77
72
77
72
72
72
77
72
82
72
72
72
72
67
72
67
72
72
72
67
72
67
77
72
84
84
89
84
84
89
84
89
84
84
89
79
84
79
79
96
96
96
96
106
96
96
108
108
108
103
98
98
108
108
108
108
108
108
115
120
120
115
115
120
115
135
115
115
120
115
115
127
127
132
127
127
132
127
139
139
134
139
134
134
151
151
156
146
161
156
151
180
197
182
182
209
194
218
259
259
286
271
312
331
396
391
492
487
499
693
693
799
799
861
928
967
952
1120
1144
2616
2786
3069
3081
3577
3635
4081
4139
1
1
1
1
1
1
1
1
13
13
8
8
15
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
39
39
34
34
34
39
39
34
34
34
39
34
39
34
39
34
34
46
46
41
51
41
51
46
51
46
46
46
51
51
61
53
48
53
58
53
58
58
58
58
58
58
53
53
58
58
58
58
48
63
58
65
75
65
60
65
70
65
60
60
65
60
65
60
60
65
65
65
65
65
65
60
60
60
75
75
77
72
77
72
67
67
67
67
72
72
82
72
72
72
72
72
72
72
72
67
72
87
67
72
72
67
67
87
72
84
84
89
89
89
84
79
84
84
84
79
84
79
79
89
96
96
96
96
96
96
96
101
96
96
101
91
91
91
108
103
108
118
103
103
103
108
108
108
108
103
103
108
108
108
120
115
120
120
120
115
115
127
132
127
147
127
132
127
139
139
139
134
139
134
144
146
168
173
168
163
163
175
182
182
209
209
194
216
201
228
223
266
266
298
283
324
338
408
403
499
504
511
705
705
811
811
873
935
979
959
1127
1151
2628
2798
3081
3093
3589
3647
3757
4093
4151
1
1
1
1
1
1
13
20
20
15
15
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
39
34
34
34
34
34
39
34
34
34
39
39
39
34
34
34
34
46
46
46
46
51
51
46
51
46
41
51
46
51
46
46
53
53
53
58
53
53
63
48
58
58
58
53
53
58
58
48
48
73
60
60
65
65
65
65
65
65
65
65
65
65
65
65
65
65
60
75
65
82
72
72
77
72
72
72
72
72
72
67
67
67
67
67
67
67
67
67
67
72
77
77
89
89
84
79
79
84
84
89
84
84
84
84
84
84
84
79
96
96
101
101
91
91
96
91
91
96
91
101
96
108
103
108
108
108
113
98
103
103
108
98
98
108
108
108
108
108
115
115
120
130
115
115
115
120
115
115
120
115
115
115
120
115
115
120
127
132
127
127
127
139
134
159
134
139
134
151
146
156
163
180
175
175
187
187
187
194
201
228
240
235
247
278
310
295
420
415
511
516
523
717
717
823
823
885
935
959
991
971
1127
1151
1163
2640
2810
3093
3105
3601
3659
3769
4105
4163
1
1
1
1
8
20
27
27
27
27
27
27
27
27
27
27
27
27
34
34
39
34
34
34
34
39
34
39
34
34
39
34
34
34
34
39
34
34
34
34
34
34
46
46
46
51
46
51
51
46
51
58
53
53
58
58
58
53
53
53
58
53
58
58
48
53
60
60
65
65
65
65
65
65
65
65
60
65
65
60
60
85
72
72
72
72
77
72
72
72
77
72
77
72
67
72
67
87
67
67
94
84
84
84
84
84
84
79
79
79
79
79
79
79
101
96
96
96
96
96
91
91
96
96
108
108
108
113
98
103
103
108
103
98
108
98
113
108
103
103
115
115
120
120
120
115
115
115
120
110
120
120
120
120
115
115
115
115
120
127
122
142
122
127
127
127
127
127
127
122
127
127
132
134
134
146
171
163
168
170
175
192
182
182
187
187
187
199
199
201
228
223
223
223
223
252
247
247
247
247
259
261
295
295
317
307
319
319
432
427
523
528
535
729
729
835
835
897
971
1003
978
1163
1170
2652
2822
3105
3117
3265
3613
3671
3781
4117
4175
1
1
15
27
27
27
27
27
27
27
27
27
27
34
34
39
34
39
39
34
34
34
34
34
34
34
34
34
34
39
34
34
34
46
46
46
46
46
41
51
41
51
46
41
46
46
41
58
53
58
53
53
58
53
53
58
58
53
65
60
60
65
65
65
65
65
65
65
60
65
65
65
70
60
60
65
72
72
72
72
72
77
77
72
72
77
72
67
67
67
72
72
67
67
67
72
97
84
89
84
84
89
89
84
84
79
99
79
79
79
79
101
96
96
96
91
86
91
86
86
86
86
113
108
108
108
103
103
103
108
108
108
108
108
108
108
108
120
120
120
115
115
115
120
110
125
120
115
120
115
115
122
127
122
127
132
122
127
132
127
127
127
132
139
154
134
134
134
139
134
144
146
158
163
170
170
180
182
182
182
204
194
199
216
211
206
264
259
259
259
259
266
329
319
331
331
444
439
535
540
547
741
741
847
847
909
978
1015
1170
2664
2834
3117
3129
3277
3625
3683
3757
3793
4129
4187
1
27
27
27
27
27
27
34
34
34
34
39
34
34
34
34
46
46
46
51
51
51
46
46
46
46
46
41
48
53
53
53
58
53
53
58
58
58
58
53
48
48
53
58
53
58
48
60
65
65
65
65
65
65
65
65
65
65
65
65
60
60
60
72
72
72
77
72
72
72
72
77
67
82
72
72
72
77
67
67
84
84
84
84
89
89
89
79
84
84
79
79
79
109
96
101
96
101
101
96
91
91
111
91
91
108
98
103
108
108
120
120
120
115
115
115
115
115
110
120
120
120
120
120
120
127
122
127
122
127
132
137
132
127
122
127
139
134
144
134
144
134
134
144
166
151
156
158
163
170
170
170
182
192
194
216
216
201
206
223
276
266
266
266
266
278
341
331
338
338
456
451
547
552
559
753
753
859
859
921
935
959
1027
1127
1151
2676
2846
3129
3136
3289
3637
3695
3805
4141
4199
1
27
27
27
34
34
34
34
34
34
34
34
34
46
46
41
41
46
46
58
58
53
53
53
53
53
65
65
65
65
65
65
65
65
65
60
65
65
60
60
60
65
70
72
72
77
72
72
72
77
77
77
77
72
72
72
72
72
77
72
72
72
67
84
84
84
89
84
89
94
84
84
79
84
89
79
79
79
79
96
101
101
101
86
91
91
86
91
121
108
113
108
113
108
98
123
98
98
108
108
108
103
103
115
115
115
115
120
115
122
127
122
127
127
127
127
132
132
127
127
139
134
144
149
144
134
151
156
146
156
156
178
163
170
170
170
175
182
187
187
204
216
201
228
235
261
288
343
348
468
463
559
564
571
765
765
871
871
933
971
1039
1163
2688
2858
3141
3148
3289
3301
3649
3707
3817
4153
4211
27
27
27
27
27
27
27
27
34
34
34
34
34
34
39
41
46
41
46
48
53
53
53
53
48
58
65
65
60
65
65
65
60
72
77
72
72
72
72
72
77
72
72
72
67
67
67
67
77
67
67
82
67
67
89
84
84
84
89
89
89
84
84
84
89
84
79
84
79
79
79
84
96
96
101
96
101
106
91
91
91
101
86
91
108
113
113
98
103
103
108
120
115
115
120
135
120
120
115
115
115
115
115
127
127
127
134
134
144
144
151
156
161
156
163
168
158
163
168
168
190
170
175
170
170
182
187
187
194
199
216
216
240
247
261
300
360
350
480
475
571
576
583
777
777
883
883
945
978
1051
1170
2700
2870
3153
3160
3313
3656
3719
3829
4160
4223
27
27
27
27
27
27
34
34
34
34
34
34
34
34
39
41
46
46
51
48
53
53
65
60
65
65
60
60
60
60
70
77
72
72
72
72
72
72
72
67
67
67
72
72
84
89
84
84
89
79
79
89
79
79
94
101
96
96
101
101
101
96
96
96
101
91
86
91
86
91
108
108
113
108
113
118
98
108
108
103
103
115
115
115
115
120
120
127
127
147
127
122
127
134
134
156
156
163
168
173
168
175
180
170
180
170
170
202
182
187
187
187
194
199
221
206
201
252
259
261
312
372
492
487
583
588
595
657
703
789
789
890
890
957
1058
2712
2882
3160
3172
3325
3668
3731
3841
4172
4235
1
20
27
27
27
27
34
34
34
34
34
34
34
46
41
51
53
63
60
65
72
77
72
67
67
67
82
89
84
79
84
79
79
79
96
101
96
96
101
86
86
101
86
86
91
106
108
108
113
113
108
108
108
113
108
108
120
130
115
120
115
120
115
120
127
122
134
159
134
168
175
180
185
180
170
175
170
187
182
192
182
214
199
199
216
206
201
233
264
384
499
499
595
600
607
669
715
801
801
902
902
969
1070
2724
2894
3184
3337
3680
3743
3853
4184
4247
1
13
27
34
34
34
63
58
65
60
75
72
67
67
67
67
72
84
94
79
101
91
91
108
113
108
108
113
113
98
120
120
120
125
120
120
115
115
142
127
127
132
122
134
171
175
170
187
182
192
197
204
194
194
226
211
206
245
276
396
499
511
511
513
513
612
602
619
681
693
727
739
813
813
914
914
981
1082
2736
2906
3196
3349
3692
3755
3865
4196
4259
1
13
25
27
27
34
60
60
60
75
65
67
67
67
87
77
72
84
79
79
96
86
86
91
106
101
101
96
113
120
120
125
125
120
120
115
137
127
127
127
154
183
173
180
194
216
223
238
257
288
408
511
523
523
525
525
624
614
631
705
751
825
825
926
926
993
1094
2748
2918
3208
3361
3704
3767
3877
4208
4271
1
25
37
34
44
48
60
65
70
67
67
72
77
87
77
84
79
99
84
101
118
113
113
125
120
127
137
127
149
166
173
185
180
228
235
250
247
269
300
420
523
530
535
530
537
537
549
549
636
626
638
717
763
832
832
938
938
1000
1106
2760
2930
3220
3373
3716
3774
3889
4220
4278
1
13
27
27
37
27
34
34
34
49
41
41
56
48
53
53
53
60
60
60
70
65
67
72
67
72
82
72
72
94
79
89
99
84
101
96
111
101
113
130
125
125
137
149
161
161
178
185
180
197
240
262
259
281
312
432
542
547
561
561
648
650
729
775
950
950
1118
2772
2942
3232
3385
3786
3901
4290
1
13
15
15
20
27
39
34
34
39
49
39
46
41
41
61
48
48
48
53
53
60
60
70
67
77
82
79
79
84
79
79
94
84
106
96
113
123
113
125
125
142
137
137
161
173
173
168
190
197
209
252
274
271
293
324
444
554
559
573
573
660
662
741
787
962
962
1130
2784
2954
3244
3397
3798
3913
4302
8
20
20
27
27
27
34
34
34
34
39
41
41
41
41
61
48
48
48
53
53
73
53
60
60
65
72
67
72
77
72
82
79
79
84
94
84
84
101
106
118
108
108
125
125
135
125
137
154
149
173
168
185
185
202
209
221
223
264
286
283
305
336
456
566
571
585
585
672
674
753
792
799
974
974
1142
2796
2966
3256
3409
3810
3925
4314
1
15
27
27
27
27
27
27
34
34
34
34
34
34
39
41
41
41
51
48
48
53
53
48
73
60
60
60
65
60
85
65
65
84
94
84
96
106
96
101
113
113
108
108
103
118
108
130
137
147
127
137
149
166
161
197
187
197
214
221
233
235
247
276
298
295
317
348
468
578
583
597
597
684
686
765
804
811
986
986
1154
2808
2978
3268
3421
3822
3937
4326
1
1
13
15
27
27
27
27
27
34
34
34
34
34
34
46
46
41
41
41
48
53
53
58
60
65
85
67
82
97
72
84
96
96
96
96
96
108
118
108
113
108
103
125
115
115
142
137
149
159
149
161
178
168
173
187
187
204
204
209
221
245
259
288
310
307
324
360
480
588
590
595
609
609
696
698
777
816
823
998
998
993
1166
1185
2820
2990
3280
3433
3834
3949
4338
1
8
20
15
27
34
34
39
46
46
41
41
48
48
53
53
48
53
53
53
60
60
60
65
70
72
72
97
72
94
84
109
84
101
96
103
108
103
103
115
115
125
120
125
115
115
137
154
161
161
173
163
185
187
187
187
216
221
221
233
257
266
300
322
319
336
372
492
588
600
602
607
621
621
708
710
789
828
835
1010
1010
1005
1178
1197
2832
3002
3292
3445
3846
3961
4350
1
1
13
15
27
27
34
34
34
41
48
48
48
48
53
53
53
60
60
65
60
65
77
72
72
72
72
72
72
77
84
109
106
121
108
113
115
115
125
115
115
115
115
132
137
149
166
173
163
173
185
187
182
182
197
221
233
233
240
269
312
329
331
348
384
504
600
612
614
619
633
633
720
722
801
840
847
1022
1022
1017
1190
1209
2844
3014
3304
3457
3858
3973
4362
1
13
8
20
15
15
27
27
34
34
41
41
41
48
48
48
48
53
65
72
72
72
72
89
79
79
89
96
121
96
103
118
108
108
108
103
115
125
115
115
137
149
161
178
168
185
185
197
187
187
182
209
240
245
281
324
341
343
355
396
516
612
624
626
631
645
645
732
734
787
813
852
859
1034
1034
1029
1202
1221
2856
3026
3316
3469
3870
3985
4374
8
15
15
20
15
34
39
34
48
48
53
60
60
60
60
77
72
72
79
79
84
84
79
89
103
113
108
103
115
115
125
130
115
115
115
115
137
161
173
168
190
197
187
182
182
197
204
204
209
221
221
221
257
293
336
353
350
367
408
528
624
636
638
643
657
657
744
746
799
825
864
871
1046
1046
1041
1214
1233
2868
3038
3328
3481
3882
3997
4386
1
27
34
34
34
48
48
48
48
53
53
60
60
60
65
65
65
65
77
72
72
67
67
72
72
84
84
108
108
113
103
103
103
115
115
115
125
125
115
115
122
149
185
202
182
187
209
209
221
233
233
233
269
286
305
348
365
379
420
540
636
648
650
655
669
669
756
758
787
811
837
876
883
959
1058
1058
1053
1151
1180
1226
1245
2880
3050
3340
3493
3894
4009
4398
1
1
15
15
27
27
27
34
34
34
46
41
48
48
48
48
53
53
60
65
65
77
72
72
72
72
72
84
89
96
103
113
108
113
108
108
103
115
115
115
115
115
137
161
197
182
187
214
221
221
233
240
240
281
298
360
377
391
432
552
648
660
662
667
681
681
768
770
799
823
849
888
895
935
971
1070
1070
1065
1127
1163
1238
1257
2892
3062
3352
3505
3906
4021
4410
1
1
13
15
15
15
15
27
27
34
34
34
34
46
41
48
48
48
48
53
58
65
60
60
72
72
72
79
79
89
96
96
103
103
103
103
108
115
115
115
125
115
115
137
149
173
182
209
226
233
233
245
293
310
295
372
389
403
444
564
660
672
674
679
693
693
780
782
782
811
835
861
900
907
959
983
988
1082
1082
1077
1151
1175
1250
1269
2904
3074
3364
3517
3918
4033
4422
1
1
1
8
8
20
27
27
27
34
34
34
34
39
41
41
53
48
48
48
53
48
58
60
65
65
65
72
72
72
72
72
72
72
84
79
103
103
108
108
108
103
103
115
115
115
115
115
115
127
122
161
185
182
182
187
221
238
245
281
322
307
329
319
384
401
415
437
456
576
672
684
686
691
705
705
792
782
794
823
847
873
912
919
935
971
990
1094
1094
1089
1127
1163
1182
1262
1281
2916
3086
3376
3529
3930
4045
4434
1
1
1
8
8
8
15
15
27
27
34
34
34
34
34
34
34
34
46
46
41
41
53
53
48
48
48
48
48
53
53
53
53
60
65
65
60
60
60
60
60
65
72
67
67
67
67
67
67
72
72
72
72
72
72
72
77
72
84
79
84
84
84
96
101
103
103
108
103
108
103
103
115
115
120
115
115
115
115
115
115
115
127
127
139
144
161
161
197
187
187
194
199
233
250
257
334
331
384
396
413
427
449
468
588
684
691
698
703
717
717
799
806
835
859
885
919
931
983
1002
1106
1106
1096
1175
1194
1274
1288
2928
3098
3388
3541
3942
4057
4446
1
1
1
8
8
8
15
15
27
27
27
27
27
34
46
41
41
53
48
48
48
53
53
53
53
65
60
60
60
60
67
67
72
77
72
72
72
72
82
72
77
72
72
84
79
79
79
79
84
84
84
84
84
84
84
96
91
91
96
103
108
103
103
108
103
115
115
115
115
115
115
115
115
127
132
127
127
127
139
144
134
146
156
173
187
209
209
199
216
221
201
211
245
262
264
266
266
346
338
408
425
439
461
480
600
691
710
715
729
729
811
818
847
871
897
943
990
1118
1118
1108
1182
1286
1300
2940
3110
3400
3553
3954
4069
4458
1
1
1
1
13
13
13
20
20
20
27
27
27
34
34
34
34
41
48
53
60
60
60
60
65
72
72
67
72
72
72
72
72
72
82
72
72
72
72
72
79
84
84
79
84
84
84
96
86
91
86
91
96
91
96
91
91
91
96
103
103
103
108
103
103
103
115
115
115
115
127
127
127
127
139
144
134
134
134
146
168
180
182
182
204
204
221
221
211
223
223
218
247
247
252
269
295
295
319
341
358
365
420
437
451
473
492
612
722
727
741
741
823
830
859
883
909
955
1130
1130
1115
1298
1307
2952
3122
3412
3565
3966
4081
4470
1
1
1
13
13
13
13
20
20
20
27
27
27
27
34
34
34
34
34
34
46
41
41
48
53
48
60
60
60
60
60
70
65
72
72
72
67
72
72
72
72
72
72
72
72
84
79
79
84
79
84
84
84
84
96
96
91
91
91
103
103
103
98
98
103
103
108
108
103
108
108
103
115
115
115
115
127
127
127
127
134
134
134
134
146
161
161
175
194
216
221
233
218
259
259
281
307
317
319
324
331
370
377
432
449
463
485
504
624
734
739
753
753
835
842
866
890
921
935
967
959
1142
1142
1127
1151
1310
2964
3134
3424
3577
3978
4093
4482
1
1
13
20
20
20
20
27
27
39
39
39
34
34
34
34
34
46
46
46
41
41
41
41
58
48
53
48
48
48
65
60
60
65
70
65
65
72
72
67
72
72
72
72
72
72
77
72
84
84
79
84
84
79
84
84
84
91
91
91
91
91
91
91
108
108
108
108
103
103
115
115
115
120
120
122
122
127
127
139
134
139
134
134
134
134
161
161
173
187
187
201
233
240
266
266
266
266
288
329
331
336
338
348
350
382
384
444
461
475
497
516
636
746
746
765
765
847
854
902
933
979
971
1154
1154
1163
1322
2976
3146
3436
3589
3990
4105
4494
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
20
27
27
27
34
34
34
34
34
34
34
34
34
46
51
46
46
51
51
53
53
53
53
53
53
53
53
53
53
53
58
53
53
53
53
53
53
53
70
70
65
60
60
60
65
72
72
72
72
72
72
72
72
67
67
67
67
72
72
72
77
82
72
72
72
72
84
84
79
84
79
84
84
89
84
91
91
91
91
91
91
91
91
113
103
103
98
103
103
103
103
120
120
115
115
115
122
127
127
127
127
144
144
134
134
151
151
146
173
180
187
187
199
240
266
266
317
324
341
348
338
362
389
456
473
487
509
528
648
758
777
777
859
866
909
945
991
978
1166
1166
1170
1334
2988
3158
3448
3601
4002
4117
4506
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
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
27
27
27
39
34
34
34
34
34
34
46
46
46
46
46
53
53
58
53
53
58
53
58
53
48
53
53
65
65
65
65
65
65
65
70
70
65
65
65
65
65
65
65
65
65
70
65
65
60
65
65
65
65
60
60
60
60
60
60
65
65
72
72
72
72
82
82
82
82
72
72
72
72
72
72
82
82
72
82
82
72
72
77
72
72
72
72
72
72
67
72
67
72
67
72
72
82
72
72
77
72
72
84
84
84
84
84
84
84
79
79
79
79
84
89
84
84
84
91
91
91
91
91
96
91
113
113
103
103
98
108
108
108
108
103
103
125
125
115
115
115
115
115
127
127
122
127
134
156
161
161
146
163
163
153
180
187
187
199
206
240
329
329
336
353
360
374
401
468
485
499
521
540
660
770
789
789
871
878
957
1003
1178
1178
1346
3000
3170
3460
3613
4014
4129
4518
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
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
41
41
46
41
46
41
41
53
53
53
60
65
70
65
70
70
72
72
82
72
72
72
72
72
72
82
84
84
84
84
94
94
84
84
84
84
84
84
94
84
94
84
84
84
84
84
84
84
84
84
84
84
84
89
84
96
96
96
96
96
96
91
86
86
91
91
96
91
91
91
125
115
120
120
115
137
122
122
122
127
134
163
173
153
175
175
199
206
336
341
343
365
372
386
408
480
497
511
533
552
672
782
801
801
883
890
969
1015
1190
1190
1358
3012
3182
3472
3625
4026
4141
4530
1
1
1
1
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
15
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
27
32
32
27
32
32
32
32
32
27
27
32
27
32
32
32
27
32
27
32
32
32
27
32
27
27
32
27
32
27
27
27
32
27
32
32
32
27
27
32
32
32
32
27
27
32
32
27
32
32
27
32
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
46
46
41
46
46
41
46
41
46
46
41
46
41
41
53
48
53
53
53
53
53
53
53
53
58
48
48
48
53
53
53
53
53
53
53
53
53
53
53
60
72
72
77
72
77
77
82
84
94
84
84
79
79
96
96
96
96
106
106
96
96
96
96
96
96
106
96
106
96
96
96
96
96
96
91
91
91
91
91
91
96
91
108
108
108
108
108
108
98
137
122
127
127
122
149
134
180
187
187
206
348
377
384
398
492
509
523
545
564
684
794
813
813
895
902
981
1027
1202
1202
1370
3024
3194
3484
3637
4038
4153
4542
1
1
1
1
1
1
1
1
1
1
1
1
13
13
20
27
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
53
53
53
53
65
65
65
65
65
65
65
65
70
60
60
65
65
65
65
65
65
65
65
72
84
96
106
96
96
108
108
108
108
118
118
108
108
108
108
108
108
118
108
118
108
108
108
108
108
108
120
120
120
120
120
120
149
161
199
199
389
396
410
504
521
535
557
576
696
806
825
825
907
914
993
1039
1214
1214
1382
3036
3206
3496
3649
4050
4165
4554
