107
107
107
113
118
120
128
128
129
129
132
133
130
130
130
130
130
130
128
129
126
128
138
148
147
149
149
150
150
150
150
150
151
151
150
150
150
150
150
150
150
150
150
150
149
149
149
149
149
149
149
149
149
149
150
151
151
152
152
151
150
150
150
150
148
148
148
148
148
149
150
153
157
158
158
163
163
168
168
168
168
170
170
171
171
172
172
172
178
179
181
181
181
183
184
187
194
194
200
200
200
200
200
200
200
200
200
200
200
200
200
201
202
204
206
207
213
213
213
213
214
214
214
214
214
215
217
227
229
224
226
228
228
229
230
230
227
226
227
227
227
230
235
235
237
240
241
241
243
244
247
251
252
252
255
255
255
258
260
261
262
259
262
263
263
262
260
260
261
262
265
266
266
266
266
266
266
266
266
266
264
267
291
293
297
300
302
309
311
318
326
327
332
333
345
357
361
364
365
371
373
379
379
385
387
395
398
397
398
398
402
406
406
406
407
427
432
437
447
467
462
468
479
478
477
475
475
476
477
479
489
500
502
507
507
506
504
503
503
501
501
501
505
524
527
527
527
527
529
532
533
534
537
539
542
548
549
549
551
550
550
550
550
550
555
557
568
575
582
588
590
591
593
595
599
602
604
604
604
608
613
620
613
608
604
604
607
611
617
624
636
636
637
639
641
643
651
653
654
658
660
657
655
653
654
656
658
682
690
701
678
680
695
707
711
716
718
745
740
724
755
759
738
757
773
759
758
763
765
763
761
760
762
766
769
770
775
780
801
800
808
825
828
817
818
819
824
844
832
830
830
830
830
853
855
863
872
877
885
888
888
887
886
885
883
882
884
888
889
892
894
893
892
892
889
902
913
920
913
908
915
918
923
929
932
931
931
942
945
952
954
955
957
959
967
970
972
975
979
980
981
983
984
985
985
986
987
1003
1005
1013
1015
1016
1017
1018
1022
1025
1023
1022
1022
1022
1025
1033
1038
1038
1038
1039
1040
1039
1043
1050
1046
1042
1054
1062
1065
1067
1070
1073
1080
1084
1086
1086
1089
1087
1083
1084
1084
1082
1065
1062
1058
1055
1053
1053
1051
1051
1045
1043
1042
1041
1040
1034
1031
1026
1020
1018
1016
1015
1013
1011
1011
1011
1011
1011
1009
1008
1006
1000
997
992
990
989
989
988
987
987
987
982
976
973
974
975
960
962
962
962
962
962
961
948
944
946
943
940
937
936
935
935
935
935
935
935
935
935
934
931
931
929
930
925
926
927
923
929
934
929
922
920
921
920
916
917
918
919
919
919
918
916
915
915
919
913
910
911
913
907
902
903
899
899
899
899
900
899
900
902
904
909
914
908
892
887
887
889
886
877
876
876
877
866
865
858
854
844
840
829
842
839
829
825
817
816
819
826
810
811
814
818
820
827
824
821
817
806
790
791
792
794
794
794
787
789
776
776
782
770
765
769
771
764
757
750
750
750
749
747
747
750
740
735
735
734
733
726
726
725
724
723
723
722
721
727
725
715
709
713
715
717
721
720
702
696
685
670
668
667
677
692
694
683
673
658
664
665
665
633
633
626
633
652
643
645
620
606
606
607
610
610
611
611
611
611
609
607
603
602
602
592
582
582
580
576
575
573
567
565
561
560
557
556
555
554
554
553
552
538
539
539
537
536
533
531
531
529
519
519
516
513
511
506
502
493
492
488
485
484
480
479
479
478
469
465
465
465
465
465
463
450
449
449
447
449
437
433
430
427
426
424
421
416
408
407
406
406
406
406
408
412
415
418
412
409
407
404
402
395
395
394
394
394
388
382
378
374
372
366
363
357
354
355
350
342
340
352
345
345
338
345
341
311
309
310
292
287
286
285
285
285
283
276
275
277
259
257
254
252
252
252
252
253
253
253
253
253
249
249
249
248
255
263
261
261
261
261
260
260
259
259
263
263
262
262
257
257
257
256
256
256
255
255
251
252
253
253
246
249
249
249
249
249
247
247
241
239
236
233
228
226
226
226
233
239
242
243
244
246
246
246
248
253
270
274
275
279
282
285
292
292
292
292
292
294
296
299
299
299
299
299
299
299
300
300
300
300
299
299
297
297
295
293
294
294
293
293
292
290
290
289
289
289
288
286
286
290
291
291
295
297
294
293
293
291
289
288
288
279
278
275
274
274
266
266
261
256
247
244
244
245
245
242
229
226
226
225
225
226
226
223
218
221
224
227
231
217
212
226
223
216
210
207
221
226
239
246
248
250
254
254
263
292
292
367
438
438
367
232
230
230
232
234
243
245
246
249
255
254
245
240
240
240
237
237
236
243
247
258
262
249
241
245
245
239
242
242
242
242
242
244
257
263
257
249
248
248
257
257
268
270
269
265
263
260
260
262
287
274
266
272
278
283
280
277
275
278
279
280
281
280