120
123
125
125
126
128
129
129
129
130
130
128
128
128
128
126
126
125
125
125
124
122
120
119
118
118
117
117
117
117
118
119
119
117
117
117
117
117
117
117
117
115
115
114
114
114
114
115
115
115
115
113
113
113
114
114
114
114
117
117
117
117
116
116
115
114
114
114
114
114
114
114
114
114
114
114
114
114
114
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
116
116
116
116
117
121
121
122
123
123
123
123
123
123
123
123
123
123
123
122
122
123
123
123
123
120
120
120
120
120
120
120
120
120
120
122
124
121
120
120
120
119
118
117
116
116
118
119
120
120
121
121
121
122
122
122
122
121
120
118
118
120
120
118
118
116
114
114
114
114
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
116
116
117
118
119
119
119
119
119
119
121
125
125
125
125
121
121
120
118
118
117
117
116
116
116
115
113
114
114
113
113
114
115
116
116
116
116
116
116
116
116
116
116
116
115
115
115
115
116
116
116
115
115
115
115
115
115
115
117
117
117
117
117
117
117
117
118
122
122
122
122
120
119
119
119
120
120
120
120
120
120
119
119
119
119
119
119
119
118
118
118
118
120
128
128
128
128
128
128
128
128
129
129
129
129
129
129
129
129
128
128
128
128
128
128
128
128
128
128
127
127
125
124
124
123
123
123
122
121
121
121
121
123
123
123
123
123
123
124
124
124
124
124
124
124
124
124
123
123
122
122
122
122
122
121
121
121
121
121
120
119
119
119
119
119
120
121
122
122
122
122
122
122
122
122
122
123
123
123
124
124
124
125
125
125
126
126
126
126
125
125
125
125
125
125
125
125
125
125
125
124
124
124
123
123
123
123
124
124
125
125
125
125
125
125
126
127
127
128
128
128
128
128
128
128
128
128
128
128
129
129
129
130
130
130
131
132
132
132
131
131
131
131
131
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
132
134
133
134
136
136
136
136
136
140
140
141
141
141
141
141
142
142
142
142
141
141
141
142
142
145
145
145
146
146
146
147
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
148
149
149
149
149
149
149
150
150
150
150
152
154
154
154
154
154
153
153
153
154
154
154
154
155
155
155
155
155
155
154
154
154
154
153
153
154
154
154
154
155
157
157
158
159
160
160
160
160
160
161
161
161
161
161
161
161
161
159
159
159
159
160
162
162
162
162
163
164
166
166
165
165
165
165
165
165
165
165
165
166
167
170
170
172
174
175
178
178
178
178
179
179
179
178
174
174
174
174
174
174
174
175
176
176
177
178
178
179
179
180
180
179
179
179
180
180
180
180
181
182
183
183
184
184
185
186
186
186
186
186
186
187
188
188
188
188
188
188
188
188
188
188
188
189
190
190
190
190
191
191
191
192
193
193
193
193
193
194
194
195
195
195
195
198
200
200
200
200
200
200
200
200
200
200
200
198
199
204
205
206
207
208
208
208
210
211
212
212
212
213
213
213
213
214
214
216
217
217
218
218
219
220
220
219
215
216
216
216
220
219
219
218
219
219
220
222
224
225
225
225
224
224
223
223
223
223
223
223
223
223
224
225
226
228
230
230
231
231
233
233
236
237
238
240
240
240
241
238
237
237
236
236
236
237
238
238
239
240
239
239
239
238
238
238
238
238
238
238
238
238
238
238
238
239
240
240
240
240
240
240
240
240
240
240
242
244
244
246
247
248
249
249
250
250
251
253
253
254
255
254
254
254
254
255
255
256
257
258
259
261
266
267
267
267
269
269
268
268
267
266
267
267
268
268
271
271
272
273
274
282
284
285
286
286
286
290
292
293
293
293
293
293
293
293
294
297
301
302
305
306
306
310
310
317
319
321
322
322
323
323
324
327
330
332
334
337
346
350
351
365
368
379
383
384
384
387
390
392
391
389
389
387
390
398
408
412
416
418
424
431
431
433
434
435
435
436
438
438
438
435
434
433
432
431
429
427
427
427
429
429
430
430
430
433
434
434
435
437
441
442
442
443
444
445
449
449
450
452
453
456
456
455
455
454
453
453
452
450
449
449
449
454
460
463
466
472
477
479
480
481
482
484
484
485
486
486
494
499
511
516
522
524
526
528
531
533
538
540
541
543
544
545
547
554
557
566
568
569
570
570
574
575
576
576
577
592
594
596
597
599
600
604
605
611
615
619
623
627
631
634
636
640
643
650
657
659
662
662
662
662
665
668
674
675
676
677
682
683
684
685
685
686
686
688
689
691
693
695
696
697
697
698
699
700
702
704
706
711
707
703
701
713
715
715
715
713
712
711
710
709
707
706
705
703
703
703
703
703
703
704
702
705
706
708
711
713
713
714
714
714
715
717
717
716
714
713
711
710
707
698
685
680
676
673
670
669
666
662
658
655
651
648
643
640
635
637
637
639
640
641
642
646
650
652
656
659
663
661
659
657
656
654
651
648
645
643
643
642
639
638
637
635
632
628
623
621
620
619
618
610
609
607
603
599
599
599
599
599
605
612
617
632
637
642
644
645
653
657
659
660
665
667
668
669
670
670
670
670
670
671
671
671
673
675
680
680
678
677
677
676
675
674
673
672
671
673
680
684
686
687
686
686
685
685
682
675
668
659
651
647
640
628
624
621
617
604
606
609
611
613
615
616
620
621
622
623
625
624
623
622
622
622
622
624
625
625
626
626
632
630
628
621
619
617
617
616
616
615
615
615
615
615
613
612
610
608
604
599
596
596
596
596
596
596
599
601
610
613
616
619
621
623
623
624
625
630
633
633
633
632
631
630
632
633
633
633
633
632
632
632
634
635
635
639
641
643
643
643
644
644
645
662
665
672
676
680
688
686
685
682
676
673
671
671
671
671
671
671
672
673
674
678
683
687
690
690
691
691
691
691
692
694
695
696
697
698
700
705
706
709
709
710
711
712
714
712
712
712
712
712
712
712
713
714
716
719
719
719
719
715
713
711
704
695
695
695
694
693
693
693
693
689
688
682
681
677
676
674
667
661
661
650
649
648
646
645
644
639
638
637
632
616
612
611
610
602
599
594
582
579
570
571
572
572
573
574
572
556
552
542
529
524
526
529
537
528
524
524
527
529
531
522
516
506
501
495
480
476
474
473
473
472
470
468
466
465
466
467
469
470
471
472
473
474
476
476
476
476
477
477
477
472
468
462
452
458
462
471
471
475
473
467
461
460
459
458
454
454
458
461
467
473
469
468
468
463
461
455
455
450
443
440
436
439
442
442
442
442
442
442
432
429
425
425
426
427
428
429
430
447
456
460
466
471
475
484
487
489
492
502
507
509
513
515
518
519
520
521
522
526
528
531
534
537
539
542
544
544
545
546
547
555
564
566
567
568
569
570
570
568
568
568
567
567
572
587
590
591
593
594
595
598
601
603
604
605
609
614
618
622
625
630
628
609
609
609
609
609
611
615
616
616
616
616
616
616
616
616
609
604
607
609
609
611
613
616
616
616
616
616
617
616
616
616
616
617
618
611
608
606
605
604
603
600
590
589
587
586
585
584
583
583
580
579
578
577
577
574
571
568
566
564
557
551
548
545
542
541
539
535
530
528
520
514
508
490
473
471
468
467
460
454
447
445
442
435
433
429
428
428
426
426
425
424
423
422
421
420
419
418
417
417
416
415
415
415
415
414
413
413
413
413
413
413
412
412
412
412
412
412
412
412
412
413
413
413
414
414
415
416
417
418
418
419
419
418
414
409
409
408
407
406
406
406
407
407
407
406
405
405
407
405
404
403
402
411
410
409
407
405
407
408
409
410
410
409
407
405
402
413
416
427
422
415
408
406
405
405
402
399
398
398
397
396
395
394
393
391
390
390
390
390
390
389
389
387
386
386
385
384
384
383
382
382
382
383
383
383
383
383
382
380
378
378
378
379
379
379
380
380
380
380
380
380
380
380
380
379
379
379
379
379
382
386
389
388
387
378
383
388
391
390
386
385
382
378
377
374
373
371
370
368
368
368
368
367
366
365
364
363
363
362
362
362
362
362
363
363
362
362
361
360
360
360
359
358
357
356
355
355
354
354
353
353
353
353
352
353
355
357
362
361
359
358
355
355
354
353
352
350
350
350
350
350
350
345
345
345
344
344
344
346
347
347
347
346
346
345
346
346
346
345
344
341
344
337
337
337
337
337
337
337
337
337
337
337
337
337
337
337
337
337
337
337
337
336
336
336
336
336
334
334
334
334
334
329
328
328
330
331
328
328
328
329
329
329
329
329
329
328
331
329
328
326
325
325
330
330
331
331
328
324
323
324
325
325
328
330
330
331
332
333
333
334
334
335
337
337
338
338
339
346
348
349
355
362
364
371
373
376
378
381
384
386
386
386
386
386
386
394
397
400
404
407
410
413
415
416
417
419
428
437
442
446
449
451
458
462
465
477
480
488
489
489
490
491
492
493
494
494
495
500
502
509
510
513
514
514
515
517
521
522
523
525
527
529
531
540
541
542
544
549
550
551
551
553
554
555
564
565
565
566
566
567
568
568
569
585
587
590
592
592
593
595
595
596
597
599
612
617
620
623
629
631
634
635
640
643
647
648
651
655
658
658
658
658
658
660
662
665
667
669
670
671
672
672
672
672
673
675
677
678
679
680
680
683
689
689
689
689
689
690
690
691
691
692
692
693
695
701
703
710
711
716
716
716
716
717
717
721
727
732
733
735
737
744
746
747
751
753
758
766
769
771
775
777
781
786
793
802
806
808
809
811
813
815
817
818
818
818
816
814
814
810
807
805
803
802
799
791
781
777
773
770
765
755
754
748
744
741
738
735
732
730
719
715
712
709
705
698
694
687
685
684
683
682
681
680
678
672
667
648
640
638
634
627
625
624
619
619
620
621
622
622
623
620
616
614
613
609
607
600
600
600
600
600
599
598
596
595
594
593
591
584
576
574
572
570
569
564
562
561
560
557
554
548
544
539
537
534
533
531
530
527
524
511
509
502
501
499
499
498
498
497
496
493
492
491
491
491
492
492
492
490
488
486
485
484
483
480
479
477
459
458
448
443
442
436
433
431
428
426
425
423
422
416
411
409
403
401
399
392
389
386
375
369
364
354
353
351
350
348
347
345
338
336
334
333
333
330
330
325
324
323
323
321
318
315
310
310
310
309
303
303
303
303
303
303
303
303
294
293
287
285
285
284
282
281
281
281
281
281
281
281
281
281
281
278
277
277
275
275
275
275
277
279
281
283
286
286
286
285
285
285
283
283
281
277
276
275
275
275
275
276
276
276
277
278
279
280
281
281
279
279
280
281
282
277
268
267
267
266
266
265
262
256
254
259
261
261
263
264
263
260
260
259
248
247
247
246
244
242
241
241
241
241
241
241
241
242
242
242
242
242
242
243
244
245
246
247
248
251
266
270
273
278
290
297
302
304
300
297
291
288
286
284
281
277
265
264
263
261
261
260
258
253
250
248
246
246
246
246
246
247
247
247
248
249
249
246
246
246
247
247
247
247
247
247
247
247
247
247
247
248
248
248
251
253
253
253
253
253
253
253
253
253
255
258
259
259
258
258
259
263
266
261
258
257
256
254
253
253
253
253
255
255
253
251
251
251
251
251
250
252
255
256
256
256
256
256
256
260
260
261
261
262
262
263
263
264
264
265
266
267
268
269
270
270
271
272
272
273
273
273
273
273
274
274
274
274
274
274
274
273
274
275
276
276
274
272
271
271
271
272
272
273
276
277
277
278
279
280
280
280
280
281
283
282
282
282
283
287
288
289
298
294
286
287
288
288
288
288
287
287
287
287
287
289
290
290
290
290
284
293
296
298
299
301
301
302
303
315
315
315
315
316
318
319
326
327
327
326
326
329
330
330
328
327
325
324
323
322
320
318
311
311
311
312
312
311
310
308
308
309
310
311
312
313
313
314
314
314
315
316
316
316
316
317
321
328
327
326
326
318
318
322
317
315
315
315
315
314
313
312
307
306
296
289
287
287
286
285
283
281
278
275
269
267
263
260
259
258
257
238
238
237
236
236
236
235
233
232
232
231
231
231
231
231
226
224
220
219
218
216
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
215
214
214
214
214
214
214
213
213
213
213
213
213
213
213
213
214
215
216
218
219
220
222
223
226
226
224
223
222
222
222
221
221
221
220
220
219
219
219
225
226
227
228
232
259
268
266
263
257
252
248
248
260
264
266
269
271
274
276
280
285
289
299
299
305
309
315
311
308
309
311
311
312
312
311
310
309
318
322
326
338
338
337
336
335
334
334
334
335
339
340
341
345
347
354
361
360
360
359
357
355
349
348
348
347
349
352
358
361
358
354
350
349
348
348
343
343
343
343
343
343
343
343
343
343
344
344
344
344
345
345
345
346
347
347
348
350
349
348
347
349
344
333
328
330
335
332
331
331
331
316
307
299
279
274
266
262
261
260
259
258
257
254
253
252
248
243
239
239
236
235
234
233
233
231
230
229
229
228
225
225
225
225
225
225
225
223
223
222
222
220
220
220
220
219
219
221
219
218
220
221
222
222
222
222
222
222
222
223
225
228
238
235
235
237
235
229
229
228
228
228
228
228
229
230
231
230
230
230
230
230
230
228
226
226
226
226
226
227
227
227
227
227
227
227
227
227
226
226
226
227
227
227
228
229
229
229
229
229
229
229
230
230
230
230
231
232
232
232
232
232
234
234
234
234
234
234
234
232
232
232
232
232
232
232
232
233
233
234
234
234
234
234
234
234
234
234
235
235
236
236
236
235
235
235
235
235
235
235
236
237
238
238
237
237
237
237
237
238
238
238
239
239
240
240
241
241
240
240
240
240
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
241
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
243
243
243
243
243
243