60000
648
100
393
703
859
87
641
532
930
163
421
380
169
544
363
347
638
465
948
655
973
921
745
33
973
955
992
560
815
399
434
51
849
594
664
466
589
228
317
904
426
115
731
799
670
492
538
266
12
332
581
914
449
392
156
745
253
173
37
986
401
939
461
43
789
364
833
585
669
246
815
171
909
931
570
853
590
556
58
888
469
69
431
779
644
635
374
593
785
520
985
837
14
144
482
784
638
327
60
874
13
170
67
766
145
183
631
460
766
391
487
870
36
710
445
62
807
741
74
678
444
387
93
729
667
971
91
367
72
188
665
541
400
567
928
67
475
421
826
281
90
550
534
182
65
73
120
134
753
591
139
549
610
248
471
360
481
65
545
182
313
997
815
760
50
363
523
380
201
97
567
484
824
606
70
729
510
16
131
73
564
291
128
478
738
285
838
844
760
533
818
850
752
685
713
329
186
445
634
993
769
78
689
569
475
76
523
862
674
153
951
865
801
718
533
520
542
640
286
96
537
737
869
880
86
358
819
185
25
889
750
711
185
384
849
602
738
368
577
953
495
402
981
625
660
160
679
774
420
320
609
256
338
582
457
463
744
177
33
696
571
832
849
854
208
657
483
855
775
845
747
318
999
761
624
412
791
360
362
901
497
744
592
212
265
702
646
173
293
975
558
29
166
141
319
410
601
64
982
584
659
539
146
360
846
731
622
116
845
213
643
796
500
473
358
432
971
151
55
38
888
817
386
270
432
972
870
944
226
130
765
527
661
572
444
628
494
476
117
733
725
287
636
742
530
121
541
390
800
753
842
404
944
74
28
692
465
694
302
499
250
204
243
222
574
584
344
608
220
455
598
704
717
923
351
843
656
826
308
208
574
249
669
168
650
905
613
836
321
903
557
324
658
401
333
75
623
697
657
286
314
503
440
30
93
803
315
978
584
194
118
281
765
960
486
992
257
195
166
336
117
268
90
496
942
931
999
116
853
732
197
450
557
781
740
167
831
788
67
242
650
914
398
165
826
962
276
795
49
638
105
938
397
355
144
294
416
174
222
530
992
334
980
823
158
551
904
14
409
966
789
847
776
420
672
155
475
457
854
736
392
760
267
199
126
640
239
749
53
412
923
317
820
243
648
348
915
183
534
966
575
415
560
495
296
972
905
765
238
186
385
804
510
490
378
59
294
135
986
763
258
864
31
728
122
472
871
275
59
500
307
616
394
994
438
867
681
814
678
890
15
288
648
545
501
964
654
808
886
488
902
963
119
447
889
127
934
432
111
59
289
802
814
307
250
26
875
88
916
686
919
986
522
182
952
990
754
468
85
186
312
101
454
195
45
31
227
86
380
87
988
569
270
614
232
82
850
371
540
671
675
79
543
427
402
268
775
614
86
222
138
80
422
875
294
728
601
262
175
695
894
612
760
463
609
425
938
409
788
363
149
251
161
971
460
618
749
57
509
334
927
660
624
909
402
659
439
755
728
226
155
139
830
145
533
806
757
648
667
626
748
310
736
431
133
856
318
844
139
966
799
312
749
215
633
29
383
371
831
318
569
652
96
352
533
761
122
771
932
914
328
92
563
608
865
354
271
747
428
203
116
94
372
62
722
840
972
258
877
595
422
33
822
440
408
445
793
283
939
12
418
689
349
116
574
45
719
453
987
918
372
516
533
209
836
266
849
252
561
780
68
868
214
540
625
36
157
475
189
635
84
173
190
738
566
735
842
463
895
471
321
603
631
323
381
522
501
597
765
188
992
536
148
371
409
957
340
454
600
791
444
516
753
313
828
254
139
837
433
130
541
564
534
124
870
950
136
548
94
114
982
881
580
350
120
562
564
793
314
438
854
439
636
243
617
869
86
941
302
363
306
471
502
383
553
954
807
865
639
538
960
45
620
479
398
262
855
914
775
536
31
731
234
591
649
398
251
161
961
760
981
362
195
218
701
374
497
390
580
699
474
317
538
37
822
514
873
796
968
690
600
196
139
744
360
716
107
214
334
59
723
146
324
10
309
329
728
586
926
37
710
359
16
386
806
925
747
533
922
60
950
123
832
310
942
781
240
297
890
337
853
366
615
982
894
555
69
845
596
403
264
824
493
270
120
141
605
966
507
548
606
902
995
624
897
730
748
453
69
66
151
516
932
52
557
885
900
222
908
371
390
538
65
157
148
896
600
942
679
900
613
31
977
315
144
599
986
226
745
415
17
751
393
453
610
899
724
872
981
238
604
630
776
948
253
359
242
739
887
158
200
878
513
178
667
885
376
872
255
895
50
723
649
431
437
124
109
409
602
44
89
985
113
472
409
584
642
757
153
310
746
241
468
778
811
428
230
798
908
953
354
890
119
316
362
750
949
492
87
136
259
861
552
597
606
835
119
667
717
803
298
726
824
789
442
547
640
138
553
302
651
682
316
859
736
969
40
401
253
381
826
908
712
230
706
321
870
892
719
123
202
498
800
611
425
378
97
368
694
407
769
195
842
380
664
83
435
981
335
283
411
173
654
253
986
525
659
183
332
366
530
831
930
830
79
37
474
691
536
168
606
516
556
955
245
989
729
712
850
289
448
121
386
815
238
485
834
90
920
780
527
47
962
300
425
463
266
443
453
394
236
446
664
684
660
949
499
809
894
810
626
687
359
740
929
32
521
424
870
336
775
158
613
938
464
896
602
290
200
337
96
106
74
527
820
542
468
226
918
974
168
395
278
296
291
654
784
487
320
977
626
569
738
722
370
639
228
40
467
598
926
875
64
693
483
171
963
121
313
453
370
227
373
926
978
327
123
941
681
363
754
915
190
643
96
797
575
548
713
301
104
36
649
730
833
543
940
86
445
634
465
791
475
585
310
455
542
602
748
219
350
329
470
834
387
69
365
845
922
827
374
298
529
943
934
527
43
103
182
327
657
107
71
60
287
38
690
28
731
10
68
939
22
237
613
429
683
477
512
660
957
667
21
897
236
520
394
79
659
173
286
927
743
276
847
286
981
753
242
350
657
70
495
860
757
83
598
37
429
420
223
851
363
494
524
568
866
175
61
296
433
319
867
43
797
655
621
142
600
324
108
355
957
843
25
553
399
592
804
96
302
644
699
990
869
906
38
738
754
705
632
477
252
837
69
432
506
645
923
842
924
269
491
672
422
662
200
338
984
636
135
353
813
254
290
979
609
220
333
950
322
130
500
372
808
367
457
297
769
916
828
27
221
68
191
759
983
916
589
704
774
886
759
656
984
50
318
210
898
325
352
916
990
616
956
889
76
511
701
611
685
866
274
558
656
364
90
923
592
99
659
289
418
724
168
224
226
391
972
432
496
66
383
287
497
951
725
277
265
541
728
513
853
171
177
785
150
34
243
967
995
506
102
468
742
386
389
261
431
510
299
668
236
587
383
360
139
480
612
893
955
392
817
146
799
513
177
499
323
373
372
258
353
249
778
907
399
115
669
14
106
155
363
887
39
400
897
433
671
39
591
647
858
134
305
330
685
884
930
163
133
365
254
328
479
182
603
788
234
788
735
162
645
463
314
608
408
540
940
311
756
927
717
448
856
936
460
605
477
621
34
280
81
50
390
656
422
951
429
341
234
764
731
768
844
544
921
415
784
97
696
41
208
289
936
498
525
798
391
341
525
480
246
232
399
334
896
538
951
967
777
909
753
120
826
639
31
968
115
282
538
705
242
145
705
746
597
331
511
574
276
24
505
453
898
76
676
136
101
851
781
701
408
92
108
355
946
605
177
698
224
855
674
389
72
349
450
791
518
551
905
269
214
261
961
898
548
659
459
104
686
402
890
907
571
330
794
779
43
297
376
967
210
492
659
54
356
69
747
172
705
88
534
515
78
28
477
50
320
197
275
334
580
273
852
621
723
936
556
654
490
519
175
471
641
473
201
696
857
401
534
501
985
749
518
283
762
958
911
132
195
85
989
117
639
980
979
515
429
120
666
247
574
21
539
986
841
186
229
907
306
561
53
44
589
240
182
639
767
366
583
886
92
596
537
55
787
707
995
208
461
510
120
365
737
27
777
620
621
956
54
526
463
820
639
453
574
450
264
442
183
264
224
362
402
478
631
945
677
211
71
118
849
306
850
137
547
123
102
131
241
948
587
809
19
645
223
952
938
139
637
699
516
862
112
839
14
261
415
63
760
480
390
640
261
498
680
954
270
341
862
837
155
504
965
560
832
146
232
352
109
825
342
613
73
313
883
96
775
354
255
539
525
550
296
942
623
46
392
698
641
94
508
852
520
321
280
625
324
388
471
383
612
255
467
472
779
76
26
519
96
416
40
981
566
708
552
876
530
660
593
516
439
545
495
674
448
738
358
845
158
37
469
911
633
559
567
998
281
441
958
761
28
565
545
407
148
482
498
664
588
935
828
977
670
506
20
476
431
702
19
594
183
720
916
181
789
319
734
872
317
511
714
365
218
238
885
704
886
823
194
139
357
375
20
523
40
636
615
485
576
808
201
519
507
741
75
222
576
137
639
315
454
499
40
19
308
448
302
92
409
816
14
372
254
775
43
902
125
701
668
668
278
600
299
469
574
689
957
828
794
118
409
41
247
417
93
916
246
66
876
520
576
902
183
847
520
751
303
914
526
126
735
647
812
40
604
520
383
296
93
987
211
138
992
218
135
783
248
614
139
284
995
302
779
891
981
639
654
445
696
412
21
771
516
51
978
315
703
770
271
815
634
188
496
755
642
436
153
352
92
627
310
529
320
875
691
315
95
744
616
850
222
672
329
408
869
495
967
926
988
599
695
636
373
29
927
790
912
673
522
540
251
155
22
548
11
298
602
626
384
707
871
250
77
695
542
315
710
802
198
447
165
657
45
749
103
379
658
201
727
867
428
497
738
843
705
173
245
344
806
979
599
320
992
343
122
993
842
118
382
467
983
555
390
67
242
546
945
859
794
96
70
556
814
389
275
649
913
755
634
195
188
50
118
565
567
587
520
711
911
770
695
477
608
314
98
435
548
920
285
61
511
625
166
629
343
596
150
899
203
933
849
619
665
891
529
844
470
464
437
514
152
668
533
845
82
169
250
633
589
177
330
306
569
667
240
354
605
384
587
429
436
666
372
915
222
49
998
757
645
342
246
792
824
516
405
895
490
716
861
712
71
670
368
382
917
24
261
860
339
838
343
230
118
39
854
812
802
603
440
84
521
543
72
272
968
789
905
686
236
455
37
902
315
704
599
977
180
323
731
858
326
10
822
434
628
148
875
519
571
935
896
554
735
57
946
427
343
23
191
735
790
750
373
643
487
182
305
321
372
409
953
367
627
989
541
529
519
452
131
520
47
463
462
745
504
390
185
290
411
111
940
372
856
15
772
745
319
917
760
680
691
858
73
896
262
561
207
991
305
10
69
741
556
847
630
184
778
506
537
222
390
244
744
84
391
172
364
275
779
561
192
606
728
360
760
540
760
406
657
693
147
344
669
810
790
893
672
227
10
456
590
553
843
500
65
48
151
668
999
694
887
248
343
57
224
659
510
803
898
140
949
791
398
827
49
26
493
945
852
344
862
682
476
410
787
712
840
182
807
124
384
265
920
392
395
19
711
923
330
672
259
60
78
183
136
715
193
324
10
646
509
516
877
193
176
253
914
163
517
804
199
36
124
68
31
936
838
793
984
69
720
529
466
905
808
813
346
456
673
987
453
130
522
221
38
682
51
842
466
978
43
231
539
42
731
802
596
820
987
872
672
159
917
740
180
840
293
811
994
209
321
469
955
820
662
149
287
374
301
421
623
292
907
628
791
77
194
286
255
547
526
375
669
527
519
601
860
324
503
961
326
695
349
109
819
112
89
996
285
440
355
645
699
587
493
90
183
656
533
91
246
665
166
620
877
780
336
22
672
300
356
856
442
882
69
403
55
798
234
159
513
143
941
299
570
958
243
121
438
339
453
826
601
654
502
750
424
728
222
330
383
528
128
265
48
431
239
411
520
987
789
763
831
480
435
336
502
854
511
964
41
708
778
440
100
396
709
637
989
858
707
13
139
275
858
678
987
145
64
397
263
248
447
750
53
611
175
847
829
470
921
131
332
88
703
126
877
630
256
534
851
580
44
434
153
888
52
17
307
115
219
410
600
677
152
631
514
781
651
731
636
903
540
683
160
111
98
780
159
847
538
962
835
168
815
120
107
598
29
331
56
229
71
222
329
80
37
757
790
246
594
501
853
568
819
928
692
712
722
681
197
485
994
302
967
838
846
753
764
838
52
747
252
820
270
921
486
773
415
416
186
805
972
17
131
575
266
404
442
181
782
779
156
972
712
475
222
536
95
328
796
232
343
255
91
869
832
542
790
503
939
904
802
677
544
763
225
565
297
11
835
507
337
177
149
12
976
501
947
625
318
347
818
60
848
134
998
518
247
836
181
340
721
936
700
486
959
298
320
369
702
230
280
838
768
81
179
87
184
700
475
547
328
725
246
343
534
684
90
258
96
466
115
286
815
264
24
646
721
789
771
356
830
380
994
483
775
789
540
770
266
39
173
974
96
975
333
185
793
395
145
384
622
498
587
499
530
224
229
462
667
284
493
275
489
834
627
469
809
912
808
378
819
687
10
737
868
157
734
991
56
683
413
203
483
29
470
701
763
305
522
571
618
416
69
480
133
328
976
242
680
342
233
419
34
554
669
842
828
867
229
579
92
651
226
588
904
433
782
801
330
177
419
752
328
702
255
686
763
80
936
422
650
131
280
219
575
68
375
622
727
376
132
95
33
603
563
65
407
863
915
936
958
599
776
740
701
249
533
830
535
718
874
551
983
496
173
210
38
146
390
811
635
363
974
607
287
547
733
875
715
722
796
850
898
471
74
443
887
10
106
103
828
329
779
450
324
958
137
678
278
471
932
834
719
757
704
134
76
881
325
967
136
494
331
478
887
459
107
345
73
284
837
945
765
407
859
168
918
85
158
192
459
392
195
602
876
840
129
107
737
880
106
225
679
458
201
460
148
647
342
989
768
749
815
25
110
543
532
849
305
142
399
263
466
955
889
47
136
177
848
556
284
429
894
184
59
580
641
267
609
244
16
810
776
81
629
861
44
182
286
458
843
584
378
604
759
342
528
653
306
716
435
620
584
961
937
904
980
182
692
350
161
532
826
664
814
858
46
762
491
123
508
408
792
753
442
75
469
853
132
747
641
143
40
335
204
455
792
599
215
110
302
152
446
473
591
320
785
926
216
44
314
918
557
120
335
207
725
189
73
221
223
793
181
715
160
479
306
259
396
966
409
364
511
535
894
687
401
294
192
117
467
969
828
54
611
374
461
154
803
788
444
666
200
688
514
630
76
618
51
972
770
777
107
98
265
159
304
378
300
925
435
534
113
498
574
672
48
464
815
989
989
827
115
247
826
848
99
442
612
287
102
23
805
305
437
111
871
376
981
570
412
768
75
658
408
619
676
76
215
989
262
419
63
190
801
387
468
562
58
396
628
16
820
539
212
999
886
352
664
106
790
473
699
886
304
646
919
195
915
585
410
238
871
624
200
736
293
845
64
407
877
220
487
782
746
576
656
898
30
727
494
456
78
238
993
356
692
821
767
337
589
930
479
571
182
111
258
76
37
600
926
526
749
473
772
351
656
707
819
55
296
43
949
110
596
660
29
825
980
506
736
120
312
920
19
933
386
636
707
104
849
41
772
410
244
438
959
705
936
132
746
300
930
635
863
371
82
56
111
391
893
591
690
309
719
67
414
198
383
959
400
433
62
779
305
897
509
456
908
792
549
273
852
197
18
431
920
248
371
24
239
592
811
112
450
256
907
443
554
66
344
884
837
127
379
540
243
744
814
784
932
502
911
421
513
349
548
537
102
226
660
413
92
471
425
358
743
411
693
37
584
765
80
74
734
28
270
982
608
573
251
800
288
693
778
127
478
50
90
522
699
136
349
734
155
899
912
895
682
431
889
238
632
352
575
484
468
605
201
197
944
315
816
688
85
58
778
385
116
158
508
278
796
282
148
40
795
243
505
188
664
573
596
607
735
135
144
604
816
745
594
754
380
89
389
322
293
871
375
856
603
824
564
826
524
471
124
335
379
688
10
584
498
847
153
868
702
23
930
305
328
233
851
64
540
955
203
971
869
41
628
331
693
565
427
279
641
391
901
698
111
85
40
91
822
223
738
332
105
513
617
84
436
665
596
49
46
373
861
964
529
873
404
926
828
574
225
106
410
994
662
975
773
563
39
689
10
905
305
379
777
228
514
991
328
676
705
655
692
496
873
463
721
653
376
886
689
150
863
771
883
788
833
803
16
234
471
821
685
540
356
708
642
616
316
841
834
506
150
268
683
58
608
258
312
749
224
168
301
208
684
18
351
533
985
311
111
678
317
572
266
350
399
39
594
506
65
185
657
374
183
303
764
278
707
118
758
642
341
707
65
658
662
877
847
499
396
795
353
435
520
719
837
853
75
459
850
284
177
621
225
742
367
808
284
108
298
20
641
536
384
900
729
515
34
774
171
475
775
194
795
362
696
685
38
116
101
692
869
509
589
993
671
512
739
96
865
662
36
722
250
688
397
84
397
770
464
695
513
852
586
232
542
758
617
33
761
367
62
602
485
295
615
701
955
288
163
140
251
11
667
467
666
840
835
809
200
505
492
826
79
752
45
507
984
729
639
357
805
37
520
440
389
390
534
583
345
503
708
896
121
322
350
18
620
36
830
752
793
439
79
250
773
915
498
929
925
541
993
697
183
223
881
724
470
516
351
948
195
18
505
780
304
509
698
916
334
248
22
900
349
509
465
945
789
305
241
716
422
11
615
540
376
669
417
476
423
157
508
313
832
953
57
929
470
969
295
990
549
327
855
968
106
137
182
410
277
816
22
338
685
473
885
53
164
429
879
397
585
595
682
67
839
67
57
804
55
328
792
870
585
457
329
523
454
838
592
364
967
400
433
573
834
595
801
113
304
941
109
130
636
503
729
985
402
225
604
810
715
501
175
316
44
354
12
369
494
586
987
506
816
462
354
784
681
693
149
663
777
113
555
226
364
704
456
28
254
182
897
422
790
125
370
416
555
637
909
888
114
862
629
263
798
565
548
923
446
695
123
459
126
27
317
734
751
131
504
143
955
39
625
570
317
590
514
65
369
570
406
325
527
317
725
374
402
950
119
886
861
633
23
464
689
121
160
987
223
742
182
783
551
459
67
244
84
249
877
65
609
493
247
592
558
169
716
892
666
898
393
840
539
541
728
75
455
344
790
118
212
486
534
580
807
145
523
938
58
31
551
665
560
579
503
636
157
797
309
56
256
738
473
980
29
293
179
518
221
999
124
165
104
926
657
24
72
299
811
652
943
250
769
899
74
128
757
757
906
76
393
461
250
216
951
896
469
123
660
631
755
961
492
174
806
595
683
163
638
502
269
635
302
759
968
831
467
681
105
892
415
118
927
202
601
527
128
192
485
689
515
93
733
393
605
324
77
406
586
494
887
342
89
897
420
300
809
603
47
950
458
807
727
123
117
623
590
416
77
660
647
597
402
215
602
396
879
623
119
138
483
321
107
751
960
940
213
166
278
294
111
121
983
933
719
332
494
687
566
611
48
205
695
534
929
909
499
993
398
583
824
551
418
797
994
971
697
629
199
110
206
846
988
199
251
715
388
124
803
78
578
191
720
294
361
714
908
299
969
424
524
865
192
712
283
973
678
397
648
86
511
150
126
817
191
349
336
248
30
131
477
442
841
415
618
243
422
761
430
512
290
201
949
357
920
43
314
727
903
189
193
249
979
391
821
95
548
641
683
860
420
998
304
831
522
307
48
616
792
829
322
993
300
15
517
111
546
44
941
573
614
83
801
589
606
407
510
946
132
234
980
450
10
618
638
17
298
82
360
402
249
397
210
74
890
62
361
879
932
750
210
183
747
347
246
992
843
862
569
521
432
731
464
472
334
506
762
135
977
985
696
612
164
652
547
754
389
18
753
955
206
214
164
713
457
163
21
427
228
501
276
800
589
880
253
46
661
42
343
128
878
745
337
847
157
936
233
177
789
822
935
693
764
834
383
849
883
664
380
297
801
334
92
893
511
368
656
801
955
642
131
500
342
25
872
125
633
217
819
102
550
376
147
140
293
98
893
277
419
528
663
551
94
283
94
858
165
581
28
514
894
87
363
757
873
602
815
231
798
836
200
510
518
118
410
453
216
714
132
965
859
701
11
628
766
236
26
606
996
312
756
44
987
790
826
844
11
741
682
806
433
607
762
410
628
486
823
883
904
610
495
190
627
983
913
95
786
99
885
685
870
275
37
278
450
939
169
921
241
517
797
874
820
50
10
388
307
158
710
530
437
701
688
806
229
307
937
57
147
478
250
664
222
52
272
128
280
384
660
767
555
583
407
857
885
835
771
139
549
305
423
841
343
938
364
492
217
892
565
473
471
56
39
513
780
532
335
181
185
342
181
801
238
297
196
560
735
941
638
261
589
797
53
981
378
491
569
258
126
863
29
638
249
123
62
712
795
926
303
406
921
276
904
964
210
453
384
78
623
162
935
815
21
451
313
643
783
234
428
545
890
758
445
436
109
225
595
744
413
716
838
896
461
102
780
979
782
588
287
116
651
845
951
17
66
437
918
99
99
357
328
107
766
160
252
533
740
694
104
721
386
130
828
971
167
967
703
47
612
439
935
263
266
947
381
280
941
152
298
712
856
922
578
240
118
166
736
444
87
214
307
608
488
97
459
67
722
292
999
374
293
443
806
98
535
747
598
454
524
677
314
477
301
923
25
242
953
901
899
149
908
922
916
893
535
863
236
291
297
20
78
378
242
589
216
227
823
263
819
232
973
279
571
138
324
754
576
953
322
792
381
745
818
76
661
893
286
491
827
386
978
322
146
170
743
337
489
345
688
269
808
371
93
74
943
56
400
242
529
164
584
291
156
340
442
328
801
683
615
837
632
884
33
613
242
992
671
938
329
524
771
384
253
305
726
150
751
210
567
48
602
871
574
881
616
41
646
173
189
740
420
291
915
649
377
474
276
198
571
972
425
165
170
506
144
249
346
118
778
436
240
896
730
182
948
881
115
122
529
595
675
321
812
201
718
655
566
143
79
537
191
619
301
872
880
944
830
963
697
301
526
418
287
685
232
204
605
23
812
19
582
196
879
868
130
53
771
168
622
920
113
790
535
315
365
569
28
184
172
509
708
478
736
979
934
129
829
419
841
755
852
276
456
748
677
394
862
920
590
439
383
359
67
916
76
890
786
379
960
156
343
551
82
568
467
816
905
228
64
247
789
955
914
590
800
973
852
862
717
174
651
279
67
882
119
462
946
824
921
724
640
884
929
485
419
377
346
629
341
562
233
26
208
330
817
961
866
647
729
640
193
888
376
247
575
515
956
202
26
798
268
857
677
703
50
338
109
92
802
209
822
776
870
734
310
273
205
122
975
347
750
857
325
96
517
992
795
849
145
30
440
718
507
83
486
654
807
120
187
700
713
902
967
305
891
949
860
238
900
149
34
489
390
269
274
523
99
180
758
965
134
993
566
917
392
704
854
636
91
528
40
562
419
303
482
799
39
613
604
880
232
470
10
261
206
465
799
195
265
103
240
610
103
440
900
473
580
591
929
747
32
238
223
886
84
383
964
106
81
391
320
902
154
739
424
98
718
156
505
458
945
797
774
475
290
921
848
73
317
531
173
718
92
402
789
619
591
743
304
989
442
533
932
581
295
105
701
559
865
300
509
939
465
334
546
295
607
707
45
880
810
15
993
242
245
218
386
64
339
886
190
609
814
222
816
540
244
438
918
211
854
125
984
246
818
541
336
943
433
791
863
402
229
93
190
440
540
21
553
932
643
579
332
705
580
504
560
687
168
436
844
614
231
510
413
439
486
747
820
913
938
947
158
189
832
84
932
534
832
865
259
538
287
604
650
110
59
738
459
972
309
765
889
589
189
292
302
325
214
804
289
175
375
838
711
700
709
334
40
104
140
414
769
998
89
872
567
14
958
79
403
371
677
430
184
917
798
768
434
632
480
85
964
968
554
728
714
772
547
92
197
760
190
667
812
219
791
29
919
831
549
807
278
193
73
804
482
669
491
736
463
432
715
50
715
30
835
732
216
867
936
991
106
36
942
360
421
419
395
682
572
538
70
878
281
692
916
814
163
27
331
985
598
914
454
253
640
733
669
962
753
516
267
738
907
91
195
73
602
756
182
756
978
158
678
434
303
316
982
198
735
202
129
23
720
633
944
866
964
962
25
516
405
802
132
163
404
56
761
819
605
535
598
737
146
810
216
794
865
678
263
517
901
721
945
421
249
301
529
801
351
692
946
769
888
836
321
215
940
763
695
207
936
71
614
280
911
227
710
246
979
649
469
497
789
399
905
84
33
442
343
413
832
446
257
52
375
19
816
307
463
569
220
419
799
52
268
128
458
483
312
231
687
695
630
788
762
88
336
56
342
261
950
478
737
739
591
901
430
943
559
636
286
637
670
90
983
231
510
570
927
158
921
206
948
925
205
547
424
752
300
448
493
339
202
544
912
698
993
630
850
767
627
735
986
660
198
744
238
426
669
26
195
17
112
571
154
96
981
927
176
502
237
924
85
513
437
320
774
332
723
696
305
104
996
396
651
858
174
55
601
532
539
334
296
87
709
98
113
599
99
275
610
716
250
193
144
77
415
845
530
429
666
210
599
391
975
312
272
172
998
495
564
269
88
547
592
291
886
237
382
315
681
938
257
665
809
245
338
78
402
330
842
480
986
903
943
389
421
766
36
787
725
857
817
499
681
523
965
320
707
39
565
996
811
764
318
927
409
302
300
892
938
72
598
540
282
257
598
440
627
176
826
439
583
300
945
656
249
152
860
491
24
303
963
852
428
490
283
451
356
141
731
676
489
652
816
731
387
605
288
182
458
999
167
959
715
494
225
667
141
159
912
893
841
60
172
838
871
941
68
965
11
869
217
898
836
501
583
726
901
544
640
96
99
984
559
829
875
421
905
212
370
147
988
643
547
774
799
15
513
919
397
358
193
951
719
816
267
160
363
820
732
179
17
836
293
291
606
295
589
936
808
777
943
497
717
488
114
37
283
218
92
503
888
766
589
818
604
338
591
866
105
675
548
681
933
686
590
38
960
415
438
312
43
438
979
784
155
694
448
918
204
889
737
357
189
615
852
404
218
117
765
663
655
361
172
776
281
969
173
843
486
391
714
666
101
130
100
751
24
287
13
417
295
660
331
702
248
71
925
969
150
747
733
734
295
162
657
510
815
792
422
472
967
181
424
975
687
301
873
292
571
976
916
842
498
37
521
659
51
877
598
84
738
330
979
369
29
682
461
662
664
894
530
80
248
616
526
337
69
877
782
447
607
230
922
967
131
201
315
567
108
76
438
343
725
298
613
120
59
950
612
864
505
79
925
995
970
609
201
265
115
989
231
298
188
494
306
519
96
594
849
973
941
463
353
531
365
487
103
997
606
447
959
798
322
131
414
825
468
142
544
816
181
649
676
901
972
298
178
734
776
389
514
405
415
16
917
770
301
731
603
696
991
770
27
386
189
706
452
453
830
492
696
244
240
265
289
768
809
796
807
683
721
372
112
195
387
768
256
432
475
585
919
22
561
684
765
175
146
785
320
649
616
478
626
963
911
785
64
696
793
402
210
257
261
646
770
844
977
366
195
757
199
86
257
99
226
401
437
183
606
196
322
267
129
905
715
856
209
762
537
384
744
975
954
863
413
834
350
51
609
860
265
150
14
229
362
610
21
980
23
185
664
957
83
870
671
155
816
897
726
251
252
25
942
344
900
555
596
922
713
950
19
330
432
916
10
571
829
465
234
775
189
404
746
133
862
951
766
146
871
154
759
205
975
578
165
313
351
477
391
995
164
449
931
158
900
605
198
517
180
946
456
719
694
389
648
489
976
599
150
68
125
154
141
213
414
554
967
64
147
560
598
749
721
795
536
247
557
491
576
230
703
148
693
574
624
451
458
558
893
774
214
120
838
189
359
49
219
734
821
283
295
772
87
79
705
903
636
270
816
390
530
652
892
839
370
442
778
757
784
670
534
546
398
117
501
414
977
968
518
617
320
943
990
508
441
21
207
173
983
837
742
55
741
846
114
965
475
182
147
511
748
533
377
413
483
599
740
148
960
329
128
305
778
77
850
109
28
245
258
448
350
998
121
827
396
973
286
483
766
736
86
473
943
396
638
54
796
850
232
196
146
61
262
915
364
286
876
999
33
520
302
52
228
270
489
668
525
98
973
50
828
559
68
997
111
542
383
61
29
285
691
300
333
913
259
414
224
221
707
778
246
703
723
651
289
673
417
973
166
245
734
53
564
666
442
790
261
665
625
162
250
91
310
445
311
347
564
949
444
310
116
985
916
357
875
623
552
368
156
472
73
432
407
725
243
667
251
267
184
979
760
688
223
235
899
163
692
829
273
715
248
136
190
364
88
29
896
104
583
332
763
656
950
482
241
235
396
853
464
240
53
837
447
918
752
789
431
417
320
364
548
485
449
633
222
736
695
301
902
854
83
550
179
771
758
922
59
247
677
952
354
832
877
458
248
455
33
706
740
798
909
118
561
401
264
963
581
144
365
42
353
188
410
10
932
846
816
352
615
878
681
201
120
693
15
873
487
601
341
732
335
969
379
837
588
336
622
690
169
510
521
318
71
637
476
342
732
618
577
985
586
668
460
410
928
930
591
702
129
725
566
403
636
797
905
135
998
614
697
415
391
137
301
73
221
482
942
900
743
38
413
72
83
999
140
245
138
292
741
592
925
360
176
527
724
215
897
33
286
293
963
302
446
539
922
618
749
339
124
75
357
770
51
933
781
129
465
736
25
664
890
732
294
956
79
75
580
10
507
890
578
229
395
556
211
18
584
37
111
769
448
83
710
852
743
466
583
329
293
920
983
284
445
421
423
213
74
95
437
80
467
931
989
600
350
228
464
880
427
823
33
454
969
779
806
277
524
576
200
421
253
171
197
801
584
633
948
837
39
275
611
646
24
836
99
860
345
78
237
24
630
740
416
415
377
165
253
653
743
677
727
675
525
612
489
229
48
509
647
772
573
499
252
932
859
109
906
494
88
883
635
468
245
436
590
341
821
843
996
122
136
772
474
209
28
787
725
418
852
17
469
340
523
186
500
78
652
908
956
73
549
675
438
724
688
721
727
52
632
916
712
375
342
30
264
942
270
622
261
545
526
128
772
72
969
683
959
923
88
133
789
498
388
346
608
835
319
206
580
519
399
23
966
839
315
591
248
611
367
791
776
269
683
204
691
926
626
866
853
712
343
73
907
304
319
614
133
473
697
438
383
204
979
367
18
444
867
683
614
630
206
640
15
687
612
68
860
796
700
37
387
619
705
72
111
915
117
399
191
232
56
582
515
380
590
439
309
269
369
323
17
469
819
549
847
188
702
160
994
51
956
835
275
836
969
841
341
431
581
452
216
414
69
756
713
108
440
795
879
773
152
827
581
647
194
348
339
75
70
136
732
515
791
454
428
225
742
858
56
729
600
17
781
184
358
924
734
665
548
540
63
857
248
176
383
452
495
820
861
431
29
363
907
989
769
21
10
497
387
958
640
80
567
594
215
288
552
936
886
566
298
461
83
701
543
762
155
838
181
335
659
427
269
463
594
143
681
352
737
884
209
389
344
771
488
296
162
152
796
823
128
727
96
631
656
284
89
175
918
535
812
356
990
430
222
980
696
340
595
532
705
391
765
384
681
680
476
763
140
398
708
246
722
747
675
49
969
598
370
563
985
48
504
182
924
829
609
910
462
505
883
390
10
759
68
661
596
674
822
863
368
607
469
790
842
952
992
228
238
912
261
214
792
274
893
309
918
116
432
81
182
142
909
800
48
242
705
890
546
673
454
661
900
740
183
878
176
484
292
117
551
361
24
380
548
156
627
481
365
476
382
749
169
580
563
765
517
518
871
733
100
506
78
572
171
431
763
720
433
958
348
42
560
445
644
551
440
83
343
541
244
728
803
997
454
129
683
56
425
311
134
525
649
975
263
847
328
772
129
417
31
182
211
596
78
920
354
250
512
104
45
767
359
649
914
981
901
708
554
654
82
330
291
993
582
683
260
324
601
884
66
320
230
931
628
800
781
454
763
596
171
503
784
700
924
885
305
859
334
681
795
350
47
269
631
156
92
917
69
642
13
397
455
462
86
908
585
496
187
442
272
128
349
519
110
483
37
648
795
217
478
57
35
455
151
71
921
958
476
626
511
180
403
650
624
401
430
125
92
260
566
841
121
713
73
558
126
870
284
747
783
194
415
867
135
315
774
415
635
813
173
669
706
127
184
997
218
480
840
22
684
974
664
501
761
904
759
751
283
770
361
412
654
296
789
312
615
435
860
957
834
462
24
118
462
131
586
542
727
46
864
763
439
806
986
942
539
59
588
690
758
166
242
844
207
747
590
731
792
574
175
135
23
714
25
777
779
260
820
974
119
697
89
30
436
990
936
596
851
232
259
203
562
454
40
632
363
737
912
833
570
104
246
438
421
888
348
212
367
732
527
750
342
135
882
715
383
90
232
92
296
43
256
33
801
197
661
187
530
59
228
358
574
924
768
956
932
880
474
175
956
973
984
209
966
102
602
607
697
708
234
623
440
549
486
623
984
429
521
76
790
806
333
174
57
828
980
219
422
245
856
762
666
802
492
325
402
897
112
966
766
20
275
509
25
361
515
792
650
55
395
665
893
244
844
384
723
794
270
264
985
575
112
354
878
657
999
361
311
234
362
438
38
963
542
110
780
645
405
341
775
775
865
858
664
823
370
788
455
620
737
655
532
856
592
719
698
368
34
690
453
476
43
634
70
721
56
800
83
400
67
959
568
605
601
442
662
991
401
351
700
520
498
987
152
783
851
617
407
188
149
992
756
155
193
70
527
699
985
50
340
20
230
932
772
503
843
932
943
268
242
546
255
331
747
715
763
669
856
386
805
790
42
388
539
191
658
388
556
861
623
723
466
746
90
718
936
559
272
294
81
615
321
761
346
254
113
876
419
814
127
909
332
644
663
779
298
398
358
223
63
547
604
247
212
347
589
35
846
503
354
762
63
195
219
533
971
151
750
716
42
333
269
846
690
263
816
736
208
451
761
364
33
700
339
947
523
317
19
908
250
536
76
356
346
239
753
834
299
952
918
711
627
450
37
725
139
596
380
548
365
113
750
911
853
987
621
396
771
207
14
725
884
876
447
506
893
448
645
309
741
709
789
998
892
563
275
84
523
424
518
292
102
39
65
369
901
404
889
377
714
272
618
152
151
526
561
179
789
526
896
533
514
654
829
866
829
471
268
983
543
977
253
405
532
325
281
934
198
401
813
522
659
985
389
617
683
226
26
105
367
88
343
880
134
555
928
999
939
258
54
282
619
179
266
207
41
855
176
206
113
976
227
737
810
117
898
826
493
63
217
494
565
97
582
229
239
769
330
108
432
283
148
277
104
221
348
232
427
363
440
494
866
289
389
237
256
485
330
899
474
944
304
852
183
373
476
782
57
347
116
687
882
804
365
511
184
36
282
158
797
644
628
135
856
364
452
397
882
299
367
33
51
662
283
854
422
771
604
415
358
464
654
717
733
761
308
445
773
218
827
622
461
55
194
92
278
88
226
38
537
949
716
87
155
107
223
366
954
452
604
110
507
687
497
976
804
313
647
193
230
449
79
315
11
62
473
800
818
249
914
891
30
748
555
416
574
144
52
350
876
123
616
660
43
359
629
176
480
274
369
514
98
538
920
55
917
830
119
482
230
50
854
772
332
331
296
130
788
993
331
505
779
731
99
599
355
566
544
372
593
477
600
127
763
673
33
427
774
96
125
216
257
685
10
342
698
61
791
888
451
371
157
671
703
701
890
274
520
22
554
576
867
738
327
756
758
14
36
703
969
400
335
991
31
353
460
547
456
686
448
294
849
326
797
126
436
707
129
201
234
381
138
988
256
148
97
650
229
629
977
952
378
659
323
286
841
614
215
439
115
917
119
173
391
552
959
836
280
85
251
420
133
830
407
799
859
216
409
776
382
87
211
540
962
253
371
666
611
936
460
398
60
330
350
421
666
704
62
482
519
238
254
566
63
721
983
274
693
943
533
625
915
77
466
518
217
993
868
615
860
399
82
865
395
295
441
753
367
46
626
811
391
731
266
120
991
610
966
512
258
460
541
313
287
206
669
264
940
95
122
503
354
312
373
932
591
390
222
266
523
175
551
362
609
84
876
475
382
159
528
479
740
226
463
638
279
314
563
934
149
655
930
609
595
874
902
933
953
49
461
447
69
970
155
922
946
350
44
363
615
785
839
295
903
841
925
173
556
871
403
650
938
633
831
558
591
183
609
562
725
253
830
56
232
353
208
111
787
848
727
632
781
580
883
713
855
299
939
563
406
61
295
715
457
383
162
640
629
919
748
865
117
103
713
649
660
551
501
806
558
174
468
345
697
236
492
317
785
427
313
767
601
804
350
107
482
767
474
966
181
643
673
85
109
336
667
646
595
366
642
98
91
495
384
231
154
959
808
927
651
557
11
547
101
879
62
197
518
734
667
606
908
683
644
909
811
743
366
268
115
57
758
771
923
496
373
80
119
339
942
887
889
290
782
970
399
786
540
132
438
272
553
652
620
471
47
98
699
552
361
76
217
204
526
112
622
57
684
92
894
242
570
851
850
59
652
320
285
245
660
345
31
100
570
750
317
487
528
20
206
757
159
957
660
111
931
57
805
604
754
408
462
250
48
337
438
270
796
999
944
354
880
596
95
26
382
872
729
460
690
559
46
269
576
638
772
79
455
597
701
88
331
449
257
61
201
711
435
942
42
466
412
527
913
583
831
583
630
150
860
447
214
582
70
972
254
735
491
375
630
48
738
645
735
899
511
289
101
650
638
577
538
595
784
987
44
205
323
246
408
978
235
475
517
912
438
990
977
598
102
481
990
669
92
292
697
774
208
562
754
479
168
461
614
701
690
308
138
971
312
347
971
725
97
346
651
790
60
453
283
220
332
928
581
171
628
502
298
899
375
451
795
209
315
411
382
855
664
152
48
54
115
529
245
717
518
518
825
662
417
694
932
32
951
908
142
722
903
880
841
343
270
956
17
46
239
268
758
224
207
141
384
930
779
794
224
333
755
181
663
42
430
517
542
846
203
967
200
121
329
515
877
970
532
616
350
765
660
826
128
681
228
619
405
271
514
562
950
707
317
242
975
179
395
361
496
140
324
305
323
104
856
584
695
670
552
826
874
541
384
997
569
336
413
624
863
706
101
302
227
724
564
376
753
970
285
126
646
979
586
982
184
216
301
108
421
42
755
426
232
744
595
346
338
84
438
381
69
846
892
74
441
314
821
184
541
445
177
603
92
833
688
883
768
790
670
563
869
916
331
727
749
292
287
305
66
689
833
895
142
767
605
734
291
751
628
193
267
245
508
597
997
375
383
559
629
335
180
467
503
409
297
62
248
677
618
193
320
989
45
280
14
323
258
981
479
119
216
841
652
712
314
593
121
293
101
484
940
646
288
690
772
913
737
133
149
495
63
759
767
255
932
778
718
428
751
372
544
763
157
530
356
273
422
633
570
747
93
477
975
18
207
657
21
442
899
741
787
749
63
111
453
208
463
149
447
61
44
701
753
199
900
496
971
822
982
517
833
175
125
193
334
905
731
504
993
221
545
570
587
139
89
672
661
60
911
490
952
731
320
451
132
135
288
762
13
87
722
639
232
558
847
733
466
463
82
748
798
772
409
512
682
850
555
979
812
581
236
751
776
853
865
122
778
265
427
201
671
635
998
627
735
45
875
917
136
929
318
97
833
848
80
462
583
246
694
349
564
928
632
324
957
469
269
107
511
298
388
910
67
281
308
718
454
996
306
285
385
114
354
662
618
188
89
561
316
213
167
256
429
199
216
21
391
61
619
512
382
346
402
490
313
686
41
281
592
156
972
20
197
391
877
734
39
791
878
213
116
491
797
402
639
554
58
204
278
531
574
347
832
136
182
409
201
188
49
446
95
863
97
696
964
341
840
502
119
735
441
136
898
824
350
412
559
77
225
514
32
963
954
413
433
705
99
648
403
754
73
740
933
942
779
144
637
150
845
55
476
740
402
204
78
348
111
490
341
963
121
134
446
489
879
394
137
696
664
332
60
575
775
439
706
276
494
20
444
760
353
539
623
759
626
437
930
443
703
848
528
812
658
990
720
922
373
492
529
73
715
153
898
842
19
387
24
341
974
763
629
332
801
414
39
524
482
758
134
49
342
118
286
524
735
296
409
37
711
695
591
762
153
10
792
62
275
836
761
87
211
380
831
243
177
574
650
77
139
393
809
208
245
804
728
35
35
901
473
883
535
306
612
895
286
121
287
673
473
240
368
702
519
598
310
677
86
222
980
88
107
161
819
431
623
144
589
457
621
238
519
827
200
339
470
434
568
693
164
74
994
139
257
333
724
731
409
243
400
626
534
252
500
942
634
590
261
628
236
106
662
342
956
603
955
886
523
763
41
531
784
554
426
444
675
544
804
297
432
338
961
309
233
721
25
965
121
281
499
398
784
121
300
407
942
150
901
677
334
882
818
812
997
408
721
856
113
28
297
32
270
796
622
868
92
267
173
605
84
733
356
579
905
677
175
604
352
815
126
78
337
148
957
746
794
692
587
354
593
301
333
725
841
275
498
334
681
407
224
682
430
819
911
871
327
887
119
520
773
900
682
630
248
548
163
507
920
492
924
257
893
803
317
419
433
549
673
568
521
32
444
843
556
107
368
808
402
230
246
465
390
786
651
733
456
471
343
657
799
127
44
342
484
432
364
250
473
454
456
563
177
949
434
677
535
597
478
884
772
501
944
781
668
607
761
198
421
740
806
730
188
377
811
823
916
905
121
921
117
218
921
521
488
705
646
850
125
305
62
662
373
438
849
965
874
184
436
742
580
810
479
284
503
571
801
236
357
603
108
257
429
833
114
566
819
953
882
437
120
336
971
470
967
83
406
11
775
426
770
774
90
64
317
463
536
995
360
413
731
620
319
94
266
552
714
776
535
566
911
194
257
703
250
326
710
200
857
983
357
384
264
212
697
586
179
212
300
477
505
992
821
808
484
922
678
297
666
18
375
203
944
359
986
528
535
967
374
752
870
845
533
262
767
72
225
931
556
767
621
472
419
456
833
263
538
260
154
38
887
505
709
877
788
660
678
24
586
501
557
187
361
655
628
998
234
990
746
956
706
157
881
222
584
99
508
883
192
699
877
896
859
535
792
359
251
138
514
643
849
714
280
31
744
819
356
684
367
227
345
485
171
65
418
930
951
157
640
234
145
189
416
866
654
628
906
239
600
404
302
841
472
704
972
741
608
924
452
792
316
668
454
72
18
669
508
336
132
271
217
664
573
991
551
605
358
643
326
63
959
858
829
209
857
361
134
971
780
697
488
838
690
259
319
595
345
742
586
968
863
287
256
527
384
871
473
560
767
227
34
232
955
863
890
880
403
834
776
76
486
834
740
752
970
273
944
789
766
751
261
353
747
456
248
383
673
585
402
402
734
256
353
626
702
298
571
829
236
42
661
161
441
578
668
645
426
238
434
498
567
528
623
945
509
757
847
159
105
486
878
228
925
58
871
158
463
361
244
464
814
776
555
44
526
294
535
742
375
32
267
674
316
640
330
396
303
43
557
643
642
843
527
561
495
816
988
359
608
221
282
413
732
664
978
44
135
52
529
90
118
463
194
923
531
735
258
342
216
176
825
788
722
424
855
580
982
891
274
790
523
71
458
399
92
683
643
909
124
50
73
986
441
399
328
176
660
951
100
844
146
561
554
758
738
857
865
998
981
84
260
433
338
558
643
786
600
91
540
387
650
411
782
777
187
952
203
670
669
91
225
818
596
257
967
486
613
140
457
629
855
441
800
367
743
391
293
355
685
475
708
517
928
801
592
815
582
113
392
378
769
554
831
623
522
760
821
547
480
516
176
854
142
842
325
174
236
415
194
708
274
785
874
638
72
419
667
584
111
412
679
793
550
126
123
733
17
409
671
221
209
594
825
679
869
362
507
86
68
362
490
322
129
495
458
289
851
604
675
147
787
908
220
830
734
223
562
490
396
507
903
65
354
964
423
507
152
847
579
455
244
953
589
112
89
578
153
404
767
388
469
419
149
422
923
679
87
108
992
458
520
635
625
633
763
835
545
776
212
275
897
503
207
802
501
583
478
812
348
697
411
642
40
504
470
589
850
232
971
579
444
401
39
420
455
59
551
332
468
715
209
873
456
307
894
519
779
102
263
582
70
467
871
113
720
707
424
448
998
367
465
426
161
396
67
757
231
244
675
186
376
552
731
60
410
170
656
961
648
884
315
46
898
888
47
897
605
616
754
451
316
875
946
228
95
320
215
631
907
653
129
927
116
137
22
889
959
298
129
345
833
17
173
200
785
817
269
14
366
835
293
94
113
55
635
219
358
931
860
322
450
815
529
761
431
468
849
605
750
697
533
581
72
965
380
980
258
500
475
487
947
800
591
573
483
494
26
591
439
73
30
301
535
63
921
900
233
500
659
753
61
288
310
387
117
597
855
474
704
680
306
262
317
129
41
98
152
994
431
908
158
129
631
951
755
173
794
755
492
738
456
562
744
80
568
30
428
148
923
193
71
465
453
529
895
393
360
509
311
706
150
602
828
846
453
552
225
986
901
972
862
279
258
674
728
318
753
515
603
789
179
283
47
179
910
647
811
789
827
591
926
804
237
921
984
351
108
535
783
204
425
284
943
92
390
178
779
684
435
766
601
985
411
707
43
176
290
505
431
211
975
63
488
71
957
824
917
43
777
274
123
682
584
73
356
503
294
86
597
709
197
900
655
787
712
468
312
905
256
820
610
272
418
85
664
200
621
346
632
193
419
956
45
650
958
351
295
385
660
866
132
871
203
470
968
233
638
869
795
332
76
876
993
735
176
691
150
438
85
877
412
369
841
633
200
193
624
800
43
568
972
34
948
254
356
354
991
27
153
219
842
73
767
892
891
538
958
362
748
924
181
841
395
456
235
340
21
869
684
71
857
885
95
195
198
554
782
239
722
268
537
739
637
934
616
455
115
956
544
373
539
281
233
758
924
719
921
810
576
309
937
962
19
899
834
608
708
984
960
992
558
248
420
33
545
881
66
50
951
877
355
940
322
132
737
682
144
934
281
440
874
715
556
899
987
441
635
34
142
222
184
658
413
228
929
980
498
226
824
717
424
800
410
947
43
417
394
863
84
122
885
474
238
898
846
14
454
950
19
896
781
952
300
503
202
477
233
876
439
819
404
276
473
404
732
38
488
67
515
288
695
491
877
840
329
74
835
389
882
656
370
745
445
520
128
998
682
59
969
827
23
455
692
344
670
477
794
741
620
175
15
396
106
254
820
598
101
936
685
876
385
417
303
585
556
406
958
930
986
362
836
372
292
249
890
657
375
313
185
335
694
205
58
600
110
34
345
730
215
334
730
632
274
424
563
619
503
661
275
93
587
812
509
314
863
107
124
150
767
773
325
123
387
637
205
167
660
332
671
686
354
827
361
745
64
272
468
835
804
291
568
860
685
254
436
676
588
949
171
839
546
949
594
609
37
604
64
101
118
983
311
801
135
121
78
814
597
851
331
912
652
980
450
399
898
98
651
846
635
134
279
928
245
793
947
909
748
992
174
807
422
38
13
23
363
204
439
474
879
756
927
513
575
28
40
654
960
357
600
390
785
845
315
779
229
898
168
377
761
826
296
441
686
587
920
733
44
672
406
333
309
254
328
435
576
528
968
752
941
144
670
685
424
969
391
975
921
782
576
337
81
567
326
711
85
910
585
122
247
834
457
340
595
855
952
499
691
46
785
886
480
765
420
884
413
889
493
393
652
653
378
203
724
712
570
224
604
488
219
412
966
115
165
965
54
368
124
890
752
479
513
483
717
55
568
577
122
344
347
15
730
827
374
856
160
927
324
49
43
817
423
87
716
560
579
691
323
37
590
663
955
62
494
512
415
386
314
945
703
501
714
37
271
234
687
474
45
710
216
582
181
75
892
561
287
151
931
533
885
544
675
780
339
701
269
105
389
858
331
740
255
175
757
376
348
978
31
606
92
937
971
207
135
936
656
179
713
690
292
433
346
953
289
945
875
101
706
15
821
624
165
685
188
378
521
188
172
426
149
887
834
909
978
885
416
885
599
312
595
245
444
246
597
324
364
804
794
36
578
284
889
763
716
137
653
717
406
596
646
110
505
778
108
725
517
869
402
894
754
862
80
516
245
752
670
381
425
692
947
874
466
263
612
499
929
622
392
693
630
339
398
245
282
979
303
321
179
92
328
682
470
424
557
534
999
445
252
361
785
135
443
681
435
727
598
37
306
834
331
25
693
260
98
414
744
426
431
970
845
784
441
10
53
270
532
762
12
287
866
266
291
601
695
533
949
620
168
576
928
276
903
532
518
658
459
142
739
241
833
872
757
704
635
420
747
26
131
905
805
521
596
335
436
476
325
418
432
457
540
731
939
523
951
807
285
324
362
395
957
728
918
698
637
591
966
528
884
906
789
275
140
354
553
902
82
392
54
106
192
683
481
873
545
212
506
680
53
892
278
138
606
263
998
731
951
616
344
113
928
549
280
144
714
779
898
28
812
934
39
896
761
684
459
281
183
892
445
550
398
528
838
449
781
67
779
571
75
851
927
200
142
432
154
42
20
841
518
718
417
262
276
534
75
31
713
564
936
953
339
86
414
521
273
842
492
343
693
725
226
123
410
144
530
145
180
972
920
343
885
931
245
394
63
705
760
40
342
756
820
867
487
384
63
308
274
665
621
710
190
591
503
125
135
906
757
99
275
142
78
664
224
336
969
952
576
668
891
416
306
644
151
992
644
553
968
669
880
58
369
325
951
843
682
852
439
366
447
773
610
477
987
858
330
909
756
980
812
580
363
435
332
218
185
595
643
737
140
854
137
836
534
603
87
502
649
547
784
706
62
391
961
222
668
352
382
942
704
181
482
74
39
343
239
555
718
770
126
111
292
45
443
405
849
192
680
242
237
482
950
253
452
786
296
554
904
765
829
544
572
547
846
399
857
80
853
340
287
609
486
321
26
730
768
811
324
910
681
847
421
82
970
666
620
10
579
874
530
325
884
296
491
616
644
27
338
824
183
718
664
612
970
743
502
752
686
169
434
482
33
43
614
960
138
962
290
168
281
260
203
505
571
618
631
730
514
925
250
64
941
540
224
427
822
249
418
137
676
357
926
119
291
533
208
627
934
380
422
248
611
591
539
865
674
649
335
318
322
930
778
734
962
79
16
633
321
430
997
562
439
746
374
700
379
285
188
284
812
54
81
106
309
251
96
67
223
832
795
619
567
848
722
972
530
943
223
106
464
704
410
927
15
790
814
173
660
841
599
678
431
411
492
153
216
863
991
620
433
546
743
602
51
398
654
660
259
452
902
944
560
845
465
513
161
892
358
678
63
786
498
403
880
835
581
157
318
759
707
275
769
773
223
495
593
559
65
106
898
956
119
712
153
286
144
397
397
918
529
341
400
877
580
235
866
474
692
711
482
549
408
777
226
393
878
869
192
752
780
250
117
92
69
357
555
189
739
464
680
894
203
290
219
626
524
761
392
864
766
805
635
420
486
716
192
12
459
673
97
229
735
962
515
869
309
701
967
330
251
261
242
719
450
409
757
527
545
793
40
463
206
489
363
353
702
115
549
305
165
680
508
116
292
772
638
687
38
951
545
703
886
440
11
376
561
767
563
121
930
303
405
107
788
729
472
284
114
95
215
374
147
788
764
545
202
382
140
808
270
383
729
874
173
782
991
507
804
186
173
758
476
181
172
795
237
989
998
491
536
967
711
478
45
563
882
458
356
587
38
961
737
875
161
646
667
404
473
315
574
169
139
792
396
509
726
935
322
75
489
609
996
719
119
10
332
526
178
493
203
569
766
421
267
507
554
279
400
124
788
252
679
244
352
292
193
71
517
424
404
975
954
456
457
546
643
602
519
435
370
746
715
36
909
306
856
222
281
177
202
55
716
394
44
339
903
525
893
750
63
715
753
279
611
968
650
200
755
637
752
806
560
561
687
197
623
137
58
841
259
775
710
48
402
640
841
577
609
176
851
865
367
403
556
77
719
538
504
407
690
193
832
156
137
843
254
382
254
48
395
86
239
262
160
700
999
10
186
217
690
889
868
23
429
236
496
950
641
918
833
220
103
349
965
661
743
587
914
949
604
678
757
412
462
777
763
746
525
569
357
252
639
422
326
743
285
98
776
999
720
824
684
480
109
224
270
845
181
567
687
332
180
273
957
899
211
711
961
983
255
919
402
802
252
21
776
56
300
978
988
264
386
854
220
912
112
983
274
70
546
236
637
353
74
409
738
251
834
781
432
594
106
271
300
833
143
226
77
746
740
734
990
406
592
269
893
701
148
47
472
694
387
198
90
219
357
550
754
557
75
534
287
223
361
552
345
818
661
64
195
24
109
505
758
741
840
245
429
564
53
199
666
950
195
710
812
976
557
742
310
811
702
76
838
429
62
682
208
488
32
49
190
168
298
792
733
31
928
822
828
69
87
47
468
715
775
605
236
441
448
733
108
266
350
81
70
488
592
38
11
117
908
648
550
687
24
864
704
918
160
770
91
838
881
566
74
862
32
630
597
62
829
692
173
932
894
754
904
895
20
845
314
328
394
687
632
80
897
610
825
435
340
644
643
139
512
682
297
349
886
194
107
456
381
575
135
820
437
111
613
416
836
173
116
536
377
238
511
427
250
134
694
933
963
283
508
197
545
852
845
67
600
279
86
54
206
625
441
537
622
810
328
419
125
238
705
590
708
741
531
132
909
951
114
737
544
245
427
359
973
514
515
809
199
95
682
820
95
271
576
676
557
405
245
362
570
570
29
265
914
567
312
673
423
16
70
455
323
938
654
24
909
53
210
44
837
475
139
615
268
825
885
392
955
858
767
863
439
678
515
253
455
629
139
570
898
318
811
293
561
23
753
853
578
493
595
275
568
914
518
769
105
638
627
155
555
869
580
839
143
439
701
480
69
426
187
448
620
98
256
92
184
724
615
891
792
583
481
357
694
640
415
818
615
220
939
250
559
40
808
934
36
293
583
83
949
395
44
633
478
740
186
755
449
65
537
521
494
514
762
940
452
133
347
680
806
583
412
282
586
793
650
366
462
310
361
355
223
951
269
509
377
239
628
363
166
244
966
405
181
258
747
536
429
528
154
376
488
716
199
762
695
899
694
253
466
991
124
516
427
70
190
662
730
508
76
552
54
34
260
258
419
917
95
820
184
594
127
767
593
558
839
70
80
375
617
582
949
907
160
468
534
533
447
401
249
718
321
316
388
830
97
275
603
57
84
652
995
346
978
712
189
411
924
296
956
853
169
301
732
585
186
236
190
845
361
185
660
708
219
643
547
789
308
661
242
224
45
702
162
666
247
752
605
206
562
754
240
700
302
592
375
123
738
258
158
43
297
447
836
688
471
470
610
625
55
950
378
219
473
335
947
196
940
960
129
234
352
97
426
305
495
649
696
279
710
317
757
529
373
930
204
670
749
357
665
249
373
517
114
595
707
23
679
161
446
552
245
516
349
415
970
187
93
903
427
518
375
733
278
47
575
682
177
206
478
719
770
137
83
500
481
12
155
535
279
722
253
506
847
717
381
505
764
773
84
78
342
885
340
110
202
872
842
773
401
56
168
132
264
302
955
414
151
481
135
276
832
688
78
101
560
380
269
766
655
27
647
678
888
722
879
589
506
714
601
932
118
22
688
145
407
363
255
938
447
592
703
517
55
256
807
719
939
827
425
628
617
817
880
141
138
166
695
186
951
449
986
582
454
794
166
387
120
936
872
796
832
356
326
842
621
207
475
488
766
176
909
473
197
44
276
936
192
284
383
708
723
942
996
329
617
577
245
560
410
251
133
121
127
56
918
759
952
907
464
167
720
447
768
358
793
762
161
149
109
933
735
459
659
770
56
11
202
324
925
442
68
489
573
576
627
273
554
534
53
414
983
177
323
508
900
664
557
896
824
755
24
681
630
876
843
841
60
429
253
628
241
507
11
112
122
708
26
21
862
802
307
528
746
873
20
790
765
708
552
955
808
842
389
625
948
282
789
656
777
404
272
290
513
80
844
837
912
13
423
456
777
156
620
780
905
889
963
595
557
50
254
598
26
856
518
556
822
15
589
505
952
141
265
48
505
21
818
371
824
133
760
221
84
339
824
188
557
984
483
322
596
263
30
573
173
177
176
85
56
49
160
708
698
23
567
677
258
494
113
632
859
882
919
10
102
14
306
955
498
85
872
76
828
577
401
926
912
380
119
199
356
445
745
951
730
11
626
557
299
791
282
932
835
605
394
990
993
597
740
732
273
771
676
991
671
346
415
700
193
920
129
112
254
617
357
443
44
322
165
999
624
129
56
787
923
809
321
60
599
207
586
602
543
253
36
117
324
626
141
209
46
452
845
372
29
620
563
88
409
818
334
159
297
865
646
944
743
824
150
348
88
731
16
680
626
392
362
107
411
557
846
801
403
710
478
705
991
17
85
364
357
206
166
264
859
832
508
547
188
712
265
266
920
647
125
357
832
811
136
897
513
48
346
67
519
547
216
367
725
250
329
597
193
112
401
129
786
163
114
499
577
790
351
518
570
433
409
746
201
548
725
275
783
518
293
875
50
545
408
608
53
614
492
884
827
868
180
761
650
439
207
100
727
707
411
576
160
911
862
131
550
30
572
435
926
132
404
173
530
203
310
504
290
849
906
725
981
696
801
195
299
621
424
200
855
46
845
504
811
969
863
408
804
474
537
605
20
130
845
702
112
299
515
312
293
502
228
594
25
704
974
121
67
84
326
884
126
726
316
451
631
494
351
409
282
493
216
930
273
856
599
165
866
100
596
227
168
741
655
836
806
247
922
756
770
986
221
966
320
891
619
944
997
140
469
813
134
410
253
456
320
872
762
598
509
748
442
434
24
48
374
43
251
296
718
491
212
862
606
970
435
871
797
241
655
14
105
318
502
995
245
609
194
657
475
100
619
71
852
154
723
461
282
287
461
87
389
515
314
176
233
640
333
56
346
606
398
613
438
287
276
661
299
699
310
155
612
825
367
426
630
63
459
210
630
290
839
89
186
385
346
813
443
776
116
344
480
886
39
791
61
687
413
741
125
916
161
577
352
493
176
639
442
401
423
925
183
228
196
607
117
189
486
253
519
36
23
639
938
278
60
756
43
249
510
351
738
81
359
727
801
509
12
254
494
579
13
470
624
90
420
220
488
541
221
671
419
834
706
631
206
486
321
827
564
892
175
685
194
798
818
765
615
843
547
698
22
35
523
628
574
694
114
44
380
349
549
999
856
275
454
825
744
504
901
130
344
366
503
191
679
628
963
338
502
806
941
522
38
639
259
562
12
914
984
764
612
906
340
409
833
964
536
157
361
814
305
87
39
956
913
128
293
24
659
22
161
914
794
810
121
610
332
893
234
830
252
171
303
988
240
222
430
830
414
650
629
122
505
994
218
732
920
815
954
392
551
107
601
246
102
532
561
217
756
50
678
74
790
875
507
47
17
314
302
667
28
12
261
248
124
464
142
789
748
546
195
887
642
921
535
798
257
690
321
603
881
819
530
406
318
787
448
250
445
447
631
925
386
288
642
847
716
990
708
731
849
637
868
156
956
190
26
423
274
183
501
348
19
919
696
495
791
251
522
40
624
314
804
40
916
145
370
722
586
774
232
338
953
417
960
651
597
670
479
636
578
457
219
62
571
751
570
349
419
334
420
770
587
168
952
651
364
753
872
697
736
98
637
418
115
178
999
478
634
346
776
370
341
968
794
102
526
940
151
117
351
85
746
560
26
470
425
644
239
384
295
484
72
670
807
562
450
206
170
341
185
371
451
303
493
129
400
659
677
142
302
687
260
394
88
889
773
210
80
274
382
256
802
937
994
979
44
952
685
898
431
634
946
970
53
53
487
861
759
149
405
202
80
736
766
782
447
636
233
423
228
629
736
598
729
987
606
97
209
910
951
566
667
504
230
743
523
16
848
994
807
488
320
181
652
747
626
316
219
936
744
389
130
879
770
625
144
576
740
141
780
428
99
721
290
884
554
675
821
562
568
416
491
838
943
306
502
802
696
298
437
128
48
349
733
569
91
465
844
699
71
735
92
379
187
166
966
348
299
922
580
691
738
152
912
109
703
312
816
634
747
224
716
714
833
905
257
795
35
34
479
948
268
834
603
653
564
466
494
49
322
359
89
471
481
939
460
636
424
757
126
667
359
225
694
606
796
537
945
466
653
899
267
454
732
295
643
377
283
43
859
405
937
967
582
541
859
491
252
383
882
169
485
954
465
818
332
918
949
272
438
463
869
986
712
499
230
177
39
469
324
158
531
307
271
236
477
684
43
275
589
721
574
684
913
380
387
364
832
983
255
675
311
227
306
599
222
512
260
783
414
202
356
858
576
140
973
225
850
206
847
304
870
412
671
552
741
30
548
575
252
169
668
35
117
966
758
203
393
425
500
248
601
271
560
31
883
443
448
567
472
711
398
263
882
431
893
718
767
111
308
421
903
23
206
644
74
235
467
791
906
809
214
830
52
187
784
115
741
36
258
884
931
516
844
327
219
202
749
833
598
205
133
546
231
159
708
188
246
964
780
941
400
296
724
508
719
453
973
50
610
874
471
929
780
829
138
888
732
640
962
103
120
682
452
587
608
418
534
464
399
214
217
537
586
565
347
513
322
375
705
936
700
558
461
745
131
129
16
271
833
526
235
756
381
499
574
738
95
646
168
210
609
936
50
877
108
205
217
703
377
717
124
628
773
948
935
658
278
998
56
489
237
653
618
626
818
913
125
333
715
301
899
784
893
269
441
133
471
867
824
779
668
947
175
994
11
532
128
58
870
999
897
402
305
599
335
675
356
634
180
783
562
459
399
664
864
18
453
254
504
797
97
329
292
501
69
950
671
920
762
436
359
495
248
910
210
60
391
889
614
389
944
866
228
294
796
990
256
772
719
252
964
642
582
453
486
825
715
372
316
579
444
951
807
631
911
930
39
708
582
375
291
608
413
461
851
409
755
242
991
832
790
673
979
330
440
191
331
575
522
484
93
209
395
489
153
43
790
284
786
935
61
72
245
420
62
755
851
654
31
915
126
890
342
467
462
649
600
802
561
688
795
239
353
761
390
197
473
781
641
55
491
644
493
784
326
732
806
553
734
817
265
981
315
638
866
175
885
897
349
461
339
890
659
239
948
746
174
413
183
687
813
496
691
637
591
261
609
62
394
31
702
909
676
318
405
512
315
390
205
950
898
360
353
303
846
274
125
507
934
757
17
701
310
428
773
280
591
519
276
706
155
349
631
154
185
748
125
893
646
591
115
729
961
955
343
396
19
718
798
319
497
416
504
745
16
729
609
598
768
125
404
343
299
885
988
768
715
765
233
943
71
35
608
638
650
505
520
238
748
669
320
516
266
317
849
388
671
219
152
848
529
96
459
157
27
40
686
861
957
118
948
829
843
882
648
527
170
590
237
961
653
937
471
991
102
257
991
637
19
40
582
862
965
919
646
274
74
394
705
416
505
856
765
511
623
154
652
469
503
178
774
957
115
162
819
918
666
48
890
532
277
62
996
936
679
560
759
514
823
96
290
256
796
604
666
314
509
817
726
647
988
424
756
571
906
857
824
160
337
757
895
178
746
869
241
576
328
240
472
921
322
324
670
271
515
114
562
482
848
547
301
629
282
995
409
171
857
417
208
556
177
976
319
284
344
406
101
604
179
949
507
201
269
789
263
853
229
722
24
675
18
57
730
903
567
530
543
999
118
362
805
28
383
732
501
589
447
147
168
234
196
637
40
278
859
930
499
811
524
347
74
488
375
747
335
187
336
484
530
297
430
31
511
773
990
746
44
878
732
925
948
458
762
935
115
101
808
657
353
47
156
436
142
259
223
824
334
552
173
703
218
462
132
65
414
226
682
102
186
450
264
407
621
703
871
725
806
824
472
98
902
604
928
726
363
262
167
419
529
294
47
897
177
490
939
443
268
872
808
467
986
779
893
621
202
918
687
185
464
655
451
119
283
475
123
223
744
757
398
591
523
261
744
948
200
748
797
756
733
301
688
468
178
606
630
697
67
713
396
316
390
887
108
485
722
672
730
878
864
706
711
140
195
636
835
129
986
684
281
607
554
330
936
981
789
288
783
170
922
827
305
379
668
574
752
173
534
20
993
926
542
359
354
519
607
179
821
982
418
735
562
473
775
88
340
511
429
370
165
316
274
898
311
490
141
838
906
622
441
627
160
228
61
698
903
957
48
978
367
14
331
174
932
386
894
105
647
897
347
187
185
362
209
547
667
730
320
719
167
354
700
304
20
887
713
921
706
26
382
827
600
929
915
342
491
734
603
731
779
59
966
657
969
357
484
542
343
932
428
433
275
478
268
953
479
107
605
838
461
261
474
255
858
148
697
807
858
316
563
460
820
837
93
784
417
133
400
357
633
989
851
776
550
418
81
311
988
860
94
745
27
623
880
938
620
470
704
690
196
848
840
589
338
209
982
192
331
754
957
702
971
837
931
856
719
501
853
501
364
359
77
60
16
416
654
921
973
819
398
139
493
804
732
301
858
59
324
433
208
416
384
962
661
288
997
873
93
616
204
553
453
603
470
706
755
548
585
796
849
819
945
832
536
440
546
717
393
584
580
40
362
187
691
670
627
163
16
245
823
515
501
454
888
566
688
718
523
624
942
543
744
467
408
739
898
914
734
693
284
679
703
100
823
342
147
872
676
752
422
88
942
663
29
815
626
902
636
61
918
398
824
741
281
736
381
70
566
424
213
328
221
294
516
671
381
851
33
512
123
506
730
654
942
402
404
508
395
146
692
995
672
459
156
45
839
16
954
202
46
279
63
305
240
607
844
262
384
497
923
741
118
665
832
394
51
215
714
846
944
202
243
617
435
437
228
543
292
836
482
803
214
375
773
698
395
456
612
611
737
697
514
508
993
766
73
810
233
951
715
57
611
768
998
907
405
46
451
585
887
104
364
809
671
913
538
188
650
174
420
380
347
674
168
55
108
547
94
207
138
726
754
687
643
927
580
526
538
24
254
961
769
53
157
282
879
287
854
763
974
468
175
909
938
385
729
718
879
435
801
941
650
834
766
597
494
877
171
709
160
427
204
733
789
346
512
280
35
408
672
852
929
231
742
986
152
612
311
581
982
985
676
65
290
372
720
639
443
864
67
676
923
107
408
490
817
261
355
528
76
237
667
150
712
835
525
351
550
964
230
670
358
831
392
958
710
858
646
379
716
542
77
10
651
728
441
866
756
862
801
950
493
266
192
897
127
647
917
372
221
857
210
572
559
799
387
835
673
734
742
821
76
432
10
956
354
484
299
154
831
971
603
620
181
90
489
108
500
839
201
620
295
627
932
145
246
811
214
318
624
436
247
236
529
842
110
702
396
184
627
138
718
47
538
403
968
60
983
381
705
426
41
408
648
430
907
76
277
490
587
334
976
808
388
472
860
596
495
90
928
301
735
743
461
332
948
406
429
820
195
61
567
11
90
179
827
996
902
363
362
55
429
852
348
699
935
632
76
876
769
384
247
348
397
729
932
342
350
643
137
369
917
422
467
523
41
878
111
295
95
12
431
208
322
663
287
162
111
461
95
931
40
471
833
682
721
276
798
674
546
145
139
908
888
534
141
696
635
367
217
359
416
750
257
702
151
379
289
597
35
705
839
527
360
428
359
808
452
742
767
262
320
47
181
808
243
717
566
274
559
132
840
536
981
643
96
918
139
848
553
158
21
820
892
121
384
67
236
181
75
357
815
987
466
938
253
428
458
200
373
559
79
958
957
654
272
969
498
392
962
920
174
559
318
353
343
15
705
982
412
352
512
144
523
696
900
603
481
877
275
253
699
437
200
958
189
732
703
134
479
588
830
154
219
241
574
111
703
241
563
499
113
704
887
993
620
612
190
297
573
893
582
732
15
206
548
962
899
103
700
195
932
222
599
311
898
997
653
526
730
587
935
177
469
394
689
360
392
777
579
210
737
704
765
547
956
789
45
277
538
583
181
38
761
938
252
965
921
254
726
908
560
242
970
622
118
636
366
712
968
902
571
67
21
632
208
450
506
685
38
20
779
755
403
223
771
411
325
343
708
375
806
307
634
928
691
182
126
865
986
675
439
375
641
698
415
614
499
727
896
132
672
110
92
296
581
203
371
498
124
951
806
197
974
168
40
993
710
963
120
988
193
329
66
595
95
279
231
487
339
721
318
406
172
977
215
376
129
701
45
505
196
579
738
986
40
64
380
981
112
808
394
704
195
898
134
786
786
721
77
862
799
258
316
999
114
438
568
928
537
157
13
596
279
483
847
271
954
462
864
728
120
361
682
176
328
773
608
824
141
368
417
848
319
796
103
589
840
14
540
11
129
155
180
334
822
972
527
479
379
941
838
706
384
428
690
801
721
951
621
367
935
536
753
353
516
575
163
730
761
34
57
991
222
626
429
963
559
156
808
805
433
765
174
195
309
41
742
453
311
168
211
700
834
902
126
112
927
18
495
332
616
622
793
549
210
571
570
226
904
310
974
744
191
528
837
222
94
418
250
535
623
666
502
839
719
532
349
421
988
649
389
136
651
628
728
339
65
267
53
735
495
87
980
950
784
376
437
102
167
263
849
273
222
864
827
813
656
856
56
299
125
469
832
308
952
407
287
762
964
959
98
738
593
969
671
812
429
36
232
845
300
142
660
820
315
220
55
262
554
101
904
535
353
181
677
201
784
803
534
420
384
626
404
392
454
883
743
59
927
180
701
336
386
406
64
471
371
278
296
89
981
134
571
664
730
83
899
64
692
604
642
646
595
498
194
219
169
129
252
645
801
126
502
954
245
86
603
497
353
87
396
725
307
181
382
688
984
113
612
372
387
403
776
624
803
271
586
59
646
438
542
540
789
432
803
938
480
775
246
413
529
395
115
889
380
749
752
475
152
452
107
745
16
120
511
416
440
429
99
319
507
817
758
985
896
193
851
899
832
291
67
313
273
220
627
966
903
524
642
296
792
17
243
256
557
846
645
703
208
292
986
960
946
106
998
776
868
72
902
982
831
465
10
733
738
978
495
381
432
509
51
575
15
654
892
780
780
273
47
827
438
180
274
854
250
115
282
987
564
690
423
258
94
416
857
110
25
706
608
403
956
107
635
597
573
859
38
346
180
827
409
264
137
944
621
149
643
192
358
345
667
515
992
354
641
898
668
494
330
293
51
594
93
588
828
76
119
587
516
742
538
480
413
21
466
192
519
701
160
347
269
504
562
533
276
269
326
831
682
273
677
324
161
491
999
588
986
861
574
689
162
677
247
392
851
174
760
471
456
457
319
388
137
480
197
434
858
21
232
407
298
960
439
621
920
16
622
954
865
404
52
690
95
458
970
250
117
320
250
342
319
301
818
512
816
408
139
383
347
131
285
305
23
322
558
619
183
260
958
102
319
437
823
12
717
680
477
809
365
753
919
340
323
783
92
364
320
58
126
295
988
200
955
601
826
25
218
951
328
430
747
98
293
652
953
567
683
651
67
40
906
597
600
352
193
921
648
801
567
987
222
810
633
805
963
497
552
562
672
145
752
205
305
840
321
922
825
577
73
963
709
722
452
962
408
244
746
641
835
246
677
596
135
447
626
409
42
779
870
651
335
208
451
494
358
732
44
147
541
401
222
700
782
887
623
369
838
456
733
494
673
852
953
156
231
439
733
584
862
103
783
913
803
227
266
858
311
149
543
772
591
897
846
232
988
400
657
706
209
38
792
154
769
208
763
908
285
917
554
203
333
963
271
479
694
698
972
435
952
373
940
51
933
260
468
218
338
991
755
432
416
31
420
118
802
150
399
631
383
298
703
705
811
89
310
624
89
260
739
462
504
278
944
46
312
196
915
820
393
795
85
918
74
638
648
902
50
639
468
244
58
454
386
638
464
486
973
670
620
789
495
208
639
943
859
943
961
756
212
182
520
356
126
714
792
228
152
258
572
91
927
643
386
779
785
624
89
454
944
826
543
179
680
52
423
453
569
591
40
949
490
566
770
900
960
134
684
304
655
338
143
468
837
692
611
58
763
762
798
463
149
248
251
704
361
275
102
935
54
719
700
873
393
221
18
17
185
585
633
625
344
747
809
962
194
90
417
604
265
658
591
636
645
747
655
417
11
633
644
488
821
795
613
163
187
963
818
880
485
548
426
14
417
404
130
974
832
910
598
299
512
638
566
457
76
231
380
121
233
123
409
46
826
572
588
104
540
329
631
601
246
874
895
132
13
248
677
433
379
845
936
572
93
828
259
978
720
996
590
573
901
342
356
15
948
954
704
912
634
210
813
528
82
380
54
523
367
466
181
192
44
875
870
53
883
258
126
254
306
171
747
807
109
405
229
539
129
197
504
460
473
167
718
524
814
114
13
800
428
529
910
128
931
146
258
834
484
111
976
79
657
469
288
632
47
325
555
656
987
301
477
476
11
599
724
36
862
769
976
724
51
586
392
214
659
89
284
500
377
87
20
445
911
723
395
365
659
782
24
212
316
865
902
26
741
49
411
509
851
258
886
339
851
350
145
11
990
361
192
477
763
22
643
349
907
425
18
192
160
801
70
931
896
757
903
31
276
379
260
520
110
403
596
306
250
705
954
581
823
133
963
338
66
540
457
465
211
597
510
943
694
99
54
789
10
414
937
74
648
390
988
987
271
564
568
813
773
635
941
579
539
315
165
83
612
209
425
866
798
439
780
581
832
467
930
271
808
382
407
186
697
485
626
436
431
852
840
204
158
128
907
365
28
67
794
193
358
590
819
430
19
83
983
814
534
505
920
763
940
516
198
244
799
594
612
671
752
465
25
496
748
976
173
25
205
562
941
460
186
962
841
256
837
829
16
188
670
446
73
593
362
994
480
390
445
774
122
768
238
791
459
811
260
271
63
130
973
581
54
762
877
304
492
994
132
954
620
391
295
818
85
764
629
149
460
299
894
308
119
993
138
410
59
307
460
621
777
290
760
611
491
946
827
286
746
347
711
94
596
166
882
197
927
548
965
121
415
737
301
829
665
410
830
765
781
179
413
788
886
40
921
789
363
418
276
161
750
30
102
366
481
973
997
842
724
170
321
341
348
69
114
377
28
574
330
862
480
990
708
185
287
71
645
463
557
881
792
18
394
897
618
150
127
573
93
184
67
568
12
925
54
278
195
370
590
848
606
215
793
620
225
208
144
913
496
625
580
818
752
558
859
848
528
193
464
825
161
236
816
640
371
443
742
711
901
787
404
249
210
144
189
868
576
536
11
400
917
214
107
280
86
416
580
150
907
357
84
426
289
298
484
909
31
687
433
353
440
918
490
279
223
636
574
802
586
442
971
430
296
876
735
787
155
220
994
561
152
113
120
63
246
238
218
461
157
984
895
72
739
137
75
624
894
753
620
539
630
420
127
964
59
854
913
565
817
558
944
608
289
946
125
192
517
133
759
983
672
781
226
637
834
76
849
160
62
859
307
693
119
25
245
563
610
374
217
727
815
690
427
239
503
540
375
197
332
580
415
652
476
140
49
565
437
890
345
676
314
705
351
126
759
875
444
759
851
446
501
971
553
152
568
883
50
267
521
906
605
838
918
723
756
787
44
103
774
165
222
400
824
991
625
662
55
178
219
713
373
822
927
134
487
657
680
842
908
708
311
607
532
259
790
944
990
478
557
717
644
122
33
857
176
589
961
82
996
40
880
277
655
972
943
299
757
164
45
361
911
831
982
627
163
891
741
686
45
234
225
519
291
522
39
299
711
978
21
358
212
417
829
523
361
345
182
121
707
191
428
104
884
162
658
721
844
441
611
353
246
474
536
20
141
468
976
988
233
617
153
139
218
38
947
162
531
540
704
96
322
914
537
590
315
978
207
935
257
396
555
235
314
959
108
77
400
501
492
350
133
717
862
271
210
359
126
227
436
638
48
688
261
41
677
403
756
843
958
708
842
655
127
409
150
19
383
913
754
378
569
223
549
617
40
665
562
996
59
499
410
239
240
927
996
162
827
150
986
126
646
122
598
445
10
817
771
917
469
103
932
393
605
221
314
590
809
160
750
244
322
651
922
392
795
453
325
169
596
756
941
828
36
631
794
719
626
942
20
512
447
770
80
87
161
406
283
737
584
314
132
636
940
517
866
145
397
460
773
218
650
667
533
293
372
799
43
296
517
814
123
199
375
545
298
278
519
274
463
661
838
464
682
730
231
963
322
719
927
579
708
321
609
637
995
564
326
291
933
205
322
979
378
383
364
112
22
931
927
521
103
298
255
577
188
283
536
103
797
671
380
179
103
845
953
709
570
207
674
850
330
355
996
675
390
126
60
314
414
11
175
475
174
216
83
333
250
633
145
570
970
525
655
198
493
69
791
956
316
120
250
952
559
78
827
538
509
872
848
795
389
388
484
386
287
243
721
559
887
870
688
961
216
976
97
540
477
934
120
905
622
88
171
568
576
140
660
846
462
615
290
648
681
760
486
313
167
800
124
899
100
952
113
864
185
437
658
55
363
619
843
47
428
408
241
84
193
88
594
865
658
390
467
121
948
736
454
579
53
880
57
389
138
518
801
163
881
751
349
609
703
240
526
332
863
490
992
544
19
694
724
157
222
558
690
46
236
364
934
705
817
87
404
780
130
44
214
19
449
175
689
493
860
385
633
173
387
280
774
241
377
20
511
607
361
143
309
343
810
228
683
344
585
168
935
220
733
99
604
925
983
922
154
475
858
57
609
369
968
278
707
323
735
858
125
138
400
773
894
891
716
887
775
284
222
24
310
919
483
263
654
162
572
932
290
112
66
952
915
98
534
402
401
84
16
861
338
935
135
48
254
426
629
84
754
111
174
336
830
714
501
706
317
190
661
420
882
282
904
959
726
526
193
666
345
640
336
341
944
986
175
177
27
266
92
479
553
232
418
873
967
759
368
994
586
16
659
375
211
958
885
739
218
617
351
693
355
971
245
853
994
855
867
921
894
957
41
973
176
188
671
704
665
583
106
398
867
87
955
953
877
91
81
233
149
43
253
560
465
574
986
395
157
401
323
438
519
589
965
539
121
36
819
163
148
979
149
673
507
222
147
145
138
104
457
194
107
121
961
140
20
67
164
557
134
818
89
976
911
549
301
383
913
766
426
915
49
174
772
385
415
672
119
749
351
29
348
128
319
96
479
178
784
818
926
653
95
404
383
554
225
879
153
808
189
410
487
763
473
660
890
919
80
980
226
40
230
252
948
366
235
183
206
536
93
258
212
34
663
957
597
686
129
209
476
295
499
957
716
712
469
107
413
98
68
992
893
766
822
80
861
818
152
147
993
57
530
803
229
706
23
38
219
287
983
159
720
876
600
597
574
310
585
112
732
281
916
799
860
829
919
427
111
792
976
415
537
862
32
923
178
848
26
33
791
221
355
843
268
723
272
912
696
100
463
363
220
954
300
509
267
824
884
194
161
983
864
573
616
353
713
906
350
809
99
292
848
933
737
857
227
497
354
12
789
679
261
696
495
742
824
133
138
696
133
765
253
403
943
751
720
55
242
166
791
201
494
125
340
355
619
970
203
634
594
791
632
975
642
26
597
955
238
710
689
647
754
617
551
919
187
244
171
179
351
755
321
569
969
705
731
500
165
802
558
478
767
522
801
157
829
47
214
102
54
54
175
273
579
778
26
139
741
299
88
391
987
765
603
546
33
810
230
70
443
642
681
717
972
79
948
697
896
760
205
537
236
576
667
960
390
606
732
245
134
28
892
734
117
88
174
892
15
600
209
187
271
496
863
826
699
435
366
710
398
435
533
962
103
521
877
910
524
875
796
61
317
315
105
557
941
947
869
990
23
347
957
461
80
431
779
235
33
858
933
692
938
531
406
158
572
208
677
761
722
384
587
606
86
574
430
670
462
592
45
301
985
635
27
565
674
889
500
926
135
697
362
746
295
562
54
399
613
12
335
591
469
587
28
129
84
271
70
756
989
398
369
57
598
815
398
134
520
102
998
505
909
813
235
990
299
74
357
323
639
236
904
466
369
202
28
946
926
637
799
824
793
619
450
171
88
244
123
99
498
121
568
522
998
913
138
958
994
956
334
638
317
735
303
730
146
330
409
878
633
292
649
431
784
756
61
837
554
301
611
90
544
899
743
889
348
785
932
584
256
828
387
450
962
429
457
952
658
728
657
627
897
809
263
51
783
242
103
318
557
903
885
548
865
732
599
988
728
759
246
875
225
608
33
672
831
428
610
766
959
154
726
415
467
524
445
267
50
428
686
135
239
793
300
430
784
931
288
596
298
114
71
319
521
87
512
704
802
515
241
770
398
992
205
808
515
65
347
834
55
868
494
962
234
796
354
446
523
78
879
580
799
380
336
105
933
894
21
989
499
33
967
188
884
87
652
239
640
544
214
57
782
42
260
601
805
959
401
952
270
387
627
144
71
175
527
199
256
471
91
180
70
223
170
726
729
279
425
709
377
286
448
548
855
754
289
267
253
559
683
997
821
923
510
500
198
770
349
676
321
871
669
301
425
221
527
112
706
826
211
986
853
691
676
616
813
19
396
448
896
432
20
883
103
722
540
776
926
441
210
25
354
894
672
409
451
244
639
810
257
12
832
273
835
59
898
68
928
646
887
963
693
97
299
654
852
736
123
964
323
861
369
712
260
895
32
944
51
146
140
399
149
827
321
460
970
939
682
361
928
216
25
33
857
742
108
893
136
657
955
847
854
764
591
869
73
667
603
262
684
926
362
511
763
869
985
190
414
222
382
562
918
20
205
807
12
109
107
190
100
995
30
561
417
559
291
377
500
482
548
81
17
692
238
186
558
132
965
148
456
926
188
799
343
61
54
368
635
959
411
627
535
94
830
520
112
276
971
221
605
934
312
148
518
298
177
949
518
715
464
17
482
632
682
571
262
489
275
728
345
629
942
305
803
769
839
178
509
484
511
949
137
158
291
907
352
685
10
595
401
158
158
966
807
11
551
506
497
360
771
289
457
736
468
979
756
812
584
962
565
803
191
527
77
625
429
80
531
468
119
659
542
333
962
299
59
52
33
975
515
777
687
921
623
209
808
441
329
464
519
239
441
714
878
898
373
925
534
959
503
700
399
93
538
425
144
644
665
975
352
702
681
455
649
923
698
544
18
827
193
855
568
635
842
59
161
876
907
203
594
54
144
301
299
874
804
409
946
746
301
584
73
730
618
131
784
613
782
396
231
759
665
527
808
425
690
88
935
206
330
472
77
121
100
218
577
248
751
256
965
440
60
571
965
333
839
272
669
31
882
977
174
675
254
846
694
944
566
325
683
699
576
653
290
358
954
52
210
83
231
549
465
331
155
99
705
35
570
378
610
843
647
80
616
829
911
433
358
688
470
996
437
753
280
297
508
915
305
345
436
673
965
635
387
52
737
346
640
821
564
317
210
925
586
320
928
71
358
679
101
366
140
399
466
771
275
269
294
506
792
366
389
512
339
517
904
189
786
277
52
241
174
184
446
913
62
141
249
729
869
868
967
101
177
592
418
626
64
495
537
456
640
937
199
591
111
806
240
383
744
204
285
922
56
584
953
215
839
450
987
883
258
129
322
325
987
642
880
675
513
716
454
123
839
189
475
626
249
315
758
237
722
89
227
490
297
79
403
928
864
537
801
826
929
132
841
80
260
997
31
295
534
866
196
850
730
586
835
368
76
972
463
192
851
777
993
353
594
763
25
475
780
57
950
625
261
480
185
796
235
134
648
988
754
517
27
533
763
199
488
61
446
102
525
245
285
311
644
513
690
818
11
646
472
902
823
818
636
618
65
268
398
867
826
561
595
291
955
923
275
938
32
653
13
560
425
28
566
473
192
230
244
27
229
914
15
627
992
393
478
524
386
260
561
709
172
723
439
413
362
796
619
958
687
948
327
402
717
255
789
564
855
174
323
178
102
541
637
130
869
562
858
532
354
412
181
871
469
383
724
465
846
525
613
589
471
403
787
831
759
43
467
460
212
510
171
763
637
354
246
289
268
921
400
764
280
747
25
866
682
271
985
529
983
379
525
785
892
912
602
276
239
937
217
870
502
304
584
65
735
218
793
743
690
596
829
688
196
773
779
670
120
262
847
769
742
635
151
279
841
590
374
551
754
174
595
397
372
356
126
345
392
13
796
850
209
215
234
703
137
339
606
448
252
939
941
439
306
29
508
53
659
863
98
706
485
201
483
481
280
968
762
845
42
656
462
447
307
936
511
297
821
970
814
966
630
251
207
425
264
989
290
824
71
70
145
913
549
662
525
647
626
51
219
107
383
216
16
902
326
890
955
448
821
407
670
927
755
597
941
599
118
252
572
915
63
418
364
496
298
593
152
589
511
315
558
14
218
30
406
73
321
888
594
458
70
470
345
618
844
582
976
239
764
473
442
888
11
128
132
449
60
838
252
972
246
584
72
549
99
247
897
53
158
790
728
514
887
670
567
680
120
995
465
823
633
839
805
709
967
688
375
586
84
471
404
852
443
422
156
986
13
332
621
202
700
289
155
581
771
531
187
449
835
27
217
235
593
542
390
829
363
526
145
444
598
97
863
396
858
965
899
118
988
57
892
352
771
290
190
775
816
431
689
719
459
89
526
719
884
792
755
265
421
982
569
350
581
499
58
879
545
381
121
569
54
851
536
138
467
985
830
161
960
529
352
69
185
830
541
191
957
980
169
680
61
466
295
309
116
279
136
217
692
649
146
989
401
614
526
392
874
344
810
935
223
374
730
225
328
544
801
320
22
447
90
116
165
981
741
966
429
717
217
818
523
229
630
261
810
347
431
498
972
616
18
912
941
197
841
465
722
587
167
791
349
436
189
489
323
382
254
643
217
910
653
270
994
398
526
801
790
659
206
779
890
376
32
112
116
147
723
507
424
307
573
587
40
972
188
374
485
501
462
800
463
73
264
208
651
347
105
686
397
850
759
18
164
852
778
995
833
195
121
520
454
31
932
869
497
570
644
883
184
688
482
423
206
475
126
366
355
178
301
501
79
425
276
81
578
363
700
60
677
937
529
560
790
176
260
509
420
539
527
383
495
329
87
495
896
562
701
507
124
889
726
555
272
989
647
379
328
154
682
429
104
916
641
64
704
743
875
670
386
615
221
579
674
193
984
673
422
966
602
480
714
637
719
791
465
356
859
169
151
973
514
956
470
487
572
647
590
557
111
811
314
436
628
500
918
303
67
709
723
801
273
267
469
153
361
592
827
440
714
649
787
626
149
178
130
138
872
874
742
331
421
421
449
971
221
238
696
59
789
11
391
536
10
922
477
646
73
849
439
409
985
525
415
150
545
139
390
452
50
327
478
321
749
532
659
776
793
741
762
159
394
504
765
285
56
252
98
842
823
417
195
999
720
983
129
347
877
327
276
774
208
873
955
77
661
826
257
228
574
187
769
249
597
181
952
55
851
777
423
878
386
81
591
670
953
700
579
975
482
528
966
976
873
606
219
131
792
426
646
538
342
332
87
596
44
844
189
238
764
543
868
252
273
666
881
589
268
344
447
781
574
563
298
904
718
175
71
199
945
428
534
21
604
311
615
735
463
72
362
648
737
773
377
625
39
495
335
97
300
784
679
461
846
639
236
971
915
262
873
665
693
590
950
629
493
276
816
701
830
592
562
796
297
202
411
881
55
370
134
832
542
748
246
323
288
557
743
83
785
949
342
960
291
813
192
333
492
833
420
358
503
268
488
233
522
353
706
732
481
275
550
254
951
496
738
735
13
482
907
753
135
908
586
635
332
166
603
72
128
439
406
91
624
262
773
747
851
827
741
898
113
567
278
990
211
528
646
431
475
65
629
728
444
251
853
178
199
964
18
776
368
886
385
405
929
410
801
990
503
920
876
110
366
854
956
172
544
856
251
251
647
337
302
685
18
913
488
159
77
273
795
939
719
667
81
420
894
866
75
99
669
381
679
877
649
592
92
480
645
128
661
726
403
192
410
999
278
565
102
268
600
449
611
376
570
517
421
868
331
703
978
931
98
305
431
18
665
805
134
197
225
890
242
679
319
416
644
82
181
601
633
762
898
140
123
796
307
837
478
794
49
893
750
122
750
736
394
927
518
781
816
40
801
531
814
519
422
89
265
750
471
803
935
581
478
468
952
276
139
333
77
462
329
518
408
271
192
711
451
151
444
862
181
829
14
272
289
551
468
266
490
269
652
521
24
544
617
429
287
733
408
112
289
334
414
192
62
472
553
211
74
113
606
852
75
891
112
494
904
229
410
266
234
181
430
823
40
364
882
63
630
700
203
514
28
391
97
929
244
420
38
820
321
798
951
86
486
879
701
436
642
16
469
655
443
959
94
114
793
525
306
449
211
477
665
145
777
133
169
919
322
871
766
802
625
915
90
28
119
447
103
121
828
793
81
594
828
746
668
274
289
549
228
179
104
314
586
63
450
19
709
622
276
537
837
198
522
211
510
572
120
354
940
754
76
774
219
315
760
46
888
712
627
116
589
328
948
266
909
480
615
527
911
624
651
819
305
877
182
37
90
48
472
482
713
786
509
119
366
159
715
861
858
524
620
830
206
722
79
452
131
977
777
266
124
796
729
674
664
195
802
869
266
459
164
836
294
501
70
113
544
813
988
763
201
563
402
608
964
666
898
103
503
568
249
575
964
566
990
625
277
136
630
929
632
638
89
892
507
594
640
805
729
630
505
284
217
306
162
137
543
693
641
565
63
572
599
61
657
674
255
699
848
583
120
708
444
197
765
832
434
949
93
114
216
501
791
977
283
754
509
203
572
822
336
462
68
670
341
296
203
995
37
407
641
516
459
779
727
926
356
200
651
998
207
924
764
66
589
29
25
90
946
321
641
41
408
775
864
364
201
22
751
482
418
440
887
245
685
528
441
943
271
901
337
549
538
491
58
224
746
549
239
706
377
836
538
879
925
619
550
288
716
239
462
761
522
26
658
273
977
575
728
504
85
896
679
744
763
624
938
996
760
556
250
943
580
272
195
111
598
788
192
671
765
218
852
277
589
934
627
495
318
125
615
558
668
217
889
375
937
813
514
89
476
301
933
230
960
193
872
360
652
549
386
535
262
556
363
919
378
742
260
60
574
556
670
548
358
234
245
155
738
28
293
375
148
852
571
735
482
176
167
310
383
525
507
946
55
472
459
449
146
728
563
462
742
687
569
685
274
696
935
465
407
529
423
754
27
842
870
387
392
962
891
729
580
44
89
897
508
46
398
266
639
929
704
332
278
515
302
835
554
284
704
869
590
127
108
489
991
62
833
628
639
924
819
171
918
633
301
600
244
504
670
432
876
704
269
795
866
958
553
149
420
758
596
198
541
869
733
139
776
278
435
374
833
636
46
731
724
167
448
955
829
793
81
947
76
381
611
324
123
474
346
882
597
488
718
824
651
119
289
582
910
362
198
159
864
466
620
702
448
981
192
166
758
313
610
55
941
500
852
906
714
196
113
512
186
409
780
391
301
464
710
642
235
678
247
737
328
438
277
182
835
316
561
745
318
856
344
233
58
679
78
368
719
208
789
720
54
644
661
790
439
523
824
849
165
521
704
387
825
74
656
900
182
289
328
239
906
951
163
103
410
96
122
940
294
134
891
64
859
284
517
246
792
369
257
410
18
338
474
610
43
603
866
958
165
133
229
611
580
802
72
274
725
817
737
705
657
13
102
828
645
572
774
135
385
602
849
611
209
261
851
200
718
210
549
985
940
847
369
62
903
322
582
382
672
631
23
890
124
387
616
931
268
812
105
247
528
136
665
343
805
463
725
190
333
964
452
702
369
336
141
812
800
559
447
856
921
67
964
13
702
628
688
748
835
898
83
269
675
943
113
138
447
467
931
312
363
776
859
388
572
808
526
840
291
352
766
967
979
387
758
289
706
743
138
866
446
991
994
911
645
548
536
780
11
722
142
933
933
378
895
161
934
998
682
302
658
981
790
768
296
819
597
786
998
681
453
885
822
226
172
535
404
690
458
530
18
61
140
931
947
670
160
617
771
279
700
663
909
398
813
62
26
835
480
356
198
778
585
948
153
819
460
256
504
707
911
108
742
760
835
814
482
470
12
99
737
561
942
633
607
645
203
289
276
829
419
604
252
97
431
663
72
25
755
184
437
585
74
749
420
92
98
55
447
555
820
757
124
329
482
268
671
741
465
50
697
712
891
547
733
760
686
502
955
889
919
192
206
751
923
882
951
88
38
86
993
349
727
998
383
253
412
246
844
119
411
164
238
678
875
736
233
44
450
820
333
290
601
828
455
280
652
608
719
599
828
716
167
412
976
473
650
801
652
451
209
590
715
630
934
49
914
787
729
64
740
767
290
575
160
331
534
685
376
715
879
600
737
706
853
734
855
405
222
861
750
70
701
606
43
444
913
399
660
292
414
863
442
344
158
423
312
909
220
434
690
207
930
371
608
744
326
296
489
668
646
922
871
971
652
745
280
434
580
960
358
594
999
85
188
102
208
924
748
59
704
86
30
967
770
231
840
828
53
724
34
893
267
212
536
638
527
100
352
697
729
518
893
609
521
78
570
527
392
459
659
765
672
247
515
90
56
789
98
872
723
82
415
320
30
832
819
414
274
997
351
188
701
622
658
354
408
612
14
96
565
219
678
519
296
507
114
514
180
394
599
223
395
51
138
557
184
573
762
600
922
35
292
268
342
482
291
214
334
201
896
477
124
403
577
349
914
834
857
842
52
640
399
283
62
864
756
21
833
783
284
978
695
810
117
433
445
695
504
189
928
827
432
378
136
979
347
350
983
460
913
83
873
855
942
458
968
949
797
11
368
841
511
540
198
495
58
363
578
558
642
543
211
815
630
761
165
629
858
693
829
149
276
961
834
922
971
897
527
126
844
207
510
895
82
855
51
848
648
893
75
237
148
578
997
675
797
328
170
608
807
212
159
694
110
970
513
575
580
226
308
923
106
328
216
546
182
777
221
918
883
894
527
910
101
247
227
978
340
451
241
847
724
702
601
318
783
296
499
614
136
160
774
541
885
562
972
835
678
22
715
731
356
423
224
612
856
869
591
526
625
425
354
873
148
746
143
597
612
878
923
713
598
512
449
964
664
264
267
638
878
260
470
876
573
739
309
145
804
970
877
813
564
790
680
84
157
971
212
935
551
820
509
207
56
100
542
323
147
735
265
952
417
174
121
119
895
482
553
278
878
190
861
553
564
537
19
70
635
520
72
963
767
988
129
545
944
317
724
154
721
404
773
438
111
122
295
260
900
883
936
957
200
662
21
265
45
945
516
142
113
535
277
820
953
974
75
747
961
713
200
801
193
98
595
304
572
239
144
572
137
653
285
478
760
686
473
880
244
776
583
942
330
33
608
755
776
226
787
862
949
358
339
835
496
536
950
775
294
119
516
684
403
985
745
133
945
655
99
908
250
859
708
766
555
502
426
462
618
79
344
904
738
20
475
806
607
954
430
205
840
966
53
536
353
558
204
267
392
185
65
344
937
988
502
990
602
940
423
741
332
961
945
182
561
343
984
394
529
179
284
976
546
970
644
715
909
158
293
517
717
754
106
747
847
696
558
704
579
532
185
296
730
85
648
743
588
419
426
420
410
358
399
660
906
972
882
527
471
649
153
792
731
434
523
650
748
167
246
208
755
587
735
678
206
647
846
774
411
495
197
614
302
160
194
566
445
371
351
51
621
263
525
246
30
946
157
694
302
405
958
296
76
47
818
495
488
370
180
83
659
409
422
586
189
433
324
619
845
608
65
314
418
64
812
514
346
609
920
175
391
721
581
413
504
354
350
648
142
761
313
289
555
188
235
772
415
243
406
800
871
272
361
298
714
467
69
966
279
29
355
308
44
820
73
746
696
302
124
344
360
121
524
84
77
982
121
226
375
471
793
912
420
263
530
909
647
692
814
51
732
426
221
886
641
738
808
790
508
972
463
222
674
615
873
643
402
314
625
772
800
191
472
656
597
103
311
885
335
920
700
955
716
727
705
543
225
215
673
181
21
991
714
384
70
889
135
240
155
469
332
401
861
721
580
274
533
867
266
786
300
345
259
687
199
305
282
91
817
301
757
120
589
626
122
280
994
504
462
469
345
345
911
967
194
763
503
571
342
228
873
654
296
874
854
78
47
511
603
450
540
834
426
856
592
923
606
199
163
945
984
612
483
251
235
570
34
727
831
99
911
944
476
391
108
340
391
422
312
172
77
771
327
880
729
862
958
273
226
443
171
607
875
352
184
214
576
594
493
853
242
898
234
272
670
984
304
81
629
637
957
619
621
504
583
880
33
24
516
536
840
510
715
329
563
831
980
337
152
68
67
343
745
750
362
961
687
565
913
859
191
806
410
753
582
396
523
706
187
111
667
290
537
113
949
821
54
961
796
231
540
97
170
480
799
104
321
272
978
995
847
824
122
200
837
705
869
340
956
51
253
280
910
732
352
463
387
420
294
384
505
90
790
288
633
790
600
892
619
138
208
307
729
928
712
697
689
182
906
858
447
386
106
66
621
146
232
172
429
296
623
889
962
759
638
228
35
749
714
147
315
742
951
858
827
968
818
532
569
160
223
705
528
140
147
705
891
72
586
802
578
816
282
519
321
958
158
382
228
601
957
134
994
926
97
348
411
109
301
766
251
26
957
20
588
460
185
212
251
761
847
133
132
531
728
548
999
381
59
120
293
758
994
856
755
478
413
720
682
34
371
137
172
636
663
21
142
968
820
152
583
357
946
522
499
167
437
717
927
181
506
81
742
915
805
232
995
763
980
87
800
522
76
738
383
751
961
288
339
972
384
798
421
148
968
933
757
502
504
135
299
774
98
807
685
895
484
321
769
788
819
96
899
362
696
879
697
587
555
317
376
725
600
965
654
563
433
212
211
18
277
542
302
915
859
245
938
171
440
55
99
897
722
830
719
543
397
232
67
743
846
123
587
41
370
926
520
34
794
847
734
28
795
100
58
945
327
484
852
286
674
253
174
501
437
866
672
56
463
514
348
308
667
691
546
912
246
375
161
229
474
694
950
334
983
383
850
576
380
311
28
843
910
898
172
360
846
273
523
828
755
837
927
243
291
324
190
535
456
36
351
440
528
535
875
26
624
618
537
141
403
281
79
822
630
967
554
896
480
752
592
327
997
178
455
534
513
315
814
770
449
878
98
445
391
504
325
312
988
62
257
52
755
518
862
311
568
509
225
180
446
735
51
380
898
469
816
361
220
215
519
649
181
118
16
19
441
695
776
59
11
369
594
868
401
240
310
279
637
32
825
851
864
753
239
11
816
517
567
602
663
286
33
92
943
272
614
271
850
140
836
770
165
834
826
517
87
160
321
758
722
384
822
412
446
51
948
761
674
77
255
960
944
76
110
200
557
401
647
437
961
427
100
556
765
408
827
419
23
837
154
42
82
18
41
682
57
604
526
790
703
512
201
375
913
730
748
834
518
947
205
561
789
42
343
616
908
781
807
905
425
482
353
655
928
101
628
895
956
145
470
709
412
20
768
258
873
335
367
210
143
299
793
918
494
496
628
679
904
754
270
254
202
925
201
676
381
85
23
504
97
472
67
715
364
157
235
641
489
75
986
729
946
993
269
102
460
130
483
43
15
120
706
930
871
817
760
242
378
387
650
860
402
357
787
356
410
444
69
148
949
806
206
338
939
398
445
374
70
266
610
442
340
741
684
11
121
732
248
190
245
973
708
299
228
933
494
237
675
585
939
990
820
966
310
390
77
702
976
448
796
216
312
470
977
911
781
472
451
503
262
445
660
555
969
45
544
399
731
665
340
114
72
129
314
591
348
726
779
922
737
274
866
549
748
949
540
585
425
806
923
901
138
912
497
554
780
704
74
764
874
298
566
980
299
81
207
782
44
223
230
318
157
797
52
39
162
232
690
157
893
395
547
101
35
335
856
962
745
262
507
287
468
34
24
343
773
831
684
752
624
225
185
969
460
47
109
106
560
115
800
727
468
544
265
738
845
467
836
712
926
209
23
134
778
879
720
913
972
717
671
964
393
780
810
162
818
855
705
529
60
67
864
565
513
951
507
858
360
407
643
674
634
14
11
988
407
527
398
575
802
531
885
23
501
795
830
554
252
549
314
425
142
897
366
669
778
34
311
323
734
337
487
415
181
453
160
103
974
372
148
611
512
922
636
327
543
932
706
791
208
670
570
655
106
149
791
89
676
188
151
956
508
903
365
923
931
719
864
710
625
120
140
396
188
575
810
982
737
742
80
395
256
131
480
816
357
884
829
151
506
449
282
633
890
664
201
965
175
950
364
462
956
390
330
497
305
106
53
834
425
205
659
908
233
508
917
878
803
642
109
668
700
506
743
688
941
776
701
269
507
831
942
897
545
582
165
411
570
932
956
464
683
674
62
989
842
236
531
708
780
985
18
806
725
195
646
189
603
375
117
494
729
548
33
777
856
228
257
136
740
75
563
372
85
256
735
745
127
800
33
598
992
402
888
757
971
531
789
512
77
995
714
840
628
496
283
239
235
763
915
326
506
952
159
300
208
36
884
323
380
359
96
456
238
548
134
433
720
194
123
239
723
936
54
377
532
90
876
664
699
296
348
868
222
521
18
645
955
547
117
44
382
386
692
987
333
835
206
794
35
826
288
293
168
700
244
273
90
573
970
457
617
51
513
317
622
103
819
111
198
372
598
320
964
339
162
794
241
266
794
159
984
363
764
379
797
807
350
215
472
313
633
202
835
861
190
582
987
497
708
948
95
872
140
598
528
790
272
460
782
493
509
145
401
887
933
32
37
674
919
492
866
887
905
583
865
337
884
518
216
455
740
606
128
269
152
241
575
286
401
924
194
575
826
806
522
954
948
669
15
313
814
521
258
685
965
955
669
630
817
286
762
541
652
745
563
419
636
21
200
961
872
197
868
161
161
273
280
598
286
750
762
117
358
188
894
300
403
885
97
178
927
485
724
200
947
39
872
428
891
843
288
803
160
31
401
237
455
116
753
611
598
883
278
133
854
90
886
333
882
799
408
467
620
403
900
140
771
162
86
692
397
134
970
139
833
634
961
344
427
610
419
713
77
44
752
219
172
855
582
776
429
583
686
903
712
800
49
576
133
781
870
849
817
229
827
528
365
662
597
376
108
803
277
992
417
944
697
348
240
24
871
775
714
161
876
361
372
412
971
506
770
958
288
964
614
216
30
936
844
202
653
323
407
788
517
124
147
918
273
303
848
191
357
596
745
124
505
406
996
707
125
332
49
318
437
606
362
818
111
494
629
447
879
21
61
901
17
65
23
212
814
457
238
799
613
668
650
681
895
830
406
261
430
12
799
698
389
503
855
452
180
764
641
374
240
83
562
396
760
640
98
248
33
892
234
686
733
257
248
312
52
200
542
820
320
882
783
539
330
944
747
269
181
13
227
908
677
450
825
951
640
232
974
471
963
402
61
972
730
285
683
32
303
16
740
366
531
731
824
739
565
940
492
701
815
333
727
481
913
230
60
896
205
685
876
478
359
843
142
794
348
117
842
694
321
491
757
39
602
984
992
314
809
417
663
697
527
67
537
278
306
467
90
886
459
354
729
384
991
732
210
180
327
220
516
918
812
948
38
363
556
408
989
236
418
931
431
45
193
916
339
127
228
112
19
496
235
377
976
999
615
753
639
685
772
634
12
600
372
162
779
378
820
793
668
375
595
648
432
928
321
782
524
590
975
519
564
820
430
590
240
875
944
889
328
591
118
776
203
732
434
866
782
234
97
742
838
61
807
347
432
718
748
851
436
783
319
402
201
108
334
514
351
796
416
967
709
237
482
314
800
150
458
630
945
24
342
661
407
900
676
491
572
508
60
64
132
863
886
597
490
606
989
424
376
858
345
287
877
648
542
589
41
531
503
144
396
482
219
239
386
807
652
527
788
517
44
773
293
766
68
655
139
522
817
213
38
665
61
438
783
465
892
569
881
707
513
15
448
731
356
576
232
629
908
117
514
195
415
112
728
942
540
195
648
369
756
128
467
59
776
423
254
741
95
198
705
741
790
330
785
340
633
474
425
392
508
460
743
959
339
15
64
790
505
438
678
85
811
703
375
308
157
629
929
743
731
944
552
781
197
707
888
172
340
800
921
124
217
29
405
477
885
491
229
410
893
942
365
600
799
988
956
464
363
80
607
677
878
147
349
540
829
677
963
304
757
804
397
311
544
287
432
697
322
749
222
294
785
62
620
879
363
375
813
987
167
788
930
735
796
869
685
90
246
998
309
81
27
969
691
506
701
577
938
348
591
62
662
110
45
330
467
559
644
472
54
997
741
842
229
497
310
210
373
267
261
344
611
891
465
81
245
653
527
891
800
205
569
44
908
493
934
340
659
565
81
891
821
536
300
486
120
36
166
889
486
819
866
456
953
802
311
212
951
310
177
807
250
273
260
505
577
960
739
283
206
518
992
200
270
566
674
397
160
36
963
949
416
601
817
526
177
159
333
592
529
74
559
957
581
827
522
443
318
249
300
681
843
143
23
489
721
490
426
890
240
550
323
625
237
719
533
951
148
211
969
153
550
769
707
373
127
898
227
93
793
119
977
840
187
80
762
649
832
612
860
106
504
522
936
14
150
61
646
986
239
162
991
780
207
591
803
787
731
498
589
537
203
82
741
620
846
926
883
335
444
88
465
783
281
347
652
397
666
241
440
951
468
347
295
224
936
673
931
297
21
222
429
313
563
590
870
240
200
143
799
287
166
417
173
754
541
300
143
263
909
14
230
577
929
67
493
684
103
702
681
337
429
311
916
434
688
211
615
876
454
765
66
777
79
605
248
152
916
301
127
930
878
126
91
270
491
515
382
808
36
539
618
206
725
288
867
938
907
973
370
34
907
341
686
470
568
933
62
719
398
346
136
498
617
135
512
778
513
880
737
640
969
695
852
214
930
740
86
393
973
382
643
714
388
383
872
389
736
286
872
610
848
992
94
709
881
356
87
78
800
323
54
339
356
804
499
502
770
443
739
852
551
598
316
632
861
810
915
428
154
692
714
647
475
500
556
574
996
827
852
66
31
509
541
325
307
781
958
251
949
860
828
106
702
958
713
354
514
525
788
292
118
160
862
978
47
244
26
583
25
496
225
623
179
314
785
333
464
124
156
815
410
128
241
77
861
93
417
892
30
158
972
930
418
258
409
14
40
334
708
113
327
49
92
147
50
612
181
50
23
776
45
324
481
420
486
667
939
729
717
710
923
669
474
548
994
454
426
842
11
252
841
393
652
356
908
545
430
782
631
555
728
29
81
980
911
550
256
885
120
530
86
288
393
437
778
456
726
618
792
81
126
799
484
836
752
559
59
40
924
128
370
611
341
746
633
362
835
800
29
774
572
835
720
469
891
290
951
190
41
275
549
645
683
322
822
610
240
460
466
711
206
809
904
530
669
829
578
507
657
879
121
224
856
27
139
950
751
910
366
52
222
980
809
339
682
417
623
880
286
104
945
861
189
767
918
83
330
681
973
555
138
953
548
722
76
636
930
875
234
877
76
48
119
260
249
417
490
678
121
589
136
311
109
902
564
801
608
394
986
737
587
148
643
136
285
545
241
150
844
686
137
465
69
45
677
545
759
313
595
487
760
813
778
904
682
305
620
178
352
841
484
124
712
585
519
145
502
163
473
242
698
523
312
965
748
473
788
659
580
616
556
703
535
594
136
401
234
561
118
987
12
335
868
203
776
626
291
341
155
912
65
411
682
600
520
657
316
349
620
401
472
907
318
416
336
308
44
632
934
14
976
825
870
864
626
73
728
471
972
848
960
556
578
249
974
247
37
519
457
880
950
708
708
888
478
282
408
331
875
777
398
876
408
915
573
805
277
260
632
599
313
423
616
870
82
168
442
255
442
679
836
76
737
359
646
326
367
246
885
682
344
104
899
346
185
75
518
523
444
659
747
527
255
292
390
234
55
818
326
17
806
860
967
401
721
217
934
897
542
817
332
180
261
149
496
492
44
31
72
948
170
11
440
637
705
924
498
380
559
529
411
818
99
517
684
567
291
826
515
140
656
95
816
503
216
798
477
804
607
432
903
112
79
665
275
862
263
345
465
356
50
964
917
959
757
714
323
346
644
868
218
55
485
410
160
25
930
118
536
950
659
898
388
748
519
496
26
997
465
899
785
838
199
237
235
707
818
567
487
431
521
370
65
397
250
308
857
940
344
988
800
228
951
117
599
780
943
673
948
790
52
118
683
224
90
51
199
195
184
13
325
644
609
710
471
142
706
371
243
412
732
914
578
655
476
728
332
792
688
13
982
382
253
485
12
32
591
85
979
261
709
892
256
728
931
627
992
429
750
448
552
972
300
666
312
475
612
677
356
777
403
231
731
493
422
522
535
64
211
197
281
439
486
262
229
189
186
522
372
969
711
96
923
728
531
862
559
873
379
286
175
853
391
484
323
273
897
104
58
591
149
735
695
57
295
471
239
477
47
600
927
898
26
583
353
449
599
595
482
374
276
350
396
504
800
875
25
880
474
360
685
427
356
619
28
531
699
992
481
593
73
187
530
630
375
733
919
654
867
220
886
167
414
814
976
465
592
653
490
574
115
884
119
576
267
297
638
147
966
39
882
472
350
39
876
762
750
510
387
98
432
692
849
37
464
131
979
272
799
824
508
550
147
24
172
407
456
746
103
174
930
236
29
620
394
505
609
183
846
476
447
152
747
420
574
195
536
110
849
335
716
516
264
608
627
728
934
247
783
210
342
483
678
288
241
644
62
815
103
304
342
32
660
770
430
524
151
937
416
324
321
959
339
207
923
386
248
992
47
446
677
351
124
638
480
384
21
279
718
150
346
978
64
564
199
422
131
975
67
705
995
191
531
630
700
841
779
74
197
348
61
606
428
196
492
917
104
980
756
608
618
635
190
437
132
852
167
128
490
735
293
595
136
23
857
598
678
68
187
403
580
344
528
453
730
501
516
756
869
752
82
602
615
442
472
290
988
972
92
956
832
629
786
842
553
841
16
93
351
428
498
191
493
66
942
502
569
491
705
229
457
124
190
466
247
285
337
388
19
874
677
263
511
659
637
73
818
529
292
253
943
33
16
723
196
613
653
43
445
923
378
987
967
690
346
98
132
11
281
326
929
798
82
484
993
799
22
762
619
751
734
731
458
624
467
200
980
643
937
734
99
574
979
267
951
618
442
552
330
790
547
909
335
799
474
428
612
931
195
793
945
272
546
316
785
588
363
369
312
534
369
405
536
278
593
155
303
17
498
665
787
748
802
461
161
881
253
213
126
802
137
674
810
156
49
991
634
464
488
475
550
832
576
276
551
336
726
495
742
310
249
13
339
564
114
568
531
655
608
395
206
512
950
589
365
289
408
247
327
319
549
781
305
623
138
884
845
128
470
15
334
159
610
498
542
394
800
852
690
781
212
506
882
284
57
849
120
806
660
557
268
409
497
194
307
422
659
747
326
183
261
863
349
496
438
892
981
45
768
211
80
153
675
216
111
404
260
295
54
678
766
814
500
40
444
836
363
65
461
239
274
132
220
693
391
517
586
642
889
921
108
867
608
363
714
118
575
732
935
467
737
317
80
855
873
227
962
968
286
346
469
12
168
178
966
288
201
745
595
442
365
960
79
882
423
505
419
906
330
122
161
865
104
991
306
45
648
124
958
688
542
749
739
670
278
563
900
21
790
619
664
971
816
518
749
878
489
11
812
756
333
708
844
874
937
912
498
937
870
80
633
518
17
751
411
965
970
771
238
227
424
296
697
461
864
477
987
392
296
386
664
849
992
130
545
10
102
510
976
362
990
530
247
333
937
211
499
884
425
658
120
955
92
366
353
417
758
815
959
344
381
984
648
532
358
285
401
538
860
832
381
882
520
141
136
663
869
924
365
656
631
421
482
101
587
670
339
976
782
48
228
500
281
254
202
450
139
76
424
834
541
770
720
522
11
405
839
123
405
203
756
339
226
62
631
135
215
458
874
519
488
40
60
517
942
842
182
174
228
507
852
967
176
34
210
986
704
931
805
443
172
528
435
306
82
546
411
273
350
577
916
778
598
771
535
311
215
480
418
315
993
270
23
764
750
208
397
463
845
253
245
155
917
335
833
866
699
222
984
951
363
721
996
124
91
350
635
824
631
308
608
273
832
406
331
703
909
574
852
347
104
110
960
418
934
780
389
933
360
581
559
198
790
837
700
817
988
364
961
528
870
310
505
533
507
651
266
434
745
221
93
211
860
486
704
106
592
812
658
32
946
263
92
837
321
428
49
786
130
469
928
377
658
365
685
182
231
528
307
278
186
533
147
631
806
183
768
308
533
543
492
906
26
527
946
433
951
814
868
107
909
192
970
555
736
564
742
326
382
251
608
713
830
179
528
215
776
80
821
700
705
990
477
919
931
91
705
978
589
212
483
776
456
84
666
314
267
559
556
44
705
605
688
403
869
752
780
702
747
907
897
687
403
615
218
435
794
100
519
757
734
24
458
659
518
104
614
194
420
858
409
906
775
867
620
90
286
416
12
196
895
237
265
800
830
971
834
514
625
456
103
868
613
643
859
210
173
886
19
658
237
434
979
124
667
334
38
986
66
707
778
551
671
908
906
925
516
446
139
581
714
887
490
376
915
105
441
835
131
806
259
638
155
480
607
666
979
978
781
626
693
515
962
231
635
694
430
995
874
606
847
966
816
573
852
700
639
527
85
521
560
498
594
661
649
473
846
997
583
368
139
87
786
312
209
755
794
526
949
341
555
564
340
615
360
346
210
420
960
861
105
430
93
612
431
511
787
153
406
557
236
759
784
82
360
61
428
78
520
201
215
338
524
710
586
478
184
548
458
960
587
798
105
152
756
696
343
659
60
436
58
692
342
343
589
244
357
225
787
797
465
310
747
328
120
626
313
921
641
605
463
443
830
670
379
801
435
167
354
160
980
654
960
384
337
480
83
347
804
982
164
193
89
206
305
434
723
956
339
498
552
513
257
999
514
141
729
656
70
998
612
204
596
729
177
79
773
603
800
305
411
42
107
624
258
691
436
315
272
885
817
599
622
548
430
927
748
111
581
358
80
223
890
154
357
583
550
624
600
876
588
573
147
38
934
119
663
431
354
402
816
301
645
245
488
70
287
121
14
330
580
462
863
259
491
118
55
744
50
977
329
754
194
992
84
914
738
920
752
200
504
998
687
170
120
960
765
914
278
407
24
435
14
674
548
852
263
575
202
237
666
795
514
79
816
198
834
36
725
194
726
415
542
639
760
338
77
433
871
985
499
802
210
763
146
889
842
414
265
260
972
946
221
779
798
509
575
880
391
389
394
567
328
763
782
628
170
560
135
540
692
605
565
610
86
617
947
394
930
395
77
683
300
53
349
346
822
148
80
425
545
142
808
887
741
779
108
987
128
759
887
356
480
397
968
411
42
691
825
27
751
649
800
336
399
723
85
11
905
69
754
424
794
882
418
931
161
269
425
177
910
981
147
72
624
492
996
478
616
110
392
688
35
513
205
75
723
803
595
725
970
137
152
273
956
104
645
158
171
555
933
500
268
829
971
943
721
587
835
333
150
695
593
577
755
264
370
228
750
423
572
15
999
854
625
301
765
105
52
846
714
698
521
441
73
919
403
816
51
712
217
816
642
846
720
319
598
909
691
187
238
782
506
17
151
235
77
414
747
379
663
745
612
348
512
106
702
154
134
654
561
925
263
378
179
562
943
188
384
703
470
188
28
355
583
119
864
746
86
181
56
305
174
730
180
435
548
187
806
795
403
265
999
610
593
138
329
935
930
853
412
747
160
634
957
243
239
797
155
706
27
98
468
119
684
267
466
605
372
193
638
402
335
214
719
579
592
821
816
503
761
474
978
162
988
780
954
75
752
560
49
43
849
973
768
964
358
344
808
59
142
777
381
790
74
720
215
590
618
449
62
514
781
362
875
549
362
763
108
444
699
205
55
494
662
362
981
973
253
479
38
890
676
154
215
237
656
632
521
216
263
647
618
350
483
956
578
372
785
727
672
286
438
756
174
743
82
225
127
703
650
796
390
787
560
945
465
55
238
202
310
94
60
343
102
295
76
349
483
693
861
465
862
263
386
176
113
390
678
364
271
492
961
215
290
418
24
241
450
262
417
55
323
348
108
138
711
605
90
128
161
497
804
642
313
106
819
472
41
29
730
346
290
117
197
212
511
864
414
460
381
106
342
42
695
236
305
684
92
547
434
380
403
628
165
260
839
788
268
228
533
752
168
256
697
45
168
518
249
513
189
405
369
90
302
127
380
249
501
744
176
125
864
895
599
949
602
820
862
790
718
219
196
985
703
814
892
558
638
355
864
577
514
706
987
854
146
310
679
189
672
294
663
297
602
995
284
152
170
551
348
536
825
177
589
786
614
163
161
443
880
73
418
745
666
492
558
847
243
582
139
452
137
641
89
315
601
496
956
493
746
762
338
103
490
167
239
167
382
462
962
184
599
42
302
496
956
827
239
568
572
293
283
870
17
725
438
887
338
867
488
144
690
987
776
647
436
286
348
616
612
680
744
178
746
856
547
352
35
326
809
205
922
292
329
275
865
356
641
46
77
375
220
483
658
12
342
355
899
207
878
425
722
832
683
907
620
439
901
328
189
458
830
394
129
905
505
875
182
396
879
624
709
108
855
325
729
775
795
447
824
455
72
228
582
547
901
367
310
315
933
565
38
830
533
785
74
745
792
148
837
46
563
301
488
104
492
927
941
124
389
770
447
325
119
195
490
994
203
458
193
413
603
405
783
749
443
599
78
815
923
77
315
840
97
345
729
816
638
429
264
394
516
572
859
80
561
173
158
593
919
389
195
269
386
289
42
352
121
468
141
685
251
621
996
72
473
367
313
891
958
794
677
620
270
704
806
57
211
631
165
76
951
159
740
63
290
501
709
260
693
123
268
644
674
697
278
926
818
512
770
653
651
665
885
109
599
553
56
336
767
715
981
239
950
352
170
888
600
991
422
248
270
230
764
252
461
549
752
854
831
549
808
915
394
896
901
288
147
603
353
280
517
889
622
401
247
570
250
536
602
796
122
250
984
69
458
460
23
799
501
541
80
847
763
507
782
480
81
426
900
583
513
356
275
109
613
885
336
621
108
301
760
784
597
602
25
598
40
666
51
447
125
336
740
348
801
622
510
625
25
615
395
192
950
688
813
665
954
373
65
267
385
607
396
158
167
731
841
883
177
23
974
298
858
300
432
380
167
223
356
88
16
608
279
94
333
80
730
371
941
443
399
253
285
349
431
282
471
967
38
408
350
942
767
300
568
754
970
89
646
88
959
230
325
457
582
341
605
246
744
583
659
73
40
796
688
745
593
311
403
617
46
204
296
973
625
413
478
991
695
739
814
663
468
214
602
137
598
769
719
108
393
743
219
812
976
777
183
609
505
746
156
94
851
303
982
368
609
283
286
317
360
316
677
62
459
384
249
489
614
814
110
965
662
428
302
912
376
718
899
341
998
695
814
850
678
368
706
135
397
525
324
713
718
794
762
261
736
135
659
789
576
677
56
292
114
909
30
650
940
132
980
216
463
848
327
495
493
26
653
911
302
787
387
808
504
282
81
410
931
601
839
695
736
654
434
569
153
244
818
717
579
936
895
340
182
107
252
818
83
710
210
721
663
645
387
949
228
845
696
725
528
319
364
220
29
494
691
941
526
395
680
459
158
87
596
638
122
907
405
184
440
777
454
938
223
629
716
891
294
942
91
685
531
386
509
579
378
646
799
477
308
917
582
388
561
403
81
914
715
653
276
485
477
518
80
927
845
174
620
526
75
835
776
864
104
848
911
749
840
906
72
954
322
940
178
722
425
312
754
165
721
689
761
89
723
104
495
262
683
521
72
125
409
486
116
454
788
11
208
221
835
922
578
776
389
395
783
423
958
276
584
512
462
834
317
74
914
211
679
25
217
157
183
521
806
503
191
144
359
975
792
536
285
344
395
37
873
971
437
363
612
85
303
849
767
220
453
289
639
572
215
529
807
57
863
775
24
642
580
853
950
663
866
574
562
763
736
21
565
440
967
72
145
945
322
184
410
892
809
963
821
800
715
171
923
966
418
74
293
547
603
60
121
92
588
553
315
778
375
526
799
218
382
294
371
340
333
958
673
47
48
425
619
659
492
821
117
106
66
90
38
686
395
917
805
733
444
496
924
319
798
375
110
289
727
226
562
730
285
779
468
666
730
423
832
537
181
300
940
957
480
401
299
152
797
933
101
680
370
46
803
102
940
130
619
164
869
446
610
696
906
109
870
563
851
816
816
459
565
744
967
389
36
63
300
797
466
579
984
544
775
853
315
111
868
306
696
328
341
881
993
719
410
764
405
590
343
428
824
581
205
799
858
697
536
883
15
71
854
222
811
828
107
306
762
422
495
211
420
620
797
731
223
373
670
139
693
687
829
857
293
673
621
528
949
569
966
645
243
255
119
719
710
139
588
193
598
455
436
106
138
668
906
671
859
567
482
497
794
862
575
474
310
253
473
230
320
228
746
39
594
221
767
679
742
811
745
86
238
686
158
762
878
67
501
416
633
497
942
883
648
624
482
465
768
433
450
364
18
597
96
235
167
575
261
116
983
434
811
416
546
60
956
376
354
30
975
291
982
588
696
722
593
292
804
57
861
781
149
526
733
799
277
289
237
803
329
115
161
587
432
647
67
856
469
361
57
255
181
148
248
588
738
709
160
945
574
837
903
954
785
844
752
98
205
769
586
845
363
608
133
275
619
203
444
162
242
416
44
727
551
398
969
491
591
53
368
462
249
833
247
509
846
493
818
442
524
446
515
803
795
77
552
592
259
48
625
996
678
112
428
867
43
524
681
850
283
160
639
160
54
814
108
40
478
378
625
989
928
27
700
409
925
624
794
283
810
514
858
903
561
550
966
905
727
572
833
913
122
421
45
369
521
20
840
665
439
907
992
699
181
634
565
976
536
107
326
409
376
246
449
821
285
766
909
200
505
542
220
115
145
948
451
189
314
523
74
930
177
334
807
601
723
579
434
850
396
280
637
182
575
714
99
649
513
751
307
587
356
484
906
723
149
194
526
637
419
852
293
904
493
802
611
778
86
220
283
577
896
350
104
329
654
952
954
46
859
603
955
999
928
493
352
829
374
951
682
153
363
671
640
579
336
489
24
515
682
672
651
825
298
583
736
297
330
263
609
420
645
235
52
247
622
160
608
657
891
771
845
781
11
658
457
218
591
911
984
242
486
338
343
101
694
185
609
496
22
335
375
400
872
455
170
371
635
469
288
455
169
576
621
372
391
657
968
206
355
684
692
352
705
990
147
989
196
615
216
640
382
991
458
30
423
900
667
158
111
580
604
825
724
244
107
935
481
808
730
833
23
621
271
205
760
47
721
587
436
22
618
946
741
556
398
912
581
841
940
506
118
295
480
943
984
328
288
104
87
699
159
107
653
641
416
878
193
723
953
133
500
457
393
911
185
573
432
290
783
45
169
741
249
288
874
286
833
711
10
150
984
102
459
40
319
787
575
166
557
638
601
664
426
936
237
42
550
332
473
401
483
659
769
352
479
371
901
626
975
420
870
162
883
660
574
896
273
268
910
481
226
489
423
513
809
819
465
117
788
408
646
114
155
581
276
662
471
63
455
252
225
682
923
124
982
397
355
36
703
451
421
162
194
928
107
665
641
349
269
766
399
647
470
829
65
870
342
54
181
242
825
563
204
544
622
987
968
493
290
442
583
746
11
813
133
592
263
146
994
553
817
316
43
658
985
629
408
425
229
488
449
462
686
107
420
439
88
760
490
565
364
224
875
92
149
15
617
764
384
978
769
372
546
194
671
821
272
578
575
188
586
590
501
710
276
36
351
25
884
789
491
71
920
372
514
487
646
160
825
850
411
683
685
771
340
377
617
391
557
411
154
865
549
910
607
672
944
49
396
556
638
722
280
294
886
992
875
946
316
152
618
203
151
653
607
515
877
669
821
210
651
381
434
918
564
197
90
641
595
268
864
104
882
654
990
716
900
834
380
426
310
232
171
671
418
41
693
813
78
758
677
282
509
332
67
134
430
159
510
478
765
38
304
348
993
821
581
407
600
374
955
591
777
285
713
313
936
472
352
188
586
953
841
752
419
53
520
819
517
792
656
11
454
110
473
370
346
54
355
559
128
180
911
300
648
116
234
729
132
562
381
42
753
181
734
662
945
876
652
222
571
362
211
212
613
941
146
638
42
163
147
180
874
835
316
846
960
624
418
985
167
872
139
34
550
430
701
330
470
720
661
587
664
17
619
76
152
579
848
366
669
442
202
487
177
744
418
602
227
937
938
136
953
936
235
112
345
658
735
938
33
190
845
101
242
399
187
261
642
438
217
204
361
583
942
470
851
931
491
341
797
326
915
95
931
980
741
50
773
108
989
728
113
888
131
343
150
21
308
489
683
564
648
671
273
497
576
478
346
520
250
212
499
967
798
58
304
520
724
352
169
303
407
743
735
561
598
766
716
356
573
873
340
254
143
78
888
525
964
790
614
439
849
107
648
701
70
394
596
480
928
877
535
249
794
346
820
447
293
249
767
968
152
664
444
87
488
574
117
840
768
390
808
145
471
688
209
304
54
684
354
704
458
621
439
20
658
16
279
42
617
756
838
868
394
524
652
617
635
18
897
670
690
196
758
455
577
514
601
251
802
180
617
831
466
489
889
909
757
600
360
773
410
831
151
917
962
60
21
657
935
896
586
861
985
161
405
976
476
714
491
592
975
765
95
26
700
693
107
774
836
657
284
659
821
417
410
479
28
18
220
879
538
922
460
377
563
835
471
198
78
193
364
375
829
247
410
197
752
397
67
701
855
163
650
191
519
299
660
536
198
539
638
129
338
131
431
405
868
876
858
702
622
456
336
970
711
78
721
396
137
426
543
920
139
730
234
553
607
145
694
343
70
406
236
465
84
715
985
393
438
317
16
24
34
616
650
347
108
736
900
672
763
842
104
754
783
336
610
32
436
399
175
754
626
821
574
71
537
263
155
451
790
811
213
292
294
114
836
176
437
814
225
199
305
868
237
59
164
253
563
709
593
329
943
742
776
34
924
380
716
571
651
959
688
520
672
614
181
692
585
50
371
985
547
793
544
555
648
661
829
485
461
725
794
80
400
921
25
741
987
158
450
222
124
198
903
186
41
895
913
329
496
83
758
155
819
685
574
274
178
884
704
989
61
104
533
344
571
438
475
338
104
917
191
320
709
603
80
240
48
504
167
875
290
816
510
596
28
965
481
156
852
798
45
28
184
953
842
58
315
139
534
281
221
789
135
830
978
996
905
340
312
989
418
136
127
11
275
460
293
262
573
646
908
751
984
890
476
280
597
48
267
374
151
534
892
286
758
473
458
945
380
940
722
319
578
468
557
374
948
839
282
756
535
764
299
302
279
396
767
213
292
730
909
787
227
332
276
504
108
793
308
661
785
984
394
514
872
30
293
713
294
754
454
396
663
31
386
633
166
980
249
593
790
46
674
217
257
129
581
660
806
891
135
384
661
70
108
874
457
76
579
821
425
861
938
186
469
811
294
172
962
731
916
963
188
365
888
98
689
27
45
879
969
50
536
931
422
712
832
213
961
804
869
792
377
508
319
605
32
756
767
528
141
260
646
932
319
692
371
483
690
140
753
46
161
340
142
55
197
881
619
614
183
492
118
666
836
628
929
552
98
578
443
927
360
699
853
319
746
668
944
786
584
764
274
928
206
426
96
855
549
193
669
961
983
168
234
499
526
152
549
33
708
430
923
666
15
817
809
610
995
466
956
808
525
784
752
798
828
44
787
892
394
907
901
900
933
936
222
844
241
396
391
431
786
665
232
549
216
257
236
437
461
603
285
653
367
656
795
11
737
169
392
930
415
987
330
532
902
172
344
595
657
606
652
812
751
441
75
760
64
982
391
47
353
779
988
104
931
10
773
76
832
378
732
70
257
59
50
448
314
767
926
534
918
851
367
77
510
157
79
246
948
25
547
552
613
970
370
644
507
755
420
156
624
703
807
686
57
691
260
676
952
991
634
196
203
500
897
665
642
722
271
201
346
444
274
235
221
164
967
717
102
895
116
90
631
419
878
237
719
478
914
362
18
146
540
675
833
53
672
279
95
105
518
894
690
928
458
148
283
701
117
120
221
237
269
322
302
355
674
782
418
476
105
183
279
469
853
718
793
620
947
424
432
494
328
952
735
320
171
610
37
534
846
481
834
143
159
775
925
876
575
315
65
502
951
448
977
865
368
673
923
235
145
506
31
673
821
793
76
330
353
790
776
826
720
179
349
473
253
512
788
596
843
286
720
741
655
593
197
655
508
489
254
255
583
702
822
281
215
720
454
44
133
833
203
763
49
724
899
781
153
134
298
910
72
188
405
218
770
622
921
480
795
21
29
795
297
820
137
508
954
747
107
583
586
742
679
973
320
398
159
541
215
469
36
719
245
697
841
354
690
857
473
211
791
954
378
773
555
782
44
333
328
103
246
610
940
10
790
218
516
800
871
266
203
237
654
330
979
851
165
839
503
432
564
778
269
963
70
689
552
253
448
816
364
508
261
17
148
103
397
702
64
218
222
331
209
690
863
596
55
843
567
839
533
21
309
32
67
258
36
890
766
779
158
564
388
639
890
861
324
547
842
107
62
874
214
301
634
781
171
778
237
434
751
24
835
885
61
482
444
716
868
184
794
543
745
821
494
955
914
456
510
220
296
722
311
792
249
806
756
343
858
923
266
502
783
398
401
728
719
474
421
522
697
905
420
151
360
441
943
173
601
968
184
200
294
892
352
54
464
546
263
448
312
370
698
991
83
684
503
13
230
669
492
359
297
759
762
190
395
87
873
997
50
629
88
628
629
827
265
926
496
493
625
920
506
146
56
317
734
398
870
437
632
252
789
677
207
366
454
653
366
262
514
590
815
28
582
811
503
70
301
692
515
535
114
53
215
206
466
444
186
523
848
970
190
828
584
52
13
647
295
296
78
200
426
386
966
350
751
912
548
729
270
411
903
815
925
336
865
512
406
29
910
676
285
610
867
818
801
71
859
355
150
247
693
497
796
341
408
842
714
436
892
87
826
540
385
561
464
266
318
290
289
124
551
64
264
137
46
288
825
923
95
679
49
489
175
985
779
439
166
658
353
460
374
68
875
74
984
165
86
615
875
685
431
161
827
755
272
581
243
141
930
781
234
16
566
737
138
180
848
695
755
978
335
348
137
111
946
643
711
388
900
256
828
530
860
667
854
797
916
737
916
363
865
179
453
128
968
497
803
597
417
675
147
139
711
454
364
220
436
787
580
983
86
222
449
606
366
267
534
530
530
949
278
822
620
280
734
729
439
958
355
131
421
799
958
737
926
569
358
909
70
545
880
662
464
364
921
749
572
12
92
860
83
666
190
422
972
174
819
82
129
807
208
920
166
25
223
100
512
365
99
97
855
161
600
967
663
266
242
200
560
966
965
381
243
880
736
730
925
312
684
477
978
748
522
244
699
716
301
419
472
978
770
893
900
171
569
635
86
577
449
937
978
351
491
771
774
604
873
647
80
403
135
185
295
226
330
755
247
111
629
521
958
857
862
581
586
962
49
465
92
710
590
329
762
679
739
954
735
111
682
261
744
685
524
429
81
313
731
228
505
610
332
403
328
660
853
28
209
656
168
608
991
996
769
535
360
142
558
507
847
371
740
407
937
99
333
178
701
665
757
570
21
913
96
855
10
314
777
311
931
842
950
882
176
778
100
959
227
292
264
300
586
814
353
70
134
702
33
845
534
121
982
374
994
288
950
975
934
143
625
60
273
249
541
450
722
25
377
195
80
638
936
283
904
52
433
393
258
327
114
557
201
700
956
568
710
347
919
258
69
796
132
185
987
731
629
679
889
994
198
776
86
457
995
258
136
921
402
232
212
60
634
568
219
529
862
243
647
487
35
117
147
465
578
549
326
351
993
935
805
136
243
405
88
74
592
551
90
921
369
641
827
768
845
141
230
73
658
23
894
794
775
78
489
344
836
492
957
578
107
968
98
196
101
733
135
870
161
753
397
875
387
351
631
764
787
90
782
269
53
746
209
475
53
58
665
456
693
253
146
424
685
975
714
195
606
572
999
621
609
68
708
960
938
231
173
442
686
532
750
604
309
756
951
275
517
948
197
367
794
937
333
897
605
532
930
801
935
463
680
878
441
115
311
654
392
481
364
63
69
262
253
405
325
306
796
117
292
356
241
794
41
966
176
633
915
132
508
519
910
108
540
854
946
396
771
781
994
134
51
280
210
897
817
538
752
613
746
259
819
303
399
906
663
818
411
690
905
694
923
52
912
62
850
392
345
406
914
73
198
414
912
897
539
421
873
360
333
331
697
417
671
909
523
199
314
359
818
39
636
570
430
657
668
168
55
431
399
249
268
851
123
716
909
968
259
99
310
79
260
515
824
104
401
129
163
727
473
452
663
38
109
83
316
140
867
861
474
539
664
874
832
303
675
651
218
603
967
584
253
290
817
70
12
460
518
273
341
324
531
90
600
508
53
925
936
824
702
562
566
789
197
158
632
103
633
587
372
195
849
702
330
626
733
848
625
962
811
464
474
52
653
850
554
168
815
263
766
735
51
253
858
228
683
266
915
551
580
132
675
990
200
104
164
67
747
213
500
875
237
475
127
286
603
579
518
751
935
260
996
281
558
817
530
967
880
879
507
744
723
966
878
795
570
520
359
99
416
676
579
313
502
939
768
383
173
482
659
208
722
576
427
589
206
32
66
14
598
154
317
499
636
800
862
742
533
108
476
648
225
233
956
201
57
728
686
691
865
188
270
39
455
846
164
774
779
665
746
381
210
500
285
204
780
178
135
966
902
991
214
153
131
733
418
499
244
835
651
744
174
963
199
795
894
123
163
521
489
256
945
835
810
779
216
617
925
518
970
358
265
952
770
430
263
325
193
279
154
492
743
428
707
503
282
744
429
141
204
586
759
558
306
976
492
950
229
85
170
397
763
539
961
371
46
182
828
996
429
344
750
855
931
567
156
944
506
293
514
199
348
355
580
380
48
648
539
399
974
390
647
834
873
314
221
91
689
553
358
650
842
810
979
895
151
369
381
188
179
47
919
571
210
983
926
394
775
167
842
361
121
498
516
635
731
673
984
371
934
993
131
196
958
643
881
675
53
466
540
574
27
604
578
484
844
857
839
946
884
706
996
855
853
245
60
331
928
237
701
268
962
335
734
137
339
377
55
499
688
192
921
814
877
396
853
51
155
794
211
969
987
832
252
204
568
858
783
794
129
399
456
814
123
545
847
256
859
870
971
613
346
885
134
820
684
852
393
845
214
803
545
430
138
901
893
175
465
173
76
448
508
212
295
11
88
96
666
752
98
277
101
12
600
306
784
312
898
966
841
253
19
289
895
19
885
401
681
912
142
497
416
13
985
506
489
515
532
109
612
207
166
731
378
90
794
368
303
308
871
317
36
642
48
579
33
959
236
505
246
97
736
736
62
81
360
20
878
667
861
523
607
698
809
82
353
390
857
604
566
349
554
158
276
377
994
85
350
369
623
384
939
147
429
861
159
679
782
72
937
475
146
939
572
250
324
581
845
630
996
943
714
482
663
223
180
124
264
798
46
992
168
491
155
221
844
535
521
605
522
180
190
758
696
148
206
241
272
686
735
643
340
235
443
212
324
703
178
564
54
710
78
448
552
223
22
695
151
785
987
885
617
599
427
654
902
430
206
541
467
527
818
943
676
675
145
526
393
500
847
54
832
879
174
665
692
212
612
925
727
726
797
601
923
40
839
61
322
755
73
935
959
176
207
302
544
679
887
744
257
316
706
995
163
414
964
60
210
749
942
973
366
746
549
857
914
87
26
699
860
950
222
375
970
411
796
900
847
356
618
791
789
719
986
347
383
579
368
152
379
873
986
909
394
748
189
50
910
992
981
684
931
874
739
452
937
270
315
405
708
159
116
180
340
506
520
133
467
492
542
851
961
134
271
197
541
935
768
386
952
588
904
22
967
357
982
48
857
123
676
646
531
66
21
541
517
554
946
347
732
83
644
809
412
375
966
915
134
528
153
243
545
435
548
558
143
608
674
958
556
835
42
15
481
427
246
941
32
635
593
216
483
892
648
284
533
899
782
624
870
302
939
429
757
463
776
627
441
587
211
49
138
360
689
659
653
178
761
933
492
397
44
446
737
110
253
539
88
468
814
298
73
907
597
326
176
676
211
653
601
270
893
470
820
336
17
552
495
60
259
29
741
646
365
542
600
39
285
820
14
845
970
69
166
622
837
584
270
374
764
169
500
570
806
488
861
614
383
162
847
283
716
284
551
163
488
566
408
77
430
803
545
295
80
939
794
156
99
41
50
376
969
613
820
886
104
764
839
917
380
590
780
539
689
344
218
631
232
797
739
280
649
402
521
771
246
358
695
991
907
45
740
596
932
769
953
627
125
239
364
211
84
364
437
427
186
419
94
748
951
418
315
876
177
288
990
809
553
638
544
789
521
142
112
670
425
764
940
196
984
13
345
935
171
802
500
460
12
707
743
129
231
45
127
24
991
166
121
835
117
64
546
884
803
41
717
743
558
932
975
850
269
347
726
382
499
647
599
657
962
737
293
258
220
22
462
667
319
77
677
507
678
18
466
714
404
937
872
787
221
582
10
19
670
950
414
190
546
862
551
397
844
655
547
578
672
930
789
33
924
357
241
173
74
572
790
793
546
974
82
515
921
792
434
801
615
70
226
752
194
535
77
171
669
96
156
272
815
483
458
330
972
488
675
121
62
199
869
658
328
757
239
410
750
871
470
928
815
939
135
771
572
695
370
949
498
319
251
672
545
646
750
324
66
171
17
494
995
340
139
496
844
689
968
419
66
321
49
661
227
962
215
52
431
576
351
71
80
939
779
443
137
641
780
436
351
512
303
716
370
617
410
399
765
951
887
187
660
976
488
995
170
930
648
916
37
424
177
878
51
332
58
911
572
97
606
376
433
425
500
28
697
635
470
549
321
736
239
318
156
160
928
94
945
991
927
52
721
903
316
130
22
907
910
713
352
357
623
311
492
189
164
268
241
996
744
703
184
315
885
713
982
186
626
488
277
359
921
928
921
940
307
549
524
849
633
888
312
718
407
898
957
514
261
955
741
642
702
536
818
248
299
535
828
329
622
171
779
103
340
150
699
166
986
114
542
694
48
599
366
389
295
121
793
735
562
854
819
777
695
57
428
768
962
474
219
500
733
906
145
625
201
591
572
232
789
516
234
381
54
896
996
986
176
214
338
266
265
516
910
31
936
918
139
964
100
523
270
102
620
563
886
557
183
47
334
26
720
95
956
427
125
357
497
478
845
185
564
744
265
869
47
319
718
353
634
278
59
798
527
846
48
671
841
445
880
246
961
523
782
164
822
420
939
758
990
927
835
465
802
277
760
613
287
488
897
154
67
614
967
617
131
68
374
619
859
127
154
309
628
26
112
935
209
449
478
370
747
472
273
119
814
650
485
721
326
785
808
132
214
550
486
197
869
846
745
692
885
593
571
791
719
593
279
744
22
174
701
773
483
858
935
190
866
562
123
512
607
380
760
726
223
259
319
929
738
191
81
158
877
223
301
396
434
193
187
496
792
470
746
647
166
204
986
565
488
846
950
634
339
71
261
345
213
211
83
153
533
104
115
522
691
588
471
457
336
543
959
441
38
282
763
886
909
465
297
957
905
516
472
321
175
451
637
462
921
316
462
749
409
630
206
854
530
204
46
327
961
256
501
88
712
624
553
780
485
819
312
264
182
768
322
593
335
994
38
702
161
629
216
52
312
913
18
397
209
968
498
116
980
345
882
411
327
711
513
348
33
695
475
815
762
173
928
423
132
517
162
378
81
263
273
631
942
421
363
408
821
108
169
691
437
282
792
317
282
602
625
236
683
568
441
931
873
126
932
330
610
343
622
230
138
536
954
251
642
847
14
537
154
412
833
325
440
418
220
91
906
262
762
475
504
408
705
871
845
774
164
79
277
519
744
780
323
537
327
752
931
232
479
816
429
702
245
306
543
360
247
957
286
18
717
694
467
395
524
653
427
274
492
796
572
987
568
441
151
902
486
741
908
614
927
586
530
894
545
232
117
83
569
898
957
777
517
573
694
285
522
905
440
139
571
810
449
206
765
73
617
316
131
658
300
219
805
887
905
608
443
51
565
858
767
80
261
645
669
273
163
467
744
966
533
871
547
159
30
242
615
103
476
458
617
497
229
421
12
987
867
36
115
832
511
728
515
990
337
935
12
317
221
684
255
145
237
723
928
682
748
521
949
529
725
590
438
588
977
845
422
310
746
217
819
12
492
566
690
811
181
327
425
381
29
26
671
213
229
974
984
943
729
746
709
146
868
484
331
368
843
234
445
534
763
747
795
156
392
779
48
421
555
281
994
940
796
212
778
300
148
923
931
255
631
904
575
410
931
201
992
560
139
169
502
730
37
690
835
575
128
164
229
697
212
46
872
531
955
813
467
583
516
189
433
995
127
733
750
68
466
949
983
734
856
29
679
681
627
85
541
143
39
185
133
831
830
152
18
98
870
96
336
218
69
913
840
18
405
799
785
993
442
713
272
225
484
372
231
392
414
798
665
223
286
692
655
281
257
36
720
210
886
339
930
250
179
605
471
356
687
984
130
121
72
839
412
199
184
133
171
301
16
522
205
241
727
296
256
766
130
942
656
347
475
475
381
941
718
621
630
380
286
404
890
151
933
472
364
207
145
129
87
775
643
554
122
409
430
59
336
623
684
747
417
692
106
737
453
375
54
960
651
100
823
228
108
349
329
21
525
49
258
613
335
254
351
304
160
527
161
469
516
430
198
830
779
901
238
339
397
215
863
652
64
392
813
986
501
446
64
205
411
75
252
883
971
972
285
319
776
858
700
857
307
408
536
396
689
489
593
163
190
571
946
24
501
836
256
766
434
515
410
479
574
818
646
686
677
492
235
720
113
23
322
766
556
864
627
801
120
892
978
300
895
751
978
564
732
43
265
741
435
916
950
906
732
753
797
379
371
934
477
630
728
155
165
916
215
252
64
181
391
997
468
36
238
488
467
83
396
478
727
253
721
15
906
69
270
220
939
844
485
516
980
980
922
514
385
567
539
145
379
525
379
405
972
573
880
147
359
797
995
499
362
719
202
631
263
489
804
195
771
308
55
854
805
122
591
699
138
912
782
60
296
25
450
314
541
559
63
939
565
138
692
248
471
537
51
278
542
133
622
890
959
233
973
907
504
532
956
809
186
632
299
15
603
933
854
68
640
929
824
338
418
648
784
73
220
133
163
18
170
200
956
66
190
351
963
266
650
540
693
85
483
68
369
517
559
549
321
734
119
401
389
306
700
633
983
919
626
455
589
621
152
758
508
753
655
432
806
364
282
362
187
130
911
203
381
410
663
125
166
408
951
882
666
898
832
887
986
908
96
803
387
865
729
381
42
856
656
773
321
275
806
833
590
151
47
390
631
70
325
310
753
949
925
215
964
720
869
740
634
768
576
773
161
472
884
349
744
500
830
643
329
600
115
273
814
116
428
456
311
775
301
844
791
598
404
784
403
762
515
490
220
879
396
42
495
568
286
190
219
332
143
823
234
523
689
83
245
732
240
717
448
708
253
530
703
702
374
701
720
762
97
889
919
206
464
646
39
845
34
529
506
796
815
428
548
166
180
607
127
134
945
477
96
76
668
517
980
559
244
776
291
907
706
632
627
840
266
16
112
364
990
697
724
112
98
184
22
168
43
463
227
744
619
300
360
668
203
553
198
859
42
537
661
630
539
880
942
13
279
698
996
575
900
672
882
251
871
346
559
721
839
580
320
690
771
868
555
784
806
868
721
233
763
697
916
146
999
638
29
544
48
102
286
675
857
725
333
530
648
474
282
777
946
405
733
534
299
161
67
371
418
651
874
994
651
77
535
32
55
34
451
563
315
650
530
70
345
14
963
262
674
805
700
288
262
486
187
512
763
389
978
357
504
34
187
960
996
68
756
427
199
792
947
543
779
311
622
404
851
313
939
27
229
696
346
927
624
825
67
764
693
781
31
250
964
887
462
961
45
617
52
202
378
695
797
357
194
596
948
279
771
570
371
782
718
43
846
177
715
631
110
124
224
150
965
130
809
769
591
641
963
626
52
541
479
554
189
414
744
692
906
932
233
781
332
83
16
933
760
697
487
398
567
888
405
269
99
370
40
883
367
255
471
938
973
761
538
452
573
574
197
987
938
241
656
916
382
585
123
279
992
913
734
406
435
423
367
798
208
784
680
967
154
110
330
666
881
121
463
238
878
560
610
126
541
331
620
955
111
967
863
832
682
592
719
671
838
204
826
434
343
853
994
173
988
131
71
806
711
118
355
969
242
65
88
491
975
701
428
412
699
262
194
673
71
916
860
552
768
694
993
360
127
791
245
986
578
313
923
69
225
918
904
169
117
626
952
193
985
627
633
181
427
633
220
31
196
461
709
238
619
202
813
307
189
780
643
269
354
362
283
406
624
750
245
995
536
606
177
814
763
222
73
452
637
843
113
423
537
157
720
333
827
274
511
655
378
86
268
725
242
922
760
329
364
640
818
272
544
655
507
661
630
378
504
220
830
175
846
551
768
628
460
84
972
631
940
565
429
125
455
368
520
774
466
109
192
946
620
715
242
436
946
982
284
34
369
725
16
231
892
683
165
379
466
718
413
253
801
594
74
718
706
807
456
808
111
697
813
971
616
540
812
67
52
466
914
713
335
877
197
441
729
236
629
271
121
169
799
868
884
386
327
448
837
836
761
225
753
792
889
557
767
153
616
717
147
34
735
469
768
778
66
871
168
728
945
532
192
212
953
99
438
125
92
579
464
138
544
380
32
79
916
919
972
576
818
28
77
706
320
913
679
198
254
809
505
740
56
226
781
130
335
774
869
836
307
884
736
729
327
744
369
40
520
482
954
726
561
902
373
520
404
20
357
363
231
216
707
185
277
700
469
538
778
922
318
43
229
447
716
924
400
768
659
800
473
150
321
832
705
537
42
828
519
98
20
986
57
356
926
286
910
34
166
942
84
926
86
557
663
323
795
134
146
655
840
799
80
818
524
975
132
893
489
431
320
420
555
754
914
233
624
613
59
263
302
730
341
958
354
559
636
662
419
607
537
273
979
528
431
810
305
368
914
601
287
203
151
441
170
826
449
954
308
749
472
368
703
306
584
285
315
830
710
332
263
446
300
123
93
197
944
719
219
203
18
878
929
666
941
418
37
218
695
763
384
665
936
261
336
860
206
149
167
579
480
357
28
565
590
552
855
616
756
292
647
710
254
93
940
787
802
102
522
536
797
930
695
600
405
877
189
930
52
803
862
69
73
723
813
563
90
18
148
69
628
736
775
528
681
110
90
293
12
379
190
374
946
456
637
280
159
798
833
406
599
869
868
293
743
664
268
713
186
865
12
263
910
847
899
649
438
586
497
548
617
648
673
411
164
797
326
352
717
519
560
175
876
989
374
644
549
22
546
741
468
28
181
66
599
533
296
488
414
226
446
715
511
163
654
128
281
400
221
67
420
333
521
50
946
924
326
833
41
612
863
201
712
415
580
491
933
467
334
813
115
38
861
646
902
463
34
417
504
664
212
289
800
485
974
995
146
863
742
739
660
38
774
187
231
777
100
128
443
40
118
160
399
539
700
86
873
173
189
18
292
973
929
391
696
378
772
174
389
425
440
405
712
998
35
421
857
829
660
10
557
524
258
818
724
93
552
393
381
842
349
120
453
895
821
127
175
665
865
845
471
947
988
720
635
346
415
101
159
38
336
941
582
771
146
61
218
153
392
844
660
769
515
763
169
639
953
182
853
109
428
717
976
685
417
929
803
698
538
981
987
742
582
450
596
91
153
123
297
770
314
233
930
879
646
563
302
246
561
803
257
448
468
354
396
20
99
260
72
365
676
111
878
572
896
205
396
253
380
817
920
259
76
50
701
17
305
797
108
295
765
735
455
812
913
71
587
394
780
582
450
713
264
304
185
446
625
701
733
912
696
101
41
262
87
427
761
467
779
136
623
316
957
289
166
542
220
480
787
187
476
868
117
203
699
57
59
673
450
393
715
214
193
25
983
541
921
159
896
24
406
76
600
711
594
880
258
452
461
186
536
746
136
108
218
867
736
904
549
150
285
22
209
487
157
445
630
815
510
34
327
284
499
75
311
16
136
690
355
972
865
426
565
202
940
533
36
81
245
621
191
40
343
495
551
594
324
992
512
805
612
504
478
915
472
373
121
982
800
170
55
757
716
817
340
732
10
412
456
537
618
26
866
768
348
527
248
904
103
978
894
180
206
153
665
878
213
421
824
708
630
14
254
51
825
910
970
127
448
504
400
733
979
976
573
474
542
536
661
496
240
44
153
444
624
271
308
628
369
576
81
298
454
402
828
891
542
463
385
18
382
353
131
942
228
866
965
176
832
619
283
616
860
414
505
918
468
865
934
201
12
170
398
538
891
22
779
79
712
40
187
672
59
122
453
902
809
134
782
257
318
101
842
263
390
890
147
290
409
932
569
46
108
555
79
951
89
351
384
231
613
918
248
693
14
315
981
851
960
97
951
723
453
954
96
512
168
198
181
424
404
265
843
246
576
644
452
343
367
325
28
782
984
457
427
986
699
91
106
353
693
194
680
843
301
746
419
265
162
770
915
204
30
627
371
855
27
948
162
567
35
987
191
459
993
339
699
51
286
668
214
528
555
772
512
421
666
519
32
850
787
643
770
10
901
415
713
596
977
904
237
92
591
218
159
381
147
430
651
96
933
983
43
158
895
12
152
13
694
153
17
319
907
274
597
430
852
959
144
715
539
878
265
460
582
329
905
985
731
287
454
889
778
413
607
896
365
243
126
697
472
916
521
314
146
630
358
707
755
811
136
498
806
581
820
123
346
338
854
444
341
182
937
691
901
109
780
294
477
592
940
672
768
159
816
920
114
552
631
458
389
80
781
240
971
301
745
764
198
552
723
161
875
825
790
429
571
887
295
270
651
194
961
567
393
859
283
471
724
916
230
481
798
500
158
540
913
759
827
673
918
999
335
151
453
213
775
607
996
889
122
823
88
182
558
114
935
92
776
91
92
744
251
681
924
659
860
894
75
124
791
129
245
77
98
23
471
857
905
713
405
813
607
535
491
712
716
346
881
758
984
479
59
806
787
688
918
725
120
658
108
831
135
810
877
406
361
195
831
879
467
366
859
513
429
193
300
644
623
202
115
482
78
886
776
831
385
477
584
639
52
878
526
682
414
184
373
206
34
498
39
792
710
261
420
688
404
505
753
438
706
424
399
150
390
765
450
847
544
559
40
20
157
365
941
446
809
637
989
41
721
924
728
99
657
265
531
850
136
40
652
318
137
637
289
785
602
392
825
285
427
582
95
331
318
569
910
763
655
688
29
758
33
423
173
936
565
159
659
693
25
570
336
736
132
449
781
459
87
992
314
334
129
493
644
42
212
923
876
687
914
862
570
319
226
273
940
305
596
651
284
149
786
305
765
274
560
624
255
222
439
827
200
910
39
361
962
748
214
815
356
298
927
930
27
396
332
326
428
547
56
657
109
464
918
957
80
109
981
509
985
884
522
91
714
555
867
207
45
399
567
479
993
508
793
321
442
854
75
522
731
303
72
473
48
960
898
443
920
842
115
471
224
121
641
297
669
887
541
666
212
243
497
56
741
508
85
995
570
512
551
73
655
823
43
640
738
565
54
761
718
339
480
70
881
956
36
457
526
943
214
106
304
130
938
582
845
85
957
14
168
581
850
709
601
736
254
791
70
599
742
534
90
740
638
55
515
542
345
649
870
634
44
356
361
297
882
644
207
60
370
394
794
588
417
901
215
551
40
380
513
996
676
331
697
266
555
620
764
659
55
587
596
775
652
338
950
99
158
172
639
844
155
506
706
624
141
954
725
428
968
899
650
594
54
906
290
570
562
41
434
441
396
673
102
968
531
861
564
899
634
578
676
116
450
155
349
506
809
329
373
803
699
338
43
84
355
474
475
956
948
977
241
964
309
332
513
261
355
167
35
713
96
711
875
61
391
756
397
93
629
263
981
673
698
80
67
730
766
775
517
235
309
546
586
599
717
288
219
760
409
624
471
100
683
256
487
48
519
569
884
843
823
116
293
650
52
985
814
856
80
111
429
541
947
842
341
174
251
244
757
307
746
945
113
100
510
666
185
269
741
49
116
171
539
901
204
280
965
641
51
870
491
213
100
411
564
985
345
182
368
19
593
487
937
226
310
716
190
443
94
696
913
447
880
195
319
546
952
76
295
299
224
670
689
217
943
473
839
381
340
444
585
244
550
241
527
253
522
501
763
733
252
794
966
147
374
655
920
452
196
492
785
56
357
250
108
840
38
225
408
16
107
301
180
174
170
877
395
979
486
970
904
826
436
810
668
419
351
255
663
856
304
948
492
496
375
776
156
753
352
101
388
614
586
701
162
582
743
180
483
677
948
319
70
501
463
577
310
481
999
474
842
114
305
125
773
984
551
264
154
727
844
481
927
157
29
940
775
184
855
592
954
873
181
220
187
434
534
15
134
318
197
729
675
251
603
628
279
903
635
844
721
744
891
590
794
507
787
338
307
386
727
997
384
528
488
143
286
114
753
449
208
360
355
645
836
775
668
113
187
89
336
96
708
677
930
915
66
453
688
240
697
537
958
223
978
438
815
433
43
279
397
78
874
640
980
430
302
595
392
508
918
25
920
897
674
984
114
451
893
945
27
724
633
872
856
757
284
712
227
896
244
68
518
828
348
811
824
838
535
93
215
100
198
271
11
761
38
927
193
488
258
869
159
163
651
480
694
978
330
902
964
119
492
527
450
820
809
174
816
225
255
788
844
464
565
949
975
303
417
829
76
342
405
29
886
214
346
831
771
331
492
558
39
320
811
10
266
456
602
276
912
429
392
561
791
803
696
708
170
530
22
958
191
931
607
357
929
239
793
595
919
188
868
625
334
509
74
295
41
459
997
532
787
973
943
239
417
737
591
23
711
797
527
154
816
763
316
827
526
656
857
509
948
550
438
17
728
469
116
438
751
293
309
467
601
922
694
359
32
46
874
420
122
559
114
32
89
207
272
709
26
227
568
874
171
545
88
315
27
401
87
533
185
479
845
255
326
86
273
449
250
37
837
74
981
895
333
562
664
109
186
381
22
384
775
792
825
759
298
277
517
663
537
964
53
32
218
506
898
460
107
509
873
83
389
20
55
21
225
16
435
114
694
175
888
784
715
860
99
562
580
455
262
951
832
198
58
760
767
409
564
194
188
580
662
25
315
683
22
363
945
422
814
631
118
891
792
488
666
159
499
52
851
435
752
310
980
965
284
986
154
823
423
782
869
187
184
539
930
736
247
374
774
89
33
242
918
771
281
696
778
887
471
584
261
472
400
966
315
933
591
360
235
128
160
600
374
750
661
202
128
450
918
723
347
769
386
458
600
590
293
172
210
17
629
301
581
58
881
323
806
441
123
100
116
562
326
797
107
378
550
879
98
989
893
371
976
642
248
788
871
76
291
984
744
33
262
529
350
597
77
208
153
537
559
447
138
19
120
509
658
971
939
816
763
319
57
282
695
771
139
277
323
536
285
637
588
120
461
836
254
893
808
322
640
206
840
370
600
606
206
935
494
353
931
803
912
846
866
522
587
521
578
477
19
689
307
190
567
751
179
106
578
830
875
352
837
147
864
622
263
581
966
685
175
243
895
376
943
570
344
992
111
419
325
367
86
187
417
792
160
26
641
891
707
471
55
829
94
411
706
169
659
428
302
76
693
650
785
515
761
852
333
577
339
525
771
547
727
732
354
111
791
779
63
79
317
448
140
810
738
484
268
484
470
500
755
412
748
829
402
304
333
524
593
990
41
996
201
459
18
268
420
448
31
704
988
486
49
549
908
897
203
818
10
899
471
350
997
159
799
704
950
643
273
528
19
39
280
487
693
388
955
150
36
572
227
800
35
253
537
129
228
46
403
951
229
168
359
807
14
793
823
417
64
351
741
549
685
404
868
952
653
878
729
900
368
778
417
710
207
41
604
804
451
930
545
452
300
910
569
101
821
728
527
547
159
427
952
278
453
904
882
852
356
378
514
407
689
329
660
271
574
73
855
511
147
25
88
709
791
650
88
597
891
101
222
830
82
355
336
214
861
893
960
783
570
827
451
423
787
639
112
868
361
718
920
365
833
400
992
85
470
760
215
575
712
516
714
926
271
482
412
944
722
942
779
918
13
885
771
479
614
429
656
363
744
942
215
210
235
596
481
721
289
124
267
985
869
142
493
633
287
437
266
848
711
487
947
131
873
703
624
537
968
662
816
575
874
512
813
320
226
321
594
56
268
895
100
113
312
52
435
677
631
819
508
935
403
313
913
660
669
729
452
801
278
937
570
18
697
469
590
434
406
60
119
67
79
388
337
46
785
500
999
158
776
167
646
211
509
674
469
720
754
683
994
259
325
480
792
660
216
875
990
942
582
229
77
943
424
486
594
516
69
395
100
963
629
530
557
242
404
782
463
548
735
378
344
49
599
158
419
662
803
56
733
301
482
540
221
217
749
189
401
800
772
997
91
505
327
105
686
788
730
349
339
897
198
183
518
14
795
944
839
669
520
630
19
530
509
983
80
758
572
717
713
700
812
290
684
653
230
600
648
960
984
456
267
111
677
134
631
139
593
157
684
728
770
943
950
392
704
349
367
752
267
268
74
691
521
741
452
427
166
816
466
917
122
54
16
76
21
992
808
902
371
872
562
883
159
138
238
105
555
661
810
505
337
501
11
242
608
305
708
719
108
729
140
104
784
715
521
89
537
848
519
914
323
431
478
743
599
392
10
131
454
896
183
199
751
794
950
122
626
559
234
238
598
734
221
701
892
991
448
680
688
220
504
345
86
972
324
959
421
804
327
529
203
389
871
416
689
958
867
377
397
711
401
75
697
175
772
177
645
247
810
888
957
314
304
759
706
173
883
532
421
224
865
40
162
196
272
128
435
609
92
697
344
675
291
359
838
344
902
770
206
581
680
173
852
969
541
461
628
592
171
978
629
64
316
112
433
48
619
699
377
669
727
648
368
697
517
268
842
814
455
938
680
349
477
724
839
980
100
90
125
179
584
512
20
364
519
907
712
595
716
920
954
774
348
99
864
264
586
889
855
511
969
894
711
108
671
852
315
849
280
232
649
152
982
27
538
978
548
865
761
281
951
91
647
882
164
688
437
795
380
272
978
646
929
233
89
409
868
677
947
169
485
644
50
621
707
686
456
897
659
376
886
406
607
365
439
324
268
925
668
621
513
366
333
628
956
475
147
407
354
68
889
262
84
334
60
77
866
95
104
823
456
907
331
161
393
697
710
667
170
735
650
266
944
916
788
73
930
401
458
642
33
615
270
23
236
16
418
278
868
414
667
667
554
843
188
281
335
81
335
750
604
179
678
318
523
800
78
488
637
246
101
95
511
421
265
98
301
457
311
854
346
261
246
586
429
237
281
522
851
321
290
304
535
51
745
400
478
572
766
872
173
707
157
935
577
15
192
894
874
89
182
970
470
815
662
11
918
90
813
313
616
421
483
876
875
318
153
732
101
424
138
226
428
656
414
477
440
204
827
294
971
442
230
967
407
109
773
565
985
993
435
562
923
103
893
929
241
771
941
999
621
649
685
315
934
325
318
56
546
934
926
304
383
452
33
14
112
986
194
528
614
442
395
528
697
514
377
224
617
261
355
600
741
264
185
749
639
482
646
451
254
15
831
959
794
232
702
273
31
912
126
905
539
669
101
864
617
74
354
998
509
346
408
72
896
755
646
833
702
204
544
18
905
364
136
514
809
226
511
122
243
397
80
905
749
861
171
963
236
834
328
730
142
238
44
337
977
850
299
546
852
365
162
699
655
945
673
524
63
468
236
851
542
491
334
698
695
761
896
690
905
830
327
74
62
638
138
230
526
503
97
877
372
599
404
221
491
744
378
506
477
298
429
198
600
215
669
920
451
73
157
196
900
817
623
737
109
914
423
909
109
555
246
678
839
312
525
851
458
566
64
26
283
517
840
201
102
597
633
533
660
149
352
935
10
905
80
352
689
657
941
884
102
343
737
361
683
192
497
242
282
940
84
520
346
305
177
945
878
320
407
454
901
594
392
159
380
846
973
178
550
493
175
297
12
93
130
217
653
266
125
672
206
752
158
569
122
161
328
378
266
373
430
732
635
44
650
740
563
313
75
821
595
918
249
685
250
742
170
170
838
367
66
324
899
645
822
863
756
236
861
876
794
548
641
436
428
971
628
105
333
685
602
258
110
134
793
183
409
588
510
12
38
823
300
552
303
27
549
620
261
656
928
187
409
659
157
354
792
142
969
796
486
313
762
902
312
872
95
498
461
687
715
198
940
355
101
396
509
53
659
831
458
470
930
550
613
261
467
781
412
568
497
63
524
609
343
612
898
485
499
786
931
595
151
22
428
175
371
592
288
867
137
814
269
251
101
680
462
663
453
774
215
668
551
380
558
615
625
882
360
363
575
447
369
33
182
107
873
502
42
615
241
886
727
422
59
770
517
216
283
834
182
888
15
804
518
982
271
778
112
724
404
456
194
836
387
464
317
713
446
956
823
995
316
692
443
450
815
971
580
202
634
749
143
510
745
53
895
714
808
45
843
162
939
373
377
129
693
578
295
938
74
769
968
190
236
501
60
100
767
842
686
892
37
665
990
61
847
858
959
101
692
476
421
243
352
406
431
847
27
229
993
964
970
216
318
814
787
277
63
761
991
823
272
798
157
959
223
881
980
70
310
528
676
215
123
446
493
285
207
371
849
625
791
897
958
408
918
507
960
781
409
313
170
379
414
923
908
39
130
502
588
352
572
269
207
351
299
508
529
373
266
578
649
487
918
958
340
973
524
332
413
924
135
274
829
338
37
387
828
429
285
752
567
836
33
783
138
389
655
696
958
82
871
326
779
720
316
994
331
772
524
944
879
102
460
392
678
579
830
204
772
639
797
635
393
785
367
742
796
923
890
808
347
31
822
425
301
543
915
532
397
823
314
141
485
406
150
348
765
564
194
211
257
545
228
76
11
540
263
243
759
297
433
835
548
396
385
216
349
636
915
608
550
243
104
535
862
823
537
454
754
563
538
473
893
609
974
752
117
386
762
263
718
797
404
104
745
43
926
504
620
877
739
628
141
508
958
339
725
806
64
853
15
684
577
794
395
337
253
582
157
853
330
157
467
266
373
347
911
552
412
31
949
579
952
446
70
752
427
353
405
388
463
63
788
24
148
860
303
566
569
450
143
171
529
272
604
795
214
735
823
653
345
683
509
195
292
490
884
740
425
364
554
381
238
876
574
204
566
778
114
943
470
874
601
474
378
344
368
574
204
856
454
208
269
416
745
568
98
22
754
493
662
540
727
628
550
188
328
836
124
616
751
450
722
984
490
789
155
291
330
802
986
652
504
730
749
749
524
411
539
917
655
97
707
761
196
480
974
719
993
812
685
276
308
18
778
349
314
659
590
937
443
229
219
520
464
491
88
411
699
402
156
443
991
917
374
564
575
587
99
443
290
438
866
44
314
695
40
274
769
262
597
838
12
312
593
901
300
515
642
741
363
515
200
567
449
975
114
753
560
349
715
499
229
128
484
330
521
173
458
254
419
16
455
552
87
46
583
223
380
109
318
668
449
394
405
861
343
16
523
860
520
105
476
592
55
31
457
290
626
231
754
17
467
125
965
995
453
95
269
863
918
298
782
834
574
816
936
126
147
566
143
730
278
175
575
131
305
848
717
246
21
108
331
813
199
490
322
872
238
718
615
24
963
200
750
650
332
499
227
57
134
727
601
375
109
941
59
876
130
728
829
296
720
551
198
217
844
377
634
193
292
949
729
60
566
168
919
977
747
753
369
681
450
204
197
283
838
891
91
290
936
384
50
63
383
990
490
142
47
470
153
372
949
807
79
601
48
67
451
947
927
363
587
892
104
498
396
476
456
200
722
728
550
584
176
747
967
726
928
371
994
86
257
192
480
577
526
66
685
879
326
124
341
197
715
186
795
289
570
485
115
317
435
214
318
135
989
746
821
686
310
710
925
357
458
280
964
642
764
790
686
116
47
376
640
677
351
148
459
333
374
623
580
736
331
230
566
161
565
429
365
334
793
675
295
945
921
474
228
652
98
373
840
94
836
812
688
772
919
804
97
541
661
497
512
807
853
469
554
984
270
285
104
256
863
508
429
374
107
34
409
353
412
577
951
837
16
415
287
448
934
269
307
208
293
502
726
386
765
598
778
531
19
164
897
658
926
349
797
746
181
20
349
740
380
942
766
245
939
940
195
771
824
516
347
596
918
661
757
382
390
815
590
289
600
599
589
543
163
489
620
348
535
445
320
238
199
285
944
740
914
974
483
877
550
642
691
351
178
702
669
707
359
423
841
732
494
136
103
376
133
670
503
241
292
544
790
392
567
749
251
349
995
174
782
569
836
402
161
788
629
57
369
675
537
243
627
490
763
640
743
956
62
35
359
542
414
481
237
96
140
263
33
424
851
310
11
721
586
980
753
53
699
533
754
999
62
96
934
325
935
298
478
290
82
653
361
38
296
36
305
517
532
667
364
650
543
684
728
676
537
398
168
192
413
511
974
417
621
36
215
206
883
585
529
566
832
664
796
935
818
78
221
776
718
341
137
424
919
939
20
208
499
798
620
704
794
692
908
599
312
53
822
741
446
483
617
924
495
233
806
399
490
250
782
488
947
626
795
380
511
849
599
818
188
537
262
647
397
228
720
945
968
912
193
625
838
14
801
17
167
92
488
971
334
724
430
174
135
373
405
884
676
385
301
276
717
84
924
165
424
70
429
629
584
626
50
253
181
22
954
672
232
438
71
687
673
718
548
171
810
347
514
901
370
271
568
369
931
687
848
656
406
603
232
181
59
446
802
924
734
997
404
597
201
22
137
468
813
715
422
479
386
636
191
305
163
652
617
134
410
508
696
587
294
450
985
980
85
754
539
717
250
531
453
815
97
109
99
923
127
944
368
619
779
615
948
268
331
430
309
288
213
250
628
912
600
972
479
413
853
140
174
691
523
771
519
667
451
418
778
309
993
617
548
198
697
568
385
555
462
153
862
683
88
372
978
22
808
149
251
440
292
142
590
451
534
74
93
271
487
827
141
275
860
683
59
801
312
950
42
756
937
915
927
665
279
987
239
735
904
227
175
801
997
464
787
840
75
572
617
828
106
312
39
357
875
290
709
525
875
135
693
715
328
714
359
557
34
671
66
175
708
216
112
440
801
310
628
255
605
747
581
887
19
524
779
547
874
445
521
354
283
759
33
897
172
428
551
733
145
237
730
239
60
806
267
793
905
462
888
276
347
930
303
585
689
352
719
818
491
555
370
31
730
620
649
187
126
997
459
242
832
933
300
518
27
705
673
216
43
630
398
476
587
822
638
47
409
968
54
842
163
11
168
466
610
386
743
340
575
620
220
551
486
340
205
964
759
246
585
347
90
576
612
352
130
746
473
343
16
152
34
888
272
886
788
941
328
275
164
660
369
996
32
877
521
764
136
144
358
767
528
412
537
219
722
823
534
837
451
906
449
164
407
165
20
296
981
662
276
201
849
792
426
621
764
738
823
703
236
469
295
885
958
102
511
848
282
340
273
147
944
114
477
323
205
114
133
613
410
259
125
475
961
167
874
455
702
242
89
401
282
559
664
32
698
946
947
64
745
705
304
110
394
272
693
752
435
338
611
245
39
318
845
829
913
425
65
167
328
656
748
506
93
811
868
958
64
102
903
225
900
374
996
482
995
756
365
937
967
532
962
520
546
876
730
399
667
547
327
834
706
44
753
992
728
579
404
116
692
979
732
784
75
253
197
101
321
301
561
71
312
168
724
86
753
844
612
505
748
511
425
993
322
393
335
719
652
158
337
727
168
215
160
978
299
909
104
904
708
211
445
316
301
429
567
806
472
409
168
327
591
518
869
418
647
27
427
548
402
755
805
679
697
239
767
539
590
794
116
296
199
656
370
483
201
671
678
927
532
980
616
915
747
507
969
299
790
275
493
791
917
226
546
481
572
593
842
65
567
136
820
449
132
269
650
234
521
945
142
740
764
199
240
497
503
447
844
312
219
65
283
554
980
764
120
866
522
483
667
897
179
291
403
355
781
900
342
562
285
165
684
338
813
62
637
422
219
695
850
258
189
59
872
612
743
328
819
71
969
294
55
778
284
562
856
836
176
214
925
833
13
937
455
24
626
778
922
705
927
877
26
587
735
443
207
151
548
51
923
986
698
171
538
413
245
734
549
229
518
819
798
819
685
157
351
736
197
285
637
736
858
221
481
745
690
246
256
225
173
18
729
449
244
734
469
287
710
102
996
278
953
641
241
290
65
607
218
303
126
23
358
665
455
745
981
411
618
228
30
923
667
939
964
76
75
64
537
25
78
882
58
997
896
101
845
115
52
580
58
469
296
226
156
23
564
468
662
268
174
801
370
162
116
487
961
92
165
579
187
239
507
191
339
443
984
246
767
203
118
538
930
661
836
640
638
588
336
376
553
262
496
514
304
223
162
335
991
797
972
296
291
508
251
568
696
814
288
526
321
918
65
211
863
898
655
421
765
892
827
323
691
911
156
404
866
629
939
472
672
625
949
176
305
19
895
484
900
935
794
282
731
247
167
900
123
790
303
796
284
644
395
92
205
110
171
481
540
644
307
365
824
903
191
542
787
195
142
333
120
520
594
525
262
543
297
663
398
333
597
844
726
455
349
117
20
798
229
572
123
534
149
184
137
654
378
752
629
587
502
618
486
407
950
764
368
265
557
233
476
603
951
960
667
48
907
72
816
162
48
836
462
936
773
149
502
598
441
882
20
705
670
862
340
903
897
366
962
213
517
807
96
415
728
784
364
586
494
176
429
438
205
815
889
464
907
41
764
238
492
41
281
435
425
96
358
753
976
79
627
315
659
785
973
197
687
527
665
217
409
176
956
687
343
193
260
906
393
666
385
634
431
244
667
47
231
938
661
64
683
926
533
612
369
617
724
412
617
577
538
34
100
928
982
297
689
613
146
21
892
452
975
916
67
963
671
491
291
13
863
391
574
936
976
639
860
977
589
199
40
127
771
526
445
217
457
167
930
447
545
688
606
665
988
301
963
422
733
215
978
107
700
822
220
106
983
224
413
765
824
910
30
93
456
404
647
34
513
545
13
873
168
968
833
346
607
153
764
818
419
598
915
381
475
447
367
488
727
532
228
937
944
415
655
567
887
55
979
620
427
132
721
32
906
195
163
772
873
325
146
607
32
181
71
888
87
442
264
601
989
954
463
985
351
160
396
164
577
79
585
548
17
137
666
323
815
272
896
87
645
178
755
464
567
550
380
646
83
954
258
213
722
91
354
341
116
280
449
38
116
673
495
608
213
87
920
832
607
166
515
701
821
284
591
467
750
843
347
764
560
556
735
100
780
409
158
219
329
663
951
981
298
178
633
645
375
342
588
246
73
452
243
940
891
906
44
689
740
313
604
316
624
975
195
865
156
420
88
891
992
327
629
163
376
712
323
458
290
315
872
74
284
873
88
712
73
716
929
933
130
980
182
261
193
421
721
294
761
892
415
344
890
783
341
488
185
300
150
678
487
960
104
288
966
192
235
597
541
89
483
958
363
450
48
874
372
618
484
792
40
107
510
673
735
970
39
316
670
670
959
932
989
166
63
151
207
467
490
748
247
606
655
153
330
12
488
923
397
936
255
478
915
564
834
162
769
350
748
348
928
303
576
280
942
408
59
804
866
12
394
931
36
532
708
799
52
516
414
62
38
293
721
754
190
304
45
704
66
187
345
937
149
306
389
602
962
944
985
748
546
271
872
610
566
656
432
842
341
148
113
844
761
315
826
124
834
106
556
807
190
747
918
139
702
857
769
526
208
380
713
48
49
579
667
154
466
840
373
125
293
753
815
373
212
253
941
636
754
755
319
781
735
479
94
156
482
861
664
294
548
820
135
332
347
510
692
939
58
487
56
670
291
701
942
749
347
116
926
911
801
797
429
941
171
731
773
335
356
939
852
149
535
119
17
269
699
533
639
124
473
81
161
225
591
758
196
44
405
347
364
492
623
918
781
976
228
335
400
262
323
603
751
620
590
419
67
126
319
712
862
36
109
605
738
817
934
748
857
637
471
246
740
419
362
397
751
337
897
787
850
846
621
294
663
33
177
957
624
807
685
305
911
282
45
159
722
930
66
240
422
832
910
654
463
28
805
406
931
344
745
514
967
684
297
879
918
803
679
21
450
896
357
192
566
393
548
154
647
385
919
741
390
316
722
342
190
791
892
817
697
113
307
836
120
592
212
185
783
141
611
570
666
839
555
19
102
421
946
922
408
699
298
290
213
105
635
590
495
143
127
730
836
698
532
589
907
91
653
778
945
291
403
523
534
573
404
120
564
776
376
490
378
439
535
469
538
502
815
527
663
557
21
91
653
341
437
578
554
175
160
958
46
721
265
902
694
316
67
814
923
407
714
724
813
247
921
839
404
733
90
170
147
231
617
107
104
949
779
395
332
803
333
24
187
396
549
98
705
276
288
644
888
549
122
258
250
409
160
960
530
632
163
636
332
380
871
419
130
896
803
206
119
403
143
179
594
829
601
216
411
884
96
22
323
531
720
210
898
777
233
238
853
561
766
324
558
327
846
935
546
994
950
274
590
160
396
70
854
438
313
459
983
842
622
53
993
439
529
880
555
183
275
532
324
114
554
187
392
534
914
129
167
872
252
142
529
430
583
104
378
556
948
414
414
667
430
830
811
266
95
258
337
17
918
348
726
813
312
554
387
272
121
856
393
219
112
346
558
749
391
502
71
984
511
123
243
247
545
513
200
453
201
458
578
520
727
627
865
97
595
849
930
766
297
506
154
613
454
262
742
612
777
389
650
535
452
832
424
779
266
863
845
871
862
840
444
976
558
987
784
138
172
41
354
327
931
495
584
703
515
918
111
242
253
898
545
241
933
186
632
148
861
123
641
933
429
160
372
511
865
139
324
32
907
47
361
721
596
837
322
788
701
179
682
729
55
656
579
428
564
714
480
33
409
73
192
768
867
467
695
121
632
826
902
794
684
484
481
422
542
549
502
45
878
925
661
839
408
244
725
655
129
520
814
214
470
124
47
586
758
758
302
640
347
153
831
885
627
843
175
576
406
256
474
690
584
260
961
245
82
118
666
256
874
207
398
296
414
769
163
949
51
819
612
365
285
394
573
253
546
567
228
251
128
695
883
526
37
120
814
566
491
691
186
944
776
956
441
283
797
664
587
739
261
471
668
161
115
132
712
924
970
89
850
353
282
559
492
835
22
57
16
79
696
271
158
627
474
892
706
643
716
837
521
704
872
580
968
42
70
253
676
491
568
197
83
337
527
374
135
191
72
27
21
297
742
433
546
147
907
58
71
928
79
926
952
819
101
924
598
613
607
660
231
474
557
487
757
689
392
708
447
435
518
857
694
53
907
815
486
363
216
78
497
832
732
135
180
898
894
862
792
395
281
962
18
947
132
252
592
438
734
272
884
123
107
56
510
905
392
332
63
559
558
220
191
192
58
447
848
308
832
824
294
354
637
354
923
488
629
891
510
126
691
708
37
126
785
648
889
399
332
865
994
398
562
576
603
143
235
514
950
374
251
82
826
618
459
61
105
671
689
114
751
298
214
867
537
994
404
279
803
643
127
823
768
116
990
535
930
994
698
502
27
494
39
928
856
303
94
506
967
671
722
55
669
818
312
978
802
178
827
604
786
758
585
652
465
675
836
343
258
973
546
684
280
173
450
873
576
691
393
670
935
947
500
236
146
153
387
482
838
951
359
383
252
401
12
906
973
358
410
387
179
302
228
129
687
233
268
757
80
495
665
633
132
615
388
17
797
329
917
232
24
113
816
440
756
260
215
995
529
643
276
619
727
773
687
184
803
79
13
691
257
767
17
77
705
723
452
503
622
408
548
962
813
607
51
665
736
553
79
356
916
682
631
967
660
496
700
644
761
14
204
396
856
100
827
190
275
762
430
273
109
817
81
775
970
188
974
746
355
947
700
301
841
767
478
714
637
48
123
395
39
996
866
22
842
617
917
981
878
28
884
171
625
208
84
647
172
876
653
181
729
237
570
669
906
824
743
729
926
499
862
112
758
234
318
767
446
285
670
445
693
64
992
284
915
315
211
392
189
431
358
201
373
646
206
788
65
225
764
608
876
895
115
516
300
530
528
307
980
30
229
885
254
197
751
345
744
78
767
812
126
278
487
236
767
575
332
185
896
459
345
217
550
967
323
940
95
123
430
430
711
399
482
279
521
921
955
975
636
491
640
940
942
196
197
685
234
303
431
719
47
710
527
39
986
466
503
303
948
954
632
736
834
468
957
260
175
562
185
285
739
257
37
152
78
264
94
834
944
47
740
632
416
252
306
696
253
142
959
778
759
255
640
214
889
328
954
197
364
830
804
65
504
270
489
842
758
942
71
508
966
158
457
341
943
102
374
875
263
66
856
359
423
190
796
179
117
16
800
753
767
124
328
404
917
11
168
252
201
319
199
421
693
457
556
905
656
406
958
167
417
720
217
60
232
405
147
404
23
625
190
100
846
391
897
659
565
867
859
610
930
228
701
375
157
150
461
211
937
667
911
836
805
81
772
103
569
733
299
370
740
663
720
817
374
379
356
673
848
386
767
372
348
691
945
122
295
916
976
734
584
318
933
979
443
739
149
996
102
255
569
740
619
47
590
741
119
888
480
468
729
106
180
439
133
912
962
44
699
942
407
981
950
381
917
128
379
387
904
34
627
690
820
506
943
260
814
892
349
889
330
278
733
624
19
708
37
689
548
234
242
391
290
276
342
362
947
439
955
46
267
468
81
471
812
542
992
562
139
49
709
105
274
904
598
363
113
156
32
832
676
254
918
729
216
617
62
774
712
986
413
541
303
88
986
717
676
794
375
473
324
134
958
278
540
720
337
866
993
182
612
830
877
693
883
642
137
468
906
65
670
271
182
602
633
533
285
380
116
225
661
71
501
888
640
399
119
974
981
282
168
668
989
817
78
884
948
101
523
271
138
599
767
97
831
10
376
884
645
95
446
58
263
83
392
574
167
391
907
896
492
614
652
421
280
958
703
858
698
324
290
483
260
857
512
865
668
335
424
535
683
114
171
903
772
308
288
35
224
412
92
395
818
648
197
937
714
530
98
684
766
537
350
403
704
518
651
563
409
182
624
648
915
672
271
776
693
494
956
527
495
147
311
820
342
410
947
211
871
477
954
299
411
444
541
514
428
892
707
744
288
904
106
906
467
225
706
380
787
163
697
280
301
961
955
316
978
121
118
646
899
176
780
135
982
448
567
382
746
468
193
725
516
159
905
493
98
929
213
131
354
561
468
615
291
834
788
205
533
218
503
749
55
529
904
944
953
972
617
160
275
375
975
784
124
530
899
723
128
443
253
798
170
537
742
358
962
217
446
326
238
608
87
267
294
895
984
42
748
301
175
892
938
236
802
483
967
56
773
684
992
803
135
857
204
355
547
31
143
361
671
136
627
642
927
704
483
899
273
413
686
499
985
581
771
359
978
474
506
574
557
695
925
749
19
165
636
224
966
801
847
777
800
789
875
352
825
354
331
797
619
439
848
695
239
885
331
658
149
151
555
827
968
158
183
755
30
637
375
857
436
608
315
760
569
870
292
837
309
672
704
972
783
123
83
918
548
589
87
666
334
123
208
547
124
834
430
374
237
477
45
707
425
466
681
434
987
482
288
259
329
712
978
915
961
421
389
850
135
840
699
354
294
760
176
204
58
820
353
92
502
31
214
899
454
113
535
105
624
795
608
616
555
782
555
471
768
307
151
44
486
580
629
184
965
409
875
401
958
985
222
529
678
952
623
289
253
948
450
515
991
88
723
179
520
839
406
954
223
907
348
556
447
669
805
548
285
887
584
197
988
692
338
672
735
867
768
596
443
438
642
633
370
99
601
927
850
542
96
280
311
484
663
968
684
957
610
231
209
59
523
250
571
714
263
394
624
193
311
695
995
441
117
60
110
997
188
952
923
252
705
411
853
962
660
776
936
387
455
484
533
700
653
534
92
353
46
810
169
913
775
413
477
766
349
108
301
82
601
981
202
999
311
535
884
560
799
593
272
409
637
962
665
884
512
575
756
958
259
345
258
687
967
297
406
360
329
255
388
786
162
241
981
293
221
151
559
642
69
570
37
277
769
861
20
195
968
181
124
964
22
312
552
377
62
872
494
42
900
916
880
284
390
908
621
842
278
864
667
796
354
427
101
952
510
679
33
709
920
545
704
546
860
638
972
867
790
142
936
359
872
722
336
706
674
222
548
615
253
681
221
903
274
964
880
698
326
807
745
595
774
25
953
374
861
480
224
297
57
415
46
854
971
683
256
146
318
548
222
176
783
933
564
636
278
619
505
791
72
107
947
332
782
168
26
348
167
780
213
227
195
652
864
527
621
152
248
549
490
584
506
358
404
665
386
594
31
299
29
101
392
257
982
244
422
769
587
953
311
829
275
827
753
913
807
281
125
661
158
578
471
893
555
829
748
782
250
772
539
905
30
119
641
793
99
238
398
417
453
232
523
864
913
918
411
926
777
237
18
566
749
991
227
634
351
214
420
835
79
237
152
154
629
439
369
628
886
877
378
109
595
608
443
564
619
375
639
659
970
584
595
425
858
695
631
534
288
770
878
883
711
632
480
982
714
117
446
681
751
251
129
746
256
168
497
582
919
693
438
992
668
544
700
328
364
779
475
543
927
507
706
703
739
405
323
877
700
252
54
650
300
911
982
770
669
238
372
369
268
298
880
755
902
145
187
18
931
137
996
379
126
492
932
726
194
670
815
795
15
887
28
331
205
971
338
533
787
138
688
694
991
92
305
897
937
351
847
553
292
238
766
451
278
725
341
540
371
830
283
870
717
202
375
133
294
823
800
138
914
789
264
750
789
610
702
455
221
829
248
991
101
961
95
436
108
745
250
116
351
380
656
623
767
989
770
952
294
159
348
77
714
796
659
365
458
774
132
616
236
179
745
981
746
125
252
176
955
639
289
408
624
953
575
750
576
808
388
61
839
398
295
747
194
251
678
104
190
20
810
835
287
31
582
691
402
519
829
953
656
973
790
512
257
350
85
552
589
769
270
676
509
59
455
426
83
957
234
213
663
590
582
496
767
394
747
908
803
20
293
919
603
252
92
838
433
729
223
690
44
71
283
992
655
924
583
226
689
78
592
218
223
583
875
226
974
198
323
547
500
671
452
486
699
365
665
692
583
800
51
26
357
590
603
233
329
970
93
264
160
306
621
943
549
599
968
279
979
997
746
370
369
273
731
993
863
299
171
985
259
758
929
467
657
811
70
496
630
580
764
894
390
813
876
807
35
163
573
582
299
946
186
977
309
887
827
403
50
148
48
90
689
618
444
316
166
949
81
428
254
686
751
580
758
424
372
31
708
875
906
420
709
589
919
459
12
981
357
237
40
849
126
959
155
861
989
310
461
963
237
457
768
696
417
417
685
991
625
633
74
877
392
275
477
16
915
439
300
10
498
85
369
431
592
50
468
30
207
894
551
815
848
908
373
192
121
517
415
283
971
747
280
305
876
141
676
839
396
968
343
72
910
139
783
823
888
50
307
87
974
381
299
821
565
675
346
509
29
729
430
20
940
634
647
358
252
426
176
225
160
104
757
600
665
717
204
508
211
257
272
515
469
694
101
456
973
547
726
800
245
775
658
601
72
437
698
991
197
249
955
388
372
523
478
673
150
149
903
793
108
75
287
663
919
385
434
809
921
610
163
139
955
399
90
485
620
14
700
187
326
944
195
604
942
654
149
164
916
459
386
102
333
600
229
179
616
764
705
270
474
999
711
647
784
91
437
916
731
707
550
807
931
956
258
529
709
46
22
565
98
602
916
424
67
294
901
117
734
934
618
151
624
957
205
343
203
187
732
965
755
718
305
447
890
428
848
629
36
705
670
423
902
885
159
863
39
199
314
95
553
548
779
241
41
955
810
234
691
158
319
80
625
298
935
843
385
820
343
880
161
661
538
413
614
359
626
545
844
658
730
545
121
826
304
119
918
290
835
30
129
692
954
128
465
903
979
820
291
580
442
572
368
121
161
499
63
827
752
562
326
558
449
486
720
330
553
685
865
408
697
923
414
425
674
669
151
123
528
995
637
103
920
910
395
194
677
773
565
674
47
426
19
318
889
757
772
941
991
730
169
617
590
179
538
681
327
825
628
781
205
804
523
127
94
593
891
176
125
137
716
303
186
962
80
828
683
236
813
648
382
202
346
670
355
639
866
277
173
925
212
659
526
150
193
394
810
374
732
586
328
705
813
487
799
320
90
695
990
907
736
200
589
720
880
942
266
391
929
666
899
541
393
237
783
274
406
976
811
71
96
718
419
149
979
551
371
473
185
370
171
77
517
340
511
835
184
898
611
373
225
606
91
401
417
955
726
16
722
498
284
858
170
445
962
208
602
998
427
190
577
134
193
536
657
892
505
849
623
29
315
619
868
657
301
155
840
81
395
939
890
657
676
141
496
68
975
173
778
729
208
479
505
211
275
518
707
622
393
761
78
177
557
526
649
755
153
160
451
713
946
524
506
742
143
59
162
894
219
990
266
410
965
959
426
804
327
630
147
135
582
512
71
905
510
321
366
214
284
457
763
545
548
36
470
364
446
208
434
663
563
243
405
112
310
249
723
658
405
165
187
443
58
858
407
499
522
756
178
184
67
947
61
973
636
307
936
626
297
945
833
233
169
606
96
444
847
724
559
346
109
332
26
140
775
728
624
668
299
206
950
921
152
197
167
344
364
368
700
220
415
941
874
150
672
891
128
891
839
845
34
382
648
883
34
764
618
839
186
442
499
676
856
894
497
271
765
616
881
813
176
786
718
938
332
708
181
877
491
177
340
488
685
360
447
923
305
458
166
145
676
514
375
861
903
55
133
444
731
31
461
519
249
935
620
693
519
76
666
688
992
894
649
981
613
80
414
889
392
754
613
338
660
218
12
740
639
851
974
489
789
499
977
495
910
533
695
80
581
786
697
922
20
597
747
206
798
43
542
430
435
840
914
188
116
915
504
768
46
780
506
351
802
419
163
248
719
365
592
959
753
779
658
664
356
531
398
395
701
886
148
407
550
22
37
974
854
984
432
467
619
746
681
890
793
912
552
709
717
732
132
747
796
979
903
764
973
560
816
177
654
27
126
766
716
192
358
42
474
417
733
295
896
204
574
68
651
665
325
637
627
19
933
224
478
214
196
622
149
384
796
812
303
636
42
692
378
172
956
476
522
485
648
837
315
133
606
26
155
975
70
947
915
479
184
224
821
960
497
18
265
310
425
847
821
394
716
728
358
959
682
350
481
310
887
664
325
903
70
649
56
569
811
953
510
850
632
726
369
373
766
229
397
715
202
366
518
648
119
739
343
254
430
681
234
230
974
156
988
89
189
94
231
530
316
377
262
327
114
428
912
98
312
688
114
166
533
686
744
299
284
802
361
458
358
958
78
558
135
115
51
689
231
225
820
753
581
227
29
410
752
850
354
455
325
326
154
610
755
118
116
940
665
746
978
712
723
422
24
127
19
658
391
209
987
333
780
357
328
344
308
558
411
362
691
826
188
896
651
127
551
27
655
814
526
219
995
508
98
763
208
340
143
350
770
492
83
666
448
49
733
938
423
661
830
253
172
730
872
139
622
612
969
521
374
480
627
442
267
277
403
370
933
349
449
554
965
129
552
364
90
748
89
504
367
614
757
19
920
305
869
245
324
622
874
562
500
831
401
296
476
780
948
950
38
968
754
485
392
545
706
566
687
491
52
556
271
446
80
803
40
901
743
448
276
966
643
498
979
344
936
99
424
54
231
269
567
483
66
532
766
111
507
599
899
985
861
602
920
722
254
729
545
805
86
217
752
637
148
591
347
868
172
606
767
318
829
348
227
432
206
867
471
607
331
337
930
471
326
840
39
698
800
621
539
406
362
422
856
190
567
766
946
129
500
261
520
836
157
296
212
233
168
103
882
278
990
15
858
634
281
523
706
596
801
169
345
716
688
564
257
761
975
956
175
150
955
762
187
715
915
255
96
190
94
227
756
980
231
934
311
569
671
136
43
256
312
627
315
724
214
255
318
607
859
376
345
337
404
17
211
313
252
567
154
977
830
715
35
329
620
415
563
82
43
26
550
80
935
409
105
983
157
637
549
741
434
296
587
935
540
500
296
898
376
749
306
675
677
658
919
446
680
112
513
688
307
479
789
798
415
315
667
258
669
864
23
156
957
208
316
311
896
650
359
433
412
935
356
844
931
781
466
217
903
378
998
163
597
544
741
404
630
221
319
684
342
179
595
838
411
224
60
925
482
171
765
951
195
111
862
995
415
117
105
137
852
273
159
737
909
824
823
543
591
373
685
457
702
264
518
82
12
694
240
975
920
294
779
44
821
324
472
354
971
245
745
155
298
908
824
55
637
358
176
629
236
302
471
909
140
675
955
234
844
46
81
566
510
633
764
342
711
723
366
586
339
755
65
333
802
603
282
341
208
236
527
845
90
331
266
468
723
815
843
343
179
720
64
343
845
130
350
597
101
257
553
722
96
427
281
775
668
875
421
527
826
231
172
136
551
399
364
100
720
221
244
562
473
143
840
943
335
872
730
575
779
171
356
419
321
98
667
192
133
571
237
547
553
84
192
251
458
958
496
57
69
514
261
385
482
275
371
781
942
983
972
544
366
625
373
97
811
65
604
376
397
76
660
989
171
639
361
518
95
432
471
637
445
401
84
537
533
778
140
308
116
445
589
10
58
765
200
211
950
652
182
104
607
231
711
535
213
989
156
835
817
40
399
570
265
653
838
513
551
183
831
548
362
457
335
703
866
352
572
419
251
940
787
926
276
53
358
11
798
165
129
762
102
13
932
872
897
93
643
167
996
235
519
311
246
611
178
546
773
97
183
190
383
65
695
279
648
857
509
868
879
344
960
456
846
786
854
402
96
474
961
108
649
365
335
726
82
328
886
139
868
295
117
143
105
533
889
634
820
788
825
898
376
700
232
324
915
798
212
332
686
232
625
379
403
725
871
535
812
962
727
165
951
805
723
463
656
468
613
579
56
165
911
959
318
370
626
356
320
29
857
196
792
485
591
74
216
785
973
265
467
311
510
789
97
465
397
11
749
891
795
81
97
507
891
775
578
248
186
749
494
832
163
769
411
425
744
718
720
323
324
850
754
925
405
658
881
716
631
905
508
545
653
872
968
685
234
153
31
881
118
268
145
906
292
701
354
855
155
548
388
801
213
70
216
520
369
308
246
522
625
110
151
742
505
660
450
846
66
594
974
852
64
44
483
151
544
468
741
559
553
163
958
55
815
597
532
805
972
507
441
31
796
408
128
691
32
917
591
63
224
887
674
388
297
192
970
336
990
719
36
173
187
74
247
29
746
329
100
924
193
717
767
181
826
751
806
702
457
193
284
116
566
879
510
855
517
196
115
843
67
787
956
126
691
223
173
75
402
973
955
145
615
835
704
583
786
226
360
464
237
549
845
106
754
546
716
891
531
199
769
280
343
602
55
595
157
356
291
850
849
108
819
604
475
928
118
39
436
236
93
195
962
172
350
545
149
338
443
547
549
707
188
84
121
325
760
311
772
892
443
404
263
734
617
381
469
186
192
290
10
338
878
748
783
433
604
119
273
775
228
843
547
247
970
313
560
166
704
460
103
116
106
932
612
638
173
483
742
87
962
450
957
847
230
30
394
984
761
547
176
93
624
288
887
363
129
423
498
161
180
225
844
643
138
415
626
598
592
409
865
372
997
439
208
904
190
854
133
352
511
966
824
822
146
549
661
421
976
345
10
465
375
544
182
884
148
448
790
906
319
63
457
252
754
255
200
779
982
998
599
561
772
891
72
971
588
658
594
206
858
399
677
381
387
414
486
512
141
336
626
383
136
281
478
44
344
971
185
939
209
979
165
356
781
773
262
713
787
146
864
286
54
503
896
610
139
593
251
365
683
634
824
117
399
121
763
226
451
652
491
926
997
216
938
649
211
214
840
558
816
485
60
69
519
18
350
134
996
606
447
706
18
661
472
610
541
829
546
272
881
278
541
163
921
147
544
770
123
448
390
984
522
132
953
300
811
751
997
674
303
566
48
523
581
559
667
278
713
756
253
363
296
197
413
925
345
663
972
717
959
965
825
398
429
587
723
630
692
106
677
626
408
207
936
675
110
156
147
985
227
457
117
446
887
171
205
958
975
93
432
506
284
403
327
506
481
446
918
708
503
451
177
436
62
747
627
199
557
438
777
608
744
259
733
114
910
413
276
782
128
268
787
485
253
106
560
13
471
478
782
15
181
335
537
798
311
327
61
898
669
160
703
45
256
984
517
957
442
343
859
468
750
126
994
826
648
762
270
362
944
296
439
603
567
174
272
224
513
223
636
611
510
60
970
687
512
823
292
668
13
601
798
158
690
335
534
475
238
467
739
577
791
187
15
874
654
250
394
284
299
567
960
963
845
561
217
351
630
311
876
81
596
422
333
187
988
12
286
389
819
59
657
843
616
66
837
419
826
40
525
29
405
488
573
285
354
260
719
912
61
75
549
92
111
35
657
157
583
16
264
61
818
418
85
258
710
509
13
796
361
782
68
225
91
724
453
550
458
50
136
326
542
855
686
383
625
482
920
674
94
862
814
239
63
283
75
381
988
695
176
464
507
307
239
666
818
811
111
706
20
379
686
160
390
697
176
713
356
548
259
157
389
21
406
212
185
147
482
785
151
737
350
539
461
439
690
946
778
291
245
453
379
106
95
125
393
841
821
718
149
22
814
141
888
77
335
254
451
625
125
251
828
57
337
23
326
952
685
965
604
433
610
556
684
142
540
165
952
798
611
24
671
571
955
580
984
805
595
52
428
393
821
50
60
432
90
874
858
348
770
72
959
970
249
515
748
964
246
108
844
656
319
722
37
815
694
345
298
824
412
244
177
288
216
65
139
457
417
510
277
760
265
678
608
840
226
388
964
361
621
187
754
32
20
392
197
884
541
108
527
826
589
610
627
995
601
181
498
112
594
368
959
827
961
978
699
212
744
672
522
236
638
91
471
135
43
467
317
978
895
559
868
300
670
482
188
324
138
587
144
762
905
896
961
624
393
424
101
573
791
312
451
104
873
282
466
198
929
456
518
549
185
631
926
265
623
894
944
737
728
70
710
847
73
23
224
383
132
996
799
398
559
776
413
757
773
192
732
446
10
315
446
797
201
187
874
893
114
968
688
538
689
955
485
544
234
817
911
954
656
803
255
515
853
905
582
270
806
457
712
677
884
733
586
886
731
525
978
158
359
529
191
628
94
480
380
710
964
113
193
677
931
783
457
459
127
391
32
55
783
51
75
480
707
514
961
624
698
633
523
395
409
269
121
192
204
47
68
83
529
753
921
851
725
641
164
164
436
384
692
528
167
825
503
221
48
520
164
628
735
164
146
881
211
917
490
484
105
494
741
347
946
757
699
403
868
774
526
805
353
160
268
513
626
752
913
22
402
662
66
116
135
330
488
603
761
18
454
612
410
301
777
357
347
286
888
574
605
552
464
458
435
797
81
765
543
601
152
114
960
827
747
67
665
571
768
870
951
271
632
521
125
366
34
505
81
18
879
89
687
443
671
234
204
457
910
404
210
583
823
85
457
687
944
871
261
108
169
70
323
712
677
643
568
247
427
495
241
919
753
922
445
756
742
403
588
778
603
220
248
317
416
106
87
218
976
406
747
438
816
157
610
11
513
163
855
447
562
150
843
609
863
134
356
263
610
960
418
512
873
801
480
896
391
831
953
669
129
423
657
595
986
131
127
638
435
302
335
162
314
367
413
682
137
132
276
916
677
900
14
530
147
326
242
867
329
397
89
435
762
889
198
169
592
49
877
782
831
525
824
439
860
356
43
609
754
755
134
538
766
219
614
527
202
23
869
820
545
781
268
952
587
211
272
523
278
883
981
445
48
56
940
448
558
63
844
277
459
477
401
376
750
171
636
593
325
506
288
949
986
728
417
282
733
235
528
371
920
163
147
60
805
287
82
830
811
368
572
907
801
949
648
765
103
338
164
676
56
116
502
399
181
400
442
762
98
402
369
328
403
292
598
312
838
651
203
486
318
513
266
526
437
760
95
84
66
687
919
761
117
530
972
432
593
84
524
716
689
995
30
499
268
330
767
911
966
567
100
587
835
961
613
437
837
112
822
804
919
131
33
118
457
430
933
633
100
753
205
347
108
876
684
743
702
370
47
594
694
236
591
533
705
148
913
280
831
13
226
737
644
795
665
524
738
781
390
136
934
222
120
369
735
380
804
82
21
250
368
425
555
250
619
906
230
260
366
318
273
824
752
250
592
227
721
715
228
389
899
127
934
503
974
846
739
153
693
155
984
287
105
63
447
415
786
242
651
827
476
195
794
724
56
983
156
357
235
346
368
34
830
957
185
16
745
604
624
72
534
892
57
394
375
599
854
136
860
523
377
779
206
256
771
823
992
706
260
253
620
256
393
343
187
985
132
648
323
496
869
297
442
548
722
480
240
355
162
982
799
412
618
246
436
286
505
370
452
464
194
959
769
32
418
917
312
91
987
569
135
127
245
498
748
221
936
759
913
386
390
352
71
842
296
376
884
102
963
554
571
879
655
793
129
358
97
518
249
366
240
301
581
430
575
626
895
531
128
486
912
903
522
604
808
964
560
799
185
653
782
586
103
324
53
248
441
592
92
808
483
369
760
612
410
653
494
689
620
152
63
199
749
575
941
121
597
155
910
400
768
710
257
545
637
58
624
130
396
502
461
486
589
231
133
737
98
813
115
677
911
525
113
507
188
773
770
557
996
137
409
944
78
664
533
977
177
606
343
984
780
138
916
89
310
743
814
866
306
308
710
168
852
35
491
233
823
741
449
419
223
718
464
541
277
258
314
57
642
332
740
119
181
319
622
788
651
778
507
940
661
955
213
427
652
468
975
888
886
813
279
478
547
82
935
589
57
129
911
804
118
395
241
988
892
980
612
928
242
569
272
276
319
729
570
465
891
732
610
726
823
25
282
934
690
602
100
333
908
779
801
806
783
691
783
400
536
72
316
833
414
793
628
507
734
816
879
524
235
191
135
80
788
274
735
374
809
396
95
734
419
217
154
441
131
835
916
998
587
400
201
220
278
373
650
16
372
165
571
37
816
560
240
346
475
886
396
313
181
591
962
890
479
879
955
754
423
431
56
12
982
817
471
19
555
613
49
662
105
970
267
637
121
289
385
240
637
200
958
67
466
815
954
143
798
847
404
900
196
443
303
688
980
834
495
145
213
503
118
277
250
839
435
199
392
84
139
359
879
436
890
309
368
550
927
761
718
338
402
268
946
956
846
343
38
350
576
895
377
140
947
364
244
616
557
360
689
689
716
327
814
836
300
855
455
666
285
275
943
832
961
513
563
160
739
373
330
278
83
448
629
783
372
247
974
414
655
470
902
663
995
759
352
285
487
351
337
635
993
639
204
474
943
542
990
492
658
419
934
411
30
492
916
13
392
443
190
610
844
402
926
423
207
666
179
108
432
208
910
700
55
490
859
707
491
698
78
183
214
631
808
192
972
402
959
170
211
605
233
467
973
446
521
219
44
851
757
425
18
301
699
629
768
316
391
263
830
366
629
338
433
249
339
315
437
800
383
549
520
399
346
917
938
311
201
254
804
463
683
956
337
88
90
761
275
437
200
667
193
967
838
43
168
303
322
577
885
983
384
896
368
421
445
243
574
925
782
929
119
431
692
556
390
25
594
806
500
945
571
451
582
50
96
886
596
351
305
66
29
945
751
310
122
545
430
422
505
240
226
892
193
147
754
100
267
406
586
883
68
610
76
89
713
461
166
252
892
173
374
80
519
898
348
460
305
926
423
190
200
820
550
884
586
551
757
632
410
568
127
932
522
257
774
765
412
548
148
510
956
75
433
138
682
601
671
789
755
108
319
80
977
146
488
428
657
61
960
388
971
574
14
158
766
218
506
810
185
833
719
147
836
34
951
91
907
81
265
663
393
91
633
290
307
460
134
763
774
749
701
613
87
111
953
530
221
10
221
603
619
783
913
611
418
29
211
136
470
936
907
671
493
392
992
782
197
426
562
567
351
55
321
803
577
814
244
692
925
104
827
959
746
116
750
754
846
848
911
936
186
141
975
340
155
801
874
358
92
699
376
764
334
417
780
631
895
360
389
122
207
126
320
782
362
733
346
673
600
336
947
281
708
857
166
696
729
919
567
496
785
47
358
254
299
859
335
788
867
446
674
672
859
53
869
303
419
176
136
972
831
312
883
946
817
628
814
650
16
570
399
950
123
512
556
769
34
944
573
483
948
546
118
62
908
933
925
724
629
746
392
886
288
352
748
595
482
491
366
669
379
13
735
264
353
49
451
173
785
487
390
781
250
360
485
24
353
249
663
127
746
692
166
780
999
550
828
762
285
577
830
236
80
813
153
475
913
444
220
544
244
64
491
733
632
215
847
212
70
156
975
596
792
569
376
540
574
232
701
713
143
529
20
266
603
865
545
115
570
264
460
222
693
254
265
622
889
220
799
719
523
640
647
445
748
632
976
963
421
670
963
799
993
338
543
367
519
130
338
285
434
210
284
395
212
898
458
125
238
588
891
633
400
12
112
870
219
226
307
179
187
908
954
361
334
917
911
724
484
631
320
334
528
904
789
838
702
331
743
729
312
616
592
190
549
941
246
540
865
76
932
186
189
656
22
757
219
803
103
11
823
865
975
686
718
424
635
87
595
127
583
271
149
620
344
600
277
320
748
99
855
971
36
862
475
955
530
40
609
850
161
389
902
951
471
223
166
465
526
999
560
188
327
935
371
720
490
213
24
384
392
143
212
89
763
65
498
686
598
563
21
661
786
426
706
805
196
752
204
749
95
117
208
81
121
999
309
598
627
470
714
480
277
456
832
501
712
475
231
925
306
382
177
311
395
89
401
20
19
716
300
629
152
819
361
319
194
881
642
746
720
772
96
250
765
598
732
173
602
115
793
184
476
417
582
533
538
94
591
22
857
127
349
373
933
97
117
835
669
834
41
607
624
452
272
844
976
732
183
705
987
918
934
529
889
571
271
384
930
605
202
365
367
766
471
664
567
492
851
301
613
850
355
476
431
453
149
817
688
585
23
527
41
575
943
799
636
900
169
662
964
581
969
624
469
291
83
217
553
694
983
59
825
236
948
983
424
172
896
125
24
610
958
936
705
950
132
528
846
739
360
719
977
62
332
722
816
734
305
656
23
811
940
459
528
406
804
395
406
322
91
171
516
424
321
315
990
722
566
372
499
249
962
69
238
921
158
545
806
355
202
508
284
304
38
707
383
54
786
842
707
706
877
749
275
594
542
40
20
93
209
221
75
589
282
515
809
926
528
709
668
456
900
537
787
360
399
496
490
984
650
730
960
866
104
630
646
590
375
235
272
55
122
164
765
123
357
960
712
320
246
892
279
261
324
785
757
443
692
738
973
393
341
376
681
146
778
716
131
407
738
795
256
241
51
728
814
236
984
815
59
746
585
176
339
771
503
539
48
247
655
585
663
183
705
594
720
674
206
956
701
149
749
152
434
426
462
649
952
149
879
367
24
680
879
762
75
644
299
332
149
955
774
347
481
523
243
36
436
518
421
830
43
687
984
463
176
38
454
615
886
353
163
469
921
778
878
385
276
452
288
911
92
166
913
637
591
940
150
205
25
943
307
132
904
657
749
235
296
907
240
111
270
899
738
742
328
774
995
397
555
630
643
751
44
451
437
554
584
785
874
968
788
95
543
173
205
916
572
683
968
421
100
252
959
315
555
560
472
482
708
674
505
75
836
991
220
293
705
708
897
578
852
99
925
272
192
652
26
754
33
774
480
765
766
88
820
276
367
876
402
774
161
869
64
463
987
566
445
450
201
57
58
847
819
935
325
426
955
920
166
188
878
205
376
718
908
131
181
449
672
172
187
568
692
684
564
736
292
749
865
627
253
978
936
954
405
941
451
194
350
965
125
892
949
595
200
788
395
183
209
689
134
819
559
900
486
275
900
266
837
471
613
191
848
537
932
662
933
886
413
220
684
671
756
87
487
995
680
973
665
467
697
685
965
176
973
850
584
589
140
547
193
293
567
111
659
400
965
353
707
284
547
114
355
421
411
201
250
599
498
689
604
705
769
464
215
10
44
953
198
367
880
574
486
255
515
402
460
660
435
170
810
306
388
410
758
709
197
119
331
542
873
237
347
829
476
727
123
780
903
856
673
943
182
829
885
431
647
261
823
518
283
712
765
617
934
605
266
413
438
348
292
734
399
913
656
879
859
370
436
761
499
223
712
632
660
745
392
781
858
66
239
640
643
833
805
163
130
86
347
510
575
394
788
900
988
572
450
31
136
978
916
118
168
746
838
989
775
409
538
323
499
898
640
498
31
78
260
358
884
563
84
374
196
754
232
18
90
17
405
856
352
399
825
944
136
487
383
400
224
70
19
702
140
808
420
52
189
891
409
418
597
544
384
122
212
214
128
340
364
802
136
959
320
879
229
525
811
332
446
660
424
751
244
154
707
610
818
416
153
643
521
108
866
787
869
572
595
993
146
283
830
954
78
416
478
114
668
999
454
152
702
674
510
231
593
522
161
54
18
654
798
198
61
58
909
762
357
886
111
909
806
895
677
404
287
628
89
965
246
554
145
726
818
113
302
674
276
582
774
94
727
155
282
17
150
605
518
421
711
749
462
449
489
55
433
779
156
605
548
898
668
331
51
588
231
482
133
344
876
123
765
662
814
765
893
458
642
105
194
442
902
562
125
31
194
439
816
997
580
385
831
939
927
112
604
96
612
277
224
38
639
676
821
12
814
544
792
658
749
841
941
302
89
642
584
468
302
598
541
217
560
762
216
14
924
381
364
163
759
522
870
898
137
751
147
570
749
591
56
794
400
65
208
583
507
807
993
591
423
892
313
495
68
727
801
217
539
282
238
773
728
672
780
955
66
800
485
806
330
880
970
768
867
739
475
461
840
248
704
916
832
138
887
762
898
32
31
168
291
230
747
160
584
495
601
900
428
959
359
154
854
860
261
494
498
965
336
110
416
362
384
472
720
464
31
681
119
331
188
602
884
300
538
73
83
509
475
851
910
875
780
590
482
616
965
47
213
369
274
82
775
876
110
255
17
38
760
782
722
128
872
813
618
71
252
861
243
152
27
484
798
760
36
334
299
480
867
245
956
98
605
748
267
291
349
280
227
635
73
434
382
220
735
246
535
917
825
430
186
755
15
221
969
725
987
179
470
867
578
102
918
232
320
862
984
712
113
743
174
425
136
576
219
691
724
483
883
253
926
979
859
23
11
23
263
822
555
465
694
611
878
467
705
234
597
953
649
636
599
649
93
681
610
962
612
922
201
452
721
876
160
544
910
232
436
332
397
649
55
888
981
708
291
938
246
329
294
188
920
641
400
591
959
697
92
319
870
288
448
608
317
561
27
233
308
987
95
872
569
795
634
923
121
278
534
885
234
544
51
802
267
683
876
617
338
803
759
900
24
152
402
243
534
397
105
871
601
825
390
699
921
563
704
701
738
714
498
672
449
493
705
836
693
190
719
161
310
857
863
922
587
222
938
281
863
458
607
583
334
530
637
377
754
828
867
44
779
561
754
998
962
887
823
555
703
72
171
881
988
745
222
93
780
978
30
955
572
298
955
380
45
286
588
124
245
229
643
932
829
409
523
622
359
959
905
917
35
293
33
112
177
996
795
198
219
982
478
854
996
566
391
582
89
553
202
608
420
843
180
248
721
322
427
446
612
672
166
664
459
15
907
822
156
173
730
347
889
773
837
931
706
382
479
908
445
967
878
873
991
598
773
200
629
870
111
33
346
360
979
973
673
769
306
711
437
325
656
688
55
588
187
286
734
994
209
702
592
220
394
497
746
969
34
565
401
162
816
178
652
548
654
713
671
371
174
802
508
494
702
613
902
400
661
603
638
594
186
277
139
293
873
875
683
637
106
206
56
366
930
696
187
713
704
55
103
646
884
471
864
645
442
382
958
532
472
441
361
38
231
865
302
188
29
870
826
725
674
824
93
101
27
22
894
623
796
58
332
179
508
234
244
261
934
932
64
875
981
14
211
909
814
995
822
257
190
815
502
217
622
138
95
171
919
28
705
304
522
216
460
962
391
237
921
310
254
727
54
345
495
290
378
360
717
190
286
509
93
542
597
890
127
788
500
913
993
751
614
358
200
545
409
269
491
246
732
670
89
977
623
814
133
903
247
795
847
127
894
448
274
350
699
517
424
745
75
484
296
822
70
820
793
301
856
515
938
327
401
632
102
636
993
378
481
191
672
922
232
197
319
825
409
738
824
487
258
515
794
656
364
20
581
645
223
79
234
974
751
426
368
821
103
937
748
885
408
715
846
123
499
500
229
846
710
921
374
774
136
501
218
617
30
311
675
272
285
351
505
144
602
811
876
670
828
899
458
876
28
480
291
673
859
246
244
162
658
730
956
175
486
104
858
174
69
132
189
531
676
176
309
299
846
594
632
552
362
245
536
547
244
463
182
292
697
903
785
388
34
59
757
523
206
655
993
118
175
798
289
657
749
972
954
869
594
829
848
676
916
350
872
599
209
85
224
824
264
950
596
237
349
468
137
579
204
888
218
802
396
696
446
128
730
849
863
288
608
401
734
19
433
570
985
824
132
320
957
114
123
978
844
402
615
340
201
763
756
543
498
239
82
924
96
423
579
177
650
105
568
753
426
84
533
653
880
801
565
59
190
402
511
998
76
167
938
308
556
509
130
714
482
75
85
177
511
55
254
444
630
284
946
53
808
382
965
289
78
497
558
626
966
785
431
23
870
261
139
769
104
678
33
499
151
653
143
711
52
837
661
450
149
548
395
69
269
371
695
923
481
512
867
200
300
868
851
695
346
958
851
255
513
24
591
372
530
986
163
597
730
333
250
938
132
946
935
429
453
452
549
805
233
199
81
763
643
503
868
137
600
784
746
109
730
183
616
71
833
788
435
936
880
931
181
567
484
649
453
924
763
925
852
335
229
602
808
907
494
270
965
132
114
926
831
949
369
521
209
427
122
16
469
665
430
432
675
557
904
788
224
908
349
576
214
67
370
864
835
618
225
492
984
385
907
800
668
965
792
757
889
382
199
657
183
341
278
98
353
550
87
401
275
567
164
93
729
123
605
249
194
27
423
852
785
530
750
597
585
416
916
653
237
709
667
879
168
814
826
987
128
217
479
830
770
678
624
51
380
491
369
864
892
285
863
911
785
756
146
531
509
342
172
388
826
181
109
220
132
394
666
523
896
991
159
455
416
871
765
932
536
632
437
463
198
92
671
743
716
949
637
608
967
427
41
366
895
231
68
613
420
873
271
288
49
430
151
75
412
537
835
204
782
270
376
576
361
991
768
223
882
487
322
724
616
675
800
849
85
773
874
11
334
886
375
197
117
695
42
252
909
188
713
942
204
97
497
104
338
984
831
866
211
324
57
582
143
970
98
991
67
877
663
643
156
587
893
146
747
32
269
314
122
829
209
326
202
138
277
179
900
281
379
65
87
929
620
837
173
621
469
838
534
212
18
889
621
391
170
50
343
207
897
164
697
709
913
913
973
619
797
675
224
94
742
282
63
627
377
16
733
365
508
603
158
627
829
490
235
441
685
421
901
375
751
564
176
40
263
273
407
29
710
415
488
678
723
275
834
668
393
187
940
726
634
884
259
178
641
664
159
995
14
59
137
916
961
146
640
283
239
504
29
259
157
784
507
947
90
992
999
732
447
777
164
221
361
764
487
400
935
568
487
787
699
952
292
428
451
261
780
970
475
556
739
60
585
222
914
847
312
406
202
71
508
82
621
149
681
809
484
988
935
234
14
538
29
726
970
148
144
219
266
332
950
126
537
666
538
355
855
855
680
63
992
361
209
687
91
413
271
472
150
95
233
588
142
638
677
30
281
338
175
416
486
267
180
574
430
694
268
147
114
704
969
133
998
510
670
624
21
472
211
85
811
435
973
935
570
901
625
699
617
190
255
125
530
75
755
695
964
775
723
241
358
768
204
619
555
862
830
849
460
214
629
897
637
540
450
404
633
512
287
427
696
282
818
179
258
305
291
584
181
274
316
623
855
895
396
508
122
525
444
844
177
674
565
34
44
854
603
25
728
584
375
967
44
877
949
929
449
799
87
838
762
106
69
99
527
884
277
171
205
161
939
683
977
697
694
968
71
806
108
617
512
879
552
109
525
112
671
524
72
987
61
503
627
994
210
332
62
383
635
130
817
730
144
296
792
939
209
59
364
485
919
545
665
504
765
26
630
794
132
50
774
839
588
526
900
428
969
719
467
11
707
693
714
353
123
416
62
695
713
814
441
502
325
937
832
571
224
925
186
709
255
315
756
558
250
876
10
449
361
601
424
219
217
619
555
783
108
146
292
142
504
444
454
745
699
516
45
653
836
465
455
326
45
174
238
735
915
268
74
945
976
240
211
997
788
555
116
748
194
149
35
812
135
36
605
284
467
809
656
93
432
721
326
555
613
669
792
806
323
102
642
311
658
396
711
988
101
415
947
517
238
497
659
277
638
967
465
531
439
19
858
829
678
999
910
619
587
958
833
877
624
420
519
690
344
791
321
892
515
517
214
480
242
696
735
986
622
41
254
396
594
333
700
514
669
274
395
242
123
882
981
252
609
164
235
622
31
836
537
557
841
702
640
297
227
767
282
764
953
124
341
18
755
304
948
61
38
248
565
94
645
64
541
328
156
72
865
278
447
947
919
793
41
251
123
414
397
969
718
280
397
167
455
929
705
680
905
98
985
368
700
233
486
650
310
940
581
49
871
864
527
758
578
142
866
252
975
213
379
611
828
853
383
216
682
386
897
686
921
370
292
527
427
376
146
649
43
332
677
257
51
349
535
549
687
35
391
106
798
752
800
91
977
50
911
768
193
222
272
642
270
96
449
435
700
382
704
853
229
704
511
550
578
836
467
854
259
16
67
19
34
532
155
659
69
121
550
400
878
720
307
614
300
195
631
924
945
425
297
344
286
541
678
884
932
769
637
928
31
419
36
673
582
92
369
477
315
421
839
315
215
35
857
810
385
232
976
469
405
768
690
756
45
266
445
962
118
495
124
601
147
21
174
518
944
315
240
916
78
602
502
33
104
121
410
56
611
318
878
458
17
408
474
883
306
40
382
281
568
555
924
199
355
749
857
131
119
275
618
678
698
772
588
111
379
528
306
137
696
887
544
865
798
821
668
142
960
903
666
998
972
664
376
499
712
517
654
623
220
279
96
359
788
391
385
327
756
440
188
462
19
228
667
209
733
785
980
773
316
672
777
779
384
172
564
77
186
296
272
951
637
634
257
913
138
901
188
745
131
617
262
350
439
653
223
89
64
571
939
812
799
980
167
165
30
694
332
816
458
154
761
220
678
83
982
473
367
588
471
368
485
538
862
931
97
14
920
803
967
170
285
274
122
32
172
628
877
531
486
697
568
859
561
530
879
196
927
763
143
296
112
504
205
43
286
987
216
144
994
599
649
959
711
521
469
998
688
961
584
631
497
659
545
305
189
197
144
968
199
260
270
740
863
607
135
548
657
650
891
810
897
152
977
975
693
106
664
777
834
377
762
535
879
979
773
644
985
448
652
593
196
955
514
123
228
384
900
470
526
772
818
183
37
514
21
660
642
626
479
255
297
149
329
658
422
257
127
534
365
809
941
126
630
105
634
894
193
11
342
549
211
994
664
972
442
656
296
962
779
285
588
968
309
948
185
578
195
92
368
409
747
679
647
338
342
742
19
883
538
890
508
373
718
685
415
65
479
251
270
732
561
407
198
63
77
705
987
545
194
893
458
475
277
602
933
684
378
265
949
978
723
131
433
41
307
752
350
684
473
301
695
636
65
513
638
92
910
668
315
783
795
237
854
146
943
950
12
746
686
978
357
549
452
148
375
81
974
847
221
306
77
602
647
755
955
219
820
883
904
153
870
838
464
960
170
691
667
550
72
969
508
673
528
182
646
822
840
575
806
185
195
171
206
601
307
20
797
92
48
637
857
660
328
451
187
877
209
769
785
363
897
12
367
922
149
590
902
503
575
513
169
752
505
372
146
876
161
84
65
515
360
59
563
892
50
807
950
476
589
773
513
251
320
288
493
636
525
379
494
408
307
464
580
31
232
263
979
477
638
735
356
835
581
873
187
654
846
16
104
686
853
833
967
324
194
153
926
984
297
591
140
712
867
617
106
61
604
595
597
866
177
269
331
836
615
607
284
585
262
786
322
708
490
59
537
239
522
247
32
183
92
550
695
815
646
550
17
777
890
298
824
955
140
367
967
430
835
580
907
394
751
642
120
712
593
683
393
503
10
268
427
686
86
313
806
85
736
715
959
264
813
659
91
14
491
382
938
874
152
442
929
632
171
99
756
318
495
161
784
564
341
313
295
470
989
816
67
620
631
891
332
681
208
871
832
732
328
949
754
172
350
463
108
467
829
448
316
310
78
300
690
941
475
862
768
290
119
492
700
908
411
663
612
416
520
501
622
981
695
727
37
691
883
163
838
518
938
197
29
223
273
929
496
459
153
485
650
394
907
308
778
395
12
889
514
346
324
975
554
117
785
279
18
410
868
120
97
302
44
724
31
806
750
692
865
436
534
842
252
838
855
709
290
681
536
446
494
783
746
92
206
385
733
63
652
184
419
310
311
622
444
567
491
234
761
904
261
930
872
509
756
221
812
882
141
857
372
556
488
823
465
90
23
752
448
323
836
854
945
822
782
250
567
316
262
737
98
650
716
53
951
840
999
974
117
779
125
62
281
775
967
597
341
947
963
156
816
910
589
49
402
938
421
940
518
105
548
651
643
979
608
79
819
929
199
73
677
535
892
771
937
514
529
194
903
712
753
143
675
704
558
757
944
627
348
177
111
427
278
132
639
127
297
485
585
403
230
827
902
650
321
896
775
562
846
725
850
980
333
82
250
920
371
440
965
748
136
381
169
429
279
163
934
51
992
524
562
769
445
635
613
553
372
263
271
821
594
696
862
519
651
81
701
260
942
953
166
377
822
537
674
675
808
681
356
224
25
357
367
829
560
458
969
82
390
440
601
586
918
710
669
726
486
494
480
79
706
263
229
528
166
903
719
779
123
429
52
60
307
652
22
381
923
287
89
150
900
318
286
717
116
394
597
777
771
86
248
897
92
484
368
118
347
986
646
16
188
494
744
683
167
983
562
763
72
113
399
428
244
409
648
983
461
21
187
798
931
646
584
901
777
335
712
391
901
108
74
881
732
803
447
629
847
185
657
888
781
898
290
415
66
335
756
221
191
465
60
67
403
29
954
622
415
927
871
103
710
493
899
827
104
878
313
64
650
190
275
785
596
245
91
924
25
885
978
957
791
547
105
331
546
958
620
300
779
222
374
35
443
23
501
341
672
211
67
422
109
648
393
555
749
139
811
958
242
433
499
459
632
875
757
254
362
863
207
615
214
554
302
584
234
480
513
994
114
360
680
590
116
705
596
387
949
336
925
566
618
17
959
354
499
256
544
973
808
68
167
317
604
927
539
377
507
499
123
262
405
451
336
253
148
745
987
901
677
358
25
364
79
757
71
551
552
412
807
751
781
951
805
486
372
919
850
447
667
928
727
124
512
845
765
972
950
598
227
153
238
579
335
261
329
571
480
253
867
975
281
353
62
283
140
672
139
930
655
681
93
538
974
690
163
292
388
234
251
493
222
481
974
612
952
60
751
731
296
433
556
345
600
999
164
288
542
832
992
276
100
61
275
29
345
625
898
268
498
246
262
938
799
698
293
965
845
181
258
34
323
335
990
861
951
756
164
331
699
609
839
511
416
107
948
824
84
910
467
398
585
716
902
892
263
219
28
879
606
956
209
144
107
452
670
305
220
181
562
87
681
582
869
653
361
47
297
145
962
603
963
898
80
581
971
540
437
732
223
943
173
473
417
801
274
982
505
899
623
351
37
394
644
252
331
605
929
183
111
762
896
897
873
601
411
217
511
68
787
700
522
32
133
41
799
856
643
626
245
537
23
906
208
122
319
737
853
689
584
238
237
607
195
161
699
16
374
879
118
794
225
151
956
494
866
215
566
386
397
70
80
396
982
890
436
36
859
883
324
454
526
178
528
417
94
425
278
837
63
361
326
81
854
155
594
955
943
94
236
446
819
488
441
14
826
630
474
539
709
534
178
999
370
832
21
492
550
432
739
305
436
367
861
234
349
518
504
933
369
162
619
392
841
449
96
783
866
949
127
718
430
150
815
29
690
91
271
736
530
594
489
253
253
896
394
580
41
719
400
467
910
643
851
69
666
131
907
488
773
301
616
86
296
137
404
59
681
934
989
724
371
576
316
190
784
42
22
912
633
655
716
671
534
787
174
891
692
237
931
986
246
515
204
247
938
61
468
594
53
924
409
784
99
512
492
644
413
305
761
905
945
664
603
722
546
194
726
18
109
184
405
50
32
262
879
182
463
543
387
991
818
587
263
619
807
972
876
972
547
739
49
496
399
122
659
527
759
456
754
29
500
510
19
867
957
530
378
97
852
110
764
141
33
196
177
773
320
307
729
647
472
621
720
958
792
759
955
981
491
413
365
155
571
174
834
143
168
482
257
596
770
116
663
811
858
261
780
914
326
194
624
633
809
128
809
934
99
982
733
974
509
945
185
827
979
415
625
404
943
664
419
707
455
79
498
743
550
107
655
156
940
428
682
51
989
45
654
94
176
80
359
828
365
178
652
672
881
438
337
54
464
446
851
199
820
636
736
973
661
619
111
829
719
995
320
469
784
316
780
677
60
50
98
518
961
939
801
554
765
919
912
206
157
822
811
315
332
381
28
536
925
512
839
250
980
59
79
701
976
761
668
818
223
202
135
155
341
782
859
292
344
809
987
489
814
172
225
12
597
83
107
395
745
927
191
982
183
964
531
581
941
697
504
546
366
193
156
441
888
501
686
309
887
215
616
895
624
888
897
87
518
832
926
356
590
600
979
799
72
648
877
117
265
388
398
968
532
25
902
738
116
61
545
691
673
488
187
568
774
275
589
953
482
410
815
130
899
540
795
985
259
322
355
144
124
385
22
362
101
324
164
822
294
118
476
139
365
645
240
545
10
974
71
144
51
907
910
600
176
247
50
835
952
413
970
224
169
142
366
882
199
406
191
153
922
818
502
191
507
508
154
302
717
851
653
986
827
809
976
376
97
128
909
404
455
435
618
840
945
558
731
174
609
707
961
573
501
737
431
905
584
926
780
411
200
861
327
720
637
716
296
506
384
752
721
739
548
343
120
257
879
878
998
684
285
220
493
661
948
802
135
643
789
69
583
649
164
401
729
352
354
460
258
62
639
375
998
982
514
607
611
238
342
738
848
875
118
563
317
122
883
489
149
386
335
655
872
590
247
625
676
549
84
294
120
804
573
917
398
695
594
212
805
574
580
14
641
677
611
859
282
301
985
511
363
760
38
719
827
924
819
214
368
767
786
277
785
562
473
189
449
935
549
799
610
809
452
912
527
410
354
170
412
377
114
283
834
552
598
137
208
857
553
517
629
970
869
556
340
284
105
163
753
656
245
322
725
265
521
447
277
532
624
613
418
713
465
894
41
838
943
994
728
866
583
174
300
86
935
383
398
73
601
63
941
815
444
573
466
158
878
666
959
95
76
613
694
853
43
749
21
888
539
564
583
264
171
851
464
632
732
256
839
175
344
733
873
718
252
594
576
137
439
433
111
250
979
116
863
538
29
950
625
941
122
68
847
293
822
319
86
701
327
306
124
596
366
236
315
689
381
772
403
389
991
835
87
369
488
486
531
830
36
323
113
265
16
529
86
330
957
954
749
416
743
662
88
555
993
832
908
861
853
545
866
628
25
959
269
745
28
413
486
334
21
415
822
942
497
317
715
37
983
626
527
682
924
481
774
581
845
256
680
590
782
287
432
16
62
405
277
287
588
141
860
225
584
604
495
420
805
548
779
413
298
668
258
634
922
543
77
51
386
215
554
758
797
577
939
595
795
51
975
117
547
694
116
803
639
632
109
893
703
910
325
817
627
211
174
587
520
50
793
146
747
994
771
995
177
451
490
969
700
490
474
998
151
295
453
298
330
294
519
791
690
601
768
433
367
37
800
734
213
641
67
500
365
102
945
43
631
966
95
364
839
802
430
441
134
358
795
967
119
304
573
634
162
398
962
81
657
335
16
367
27
206
617
919
685
742
993
345
242
156
326
359
943
606
584
479
480
339
296
589
76
324
588
195
92
273
988
142
362
856
955
723
188
930
591
865
47
312
302
544
24
410
321
262
785
92
901
866
263
74
719
711
227
660
31
915
93
691
508
165
332
730
797
739
903
746
199
132
711
825
696
306
806
351
187
236
707
194
52
939
155
818
246
467
409
580
39
438
906
282
192
518
151
710
438
666
275
737
416
973
145
410
380
740
323
172
408
695
508
850
194
328
180
776
659
743
498
33
704
316
945
203
629
638
665
843
980
905
863
731
673
16
536
409
995
845
896
808
736
979
918
940
238
766
596
727
840
851
987
578
65
67
515
451
828
274
577
628
130
545
671
97
518
428
81
231
172
738
911
269
556
651
618
303
308
150
960
745
16
827
374
355
382
387
610
369
863
533
922
57
734
460
914
300
411
670
858
408
877
353
360
218
766
568
992
180
46
320
312
174
330
615
319
494
504
997
702
92
193
666
334
53
300
369
934
616
605
361
804
235
834
162
699
310
526
175
667
226
611
900
785
689
569
557
453
678
28
269
61
407
632
209
271
64
387
370
671
583
576
562
968
735
946
699
89
111
839
154
23
585
957
222
203
912
707
270
922
409
816
128
934
292
832
599
672
348
848
595
199
781
929
796
821
692
675
498
823
238
60
282
960
894
730
303
815
644
39
716
69
255
644
312
452
513
130
317
889
87
970
359
534
246
139
916
480
317
81
318
360
208
757
559
413
265
897
611
992
51
362
151
245
318
501
292
852
816
702
381
661
715
773
655
352
583
425
16
901
687
24
173
136
435
623
347
344
106
756
741
824
229
948
143
645
875
649
191
692
338
596
160
751
778
394
264
645
360
73
382
770
754
332
75
953
49
427
661
44
908
502
487
739
169
713
831
299
967
518
122
354
836
73
304
946
672
546
895
491
817
933
33
25
710
573
969
419
224
769
72
827
921
817
756
235
48
214
767
106
913
186
675
213
961
550
443
18
925
358
155
762
802
695
735
748
51
226
217
165
394
324
280
970
577
281
179
327
735
126
899
869
326
812
280
601
586
178
190
583
839
505
663
432
263
875
420
814
319
703
812
115
240
154
59
573
215
874
454
65
133
632
649
128
201
22
99
248
350
528
999
468
524
186
193
791
793
474
578
54
152
894
732
66
370
509
765
838
348
249
741
45
241
292
378
413
157
508
106
895
756
156
170
73
285
572
602
550
359
640
253
887
130
264
829
336
882
889
682
982
696
991
804
169
429
726
21
613
168
237
499
463
331
473
118
747
208
270
301
447
382
60
638
597
435
48
804
653
373
263
388
300
777
406
695
29
296
715
821
671
788
784
311
687
336
272
235
452
343
436
134
962
401
649
97
532
951
671
551
877
920
846
929
46
818
747
399
191
446
497
55
114
803
328
811
165
912
183
789
259
790
981
981
440
777
644
672
259
360
483
711
19
536
530
436
917
824
349
239
147
425
935
700
236
754
524
977
135
244
867
942
458
229
269
789
805
296
895
950
326
204
626
142
691
148
566
145
80
518
282
759
239
284
214
192
481
994
566
196
361
426
314
618
338
403
910
739
367
814
901
122
369
711
793
482
171
828
976
517
900
345
519
891
484
229
904
547
628
233
398
506
831
522
126
888
795
198
574
690
570
821
113
69
474
186
923
389
866
839
295
471
815
951
114
309
703
93
637
811
717
973
60
988
427
271
83
630
210
913
326
707
416
311
125
225
386
97
822
392
775
277
956
71
733
265
307
224
221
619
478
480
746
147
317
733
789
922
418
690
602
29
780
611
250
861
506
920
937
458
309
162
25
890
901
303
726
996
939
445
835
262
453
183
135
545
40
261
664
604
259
703
393
754
774
973
368
849
16
280
261
636
669
631
883
962
497
406
886
10
902
67
512
965
468
851
866
926
824
233
301
957
244
322
745
311
520
65
868
71
724
51
849
421
60
72
17
803
993
365
823
662
133
797
853
803
542
392
612
359
207
351
97
396
227
99
315
442
163
948
713
343
740
568
221
453
751
745
425
830
239
932
179
43
88
521
331
930
553
339
399
97
329
553
944
225
601
806
309
948
939
503
511
761
647
457
103
644
335
502
358
40
483
567
670
226
345
697
239
216
950
992
757
996
221
928
273
861
791
309
62
41
740
160
815
679
46
571
38
496
634
228
270
699
667
476
721
652
208
309
260
166
207
402
389
676
154
487
354
225
382
216
226
946
309
817
823
868
779
60
557
180
660
506
902
47
492
931
74
126
128
658
141
14
253
534
378
656
50
89
916
124
425
939
719
724
590
539
290
13
455
528
834
476
988
908
510
357
292
298
360
247
105
87
261
279
439
206
386
810
851
290
919
377
213
668
744
475
731
168
571
505
446
465
536
189
907
872
471
839
765
671
315
230
632
779
237
774
213
268
848
284
416
648
93
699
176
537
919
265
178
71
633
176
116
796
936
727
156
241
467
406
262
616
656
884
731
778
941
658
17
857
973
353
709
698
737
533
978
44
425
51
518
345
684
735
200
374
83
361
986
785
726
654
306
950
684
181
230
290
208
909
690
464
406
640
181
266
363
825
651
987
206
595
628
11
446
962
638
646
596
121
183
453
584
237
934
198
69
677
672
667
793
752
981
98
907
265
573
775
79
168
844
878
405
999
186
194
873
53
657
44
793
961
374
697
189
284
887
872
603
938
276
612
553
590
519
45
46
366
548
458
113
927
68
693
42
29
272
855
868
952
445
437
904
53
581
781
752
906
974
141
191
378
790
37
865
897
240
121
459
543
867
281
956
741
297
71
126
598
709
304
131
155
870
605
872
287
794
753
764
96
852
232
288
51
359
21
545
367
955
210
964
257
758
648
43
890
273
280
647
84
963
568
110
807
285
224
984
327
758
642
990
810
943
917
327
955
619
998
911
877
797
224
976
575
280
464
887
706
612
253
431
419
93
754
500
340
127
66
397
402
937
171
513
587
337
209
782
978
64
980
837
279
640
61
563
882
241
198
752
796
516
729
775
184
948
34
329
897
85
133
410
553
868
784
681
590
784
807
330
111
694
186
463
643
472
175
269
675
580
93
794
816
599
827
186
196
510
502
838
550
742
733
152
959
939
562
301
393
784
671
212
30
873
598
591
71
674
905
89
618
580
950
39
93
427
896
395
281
607
399
66
883
411
630
683
112
957
55
885
595
946
356
865
719
53
725
150
509
476
572
830
732
366
929
911
647
777
467
107
685
996
47
764
923
791
134
940
329
356
626
417
343
309
866
210
216
841
429
907
941
841
87
129
925
950
422
796
549
142
942
999
528
441
950
726
121
443
461
695
810
770
159
578
472
657
893
76
327
321
65
544
150
679
661
920
749
812
372
414
249
95
214
81
755
989
935
305
967
704
200
962
341
359
418
892
107
954
513
805
752
175
527
257
730
290
438
416
360
900
548
801
308
475
825
665
201
879
984
617
641
465
167
868
472
408
42
21
839
650
920
904
964
216
344
834
686
140
413
43
28
922
864
400
650
447
422
115
533
900
374
91
797
626
859
90
285
625
898
466
310
777
832
583
418
326
742
971
502
259
178
164
737
170
830
929
914
627
122
943
283
516
162
900
192
972
600
151
735
638
133
200
135
397
181
594
628
711
785
368
802
839
120
407
170
194
790
798
530
313
491
48
565
773
46
303
415
615
774
598
516
650
380
174
937
212
415
263
88
209
18
812
152
330
209
118
840
898
229
624
237
318
158
45
592
588
311
976
549
592
231
553
573
977
886
813
726
543
512
747
417
285
901
271
356
361
352
398
224
821
850
911
867
127
356
707
446
610
21
874
330
820
252
910
787
102
347
683
766
672
873
129
583
507
641
939
720
638
848
688
651
739
47
328
686
993
775
155
456
548
46
783
453
773
599
548
149
683
389
816
281
649
968
13
133
27
294
42
593
478
576
364
959
19
591
126
135
978
466
460
269
509
613
615
392
312
172
15
313
717
597
602
271
228
296
639
427
165
214
179
273
542
685
978
493
156
293
127
872
697
851
527
341
677
425
611
408
790
532
568
393
32
295
885
663
136
135
120
729
751
144
419
950
164
783
173
390
793
15
140
356
394
853
124
469
37
558
147
898
763
792
874
242
266
975
466
958
554
322
916
39
418
340
102
278
998
782
85
138
994
850
429
765
183
958
335
750
890
812
749
359
525
968
646
929
268
598
602
29
53
82
585
923
166
628
785
508
610
281
224
815
313
237
21
689
159
268
594
713
765
512
867
146
715
109
829
212
324
927
437
118
830
479
105
692
740
420
674
444
309
537
455
548
676
272
916
685
724
954
243
452
780
700
808
932
924
967
201
437
704
507
839
630
612
793
269
227
881
948
639
298
95
325
101
315
978
434
778
431
460
982
592
128
46
85
911
199
543
717
18
192
25
384
516
981
264
365
683
161
996
602
925
545
626
841
854
184
586
646
483
616
336
576
108
649
136
388
119
954
867
907
903
540
798
145
213
554
604
359
771
246
435
633
727
76
300
573
646
323
892
409
733
523
440
188
199
307
196
853
686
776
167
972
240
539
137
23
284
45
982
56
700
220
915
228
37
11
306
358
427
827
297
123
244
55
327
963
303
899
179
776
870
195
801
175
287
311
144
471
460
895
459
53
914
429
881
266
511
15
598
209
690
141
639
819
690
678
559
452
981
525
347
98
12
517
977
639
157
881
956
781
10
481
504
558
608
118
526
939
74
778
828
927
158
440
854
339
568
143
579
477
32
315
96
370
377
135
52
283
290
322
624
939
766
671
371
364
489
518
400
819
736
694
961
649
645
58
321
264
573
266
866
919
25
536
65
667
547
186
55
964
643
569
301
924
726
705
990
733
937
680
192
65
245
471
345
37
895
168
199
664
781
624
960
77
421
326
808
36
112
272
478
503
509
168
467
494
482
532
444
326
31
714
427
388
219
760
69
174
832
55
581
549
94
48
284
162
856
636
277
838
931
361
575
785
142
609
119
76
446
389
403
292
648
770
630
187
232
51
789
853
535
963
294
179
982
888
130
967
657
282
356
205
698
896
944
475
278
744
461
491
717
871
649
281
365
888
998
173
960
678
499
876
117
484
86
942
80
610
307
665
791
735
743
860
759
115
210
359
749
965
28
47
747
315
459
592
359
462
62
637
118
204
61
96
22
23
83
647
285
429
678
214
970
286
104
199
251
800
512
807
984
879
97
606
48
268
957
203
904
957
15
768
251
653
24
969
595
486
152
814
722
746
800
911
188
613
240
87
936
439
368
107
959
453
630
40
622
32
990
757
298
515
648
52
233
51
99
168
641
759
836
740
878
123
539
607
286
455
731
663
486
330
674
367
337
439
776
448
53
720
75
153
335
80
124
48
375
924
47
492
354
285
34
463
891
820
101
738
557
427
882
995
655
641
828
179
818
392
194
828
720
57
635
427
445
362
437
180
997
634
51
65
54
373
764
858
552
200
619
783
230
656
693
208
146
199
567
207
165
508
856
357
588
487
536
922
210
42
565
281
695
713
685
640
115
288
211
231
856
114
432
794
712
153
448
549
344
690
358
42
859
235
718
754
502
267
721
78
334
298
221
695
227
76
536
746
397
426
346
995
876
439
780
236
172
166
375
25
544
57
767
309
95
834
916
322
199
154
942
291
887
337
923
185
102
840
596
870
37
401
472
130
765
351
120
840
833
267
739
504
370
655
257
273
34
580
390
985
176
893
599
536
738
15
440
505
528
741
275
665
721
681
88
972
517
948
813
374
673
556
963
230
874
379
381
443
442
750
231
37
871
884
924
953
437
939
136
627
246
97
273
226
358
160
200
131
884
397
478
342
448
565
547
251
902
835
783
357
745
872
622
598
711
513
502
496
793
632
727
271
536
327
864
262
373
173
273
914
428
577
862
259
708
879
488
290
355
19
706
600
327
637
736
47
315
816
381
66
623
769
650
517
842
746
729
906
541
396
88
568
495
642
707
238
50
364
381
354
644
907
36
293
970
870
675
131
785
586
753
568
194
451
610
667
816
804
902
694
909
160
143
729
800
33
466
742
210
487
363
448
834
336
339
327
115
592
140
660
422
454
230
429
464
478
533
376
624
679
314
665
282
822
731
59
272
935
21
881
346
790
977
874
449
182
72
566
202
249
443
678
433
541
797
433
934
896
610
288
410
194
392
864
368
37
609
81
249
222
390
678
690
793
940
877
647
283
497
634
540
608
788
639
60
995
13
413
634
385
358
141
717
356
234
158
668
865
952
681
768
862
538
215
286
321
665
387
121
169
297
915
875
188
930
220
585
497
528
286
808
306
614
322
227
265
669
563
876
162
369
414
375
955
60
503
414
938
897
790
633
873
580
603
611
936
126
125
806
406
555
485
599
765
402
277
72
500
812
98
689
464
268
352
394
716
840
714
623
945
353
434
35
899
543
450
683
301
483
296
903
574
587
593
79
411
610
997
904
571
993
374
749
732
321
593
635
177
489
869
163
66
917
582
362
817
727
872
184
341
246
505
244
837
879
591
735
889
726
646
389
62
101
980
210
701
359
680
253
527
834
838
828
531
908
152
834
100
463
935
162
823
129
575
183
303
31
741
169
36
598
933
634
684
628
732
283
28
850
494
27
472
440
694
461
836
269
219
232
453
742
122
830
527
39
325
853
62
929
197
534
980
760
855
362
250
480
265
519
534
471
953
422
232
771
222
423
556
253
371
480
694
509
246
479
764
471
596
407
57
125
966
524
679
84
648
867
910
999
202
810
277
545
493
668
880
456
160
223
842
928
135
943
140
250
856
57
252
539
86
315
980
380
234
255
439
753
519
630
924
245
656
956
55
899
964
938
226
993
590
204
819
521
302
631
963
32
777
223
880
691
996
13
727
184
67
640
556
101
966
650
205
394
533
237
429
422
37
46
640
662
592
785
737
149
10
126
926
132
310
607
245
578
918
178
569
747
179
721
10
290
930
382
212
887
153
597
456
272
47
645
231
270
672
972
475
943
940
76
989
816
501
95
530
51
712
146
774
535
721
788
50
487
667
501
375
148
722
200
886
839
103
734
13
458
686
315
246
757
450
64
583
320
772
308
257
461
407
918
430
820
866
939
817
106
34
969
905
109
18
383
817
305
370
986
993
590
160
114
227
89
452
229
903
196
974
95
675
914
568
61
214
511
421
366
167
778
30
695
341
124
955
580
500
286
747
553
432
790
353
706
926
395
138
813
667
429
795
640
713
207
91
406
840
171
760
240
26
812
927
164
330
585
394
953
289
424
809
772
149
991
381
592
806
890
91
290
455
345
456
201
603
394
284
665
299
29
832
939
997
378
116
182
485
231
264
799
627
736
831
476
897
250
122
832
552
542
290
177
69
336
590
759
39
612
858
711
707
73
244
412
94
899
500
964
320
597
192
485
709
374
737
870
625
577
847
903
196
993
957
569
751
920
855
161
223
267
576
389
61
993
725
896
447
120
762
50
85
549
163
687
45
576
219
376
971
731
45
270
448
484
361
767
844
289
399
771
562
842
624
521
791
981
777
369
763
648
740
653
649
174
821
933
745
418
897
532
222
554
947
523
83
215
802
441
636
125
503
368
13
393
413
60
484
953
953
433
309
509
226
898
626
31
578
340
669
620
122
490
648
142
841
983
448
833
166
582
210
55
140
595
353
266
857
194
320
147
618
968
563
516
474
515
802
59
198
519
308
957
556
299
295
291
277
146
142
93
879
711
473
593
311
63
449
733
496
217
162
705
648
288
499
510
297
260
992
854
456
36
12
175
411
626
177
523
629
878
366
606
636
357
148
74
208
581
130
295
187
225
36
480
168
713
754
281
506
35
250
126
572
100
375
542
395
884
969
944
232
250
253
883
720
158
503
641
506
670
414
584
350
569
157
915
135
731
28
151
180
903
279
488
971
395
762
980
175
60
93
215
430
622
954
804
702
328
244
647
714
54
75
775
546
419
745
485
955
16
943
655
140
894
872
623
757
603
747
399
997
638
986
842
579
322
860
934
893
883
888
189
800
825
790
606
386
882
399
465
359
533
935
23
153
357
226
362
466
852
977
754
387
220
650
93
892
833
323
90
669
922
900
569
131
227
590
69
227
461
462
996
309
930
716
820
699
173
651
766
551
49
450
70
185
230
281
419
970
292
991
105
919
182
72
336
589
28
99
221
962
389
18
888
589
294
612
455
34
752
761
239
524
752
491
676
106
549
769
802
840
911
886
276
71
890
931
73
277
420
28
764
485
980
685
594
935
237
552
373
844
81
180
500
610
238
545
240
953
536
660
178
242
443
431
46
165
762
896
860
385
810
477
222
399
276
111
210
976
819
730
441
995
622
416
852
355
429
37
146
296
954
485
523
716
445
917
489
486
784
634
135
163
347
729
362
123
413
855
95
641
682
527
706
509
987
991
766
147
423
950
50
613
553
643
622
640
865
475
367
829
530
444
593
865
911
883
313
976
305
227
479
615
322
719
671
188
780
903
551
800
874
54
249
433
337
532
317
22
59
296
750
496
402
324
148
12
969
506
95
742
541
90
267
916
727
407
275
349
276
737
446
26
643
464
111
735
762
816
497
629
597
890
938
482
819
410
941
83
945
50
325
24
640
558
830
783
265
476
984
227
230
897
173
608
951
413
265
207
696
33
978
294
849
409
757
830
319
429
368
361
583
273
938
264
171
543
134
677
714
442
955
356
779
963
163
513
691
13
378
116
639
565
93
477
410
655
58
412
925
326
158
352
345
523
157
308
206
938
971
481
880
928
416
823
176
877
868
186
527
84
938
74
817
707
419
691
13
50
303
148
62
798
106
198
154
934
413
385
668
456
712
582
282
432
74
672
112
570
951
212
779
863
385
592
999
991
753
300
199
852
180
656
713
563
199
265
835
613
10
973
374
121
38
412
936
983
998
738
81
981
880
619
816
993
849
86
361
89
636
703
337
739
317
491
683
150
284
123
127
378
788
187
519
446
888
776
350
860
49
860
935
286
281
500
989
591
939
837
299
242
838
595
130
365
990
842
496
864
292
617
597
847
646
976
451
167
676
959
532
975
40
397
112
574
913
884
399
630
60
507
449
610
805
32
924
976
160
99
944
76
616
970
171
33
49
236
688
250
856
840
328
760
249
920
34
243
170
504
682
313
638
391
508
521
799
332
586
674
625
591
640
725
728
971
304
443
651
495
579
92
588
52
575
221
773
981
109
355
979
630
822
385
613
785
824
488
757
198
268
217
403
873
631
595
342
64
996
384
883
407
88
343
69
364
392
834
341
205
42
505
551
505
357
21
728
919
521
946
278
328
698
980
974
18
783
191
66
247
314
42
881
637
18
61
200
31
46
322
702
722
11
537
271
234
996
481
19
113
724
331
766
769
294
845
483
103
541
453
723
596
833
410
511
568
671
638
299
53
114
54
999
524
263
17
624
168
493
937
500
919
881
414
214
962
867
443
199
444
771
267
395
468
128
810
984
762
194
840
327
614
876
443
272
652
149
608
519
437
20
979
814
504
607
478
908
348
835
203
942
518
593
616
376
558
515
512
59
897
578
243
788
621
135
589
591
650
993
114
430
39
103
764
553
325
960
818
328
482
902
183
651
725
311
525
76
119
430
276
544
146
737
284
845
985
411
837
106
841
754
289
29
447
167
338
973
98
859
574
684
491
510
903
647
366
295
83
787
149
620
73
354
591
463
432
503
942
903
946
384
471
395
325
801
953
606
316
567
361
427
371
901
706
180
364
998
937
83
457
833
600
100
113
202
517
464
443
978
493
287
307
154
138
910
162
509
220
71
370
653
71
649
175
289
855
68
566
598
259
793
780
400
44
241
659
851
588
684
389
330
875
440
837
386
332
673
336
867
962
415
245
233
911
174
100
855
724
950
934
955
652
441
15
830
76
261
440
272
975
772
166
978
275
208
48
12
442
640
550
809
664
94
406
162
406
973
262
720
882
60
916
279
235
94
153
696
196
296
494
143
882
964
718
676
103
652
304
885
873
67
934
279
586
369
934
694
609
463
525
939
691
156
609
391
956
789
304
180
702
877
363
673
259
737
495
470
30
944
166
82
319
944
743
996
276
41
627
68
535
931
926
541
11
967
343
178
800
521
49
27
989
791
804
651
878
542
584
699
287
674
785
726
786
447
559
642
275
193
489
12
981
349
123
721
156
767
120
587
724
157
237
208
649
70
783
534
489
169
725
990
381
881
892
845
827
220
784
74
795
498
742
171
290
141
762
673
120
188
831
525
551
413
752
470
776
947
92
722
873
381
603
979
900
527
580
131
994
90
799
263
476
492
156
957
678
464
240
376
623
918
227
106
299
660
597
113
784
219
889
383
991
877
151
681
214
259
131
62
438
768
505
936
161
424
455
885
733
455
102
99
126
625
699
411
279
330
443
66
342
492
928
834
98
383
856
904
322
93
899
562
530
376
780
311
20
274
303
557
974
929
186
190
845
244
698
444
618
452
865
709
968
679
616
295
130
590
483
407
633
531
829
822
350
229
345
383
707
588
283
645
125
92
43
476
847
775
525
240
468
289
464
585
141
684
470
53
585
228
526
843
413
138
502
616
964
25
935
443
687
167
116
978
617
268
345
550
807
714
45
703
496
959
838
354
760
287
558
89
46
398
757
181
171
620
124
366
421
621
709
71
948
343
887
580
515
317
658
964
280
988
150
524
730
964
521
633
842
862
163
302
863
463
45
816
479
556
267
233
575
921
149
887
359
758
946
190
949
253
911
25
28
500
365
654
413
204
316
440
125
796
553
504
428
992
216
704
210
739
752
431
261
332
307
381
615
140
760
142
808
138
257
965
57
930
416
231
927
362
922
804
255
939
246
617
633
19
656
580
856
441
921
461
406
75
406
899
781
136
795
110
116
118
99
193
708
917
714
810
472
271
734
482
195
561
169
727
259
382
277
769
632
520
504
369
555
17
51
474
161
425
964
53
233
855
847
920
640
756
522
766
665
948
86
561
253
640
176
419
474
71
446
10
876
449
706
983
787
945
496
693
520
426
150
44
308
97
445
353
550
404
810
290
849
569
476
497
635
90
803
121
49
714
642
112
880
768
120
393
178
826
586
244
129
493
357
626
444
290
126
219
372
938
800
221
463
923
53
981
321
307
11
576
329
924
882
297
124
473
269
716
553
344
292
705
133
715
111
391
124
844
920
232
876
254
188
574
188
567
243
19
206
617
356
895
162
398
827
207
70
157
859
278
955
346
87
356
913
33
365
204
913
807
268
818
221
554
285
47
432
564
663
931
543
239
873
969
809
188
726
709
17
175
515
748
440
994
100
51
750
337
559
627
867
393
888
599
913
897
563
463
231
827
108
41
257
717
133
769
114
87
970
408
327
609
521
943
308
874
135
667
327
387
645
37
776
68
759
953
707
461
986
666
548
889
981
165
547
332
739
790
739
496
222
545
398
143
68
20
577
554
308
46
763
486
801
672
107
85
281
891
862
660
176
327
946
310
54
933
89
858
723
317
223
341
194
951
834
888
849
296
165
911
107
472
824
837
61
288
106
282
746
925
220
752
32
352
918
261
348
948
136
290
537
114
234
542
647
340
845
601
607
409
172
580
632
784
84
145
327
593
110
781
567
285
518
547
869
688
258
747
515
653
523
744
205
995
371
117
494
972
387
84
916
295
942
280
387
722
802
773
386
749
673
887
446
761
815
620
293
644
415
243
331
521
941
589
576
394
347
134
535
701
275
109
600
45
745
483
395
106
203
743
573
160
483
437
525
999
175
545
547
927
150
58
404
719
13
302
893
503
315
844
584
531
11
310
205
896
899
734
280
647
816
806
15
769
962
163
327
551
526
81
812
291
477
713
22
948
958
757
368
504
624
804
652
33
57
584
32
92
274
551
573
67
482
931
769
625
139
735
569
306
442
113
488
595
73
617
318
131
680
38
75
763
25
343
174
560
24
42
787
80
126
542
284
426
854
378
819
634
591
791
536
689
437
521
552
375
299
812
678
779
146
579
719
486
196
502
576
567
321
154
978
540
952
858
403
961
434
430
766
151
292
258
188
509
460
978
646
975
197
441
352
45
868
512
762
559
325
762
807
210
612
834
712
456
296
661
563
646
276
913
89
27
327
580
915
37
772
573
869
744
234
60
146
727
330
544
656
214
139
474
163
129
824
335
815
796
96
960
79
887
210
522
40
636
649
603
374
343
539
453
97
649
801
529
324
687
688
864
805
379
712
323
572
766
572
209
227
97
362
687
469
854
580
803
486
480
46
18
898
577
74
951
682
344
953
838
532
720
240
945
280
883
490
760
484
288
102
427
910
746
122
321
452
761
731
622
522
527
838
903
421
23
615
106
325
775
351
613
13
142
589
520
407
414
418
590
405
829
607
995
319
112
960
434
594
87
871
506
810
943
699
784
546
803
680
202
788
909
925
603
52
184
516
101
506
442
624
982
814
557
243
917
927
722
611
987
651
293
435
782
132
893
876
52
133
877
542
309
419
173
276
449
417
917
91
382
467
557
721
683
254
597
624
164
585
938
286
369
365
45
464
107
541
375
958
620
105
519
233
646
48
624
866
740
384
91
453
326
333
770
222
982
872
848
677
238
685
583
621
349
223
989
72
437
122
482
913
908
226
742
356
322
191
160
352
213
908
358
610
763
175
608
376
907
208
353
93
295
615
876
684
806
152
804
197
321
315
929
696
102
510
864
496
534
414
286
891
486
79
710
45
671
288
355
918
892
452
64
426
462
794
779
260
116
186
845
486
993
125
827
149
705
786
489
959
646
291
292
509
892
886
222
531
406
424
162
595
387
905
33
316
325
281
252
301
363
501
717
637
431
356
813
773
260
341
327
403
666
489
343
893
386
363
785
176
443
249
210
758
79
975
111
54
117
633
841
306
604
856
850
551
922
759
371
590
600
67
511
389
101
702
967
183
432
28
101
345
203
805
232
281
983
618
13
391
362
335
290
421
53
41
81
468
149
810
680
637
647
388
820
966
28
595
987
878
290
845
865
310
459
941
61
907
599
173
995
228
791
225
617
409
647
829
781
105
49
78
820
20
234
471
782
836
48
780
859
105
352
981
729
994
171
744
411
538
427
973
991
988
954
548
611
449
939
742
102
36
739
703
72
184
988
403
303
327
957
937
843
204
510
497
275
687
308
974
167
139
459
294
379
202
278
209
791
256
977
153
693
236
568
328
11
448
412
801
948
21
123
799
677
947
98
129
165
954
297
167
833
914
132
523
553
671
875
196
160
859
676
118
922
636
117
256
574
151
336
748
702
480
522
211
194
187
529
553
307
598
471
755
994
815
392
238
380
602
53
215
625
877
112
836
24
429
331
219
540
173
864
250
910
613
830
647
282
773
432
150
269
437
269
719
201
739
989
137
954
295
874
999
217
744
970
490
708
344
693
765
268
292
598
413
995
557
899
167
28
963
679
121
854
542
455
954
42
963
915
318
476
257
511
539
46
172
364
658
466
371
397
884
267
566
727
734
286
273
914
912
717
690
961
307
884
304
56
231
981
787
726
939
982
162
338
465
83
162
726
932
398
587
68
852
476
997
578
695
127
450
926
635
845
880
129
701
530
992
434
80
629
112
707
156
427
10
360
334
109
293
212
571
877
933
938
912
945
741
454
786
319
924
854
644
190
785
520
708
623
765
916
76
858
880
271
942
55
841
791
465
358
835
99
155
575
593
457
656
519
890
948
940
295
98
309
589
947
468
561
315
740
249
990
509
681
182
114
775
172
950
477
568
699
90
563
688
574
745
112
191
137
807
645
638
283
560
882
591
790
508
728
237
207
337
611
495
774
564
590
703
433
583
824
490
106
110
714
555
163
292
123
820
634
812
734
184
749
479
222
416
141
185
265
17
537
863
526
575
700
251
824
497
695
77
462
206
316
953
134
900
495
885
785
663
593
284
123
266
663
826
885
815
786
934
736
967
639
430
843
599
72
616
29
857
151
919
233
776
517
931
584
626
913
482
651
870
670
517
650
191
283
633
516
643
866
981
410
281
931
823
780
397
207
917
302
571
700
740
886
895
579
970
280
957
147
294
319
866
403
819
149
853
970
159
699
803
246
520
415
246
123
869
437
477
632
650
589
294
963
956
204
848
20
536
642
644
683
711
581
431
704
396
886
13
569
308
550
64
858
186
390
933
919
132
539
468
793
805
361
631
496
842
378
602
942
282
143
816
539
139
145
567
127
333
346
746
188
872
790
493
289
210
105
514
251
133
320
173
358
224
227
439
233
717
818
111
812
783
785
372
40
399
953
813
566
375
44
116
407
422
676
245
798
984
22
991
689
399
71
686
674
84
570
592
749
820
461
23
446
834
147
938
129
558
608
753
376
293
540
251
336
749
354
649
313
646
11
785
711
705
546
596
26
370
436
979
731
985
938
819
33
139
958
162
259
716
23
212
47
698
212
37
493
868
73
305
425
900
592
301
439
71
441
644
107
407
66
116
98
487
804
79
842
536
367
507
438
115
96
555
118
269
104
682
310
40
862
156
611
700
11
750
848
831
705
479
54
105
802
533
98
51
322
550
29
287
143
921
829
908
575
19
307
560
477
84
152
758
117
449
477
638
174
160
953
333
754
434
411
809
490
494
145
142
753
10
429
101
987
615
588
720
435
819
539
419
575
718
660
728
733
331
911
100
67
422
710
568
775
157
450
907
368
161
390
951
55
473
218
141
496
761
886
590
386
179
32
221
509
202
734
378
384
446
983
904
150
557
703
891
807
133
238
942
893
100
805
664
543
326
602
638
411
34
576
795
320
751
62
174
89
201
131
229
423
187
478
502
582
567
756
827
106
415
716
779
405
40
174
723
675
48
320
962
672
648
918
393
869
287
335
91
668
993
251
601
632
344
681
732
260
717
187
506
407
92
873
777
168
952
259
829
383
943
197
150
864
87
184
101
157
256
944
205
590
391
858
626
912
33
431
12
19
283
942
800
798
721
50
666
250
878
500
44
389
779
313
333
346
822
714
685
295
937
667
704
640
544
169
938
500
946
916
956
949
532
23
824
136
279
391
941
375
29
816
908
859
786
37
553
182
561
930
950
500
613
64
881
310
384
515
178
291
882
841
309
787
877
334
924
629
286
188
689
954
314
70
476
48
197
932
942
903
968
730
823
910
272
486
66
555
449
777
187
231
587
973
594
897
808
290
200
551
499
673
688
760
690
88
768
994
938
958
869
955
299
162
182
325
778
939
815
206
601
905
912
28
223
401
211
683
146
721
55
606
921
454
590
82
877
220
441
75
910
457
186
261
164
814
457
72
615
322
431
960
117
232
272
893
358
80
342
544
256
675
606
695
110
406
531
653
441
297
845
936
370
22
454
847
686
951
654
944
660
769
90
663
140
916
169
790
55
611
913
150
673
914
24
172
329
683
170
409
896
548
291
512
979
230
799
441
134
37
711
351
530
260
443
924
395
924
700
516
59
88
650
966
53
826
433
427
813
100
912
235
179
527
570
766
138
315
555
414
713
982
987
878
614
305
982
665
424
518
892
363
255
448
773
811
563
483
383
773
723
452
32
329
865
283
877
745
617
366
488
771
75
558
505
147
978
13
779
728
873
749
222
612
364
428
601
955
627
153
545
907
627
478
605
783
199
186
112
921
492
568
217
775
756
722
541
975
317
945
499
974
778
812
750
132
343
857
420
522
458
839
238
277
219
148
999
62
613
444
271
518
634
559
135
332
238
474
161
594
893
410
750
24
632
321
414
28
634
559
761
38
356
704
394
232
453
877
862
655
157
104
335
387
541
131
561
21
902
495
759
460
992
314
593
295
137
935
98
680
361
19
774
418
108
629
10
620
878
377
343
38
255
651
224
432
766
666
370
269
583
992
665
867
416
272
735
641
292
36
225
868
206
939
861
589
387
524
836
136
589
197
721
980
193
623
234
683
595
343
731
579
394
319
688
587
318
832
233
525
81
550
520
490
426
532
520
843
469
581
547
604
668
448
857
123
521
128
77
598
758
946
754
759
11
793
354
262
611
968
495
71
770
719
411
306
259
366
232
379
294
529
545
847
570
92
698
701
312
861
477
952
363
146
688
396
679
41
632
343
792
934
790
713
909
479
196
582
490
802
722
519
736
961
613
849
392
729
677
309
131
872
997
974
888
326
868
930
45
633
408
681
71
419
133
853
401
482
838
628
537
371
699
959
89
982
451
441
950
569
97
771
478
268
554
353
304
224
34
571
139
273
123
163
343
919
986
406
433
471
299
791
613
840
522
639
815
278
907
556
621
71
48
356
936
554
49
349
211
955
761
304
565
571
995
558
515
376
78
933
844
299
314
420
212
901
458
547
660
693
560
350
531
686
176
977
897
448
822
442
686
868
904
302
515
354
584
974
126
968
518
674
744
52
50
876
155
561
599
418
737
860
525
458
509
721
575
690
67
811
410
478
361
962
390
194
329
640
424
882
746
221
925
316
588
385
255
555
296
584
840
538
631
447
937
131
951
793
795
491
139
145
945
266
728
100
776
404
507
281
138
487
848
614
508
216
187
917
905
615
249
430
679
931
499
22
887
572
777
746
295
767
560
29
412
569
446
358
26
325
287
827
672
714
885
589
574
322
392
483
157
900
297
826
593
95
498
11
680
496
252
795
948
996
138
485
760
770
534
555
888
577
705
103
955
411
339
184
137
461
17
496
164
994
895
297
715
740
437
555
706
972
996
544
251
965
122
512
42
246
736
544
717
426
43
541
142
689
407
77
290
815
755
562
934
723
807
587
248
275
266
657
140
757
882
148
211
674
344
542
750
624
709
219
212
329
908
137
707
895
785
76
221
288
276
816
487
906
510
112
518
782
437
242
546
128
966
120
278
299
164
505
342
490
289
706
223
475
236
708
607
770
693
23
69
383
373
759
737
803
811
190
271
605
311
891
844
639
748
840
129
953
792
347
168
67
955
720
691
570
532
777
20
158
12
578
791
180
662
605
947
693
391
197
694
692
568
721
629
100
838
525
733
997
112
362
417
667
709
755
790
985
305
505
591
285
840
387
721
651
694
740
980
809
901
500
993
909
263
809
143
454
707
226
631
719
416
521
238
937
363
577
831
23
194
14
617
656
51
782
347
248
723
705
935
702
921
860
225
470
565
968
987
619
884
576
892
593
981
525
710
862
609
652
309
56
649
194
419
214
23
818
577
610
60
330
750
59
921
721
214
630
840
31
401
595
589
214
467
646
408
52
425
177
320
620
940
408
548
531
280
56
780
716
697
574
816
73
176
502
534
881
406
938
812
753
493
515
859
966
126
681
97
229
986
601
33
225
760
133
14
501
795
393
92
701
858
434
939
732
828
716
654
359
793
56
362
808
388
207
404
555
210
978
338
356
189
307
835
60
875
791
192
954
142
831
153
45
771
350
586
49
924
757
560
898
736
27
608
338
206
917
403
705
494
642
68
591
413
430
471
806
702
859
694
883
45
900
664
950
252
106
396
528
931
933
264
728
774
423
545
367
819
118
10
803
476
233
635
295
522
624
22
915
169
191
181
111
54
306
559
66
932
259
235
156
647
573
730
290
275
603
581
40
601
726
51
496
334
197
46
624
394
123
693
171
598
377
192
128
212
958
241
895
883
56
407
293
987
486
305
954
101
761
579
319
165
530
244
524
812
60
209
327
830
414
145
21
919
860
349
888
668
578
24
273
366
379
915
494
598
750
923
451
747
567
773
364
878
886
524
27
334
559
568
391
759
524
169
926
666
942
555
131
185
454
81
930
994
916
583
705
42
260
782
957
29
274
978
894
55
52
41
374
114
202
357
776
205
923
768
757
231
859
907
30
950
894
918
503
92
187
933
10
606
908
548
632
403
120
216
424
322
166
844
194
494
864
880
467
786
473
462
419
149
663
306
555
607
801
73
499
139
932
292
302
917
939
443
251
863
545
452
755
885
895
149
428
110
431
483
808
801
141
85
142
916
603
108
352
373
631
16
475
271
78
536
837
269
355
865
283
863
807
790
596
723
45
524
839
816
733
963
466
545
989
799
29
503
585
874
375
770
184
35
754
163
288
343
771
575
64
121
712
654
127
281
593
955
974
455
322
482
463
472
841
214
733
423
544
634
258
640
880
901
517
301
470
456
775
388
787
621
127
110
816
853
264
173
277
227
526
125
828
84
99
681
703
462
645
775
251
42
87
850
288
99
955
941
168
448
40
612
53
573
673
820
97
908
63
202
369
429
493
310
115
138
46
406
925
436
667
930
89
857
321
214
610
346
521
588
863
277
560
932
592
764
971
377
395
781
374
826
760
912
795
643
655
21
86
565
956
321
75
193
553
267
356
536
904
583
955
45
900
667
920
654
586
824
501
333
949
733
74
641
196
848
685
766
147
607
441
961
381
243
531
94
467
519
991
200
710
663
96
405
619
830
47
801
427
216
353
106
800
815
304
515
76
389
138
852
756
457
284
602
987
850
459
97
293
797
355
358
457
14
370
774
819
966
311
345
969
197
239
986
51
363
392
708
231
345
311
217
296
794
853
238
539
557
173
639
343
218
300
368
777
45
242
232
630
880
253
931
709
915
252
767
333
717
958
883
329
500
189
721
292
558
685
687
112
814
536
183
826
938
435
997
338
427
864
109
243
227
115
495
258
248
161
826
189
72
673
303
787
949
368
766
747
411
841
770
848
812
781
189
606
770
200
967
42
593
423
179
914
154
308
504
13
933
48
711
840
834
882
901
782
779
906
11
513
23
935
509
192
978
850
652
845
606
340
675
698
42
930
23
283
750
686
946
181
413
314
114
148
554
736
262
663
916
855
692
701
550
391
132
431
922
334
336
877
565
934
803
327
413
990
568
159
432
671
816
254
181
720
785
951
182
977
607
901
892
174
933
993
379
309
952
699
622
300
362
285
888
654
729
853
414
653
572
570
409
852
841
729
514
353
974
967
89
539
812
689
973
190
14
69
130
472
396
746
592
133
510
669
456
629
290
143
87
245
631
26
853
530
476
221
50
709
515
645
902
534
33
652
845
973
494
197
686
243
317
786
907
774
563
463
92
830
710
666
614
513
890
751
120
55
686
313
268
612
386
659
992
916
718
34
473
306
44
759
684
712
106
836
886
124
100
462
171
374
69
371
891
223
96
133
83
928
115
914
457
827
52
144
159
790
485
289
283
489
601
28
874
890
699
99
675
320
330
782
596
109
838
521
186
503
137
29
758
667
41
248
28
668
399
963
699
202
654
432
488
733
975
237
165
689
610
146
765
729
693
457
958
709
953
477
308
235
61
475
313
392
763
438
304
937
520
74
203
729
128
162
918
455
722
972
212
920
275
930
709
970
580
615
478
516
936
74
485
207
150
439
888
313
775
444
906
246
761
245
894
335
287
620
31
64
561
703
644
931
861
213
74
598
242
131
750
399
847
546
725
901
810
178
350
338
876
273
803
309
219
854
967
200
672
159
846
353
305
633
427
459
408
142
738
242
158
694
995
342
780
646
568
503
810
154
490
965
436
966
232
485
812
194
860
796
388
377
37
541
364
510
793
689
17
328
964
708
182
397
39
568
474
306
940
703
480
727
236
140
530
157
827
265
800
381
160
666
25
493
837
295
647
427
554
422
592
432
321
911
848
839
994
151
650
796
223
433
169
180
275
532
441
681
294
293
675
625
712
406
945
284
775
322
15
336
46
131
942
267
87
632
77
789
398
382
516
195
428
613
378
710
73
803
751
266
368
52
136
511
545
153
641
503
229
759
201
19
35
662
238
501
80
568
517
348
393
115
593
484
594
583
320
828
773
520
522
278
484
535
827
374
542
525
949
951
340
704
539
995
886
18
231
301
808
220
436
280
142
996
371
279
691
136
691
952
534
640
118
72
808
238
685
552
135
584
396
234
974
656
140
674
461
863
866
518
379
250
732
738
925
617
87
837
544
871
427
227
339
670
704
905
378
371
308
416
475
711
150
569
984
110
89
887
693
162
656
346
692
246
77
518
762
695
712
231
706
127
639
208
464
509
948
228
925
224
840
27
704
920
998
994
185
201
669
40
380
174
143
427
582
358
515
521
555
275
370
880
310
444
866
729
598
735
840
300
668
878
431
882
560
695
314
810
950
835
599
502
793
607
187
680
153
36
365
439
553
77
154
111
645
625
59
674
389
268
690
704
628
751
824
996
545
925
139
946
998
101
569
704
727
316
662
27
568
272
763
155
548
783
446
860
607
399
939
258
537
153
94
382
390
632
339
605
531
169
250
89
108
274
955
375
205
837
919
980
158
506
566
420
902
534
456
135
778
480
655
199
241
398
691
148
907
737
571
845
215
718
814
798
347
313
719
184
475
672
535
625
81
596
819
444
878
354
694
293
600
260
582
168
49
320
178
759
385
638
64
794
990
818
13
794
37
192
826
522
320
98
166
719
513
213
909
981
324
402
654
875
656
514
39
236
275
109
865
555
802
138
593
434
57
268
366
607
258
186
817
604
511
45
678
788
426
637
827
406
361
583
514
294
409
153
118
565
419
43
233
87
337
214
539
200
698
370
44
758
811
245
928
950
851
356
686
287
20
128
766
38
648
293
158
16
535
611
387
96
499
973
782
315
417
117
16
473
188
744
137
599
225
142
941
310
710
469
503
10
668
238
562
112
488
735
180
672
203
574
33
862
359
305
898
297
752
458
452
950
388
309
719
142
461
213
200
137
255
577
993
692
549
862
626
550
781
735
661
758
291
482
910
892
185
693
72
956
343
387
225
824
923
821
169
782
196
325
869
950
357
253
158
319
431
380
435
847
355
968
854
206
973
990
293
887
127
532
906
769
616
425
448
314
996
357
39
969
98
717
700
101
656
403
316
212
284
264
523
160
478
684
193
122
280
471
653
99
491
825
91
608
884
522
127
843
788
480
716
32
567
441
861
678
140
251
120
638
425
466
687
44
515
40
240
773
868
327
556
260
883
976
248
886
48
433
219
186
525
674
626
726
607
349
128
569
873
270
660
903
27
809
101
493
754
371
952
892
958
810
417
154
275
662
446
542
777
654
565
887
943
385
798
412
31
779
689
411
763
576
469
772
357
298
642
314
882
775
414
806
996
85
700
334
358
553
372
604
91
426
893
646
80
447
203
81
440
691
496
214
717
639
41
35
140
985
744
92
984
780
594
659
213
427
758
481
130
394
593
658
113
396
647
625
598
631
960
378
904
702
656
557
945
224
305
86
780
155
651
528
862
597
833
812
723
537
442
83
857
443
421
430
692
511
271
140
547
257
301
932
784
81
998
190
421
576
599
823
701
361
247
385
546
606
11
759
826
929
465
898
691
685
268
972
744
868
987
518
400
611
576
330
815
162
986
284
42
43
860
614
619
629
315
802
668
979
337
123
68
951
615
603
862
791
396
588
862
438
946
32
434
809
428
71
831
300
907
92
452
720
134
782
821
800
594
809
490
757
852
367
274
712
401
403
391
302
937
101
962
318
490
783
514
640
503
876
151
845
453
373
497
614
889
952
623
346
628
768
197
261
561
835
771
800
179
12
882
669
738
54
160
152
309
141
390
894
173
950
375
390
658
880
708
849
412
319
530
306
690
742
729
729
359
901
436
266
588
588
461
87
211
510
375
149
263
446
561
620
56
987
117
102
561
512
535
435
14
102
471
452
904
889
905
360
957
567
138
573
980
613
619
727
123
225
662
37
466
271
311
102
697
812
456
876
747
243
387
329
211
708
141
53
466
816
796
746
277
258
132
299
480
715
678
342
962
524
184
433
635
209
235
157
497
880
855
482
405
212
214
112
335
874
655
60
98
735
876
121
998
310
518
136
278
788
487
452
530
980
406
879
369
610
287
225
287
733
389
468
85
747
411
453
653
671
959
349
808
143
127
969
892
116
255
974
107
638
510
852
171
609
39
63
774
84
180
526
611
420
274
355
650
248
983
442
939
568
275
598
728
783
849
622
476
737
279
127
54
231
350
696
178
671
996
115
517
486
308
545
522
362
753
89
814
39
727
791
603
417
346
501
641
568
180
263
124
881
579
848
137
122
23
427
130
249
292
550
710
16
401
522
412
890
306
446
510
578
999
928
103
139
107
226
199
821
821
471
511
881
937
542
517
680
325
412
952
29
755
351
301
224
787
644
603
728
769
232
425
945
790
104
325
186
781
174
482
153
393
236
659
581
750
783
550
647
851
668
744
261
867
669
976
251
772
94
392
611
792
609
788
610
206
28
304
555
90
532
450
788
806
205
485
744
304
312
708
304
514
687
806
268
218
691
385
953
161
888
859
769
863
838
636
723
920
115
118
39
464
476
392
583
30
157
820
639
660
408
35
975
675
181
454
899
206
375
666
872
670
97
738
292
952
469
62
387
746
392
794
333
774
578
64
623
223
662
579
475
114
180
175
836
354
449
269
424
69
645
415
311
673
113
112
705
286
670
305
860
264
983
823
789
509
465
358
949
659
215
705
790
827
935
473
527
660
102
416
871
159
195
114
356
898
602
157
186
585
575
465
130
571
227
112
575
723
706
528
794
801
945
952
961
207
925
474
176
709
807
67
775
754
598
428
751
41
207
178
594
940
830
836
249
974
879
737
883
804
760
988
820
261
326
436
213
92
532
120
383
518
75
75
696
144
294
395
948
420
392
717
529
178
366
61
648
305
942
10
767
866
803
865
993
676
785
407
321
304
396
312
574
669
86
699
43
541
618
32
28
602
906
229
676
382
699
510
568
959
635
207
350
575
536
814
567
68
136
544
496
962
372
156
208
528
926
919
814
863
682
88
192
251
730
27
86
406
943
482
16
124
16
773
367
287
695
688
835
799
570
82
397
416
955
674
137
567
989
193
639
270
38
198
824
39
912
790
570
301
948
992
209
955
440
114
518
18
585
18
