227
227
227
227
228
227
226
226
226
225
225
225
225
225
225
225
225
225
226
227
230
229
229
229
228
228
230
231
231
232
233
233
233
233
233
233
234
234
234
235
236
237
239
239
240
241
242
241
241
243
246
247
247
247
247
252
252
252
252
259
259
262
266
266
266
267
267
274
275
276
280
280
280
280
284
285
288
288
288
288
298
298
300
300
301
301
305
306
306
307
308
310
314
314
314
315
315
315
316
317
318
318
319
319
320
323
326
326
332
335
338
338
341
346
346
346
346
347
347
348
348
349
349
350
350
355
355
356
358
360
362
362
362
363
364
365
366
367
370
370
372
377
386
391
391
395
402
402
402
402
403
403
403
403
408
409
408
407
407
406
414
435
430
422
422
423
426
436
461
487
480
473
457
455
459
456
454
457
466
469
473
482
485
493
492
496
496
499
512
515
528
530
532
528
524
525
532
544
555
555
555
557
558
556
551
553
564
570
568
568
569
570
575
577
583
587
591
592
597
602
609
614
619
623
624
624
630
648
670
668
655
638
654
651
649
645
642
642
654
663
668
676
677
689
694
700
705
702
699
710
725
724
718
717
717
717
721
725
721
718
707
709
714
720
730
733
738
746
753
769
770
772
773
766
759
761
763
765
766
767
764
763
762
763
771
778
783
786
786
786
787
787
787
787
786
786
785
783
783
786
788
790
793
795
796
793
791
790
788
786
788
796
798
806
809
811
813
815
815
815
815
816
816
816
816
816
816
817
819
820
822
824
827
828
830
831
832
834
838
844
848
850
852
855
858
863
868
873
876
875
875
874
873
872
878
878
884
887
902
905
910
914
916
918
919
929
934
940
941
942
944
947
951
955
959
963
962
960
981
985
991
986
982
979
976
975
974
973
973
971
969
968
965
966
970
973
975
979
981
982
984
985
986
986
987
989
991
991
993
994
996
996
996
996
996
996
996
996
996
996
996
996
996
997
998
999
1000
1001
1002
1006
1007
1011
1014
1016
1017
1019
1020
1021
1022
1023
1024
1028
1033
1045
1045
1047
1048
1048
1049
1050
1050
1049
1048
1048
1049
1050
1054
1049
1042
1036
1030
1031
1033
1034
1037
1042
1050
1054
1056
1057
1059
1061
1061
1061
1063
1064
1064
1061
1060
1060
1062
1063
1066
1069
1072
1073
1073
1073
1074
1074
1073
1071
1073
1075
1080
1080
1081
1082
1084
1086
1087
1089
1091
1091
1091
1079
1075
1071
1069
1067
1064
1062
1059
1058
1058
1057
1057
1057
1057
1058
1060
1062
1064
1059
1056
1060
1063
1066
1069
1067
1064
1061
1058
1057
1057
1057
1056
1054
1054
1053
1048
1045
1045
1045
1046
1046
1044
1041
1038
1038
1038
1038
1036
1033
1031
1031
1031
1030
1028
1027
1026
1024
1022
1022
1023
1022
1021
1021
1020
1020
1020
1018
1017
1016
1015
1013
1011
1008
1006
998
987
978
978
980
985
988
994
994
994
993
993
995
996
992
989
994
1000
1003
1003
1003
1001
1001
1000
1000
999
998
997
997
993
993
993
993
992
990
989
976
960
945
939
951
956
945
936
929
922
906
894
889
888
887
875
872
864
855
845
836
830
824
814
802
792
782
770
762
758
754
751
747
745
742
738
734
731
729
725
721
717
715
713
711
709
707
705
703
700
697
695
693
691
689
688
685
685
683
681
679
674
673
672
671
669
666
664
661
658
656
654
653
652
646
641
636
634
631
630
628
627
625
622
618
615
613
611
607
604
602
600
599
595
593
590
590
589
588
588
586
584
580
580
579
577
576
574
565
565
565
565
565
566
567
563
558
552
551
551
549
549
548
547
547
547
546
545
541
539
538
535
533
531
529
527
525
523
522
519
519
518
518
518
517
517
516
516
515
515
511
507
507
510
512
519
521
524
526
527
529
533
541
553
557
557
557
557
557
564
573
576
580
589
590
590
590
588
588
592
594
594
596
599
597
595
594
592
594
595
596
597
599
599
597
595
594
596
598
600
601
606
605
602
602
603
597
585
582
580
579
576
574
573
573
572
571
571
571
571
571
571
571
571
571
570
567
565
563
563
564
567
568
574
580
581
583
587
594
595
603
607
613
618
619
619
619
618
619
621
633
640
645
645
652
653
654
656
670
671
672
678
679
689
691
694
698
700
700
700
700
700
697
697
699
702
709
712
717
744
744
747
749
750
756
758
758
760
763
768
771
776
779
780
784
785
787
789
790
798
797
796
796
797
797
798
800
801
828
830
833
835
836
837
838
839
841
843
846
847
849
850
851
851
852
853
853
854
856
858
859
860
860
861
861
861
862
862
868
871
875
877
881
882
883
884
886
887
889
892
894
895
898
898
899
900
901
900
900
897
895
894
895
897
902
912
915
917
918
923
924
925
925
925
924
925
930
932
933
945
945
944
942
941
942
943
946
948
950
951
951
951
955
957
960
963
965
965
965
965
965
965
965
967
969
971
975
978
978
980
981
983
983
986
993
998
1000
1001
1005
1008
1011
1013
1014
1014
1014
1016
1017
1019
1022
1024
1024
1024
1024
1025
1028
1030
1032
1044
1047
1046
1043
1040
1038
1035
1035
1035
1035
1040
1043
1047
1052
1056
1059
1061
1060
1060
1060
1059
1059
1063
1069
1077
1077
1076
1075
1074
1073
1073
1073
1073
1072
1072
1072
1072
1073
1076
1078
1083
1084
1085
1086
1086
1086
1084
1079
1074
1069
1067
1065
1063
1063
1062
1057
1054
1048
1046
1040
1037
1034
1024
1024
1025
1025
1024
1022
1021
1021
1021
1018
1013
1004
1005
1006
1007
1007
1007
1007
999
1002
999
999
1000
1001
1002
1003
1004
1006
1011
1013
1014
1016
1018
1019
1022
1023
1023
1022
1015
1005
1001
993
993
993
993
993
1000
1008
1007
1006
1001
998
999
1001
1002
1003
1009
1010
1013
1013
1015
1016
1016
1016
1014
1004
1010
1016
1021
1026
1029
1030
1029
1027
1026
1018
1007
1001
997
1002
1006
1005
1004
1001
1000
998
998
998
997
993
991
988
990
992
994
997
1002
1002
1002
1002
1002
1001
1000
999
998
992
980
980
982
986
995
999
995
990
990
993
998
997
991
976
974
985
988
991
995
999
1005
1007
1011
1014
1019
1024
1031
1031
1039
1034
1030
1026
1021
1021
1023
1026
1028
1030
1031
1032
1032
1032
1032
1032
1034
1037
1039
1039
1041
1041
1045
1047
1046
1043
1042
1042
1045
1051
1058
1058
1058
1058
1058
1059
1059
1062
1067
1069
1071
1071
1061
1057
1054
1054
1058
1058
1056
1053
1053
1058
1061
1063
1063
1063
1063
1066
1072
1071
1069
1069
1070
1076
1080
1084
1083
1082
1082
1083
1084
1085
1085
1081
1075
1072
1071
1071
1071
1072
1077
1070
1068
1069
1069
1070
1070
1065
1060
1060
1061
1064
1064
1064
1063
1062
1061
1058
1056
1055
1056
1058
1055
1051
1045
1036
1035
1040
1044
1050
1054
1055
1056
1056
1055
1049
1049
1049
1050
1050
1050
1049
1049
1048
1045
1043
1038
1037
1026
1023
1022
1022
1020
1019
1019
1018
1016
1014
1007
1005
1005
1005
1004
1004
1004
1001
998
995
987
986
986
986
986
986
986
986
986
987
987
989
990
990
990
988
987
985
980
980
980
980
980
980
979
979
978
978
978
977
970
968
965
962
958
958
959
959
960
960
959
956
954
954
953
956
959
962
961
961
961
959
957
952
951
948
945
943
941
938
938
937
937
936
935
935
935
935
935
934
934
934
934
934
934
934
934
931
928
927
926
923
921
920
919
919
918
917
916
915
914
912
912
910
910
909
909
906
905
905
903
901
900
898
897
896
895
893
890
888
886
884
884
884
884
885
885
886
884
882
879
877
875
874
873
871
871
869
868
868
867
866
866
866
863
858
857
856
854
855
855
855
853
850
845
841
836
834
832
831
830
829
828
827
827
832
833
833
832
831
831
832
834
841
843
844
845
847
847
848
849
851
851
851
851
851
851
851
852
852
853
854
854
854
853
853
852
851
851
852
853
854
858
858
857
856
855
854
854
854
852
853
860
862
862
863
864
864
864
864
869
874
874
873
873
871
871
870
868
866
866
865
865
865
865
865
865
866
866
867
867
868
868
866
863
859
851
848
845
844
845
850
857
863
863
862
859
856
855
855
854
853
854
855
856
857
858
859
860
859
858
855
857
859
861
863
865
865
866
866
867
867
869
869
875
879
882
886
891
896
898
914
921
930
932
934
935
941
954
958
958
958
958
958
960
962
965
969
973
974
975
975
974
974
979
981
982
985
985
987
989
991
993
995
998
1000
1001
1001
1001
1002
1003
1003
1004
1004
1007
1016
1023
1024
1019
1017
1031
1031
1030
1029
1028
1028
1029
1032
1033
1034
1034
1035
1035
1037
1037
1038
1039
1040
1042
1043
1044
1046
1047
1048
1051
1054
1060
1059
1058
1057
1056
1055
1054
1053
1051
1049
1045
1042
1036
1036
1032
1031
1028
1027
1028
1027
1026
1024
1023
1020
1018
1012
1011
1011
1009
1008
1005
1004
1002
1001
1001
1001
1001
1000
999
998
996
992
991
986
986
986
986
983
982
982
983
983
977
976
973
972
970
968
968
966
965
966
966
963
961
959
955
953
952
952
945
943
940
938
937
937
937
937
937
938
939
939
940
941
942
942
942
944
945
946
948
951
953
954
954
954
954
954
955
959
963
966
966
966
965
963
962
962
962
954
953
954
956
959
959
958
956
955
953
952
951
950
950
950
950
952
955
957
959
959
959
959
959
959
959
960
960
960
960
958
957
950
946
939
934
930
921
916
912
911
912
914
915
916
916
916
916
916
916
916
916
916
916
916
917
917
916
916
916
916
916
917
917
917
917
917
916
916
916
914
913
909
908
909
912
915
918
920
919
917
916
914
914
917
918
919
922
924
925
927
928
930
931
932
933
934
937
939
942
943
944
948
952
955
969
978
980
982
984
986
987
988
990
993
993
997
1009
1017
1018
1018
1012
1009
1010
1014
1015
1019
1024
1027
1034
1051
1056
1047
1044
1044
1047
1050
1056
1060
1070
1079
1082
1085
1088
1092
1099
1102
1107
1112
1116
1119
1123
1126
1128
1129
1130
1131
1132
1137
1141
1143
1144
1145
1149
1150
1151
1153
1154
1154
1164
1169
1172
1174
1178
1179
1179
1179
1179
1180
1180
1180
1180
1180
1180
1180
1181
1179
1179
1189
1196
1212
1214
1216
1216
1217
1218
1226
1229
1231
1232
1232
1233
1241
1261
1274
1275
1275
1276
1279
1285
1288
1297
1302
1304
1304
1303
1303
1302
1302
1301
1300
1298
1297
1289
1287
1276
1274
1272
1270
1266
1265
1260
1246
1231
1232
1229
1225
1220
1217
1216
1212
1211
1210
1209
1196
1187
1176
1178
1180
1180
1180
1180
1179
1179
1179
1179
1179
1180
1182
1181
1179
1177
1168
1161
1155
1149
1142
1133
1122
1096
1086
1065
1044
1026
1022
1022
1020
1019
1018
1017
1012
1006
1004
999
985
979
966
958
953
950
943
932
918
910
906
904
901
898
898
898
898
903
912
915
920
923
925
922
919
914
910
905
899
895
897
901
904
907
907
910
914
916
917
918
919
916
910
901
895
893
894
894
895
895
895
894
888
882
876
872
868
868
868
868
868
859
855
847
841
836
831
819
817
816
814
812
810
806
805
802
795
792
787
783
779
778
777
775
773
770
767
762
760
757
754
752
750
747
742
737
734
730
718
713
708
701
693
688
685
682
673
665
659
657
656
655
652
651
644
641
638
635
631
628
624
614
605
592
588
585
583
579
578
575
574
573
571
568
563
560
557
552
547
545
538
524
515
512
509
506
503
501
499
495
492
489
487
486
486
486
487
488
489
492
491
473
473
473
467
462
455
455
456
457
458
460
462
464
469
469
465
463
459
457
457
457
457
456
452
450
448
447
445
446
448
449
451
456
457
453
435
424
424
424
424
423
415
411
401
393
393
393
393
393
393
394
395
395
396
397
397
398
399
400
401
399
390
380
371
362
359
354
348
347
344
333
332
327
321
320
319
318
316
312
301
296
297
298
298
298
298
300
302
306
307
307
307
302
302
302
299
299
300
300
301
303
304
302
300
294
294
294
288
279
275
273
273
273
273
273
273
273
273
268
268
267
267
267
266
265
265
266
266
265
265
265
265
262
260
260
268
273
277
270
264
260
256
254
252
251
250
250
249
249
249
248
245
246
246
245
245
245
245
244
241
241
241
241
240
239
239
239
239
239
236
236
235
234
233
233
233
233
233
233
233
232
232
231
231
231
229
228
229
229
230
230
230
230
229
229
229
228
228
227
227
227
227
227
227
227
226
226
226
226
226
225
225
226
227
227
227
227
226
227
227
227