100000
831
739
641
321
396
154
4
987
318
230
184
547
194
516
881
892
212
735
408
769
405
472
555
465
346
892
148
417
5
825
155
565
155
665
71
933
396
781
966
288
233
217
567
329
143
572
523
880
784
790
547
887
243
988
601
360
185
176
975
504
7
586
983
492
75
618
392
528
446
948
497
431
768
120
536
188
905
226
323
774
369
268
632
215
279
268
323
166
65
711
748
220
806
463
282
646
234
75
254
524
180
994
434
836
293
117
120
123
452
414
454
958
853
201
135
739
954
768
213
807
295
226
464
735
200
277
624
306
838
889
953
830
972
798
594
374
833
796
921
163
148
201
713
650
257
790
367
605
328
543
692
466
861
446
229
953
531
699
636
17
492
814
284
563
461
624
986
55
607
760
905
158
847
51
660
95
513
813
478
410
909
19
977
296
198
487
968
526
569
640
843
134
160
904
670
334
916
151
190
632
804
312
998
568
637
535
619
811
786
135
441
717
221
227
107
474
836
988
365
973
655
460
485
966
916
772
998
942
380
326
178
362
624
845
606
598
21
410
658
663
868
158
740
435
199
127
912
933
797
197
497
928
786
216
977
344
826
32
651
865
536
676
431
461
956
80
93
375
621
509
453
427
330
702
105
498
720
51
767
790
859
65
145
184
828
250
576
408
868
262
771
988
758
793
127
193
727
280
479
120
34
538
312
288
743
71
598
84
112
480
624
776
265
860
6
472
531
248
632
706
504
685
507
360
738
465
668
536
576
912
770
441
571
648
756
322
753
856
440
758
652
492
297
389
637
994
723
898
788
655
661
479
647
772
616
349
31
952
550
278
402
62
508
199
709
184
205
617
104
684
718
675
807
874
55
12
388
119
722
743
742
770
748
920
252
292
793
798
32
408
291
800
307
162
356
590
984
98
679
453
789
107
794
104
936
986
671
772
718
605
960
912
231
806
536
631
314
587
947
418
390
407
585
696
394
918
368
646
518
465
27
291
439
269
953
635
976
645
984
266
620
22
81
427
448
378
569
500
626
725
277
398
151
262
64
383
522
99
710
18
618
26
254
254
578
670
474
961
852
901
655
668
602
682
797
369
326
158
248
16
349
867
21
793
188
629
140
177
206
571
114
877
935
966
647
594
767
827
849
778
904
608
648
725
71
608
795
469
464
694
57
364
850
694
669
751
6
461
66
948
530
298
756
282
787
777
733
635
35
204
601
499
309
470
112
741
220
296
722
580
834
670
712
511
514
749
27
241
298
896
588
307
761
901
248
606
851
366
937
293
875
160
434
261
94
557
56
381
583
927
531
710
738
486
115
860
585
245
768
39
750
492
338
139
615
295
738
407
223
505
889
854
358
429
704
674
236
451
418
956
694
646
658
370
365
878
568
276
787
388
22
607
598
899
543
383
822
296
646
798
819
648
159
78
39
677
352
309
781
440
624
134
827
811
344
104
833
967
773
737
726
463
620
834
484
283
256
459
886
322
851
940
805
619
137
46
488
581
332
688
526
259
494
347
763
887
779
786
555
439
549
855
523
909
72
357
28
324
594
755
421
893
423
460
588
684
329
208
674
299
616
253
635
85
211
468
968
274
71
596
503
470
904
447
772
996
417
896
547
780
18
164
986
576
267
633
836
35
758
80
559
572
112
256
822
297
221
438
698
604
388
754
253
997
253
951
989
976
687
592
267
432
661
894
281
453
266
59
818
578
631
934
515
990
38
931
358
648
624
476
776
979
198
942
392
264
910
989
324
315
643
860
347
167
813
127
911
218
975
370
31
162
620
121
972
454
239
262
959
321
594
342
352
212
815
287
234
718
502
18
542
277
734
503
934
771
587
349
178
910
21
140
673
254
446
614
360
78
970
938
25
649
31
4
721
302
508
136
351
526
893
193
716
957
828
754
428
117
187
202
866
890
85
49
301
454
669
98
766
202
927
156
748
563
993
893
246
731
781
632
263
452
997
651
18
827
424
715
426
691
187
243
891
768
72
135
564
981
702
267
633
410
370
150
598
737
445
153
964
934
508
696
336
554
938
415
892
433
32
473
31
953
672
75
15
685
265
979
491
859
329
265
29
514
998
852
83
848
53
281
382
272
751
491
184
491
907
337
830
657
242
132
950
230
237
680
738
296
135
913
472
466
661
105
606
243
667
821
555
86
333
45
380
750
92
758
202
181
890
524
778
927
150
834
617
198
315
799
277
319
115
786
714
140
808
916
610
646
885
940
823
86
782
744
325
198
751
200
139
478
478
558
405
610
136
544
317
827
487
409
928
867
544
236
971
546
330
241
942
175
148
556
296
949
701
692
146
405
509
420
446
115
661
798
841
556
382
105
5
264
599
783
159
476
13
955
542
546
773
779
867
511
258
963
331
921
262
456
909
443
398
912
318
68
962
813
207
745
394
415
164
226
236
678
576
365
397
819
937
745
150
600
631
729
553
934
857
698
468
920
295
926
196
561
866
687
465
92
514
199
749
797
152
358
615
642
275
580
387
965
524
443
518
164
294
798
281
589
514
29
956
508
277
474
121
238
31
675
811
888
899
306
306
738
995
353
449
274
114
910
659
277
311
503
396
851
408
32
268
68
407
876
577
485
242
241
520
677
238
378
612
600
768
499
67
219
137
780
169
940
349
8
475
603
369
680
198
774
79
269
830
999
408
744
482
24
728
820
497
754
832
771
37
736
299
60
508
812
437
177
715
627
863
327
718
399
401
973
117
562
44
746
599
968
547
612
193
25
17
43
490
317
284
414
108
578
970
739
305
309
172
385
338
901
554
203
136
81
26
83
622
755
703
934
711
87
173
68
189
686
866
484
796
394
687
399
344
450
219
141
428
662
669
807
390
659
409
698
415
345
477
113
999
933
420
735
613
349
702
22
406
903
550
618
443
688
589
943
215
156
858
686
861
884
654
960
86
895
545
53
677
475
653
844
210
754
484
863
973
951
785
995
747
198
735
525
112
52
365
702
70
465
483
260
486
790
251
115
279
460
649
717
803
650
344
931
251
706
408
688
204
725
970
263
370
863
939
664
150
130
848
35
530
843
982
213
991
394
358
420
504
369
585
514
303
69
192
97
853
803
275
406
644
677
498
344
495
221
889
623
850
586
965
149
611
615
187
960
668
132
940
857
348
987
184
834
141
457
959
302
671
843
811
346
855
443
391
853
345
638
718
770
504
735
569
918
404
436
902
688
881
231
428
722
863
417
59
656
493
663
204
39
262
588
952
8
775
619
294
169
225
334
616
31
413
170
353
612
419
266
430
705
554
272
420
440
415
90
482
438
384
734
360
681
435
680
508
916
783
562
143
784
143
734
463
548
615
398
309
693
65
446
238
227
233
498
484
989
168
512
592
686
138
855
784
490
973
934
595
733
662
437
829
856
123
646
563
819
808
872
824
18
780
788
374
937
497
133
448
936
196
519
748
271
970
457
647
287
950
973
574
681
802
575
32
627
617
382
105
587
935
665
181
295
687
574
905
349
482
846
993
840
486
659
538
143
688
559
885
665
998
277
869
835
298
144
215
206
756
746
321
116
29
861
2
531
338
454
583
396
552
299
804
104
980
734
195
144
38
888
938
59
496
439
589
659
795
346
996
544
360
699
592
735
526
877
811
625
657
7
805
235
975
489
114
700
472
766
855
564
948
71
169
867
808
263
619
590
273
343
736
991
457
40
37
852
706
70
577
103
922
570
487
31
84
703
83
7
325
888
188
29
491
433
595
289
531
724
927
263
259
221
353
315
271
813
778
935
452
261
993
403
189
753
641
379
584
138
784
105
180
613
265
384
156
707
501
25
445
748
322
981
142
315
843
701
218
172
760
270
925
148
554
65
894
784
840
737
791
217
704
393
940
823
84
645
956
969
160
564
313
754
491
704
939
13
261
874
909
940
161
413
378
515
180
33
59
201
489
371
866
763
233
229
44
928
42
319
232
198
745
249
13
196
956
171
656
850
126
882
524
966
828
851
56
292
16
426
644
51
587
756
480
789
697
549
521
263
660
11
971
942
643
711
195
912
401
182
558
9
376
209
75
606
847
900
935
382
173
752
913
615
674
181
611
989
768
223
499
408
650
394
190
115
911
581
324
118
656
144
891
833
867
636
675
379
681
874
942
796
614
139
90
908
98
356
268
462
100
205
144
178
683
150
358
981
20
959
695
266
577
818
725
30
860
80
747
39
506
233
308
894
281
703
794
511
305
281
18
555
314
861
18
451
999
714
151
718
278
693
359
721
179
676
219
795
413
60
49
19
608
229
956
867
897
250
896
979
356
847
677
738
942
141
952
716
801
274
31
147
928
30
761
812
873
587
716
605
484
998
98
245
232
999
946
85
904
150
554
749
817
171
362
431
17
621
779
39
724
503
994
140
30
902
90
579
468
145
994
310
534
292
496
357
749
432
507
943
194
867
812
651
719
281
329
758
667
330
795
253
807
677
881
981
5
958
216
330
909
368
617
759
156
245
216
526
675
5
682
584
115
835
844
856
691
343
420
748
574
331
911
138
349
741
502
856
411
515
353
790
217
177
34
825
251
53
496
475
66
802
83
662
648
211
139
972
833
25
291
662
539
467
756
578
457
480
411
414
742
360
116
161
652
891
368
937
801
19
605
639
846
944
683
771
248
249
489
138
603
530
24
386
224
691
252
749
421
455
369
771
641
83
733
706
687
922
11
757
843
201
171
814
419
651
815
594
784
984
331
209
990
273
810
212
337
729
936
961
639
619
516
347
650
834
997
764
211
977
85
326
238
731
295
402
360
209
966
572
875
657
965
436
125
161
780
369
272
522
370
957
986
49
118
224
684
824
165
585
654
51
384
806
900
5
970
260
977
408
852
128
763
364
86
982
653
80
222
489
55
629
492
689
608
127
340
190
613
71
717
535
44
382
918
825
274
159
536
121
190
521
391
863
669
242
195
622
963
136
571
605
603
675
530
26
559
695
199
773
665
781
646
907
691
317
85
381
446
261
709
494
544
102
299
534
238
628
20
367
932
717
226
478
500
113
932
368
851
892
266
579
960
763
456
409
874
484
173
353
158
813
177
703
427
77
61
502
376
996
787
930
675
832
841
947
555
169
407
578
385
716
529
553
994
130
534
780
645
890
659
754
456
667
209
119
541
523
51
423
52
431
991
855
106
336
903
129
922
509
854
706
77
595
967
442
285
624
708
297
543
281
856
486
338
34
474
9
623
722
406
33
118
984
526
954
724
674
448
658
227
405
858
137
36
952
677
861
699
767
834
917
814
754
880
771
575
506
517
72
861
895
505
200
103
822
589
93
69
14
717
610
177
50
71
138
422
719
450
386
357
613
309
855
888
488
218
364
104
755
379
219
158
376
796
332
899
658
35
214
363
584
792
685
51
224
741
764
683
742
350
855
56
131
714
249
586
650
312
614
604
226
988
314
634
499
453
800
254
739
238
763
685
236
23
773
820
624
805
665
747
453
680
362
405
524
164
27
661
548
745
250
347
420
609
138
595
479
51
551
770
940
511
944
504
586
171
819
108
941
428
961
844
647
867
152
545
627
908
111
336
427
139
705
993
987
417
266
626
885
178
342
573
254
894
806
941
736
857
819
354
344
918
720
121
783
406
700
553
458
592
967
571
940
216
344
802
806
950
516
170
905
193
223
764
87
389
590
752
61
211
809
769
89
757
991
508
419
585
210
582
716
712
169
294
210
771
632
39
550
5
136
785
341
650
449
152
696
955
34
395
815
947
493
248
783
199
482
184
225
836
384
221
740
934
453
193
24
929
554
316
756
552
203
56
75
24
429
439
309
839
812
463
551
815
766
769
220
921
510
12
289
449
814
714
621
914
46
407
198
256
128
767
402
718
638
264
744
437
173
760
769
44
875
385
24
920
670
925
168
684
972
103
419
543
27
307
738
489
435
161
978
22
241
53
712
46
62
833
177
503
25
783
748
749
242
246
574
429
690
700
245
120
239
513
283
26
348
859
691
332
525
256
2
13
782
748
802
822
673
978
859
837
749
664
660
190
355
669
301
781
733
309
798
734
916
858
782
727
769
686
697
203
142
844
978
768
781
736
967
494
443
751
756
711
841
408
370
575
853
94
671
678
558
910
598
216
457
268
97
923
965
75
53
986
282
657
695
904
686
891
409
618
702
807
339
981
553
87
892
509
489
208
873
676
16
19
644
231
247
762
311
514
640
44
528
368
699
770
430
185
712
465
888
962
685
53
976
751
572
617
663
371
375
587
435
757
202
377
970
263
13
464
658
924
581
894
978
658
279
970
283
783
657
708
796
24
320
911
991
963
43
893
659
629
99
940
140
53
609
770
167
322
799
168
173
248
807
963
382
790
74
318
472
601
335
880
713
666
791
411
438
290
385
7
220
119
804
29
826
640
755
926
50
508
804
960
983
489
536
549
217
357
530
202
890
724
421
59
295
219
227
473
262
199
333
877
937
793
947
54
443
778
138
741
35
147
269
964
797
374
897
225
131
242
194
82
759
184
116
496
698
746
733
608
414
283
665
850
175
927
23
191
542
482
106
439
219
789
168
743
456
457
262
920
321
3
342
20
5
252
118
754
677
452
356
697
45
530
328
751
482
418
789
869
351
706
683
649
137
754
862
970
17
373
40
241
485
813
287
411
941
646
846
923
810
269
514
90
127
409
395
689
462
416
262
39
668
392
570
615
320
693
882
251
390
148
738
305
412
115
212
232
243
916
810
835
572
866
60
82
193
593
522
727
360
173
509
600
111
2
573
93
243
672
92
249
763
595
533
663
531
209
677
12
197
163
447
545
606
426
466
802
332
488
422
726
171
156
890
218
638
138
194
411
542
120
988
571
824
562
73
976
333
397
551
983
916
511
530
197
726
963
994
684
535
771
760
755
251
366
78
608
704
316
25
394
16
267
469
78
175
875
721
45
354
490
469
935
936
438
810
659
625
694
491
675
144
510
875
771
359
233
321
458
484
465
272
18
373
157
968
650
42
453
22
850
243
950
330
46
302
825
818
812
556
419
982
11
824
349
251
505
391
698
718
941
555
263
560
889
218
452
562
780
469
161
618
172
672
640
433
193
180
830
469
534
414
508
902
66
482
262
193
24
906
463
259
344
734
81
296
979
390
441
828
850
263
39
344
396
800
811
338
185
916
58
326
561
229
184
527
47
360
495
408
955
260
539
873
7
901
274
437
592
344
453
803
739
2
619
272
376
165
507
265
670
924
8
108
849
138
698
115
551
553
250
619
895
33
872
590
724
166
338
494
526
374
746
840
463
255
586
559
609
912
152
881
853
230
737
32
252
431
25
868
204
159
886
40
95
833
907
707
129
29
548
210
827
13
738
297
178
168
645
594
551
139
506
638
401
369
766
665
295
841
339
293
141
469
291
368
487
706
746
629
347
879
431
581
365
941
54
841
492
441
853
84
785
430
318
66
653
249
639
726
68
243
412
288
690
255
70
359
721
371
809
471
422
16
248
671
707
924
274
459
315
924
174
854
987
255
507
710
151
225
714
239
68
20
561
105
468
144
891
111
872
695
120
121
631
382
662
769
183
647
358
729
974
180
412
143
70
557
300
435
747
359
208
496
657
570
404
402
455
143
203
564
34
164
586
619
805
53
223
605
592
737
527
504
867
985
264
887
608
419
35
910
843
456
363
513
488
623
464
61
978
260
315
40
444
794
695
811
594
792
338
18
335
694
842
10
832
704
629
672
307
516
794
36
109
293
720
578
800
73
132
182
588
163
627
333
423
487
61
74
290
453
294
815
81
18
576
150
613
354
681
784
994
792
754
463
466
279
931
152
74
117
12
521
661
156
429
173
68
510
587
345
643
556
382
854
222
978
955
91
716
571
965
447
391
348
188
796
408
164
866
144
555
908
999
173
442
773
155
925
589
404
83
103
766
337
141
438
410
900
241
488
324
841
435
503
152
564
130
314
968
632
764
903
644
444
789
735
556
209
412
449
823
30
502
313
488
862
680
55
208
749
386
507
923
379
819
714
473
497
22
877
643
841
957
956
639
180
459
323
548
405
881
201
488
792
664
294
340
123
15
289
883
76
107
219
247
257
979
266
624
75
262
60
188
535
805
982
73
545
673
309
404
358
507
802
867
185
20
131
714
525
375
350
483
733
993
568
735
738
710
382
200
194
698
473
144
822
14
953
987
682
221
794
450
705
884
525
569
304
351
62
238
849
551
100
699
911
576
455
541
237
248
335
835
291
110
211
660
34
659
46
172
67
144
32
304
581
900
777
848
469
999
431
388
649
145
351
642
598
774
232
247
559
412
750
435
886
959
160
596
674
865
535
645
306
889
172
706
520
795
119
12
798
606
73
238
816
946
186
147
759
569
62
260
427
798
612
654
394
597
417
622
741
182
175
603
464
786
83
759
972
644
123
803
655
220
448
952
339
512
618
940
773
13
837
106
803
276
218
507
277
517
312
922
378
497
271
617
432
469
773
31
863
427
174
115
446
259
604
207
351
660
315
881
978
477
848
728
345
70
799
189
568
576
482
455
333
200
425
159
949
831
521
869
739
588
77
346
839
722
659
545
671
11
156
617
203
431
943
901
648
543
272
363
670
585
462
288
944
718
782
247
834
446
258
519
140
445
142
390
401
503
888
622
411
255
517
558
420
864
253
901
256
523
511
407
559
158
200
155
127
788
401
121
940
413
711
226
753
636
478
757
289
553
501
146
654
650
952
415
68
903
867
81
466
880
990
311
934
850
960
981
245
987
264
612
102
768
681
998
543
292
805
784
387
495
612
703
23
366
753
909
206
784
87
223
921
321
655
60
422
401
291
902
676
497
512
302
290
888
44
885
968
954
872
776
99
84
693
970
269
288
288
569
98
51
775
461
900
41
691
780
114
621
576
143
1
902
108
889
983
310
413
135
322
867
940
252
912
311
125
837
627
684
791
135
113
722
805
625
722
52
401
250
198
264
772
348
378
729
775
196
976
804
987
958
874
154
248
230
111
523
548
589
915
853
153
429
829
441
31
279
98
482
168
931
909
164
936
58
96
593
873
184
536
929
861
823
697
833
261
959
475
575
515
199
504
812
334
345
112
343
518
937
698
497
98
494
636
56
50
710
217
190
135
518
649
364
54
986
992
329
732
996
181
71
804
523
967
969
428
97
830
592
946
752
75
936
485
39
831
368
188
641
783
550
742
286
440
996
549
140
758
347
352
782
610
521
757
627
693
574
526
666
628
952
880
625
243
382
443
713
878
16
155
625
141
92
214
630
329
519
84
971
420
288
339
483
240
165
143
554
180
857
346
257
841
521
13
831
669
118
43
58
553
835
261
743
193
727
641
518
308
127
299
175
491
555
246
340
614
398
385
79
240
889
534
22
669
897
783
619
79
383
961
212
476
26
418
585
28
595
291
512
523
624
246
53
559
171
766
287
275
673
217
272
732
964
818
664
302
240
74
295
944
23
440
925
165
88
699
466
138
661
313
20
107
873
555
615
643
481
462
499
132
497
344
406
166
689
480
511
207
753
283
787
521
996
568
501
185
321
888
471
472
300
150
614
361
197
166
859
409
203
21
821
777
575
163
447
678
35
759
476
608
188
259
384
379
525
498
111
305
55
431
323
593
991
27
831
348
730
45
968
524
621
102
5
733
462
11
945
833
122
822
151
562
412
863
285
42
766
235
836
699
55
554
355
772
698
228
786
549
331
100
947
989
790
951
987
86
255
650
917
515
552
277
184
232
281
760
181
128
741
790
582
496
209
270
469
67
747
232
35
234
224
397
503
22
875
161
771
460
876
199
787
116
318
321
147
778
371
123
492
937
48
658
807
541
518
452
781
520
483
920
338
23
615
683
291
156
774
162
357
120
989
720
252
542
3
466
178
887
124
690
696
625
740
98
187
565
589
961
504
424
380
251
977
955
861
765
500
634
31
990
5
209
766
372
948
327
407
265
538
52
274
893
397
792
225
713
282
518
497
725
566
812
658
933
740
738
742
296
681
238
965
544
857
133
686
487
858
369
149
859
159
325
423
452
150
486
854
186
731
148
483
982
137
305
425
192
551
833
632
211
584
112
583
301
86
730
37
264
106
738
854
913
369
638
567
242
390
206
783
254
883
557
565
534
755
983
407
552
708
494
935
26
737
938
275
48
741
123
367
419
450
590
80
992
293
570
613
499
738
183
802
346
50
379
327
28
546
50
546
103
324
485
555
611
802
829
176
430
363
520
500
268
838
364
803
293
477
572
241
185
370
907
813
526
692
590
976
358
611
248
501
692
577
265
96
965
36
469
191
464
394
183
137
219
682
534
507
685
575
34
551
974
808
361
732
416
671
30
919
213
853
818
818
115
19
808
690
574
269
838
258
9
382
777
790
187
771
595
843
158
83
291
783
578
696
527
883
216
532
680
294
6
549
978
611
576
365
22
200
874
844
933
417
736
776
543
593
31
570
546
644
77
187
761
130
562
35
241
419
492
925
475
43
588
545
253
459
403
167
215
822
750
395
969
314
150
874
47
801
154
934
852
646
986
37
218
818
788
848
49
541
124
603
708
948
370
890
828
192
524
85
190
864
356
723
894
681
218
447
980
688
988
440
265
557
73
828
56
552
328
434
670
554
119
673
699
147
687
21
944
259
46
855
278
69
744
988
291
263
143
536
601
341
868
360
553
683
338
151
876
541
834
277
864
90
414
635
746
682
24
747
993
198
503
721
643
133
162
196
813
85
538
793
410
791
833
330
686
758
121
16
809
537
144
404
424
768
991
188
655
110
243
608
239
395
542
403
838
147
717
420
522
142
338
792
3
42
867
73
257
85
949
987
562
9
937
457
54
99
297
875
142
974
541
703
842
929
554
15
249
430
492
539
42
700
494
668
200
352
401
382
900
918
930
571
161
255
47
231
458
86
349
739
849
841
278
547
600
634
949
74
488
853
823
827
592
410
945
862
515
270
257
701
698
914
974
224
44
969
543
587
882
323
557
163
81
752
689
200
422
946
68
566
402
328
894
48
96
104
978
750
310
185
716
188
829
647
42
934
867
55
504
630
91
363
191
166
296
660
746
840
720
746
440
568
203
691
300
370
21
926
129
939
991
792
278
698
607
369
334
433
711
755
332
367
443
437
475
40
138
729
751
435
358
139
31
563
744
149
985
138
348
671
914
941
926
564
639
299
86
492
559
926
327
313
129
965
414
74
125
765
216
260
233
292
175
693
582
853
761
714
953
458
384
196
85
41
841
391
440
879
797
177
953
645
171
825
109
45
11
66
150
671
24
220
921
89
438
622
766
234
981
786
537
372
539
101
543
131
228
88
125
23
633
246
968
40
307
588
122
350
585
537
842
696
564
282
435
164
274
996
603
219
625
207
897
12
639
582
106
70
282
978
817
922
941
128
39
778
252
882
781
849
500
416
648
445
943
840
808
257
665
379
856
232
485
905
397
427
348
956
400
724
482
52
69
607
720
920
755
436
244
657
912
392
215
753
719
210
558
452
68
799
774
848
405
902
122
586
438
36
730
611
430
295
482
57
367
448
348
42
725
24
86
372
14
9
467
464
17
731
187
188
868
895
889
601
950
634
647
166
485
135
483
719
706
632
227
617
910
158
387
271
861
517
727
45
713
402
835
396
436
658
569
706
849
543
743
534
406
880
107
733
801
183
556
591
540
366
666
381
781
850
553
858
345
916
327
351
169
844
888
548
798
251
730
827
565
776
870
163
889
693
211
31
52
653
469
679
961
137
504
347
736
455
615
586
105
711
362
933
217
393
366
562
992
558
935
551
453
729
26
764
496
503
492
88
639
523
806
691
447
647
389
32
340
541
812
343
635
144
722
853
414
936
946
496
328
649
38
494
718
918
227
233
111
740
851
234
963
527
946
582
904
670
487
569
4
334
222
452
745
592
915
309
7
172
350
560
556
995
760
989
485
312
973
528
421
157
920
600
690
579
380
109
198
141
949
743
450
378
493
993
428
586
749
126
4
918
227
939
390
291
677
968
766
957
97
592
697
958
149
846
414
621
762
167
213
806
112
865
223
606
110
179
502
767
562
898
563
848
525
503
930
981
210
399
901
411
342
241
45
357
47
492
229
646
579
806
824
582
912
197
807
361
716
783
182
498
466
998
395
198
30
849
434
646
916
433
412
363
265
802
465
870
820
866
560
618
949
856
189
756
75
981
935
328
696
569
265
427
218
404
945
343
845
846
328
198
58
583
730
147
395
461
317
111
732
936
541
850
224
563
548
610
810
639
124
48
913
107
949
347
168
984
146
861
857
122
26
974
538
362
560
367
126
42
362
613
664
825
596
759
29
414
204
654
855
335
532
207
723
280
284
951
633
383
978
410
315
455
254
610
910
566
312
861
3
182
484
769
278
510
383
89
510
191
319
754
781
492
7
522
590
819
252
259
79
609
733
743
64
951
298
210
571
985
849
462
102
343
651
673
850
763
929
213
896
196
441
443
65
225
629
823
449
731
21
92
315
54
783
394
449
741
705
326
213
174
517
524
341
856
652
438
841
333
671
826
889
40
362
882
168
290
678
839
323
475
761
839
965
757
148
49
560
258
225
109
58
603
999
723
679
916
103
208
572
191
982
116
61
194
202
276
691
900
226
160
63
866
4
738
413
677
558
583
709
603
878
583
109
563
768
287
40
639
204
251
188
471
267
132
492
646
779
772
556
871
357
659
32
65
46
192
600
262
311
2
358
519
498
968
312
399
7
497
425
915
237
53
697
975
972
592
599
871
246
767
898
786
28
838
247
220
552
45
517
576
686
777
329
203
892
669
973
298
819
94
639
282
347
641
635
305
962
57
93
454
593
728
16
543
103
572
491
660
722
93
846
962
980
848
229
459
724
495
83
304
618
301
53
153
128
616
439
387
203
942
258
496
951
64
983
958
761
785
100
321
178
314
576
726
247
677
302
499
412
177
580
467
974
789
836
293
676
863
416
487
133
104
457
780
835
351
11
916
865
271
697
939
396
761
126
304
724
326
905
450
314
940
975
27
362
790
522
163
228
691
283
898
369
612
188
74
857
796
890
896
667
385
633
141
480
641
72
213
664
532
568
350
958
965
173
193
129
431
418
46
828
848
689
174
988
799
570
783
574
52
447
928
435
9
783
928
307
834
546
721
719
310
499
696
124
932
939
403
439
995
945
426
378
845
68
819
696
459
153
681
72
288
639
612
85
639
914
949
183
245
885
295
884
697
326
519
350
993
51
56
859
167
345
579
107
22
551
590
940
964
233
848
681
865
649
432
671
886
611
484
18
989
221
195
110
650
542
681
519
549
470
702
409
97
821
904
943
60
506
64
89
325
9
219
13
38
613
19
48
894
848
463
382
566
38
869
945
151
469
456
479
869
71
392
495
530
439
585
44
745
489
611
381
548
396
693
981
3
183
73
38
523
633
625
700
7
320
842
59
952
958
792
591
50
584
219
255
617
724
482
598
29
974
303
406
238
83
834
171
345
888
943
967
397
419
955
237
445
691
488
210
597
526
92
786
696
20
331
964
178
439
364
279
700
474
9
549
330
219
463
923
486
672
714
65
16
825
194
630
628
981
809
926
236
272
2
502
883
517
710
218
751
869
993
906
524
665
268
922
410
407
907
227
228
564
724
925
812
27
771
870
825
700
336
196
630
438
43
429
473
507
665
813
509
246
173
616
679
808
540
350
558
272
221
221
75
583
698
671
548
76
690
856
746
839
392
51
534
797
277
87
623
839
450
903
742
94
717
982
392
108
246
5
487
421
313
554
480
115
121
47
740
372
880
397
817
808
67
670
853
122
83
881
532
453
727
718
822
318
479
980
865
715
279
441
830
685
370
325
526
837
571
419
676
230
347
251
958
53
87
933
28
48
130
271
25
365
473
34
694
595
732
163
636
140
182
25
93
440
567
132
439
742
144
16
551
664
205
303
107
476
760
769
232
545
953
817
585
9
416
466
213
336
630
931
105
409
782
537
48
322
158
518
485
954
495
285
904
114
720
361
160
171
926
219
834
962
930
91
187
364
439
85
25
102
918
103
113
213
910
142
881
668
255
785
318
242
285
277
51
669
913
472
288
55
306
43
409
411
97
143
478
692
350
683
882
74
494
384
37
392
173
691
203
578
480
491
915
142
900
593
678
654
41
518
450
967
796
970
795
875
693
701
116
768
664
189
318
571
902
245
747
901
240
658
496
222
269
710
574
814
128
267
510
504
464
823
651
832
234
915
277
524
588
162
699
472
576
435
913
291
174
345
240
656
845
777
414
383
22
229
698
87
396
980
748
426
191
611
304
840
538
485
338
987
968
224
313
79
958
25
646
834
796
283
641
782
28
854
659
687
410
268
811
6
217
190
129
607
413
273
281
964
131
74
753
688
8
253
688
622
464
335
424
996
582
864
290
113
340
965
399
336
952
617
431
271
674
333
771
778
96
705
666
686
743
682
704
723
530
953
775
775
166
37
223
75
843
814
423
353
899
16
268
448
873
945
12
513
642
482
14
674
482
910
527
758
669
738
253
900
160
567
583
386
191
624
170
915
395
357
427
859
909
418
878
80
438
219
813
798
670
192
82
49
939
101
294
256
510
464
405
106
561
523
193
333
433
882
257
250
775
96
118
286
55
155
765
64
32
447
321
451
924
455
230
968
486
535
446
90
331
914
406
931
951
322
298
387
226
545
647
556
961
563
24
575
74
795
993
785
336
230
225
64
143
953
181
107
294
224
847
898
436
168
919
860
690
187
334
732
856
378
837
486
799
765
490
362
431
655
895
690
541
661
753
101
690
343
788
998
142
191
94
2
698
749
120
793
644
163
884
886
462
261
928
958
393
738
264
378
463
819
675
639
329
157
357
775
415
818
171
348
398
335
591
666
285
836
788
51
645
697
717
268
770
9
228
281
732
795
708
952
79
411
535
323
515
455
672
541
392
345
378
825
992
537
488
127
669
263
673
556
949
213
733
766
102
408
868
321
929
77
43
620
111
219
269
987
800
269
151
830
164
247
658
300
319
891
276
233
520
101
611
469
122
152
3
866
677
769
221
108
586
352
612
316
302
758
714
773
269
501
327
401
113
842
392
703
554
433
447
211
132
636
800
828
466
573
498
959
217
403
310
32
49
43
245
812
635
343
997
561
177
503
964
20
774
210
357
279
759
299
312
245
322
11
976
949
551
783
849
729
260
755
557
866
191
296
353
70
598
580
68
211
435
885
34
629
672
781
55
256
217
219
200
917
91
66
709
38
67
295
262
851
493
269
302
422
946
98
828
479
857
287
681
180
232
101
809
437
976
348
278
769
729
594
512
41
555
639
775
125
586
315
4
303
318
216
717
167
584
611
683
574
952
575
398
929
538
21
686
989
257
273
62
719
18
492
123
899
756
262
867
307
323
704
892
543
283
378
861
16
384
643
852
365
664
703
816
155
196
583
502
534
953
785
868
314
254
285
285
826
94
818
410
323
744
376
252
249
682
855
646
160
160
670
606
613
420
696
55
315
675
968
703
174
759
333
354
537
835
579
290
997
94
36
921
565
233
530
621
289
452
568
472
341
936
343
375
283
180
255
893
557
231
970
151
126
115
237
563
412
23
714
413
104
566
649
67
124
749
41
380
889
75
765
862
108
496
363
237
416
957
71
358
581
686
732
767
123
884
795
450
996
966
209
266
737
155
368
775
288
276
252
534
139
875
4
482
465
109
43
629
752
999
148
455
951
357
832
418
833
882
944
240
953
591
384
922
866
500
125
952
129
587
949
140
706
537
219
706
682
250
302
15
841
166
697
997
819
754
314
381
323
950
941
406
332
12
580
548
491
82
616
965
983
91
501
165
51
8
749
415
138
127
736
584
580
929
398
787
893
386
104
113
186
744
630
178
646
543
807
694
956
671
215
601
633
336
32
751
664
533
947
812
5
899
243
197
215
357
825
403
614
793
654
106
977
504
780
239
460
324
519
507
200
55
459
466
912
136
950
245
898
646
123
361
439
291
108
286
502
434
963
289
718
405
80
164
18
109
623
130
555
792
291
341
14
440
612
949
441
776
284
80
407
580
504
967
670
294
666
687
396
495
737
27
361
230
788
795
974
295
449
803
513
821
690
107
356
782
347
998
679
158
845
725
150
883
882
138
901
113
494
723
443
936
733
61
55
265
980
784
652
817
974
146
327
481
567
585
890
398
612
887
947
667
8
238
649
13
877
477
348
651
894
862
801
726
361
577
88
629
52
91
802
563
347
861
183
699
398
668
317
297
247
503
500
606
776
775
928
495
411
43
387
504
437
2
923
113
345
601
121
990
498
261
346
521
86
384
321
147
56
949
614
209
160
51
404
391
362
195
949
585
648
592
219
9
704
298
126
346
938
71
355
797
548
327
799
986
157
979
521
392
455
782
440
461
429
179
344
386
597
533
750
150
651
535
342
905
43
337
817
787
258
974
208
984
594
816
661
833
252
418
234
383
674
557
131
866
153
758
580
526
954
740
748
406
321
206
146
13
985
893
944
819
162
733
134
480
574
456
866
612
517
511
135
180
299
367
475
94
405
475
753
285
757
292
833
518
227
802
664
389
670
649
848
358
473
414
222
941
424
651
293
696
891
967
9
444
605
568
107
953
730
53
607
510
141
659
63
870
900
616
254
771
792
478
941
868
663
777
706
885
146
534
670
754
183
57
393
789
283
390
913
658
696
710
658
618
42
338
217
814
352
352
42
808
397
521
904
414
26
141
781
827
862
222
808
197
382
853
327
84
267
273
587
511
702
596
76
82
819
324
826
325
560
892
534
794
493
862
357
662
152
979
763
143
608
86
796
475
902
462
236
188
12
133
547
79
765
531
106
801
445
822
595
702
314
456
268
969
687
14
704
520
497
665
931
288
510
444
902
617
800
601
180
358
89
639
313
427
346
455
30
962
756
555
217
330
384
62
829
152
818
826
787
888
758
715
690
347
201
260
569
321
628
489
2
844
643
237
614
675
144
840
624
232
984
742
763
942
448
602
903
448
615
750
798
973
813
291
600
373
948
966
226
86
886
708
334
268
553
373
686
148
448
154
9
977
203
555
903
16
951
748
899
599
356
121
706
878
690
29
31
352
637
241
726
177
614
538
346
277
408
496
389
75
916
756
1
461
741
821
770
259
388
584
421
200
68
627
729
766
2
455
577
524
342
334
510
207
428
832
364
665
210
627
608
456
359
824
682
600
120
246
138
869
259
772
964
54
820
527
109
986
808
579
275
953
918
864
733
583
247
794
34
908
458
105
50
761
976
965
840
244
945
130
646
756
318
708
266
570
369
456
387
900
723
377
857
630
352
654
537
495
92
100
354
326
213
229
411
154
723
204
78
854
686
865
42
679
932
519
636
210
599
163
214
790
408
133
185
82
248
419
410
322
429
346
153
845
775
321
544
89
297
113
847
165
379
532
215
858
335
178
697
832
19
327
895
928
886
564
917
80
44
330
905
304
794
756
426
340
713
196
903
612
975
547
912
486
315
49
412
875
917
327
746
71
721
577
303
102
450
224
959
212
403
464
45
967
208
543
371
623
107
875
146
139
275
86
857
471
414
410
614
837
153
43
163
717
584
835
583
218
453
324
889
489
237
691
209
511
503
945
279
771
678
789
769
42
182
607
795
635
720
832
687
41
610
123
60
361
302
328
383
372
960
153
170
782
986
656
902
583
877
346
968
469
132
842
160
364
273
121
535
976
40
947
498
620
636
848
879
114
632
847
210
175
562
906
811
525
619
986
56
525
704
212
758
374
864
219
909
768
962
696
89
181
792
407
333
13
655
550
146
138
777
789
950
30
137
793
906
225
31
634
744
286
65
11
273
827
190
125
756
417
939
112
151
936
759
29
383
156
574
799
870
69
840
918
748
915
262
729
237
72
313
684
737
329
951
802
117
782
134
505
822
531
794
729
198
666
638
15
270
108
410
750
651
232
763
676
445
146
262
357
566
461
887
684
105
255
374
822
985
957
912
600
23
70
976
340
275
112
721
82
278
247
459
129
661
563
34
505
565
276
357
970
520
776
938
362
643
110
625
943
292
815
30
312
196
810
728
581
256
424
401
333
425
181
80
320
3
759
24
542
221
868
257
710
600
942
80
246
131
615
696
166
487
778
789
462
218
147
933
851
834
453
250
141
874
24
546
340
697
619
360
884
87
84
722
424
559
319
711
254
730
483
450
640
728
236
846
647
391
618
102
855
825
172
707
768
618
116
835
577
397
740
548
512
255
812
79
404
56
366
903
898
435
680
121
352
3
610
413
639
178
898
948
80
517
504
59
914
376
953
805
443
484
135
857
989
934
938
385
915
157
442
591
26
714
203
420
146
51
356
766
9
702
197
400
498
792
469
995
751
753
164
28
102
560
460
415
300
822
132
417
65
225
497
482
735
308
922
365
314
84
912
864
21
188
796
740
288
735
359
198
465
942
634
163
993
414
489
465
255
788
121
323
919
938
702
784
205
715
664
190
870
105
681
667
840
300
8
914
764
719
128
565
464
933
951
122
590
335
488
321
819
457
111
526
963
590
944
82
486
13
536
573
71
170
328
361
262
967
322
693
406
574
701
535
661
555
859
985
986
581
195
870
227
344
371
413
994
155
703
251
356
926
429
752
184
555
494
294
606
591
859
623
14
795
914
245
756
575
865
409
730
958
95
905
817
666
346
727
799
914
367
108
264
72
338
480
146
949
352
106
61
566
380
396
721
571
856
431
429
126
657
419
290
295
521
397
832
524
934
518
209
767
495
691
224
752
359
942
457
435
99
806
223
759
348
165
579
698
184
247
809
915
298
673
258
947
818
969
551
940
647
622
15
834
897
294
71
688
172
969
213
914
973
994
28
850
197
530
946
356
818
134
340
688
709
294
469
822
433
277
934
390
391
517
787
477
792
389
862
55
94
890
527
214
34
894
941
304
646
408
751
288
23
195
123
514
282
327
125
604
824
249
255
895
36
822
523
457
207
550
58
807
668
892
263
927
607
127
654
815
353
166
176
26
526
646
368
197
394
274
196
465
264
258
231
845
636
632
179
212
371
484
97
96
350
944
620
130
931
196
907
156
673
310
252
658
73
230
369
389
455
327
64
933
355
593
543
410
662
418
291
974
947
443
444
868
70
81
675
581
27
238
265
199
366
40
792
953
7
572
772
407
263
789
757
44
420
163
741
757
401
211
468
514
904
932
208
230
866
383
589
992
554
788
363
217
62
865
567
315
800
589
403
90
645
884
712
159
686
400
449
906
339
918
181
815
770
750
294
434
832
562
88
623
983
779
852
475
426
540
982
555
596
426
956
811
807
379
868
20
221
49
544
466
934
683
653
636
607
547
446
311
571
134
482
238
501
779
106
865
33
238
732
146
418
893
311
913
961
369
9
392
882
274
214
783
18
622
689
301
127
216
867
879
95
671
983
462
944
718
310
28
273
4
987
983
317
399
48
41
373
740
674
238
538
55
429
297
919
698
221
879
91
805
739
816
370
853
51
746
910
848
968
243
60
981
120
878
287
231
467
619
575
648
928
387
541
630
341
40
243
686
542
246
498
431
936
467
264
171
613
463
348
302
131
524
771
432
179
557
934
550
10
689
232
602
305
442
877
353
276
739
513
12
503
224
306
723
745
628
45
653
615
117
617
4
271
273
518
404
615
110
451
783
105
692
676
853
14
896
127
495
589
911
895
874
950
337
798
906
219
48
686
551
512
282
935
893
73
228
331
32
923
474
737
166
289
729
906
810
547
452
709
848
502
550
64
703
222
743
53
933
475
612
185
567
423
900
271
823
757
783
781
786
565
96
571
116
174
729
585
222
431
987
359
766
339
837
49
962
219
232
671
329
175
398
556
312
289
170
742
388
458
84
54
764
671
923
284
407
978
948
530
492
158
831
502
488
253
419
229
586
851
309
604
525
113
452
611
168
539
259
826
4
987
198
763
348
933
595
95
415
554
642
983
270
702
179
172
344
895
69
60
870
941
157
536
150
479
528
652
220
313
116
867
720
123
526
505
960
69
155
554
658
324
814
32
210
325
335
823
933
280
268
273
470
200
955
63
831
661
613
869
406
942
874
103
438
774
264
148
177
674
211
275
740
515
402
547
127
125
327
825
144
705
718
939
46
843
398
520
167
463
674
300
455
286
148
715
449
712
593
435
61
187
647
260
70
992
532
955
798
409
936
706
334
788
725
701
225
934
57
594
377
743
980
713
999
911
819
455
367
686
98
415
532
892
764
956
59
459
870
53
312
442
722
758
527
968
966
667
560
447
491
514
655
998
58
317
207
933
261
158
173
77
589
112
311
521
174
441
25
768
642
766
65
5
283
935
22
222
187
32
944
153
894
919
196
584
760
533
835
447
750
125
199
713
880
235
852
611
448
6
794
525
642
792
804
724
450
651
716
122
296
984
747
230
213
20
182
670
915
726
761
641
606
577
18
518
568
351
124
48
84
411
774
181
237
419
511
103
115
471
134
109
817
713
152
766
378
968
500
860
54
183
695
721
245
154
919
66
774
287
157
99
527
668
39
885
210
566
992
794
509
80
555
445
593
652
823
893
426
252
140
599
851
264
994
900
715
54
935
83
500
445
329
827
314
36
582
150
674
266
556
812
976
706
352
974
627
250
129
593
331
27
639
522
148
558
248
264
673
138
170
157
630
910
295
64
750
728
131
557
70
674
219
160
696
328
622
146
911
21
274
466
925
343
752
473
806
806
680
755
788
319
476
536
97
400
182
67
411
288
224
898
120
571
523
656
808
479
826
819
935
102
352
653
863
704
232
287
158
821
258
944
48
375
769
751
198
682
64
296
147
556
734
624
797
375
346
354
820
96
665
327
979
860
819
686
966
823
672
392
169
894
908
590
31
280
851
744
801
771
458
126
415
530
673
380
367
728
855
489
358
877
467
62
157
930
964
188
555
83
785
375
11
672
128
252
648
145
593
518
524
602
552
50
637
540
911
450
187
440
320
238
967
184
34
291
428
846
434
100
315
664
189
719
986
84
115
743
402
422
732
223
135
338
964
756
325
417
424
616
20
515
1
116
763
547
408
826
638
836
824
801
710
494
203
860
413
833
64
554
425
169
48
765
708
97
104
629
220
277
966
11
423
817
81
800
663
74
955
439
675
289
106
565
597
930
512
641
136
104
344
491
354
869
192
851
467
236
407
667
444
778
607
361
870
814
379
892
413
402
197
339
878
624
879
137
63
482
168
777
584
462
494
116
933
476
656
553
626
230
333
428
666
289
995
896
681
744
695
783
552
620
229
733
907
5
613
730
990
55
788
985
68
629
83
982
285
491
427
394
158
826
266
183
70
769
672
589
628
982
455
319
786
384
226
964
233
761
209
929
863
925
562
571
442
348
361
38
207
14
612
191
317
302
626
726
354
46
664
138
332
24
103
9
600
469
199
683
404
119
749
523
283
498
531
232
264
695
741
721
409
635
383
615
370
265
2
485
758
500
611
188
98
71
597
839
823
554
971
972
150
677
633
88
265
89
907
818
770
394
462
659
304
942
729
696
641
488
639
336
468
713
924
904
508
561
426
213
901
692
408
710
723
768
572
731
3
295
350
281
357
183
715
365
38
951
883
155
341
900
199
336
915
635
505
436
753
729
580
703
663
695
917
79
985
752
935
535
371
998
694
346
138
358
978
285
998
560
867
556
677
272
871
2
493
73
795
88
264
137
977
273
715
647
618
662
266
637
379
285
17
348
784
343
206
853
199
557
657
221
437
193
862
25
26
392
824
916
585
913
956
847
272
235
21
422
631
491
740
317
19
362
182
582
539
329
487
528
795
640
874
239
431
43
699
785
411
690
621
226
838
350
53
465
329
169
76
550
322
784
223
707
816
341
202
76
12
281
486
696
904
296
121
944
40
718
417
230
535
236
11
940
870
514
479
669
310
716
253
370
253
937
207
12
418
167
422
91
841
624
773
131
205
924
322
542
229
108
426
610
752
846
15
87
773
282
837
303
862
533
766
295
28
116
443
966
90
110
527
873
297
326
389
911
462
880
736
946
192
936
440
202
291
643
617
407
923
120
238
136
329
119
229
308
857
478
103
89
481
356
453
120
580
552
313
426
458
103
624
892
546
891
111
925
93
564
5
384
498
37
43
969
871
391
544
178
98
81
54
984
777
647
465
836
483
321
621
738
330
191
948
820
496
345
590
437
9
303
216
294
474
719
591
444
313
484
248
190
8
136
329
378
50
640
116
898
426
275
442
771
942
267
55
307
89
223
473
526
800
108
170
795
864
760
511
59
57
22
523
999
74
432
730
195
862
570
771
856
230
691
11
733
860
444
351
208
664
284
355
91
11
721
389
900
965
533
513
289
129
57
842
405
751
443
698
511
536
859
444
518
451
617
297
109
97
437
934
421
409
304
394
773
666
433
989
352
43
829
230
329
58
483
727
173
849
606
981
418
746
840
671
805
839
837
639
394
425
281
804
529
599
93
879
825
663
70
738
319
453
346
468
706
630
115
461
968
889
124
260
490
455
517
675
569
632
589
933
829
793
595
927
762
26
700
730
965
603
901
510
780
867
662
964
400
372
965
175
724
376
670
504
301
22
315
74
82
418
311
194
75
136
909
525
858
419
706
681
929
385
496
366
987
614
479
622
792
553
275
197
667
414
209
453
123
92
626
741
710
627
649
547
292
708
436
644
958
137
107
981
666
284
245
340
880
305
517
687
542
692
281
529
143
115
526
660
926
456
403
766
792
965
970
303
735
948
75
279
178
835
663
656
447
294
530
383
170
869
572
818
574
939
199
19
346
121
405
177
183
776
717
503
734
340
189
700
313
941
604
932
231
238
509
707
30
625
82
848
584
143
490
58
883
584
192
853
767
952
957
615
543
897
97
402
118
161
921
107
105
829
70
228
265
640
588
337
430
491
989
720
39
556
592
40
286
660
619
151
148
336
933
361
984
989
389
333
141
108
590
868
704
975
744
755
73
263
792
244
995
855
423
276
963
237
577
987
305
58
117
457
541
770
959
769
896
709
243
276
251
255
196
323
901
121
17
64
812
837
966
23
867
376
155
293
913
658
397
748
412
402
29
84
991
133
327
933
16
974
858
364
20
517
992
741
659
100
374
843
220
514
175
467
91
94
590
166
616
667
855
238
312
495
863
849
227
113
332
769
793
84
48
837
978
603
3
351
383
413
633
813
284
554
528
898
227
561
992
897
543
162
317
349
120
621
52
525
653
143
515
547
768
605
50
137
467
338
488
488
91
239
782
203
34
43
953
757
966
964
623
665
120
434
226
632
766
698
718
358
551
478
698
241
898
87
45
679
505
391
432
888
73
505
806
305
379
115
316
77
667
295
558
688
519
849
428
334
379
418
371
768
619
131
936
613
541
542
304
947
997
275
253
576
533
735
592
614
627
921
253
652
383
642
690
257
919
10
721
50
659
711
300
87
20
663
269
942
569
194
763
837
810
368
79
393
42
982
156
784
258
813
706
458
166
719
386
977
440
679
693
531
820
255
289
287
975
167
556
869
466
650
45
434
158
415
841
15
563
298
216
937
854
937
792
845
5
841
921
301
278
291
502
890
501
233
18
555
80
791
418
874
427
286
319
607
769
273
300
750
877
372
415
143
464
756
677
883
463
443
283
134
246
255
592
175
148
155
933
925
398
287
934
771
880
341
510
568
618
185
77
731
541
171
423
906
876
360
426
744
555
135
92
636
509
284
629
172
694
144
460
614
340
375
352
591
437
644
262
123
246
109
265
279
367
551
592
75
832
685
299
787
728
189
371
264
195
299
262
596
711
339
874
475
724
462
392
167
819
832
470
233
99
304
499
446
869
813
269
957
692
555
340
9
845
672
885
151
5
88
396
138
382
666
411
906
235
790
554
904
159
425
256
999
216
66
689
425
690
924
394
382
30
304
904
157
999
865
629
52
577
242
163
731
436
332
850
433
892
592
212
80
259
365
798
267
299
340
792
780
983
461
461
80
694
15
109
78
761
255
907
369
161
502
328
917
263
525
564
884
216
257
532
98
712
315
123
665
506
637
857
659
74
849
69
116
780
83
38
422
223
773
671
638
684
843
918
757
37
880
4
774
776
908
565
727
928
363
368
379
891
444
572
124
397
249
296
312
434
213
138
181
487
142
662
442
586
894
414
869
396
366
629
625
634
83
883
166
285
342
187
417
715
658
530
778
202
547
242
436
547
606
323
823
743
823
288
634
247
123
142
35
949
498
983
525
815
947
490
314
366
130
28
93
26
720
466
829
611
883
241
39
652
977
322
789
44
805
881
811
795
249
918
162
200
153
468
218
675
6
963
255
57
927
71
417
579
231
798
24
357
458
24
364
882
103
382
971
176
194
482
11
66
679
519
118
212
865
892
873
252
249
154
606
919
986
982
725
907
905
211
812
7
858
454
337
225
555
280
98
770
497
42
482
523
953
189
377
409
953
206
713
338
924
771
109
304
417
444
895
121
657
64
271
982
670
4
207
226
182
892
656
586
795
104
755
207
672
84
966
797
605
316
954
699
498
474
83
88
345
34
807
112
384
977
113
433
771
499
853
949
981
152
228
61
550
127
543
821
16
902
632
334
477
99
515
341
110
571
484
196
921
120
880
149
85
544
202
818
990
323
435
173
231
17
815
453
89
893
149
371
931
261
72
443
402
474
634
286
462
771
323
201
16
657
29
861
271
80
976
6
925
725
830
693
468
459
104
460
283
62
253
216
423
113
265
661
49
438
747
610
910
915
356
219
999
235
158
573
988
954
183
10
917
143
446
206
430
379
974
942
371
174
4
400
519
108
777
902
393
368
813
832
333
366
96
11
370
612
693
233
301
530
472
329
879
243
299
280
667
59
231
670
463
804
240
736
911
955
699
892
457
255
181
621
141
350
677
552
48
436
836
818
685
742
641
840
702
675
521
277
809
498
236
334
137
143
369
528
126
359
99
414
912
801
776
47
350
850
188
529
565
746
232
232
223
413
985
721
163
400
35
237
435
423
84
959
20
846
484
997
980
149
426
689
338
423
906
884
965
595
490
852
488
991
711
63
266
4
111
724
158
648
366
726
325
861
978
489
717
816
27
503
366
190
549
416
321
543
894
800
507
102
756
567
909
183
749
444
711
22
693
16
736
760
840
333
783
700
365
476
444
417
167
149
569
987
486
298
443
295
741
723
110
311
218
57
891
798
817
142
113
535
777
696
124
11
767
605
349
216
633
621
178
418
356
90
935
607
998
922
696
451
1
417
280
969
906
425
543
783
441
985
883
223
363
909
639
470
26
558
220
880
948
228
662
121
546
691
954
128
122
285
799
895
445
662
534
361
417
154
105
342
63
566
774
647
737
954
56
446
451
465
581
440
702
816
502
773
754
159
424
215
471
416
662
157
187
988
777
700
376
279
53
872
454
877
818
383
453
16
384
591
636
508
677
656
703
359
193
629
161
761
606
259
729
889
871
647
903
618
461
749
178
356
71
172
413
709
986
824
997
119
320
739
775
833
579
962
739
7
453
827
795
149
540
615
672
794
143
564
7
172
480
835
554
634
414
281
437
505
244
994
373
369
631
42
441
867
483
895
311
908
907
897
165
634
953
29
815
456
500
618
567
422
817
826
639
485
186
141
420
299
526
234
762
459
455
427
517
498
174
805
312
247
253
99
264
583
670
920
680
385
465
980
6
626
428
950
551
804
403
956
681
342
476
13
383
674
135
706
179
527
512
317
283
694
307
320
169
719
563
57
814
265
461
36
833
545
229
137
32
504
875
712
96
218
124
969
771
241
716
590
448
964
741
153
872
148
698
311
320
108
781
832
242
347
142
416
881
441
179
837
445
998
675
675
651
800
222
65
570
337
548
928
3
973
608
850
524
308
163
686
846
918
817
923
722
44
470
749
77
707
89
330
62
878
146
449
289
66
502
73
925
634
740
982
559
853
829
269
738
291
892
573
279
493
991
526
182
751
952
608
330
473
988
863
249
219
867
125
828
159
561
458
806
91
760
212
178
834
364
869
214
202
11
785
815
515
52
568
887
619
268
537
114
894
742
453
646
877
734
341
986
705
440
579
729
434
767
188
733
779
349
347
388
84
394
128
463
203
48
733
167
299
237
209
890
25
345
911
348
308
566
301
101
23
883
509
761
431
57
381
747
863
835
108
271
921
150
31
500
614
989
443
829
1
175
687
468
231
688
705
90
855
840
425
213
48
246
366
200
884
367
32
147
667
986
303
463
130
938
969
874
314
412
733
318
123
471
101
847
196
41
530
742
351
291
891
24
411
894
223
676
784
830
615
248
958
297
163
15
871
225
339
293
719
831
776
444
107
108
91
577
146
518
4
844
836
289
796
376
95
279
53
235
716
294
91
484
796
485
360
826
309
87
976
971
701
238
24
520
515
448
917
303
804
646
530
267
826
771
412
669
501
786
919
593
172
105
577
426
740
293
648
621
747
265
268
59
542
33
143
598
266
276
861
647
362
749
430
70
763
823
657
25
74
690
325
522
167
383
800
597
661
597
779
223
799
296
556
540
378
471
725
794
628
813
404
225
924
273
231
422
674
507
662
916
635
623
548
58
939
745
892
159
233
546
937
668
497
639
847
67
194
890
691
292
99
863
396
260
286
100
597
893
153
378
922
155
935
862
587
176
747
498
601
632
579
567
562
83
876
736
728
286
426
164
228
784
815
371
818
772
228
289
771
839
149
998
6
854
623
783
733
634
52
671
319
696
289
60
713
532
301
314
383
550
372
312
468
988
150
138
339
564
45
814
948
459
726
761
484
580
561
707
459
94
4
95
235
754
845
532
496
756
658
286
471
913
905
222
468
836
531
17
705
486
444
169
590
237
723
860
969
527
575
133
970
594
854
290
547
278
77
714
144
617
642
582
906
758
344
35
553
505
294
647
50
544
3
973
649
834
504
997
32
984
563
968
182
525
316
877
60
616
675
190
760
817
873
88
843
861
262
831
893
688
307
465
233
927
84
426
592
880
640
712
773
80
683
159
55
674
401
382
443
467
975
937
829
105
887
233
671
915
131
788
573
673
105
343
678
99
735
254
442
889
285
180
976
963
417
681
134
714
34
169
461
880
389
426
713
370
635
129
40
850
755
677
749
852
139
101
974
340
481
955
939
147
939
554
182
795
960
866
687
207
99
957
882
961
327
693
284
678
630
308
464
606
215
591
134
608
430
125
824
317
706
794
234
78
230
314
940
835
245
917
409
768
442
833
751
798
795
788
525
446
816
296
710
173
492
333
932
348
420
573
366
836
42
371
500
305
723
804
731
14
753
449
434
712
899
695
165
381
840
336
813
642
599
379
501
410
84
61
585
896
381
592
415
671
552
572
726
71
333
447
75
990
57
511
693
367
862
998
273
796
169
551
508
84
760
724
238
663
870
91
221
663
220
835
633
161
34
762
160
327
968
94
49
393
262
823
586
89
686
134
548
86
787
788
728
829
84
332
911
828
335
64
201
243
227
411
771
221
878
532
333
101
838
946
828
76
503
116
822
936
138
150
977
736
542
135
875
431
108
803
78
702
850
332
992
905
892
806
166
850
53
365
210
154
800
447
248
841
960
652
327
967
510
974
690
186
87
464
700
93
536
340
114
76
455
631
250
506
953
922
184
696
950
971
884
773
939
823
936
96
886
34
470
455
476
110
193
875
642
806
819
428
107
73
315
712
251
135
699
169
198
741
887
39
469
630
18
538
91
916
246
264
528
605
206
502
869
659
599
346
439
374
864
148
104
755
590
877
657
172
523
805
124
767
897
146
147
432
986
846
92
654
785
725
561
556
900
502
867
812
842
592
535
354
730
823
876
740
934
713
41
141
881
919
394
441
140
760
707
61
356
438
672
753
254
784
589
140
587
548
855
89
11
845
329
931
271
770
38
75
269
406
497
274
805
951
773
866
332
120
416
140
795
806
456
405
919
781
101
945
234
737
154
387
857
952
130
37
590
462
170
370
723
632
792
950
940
399
947
302
12
723
808
467
132
716
294
204
389
923
12
489
670
92
840
531
252
111
416
853
822
737
276
869
950
46
416
163
15
506
465
521
834
798
934
510
929
687
255
142
658
925
647
666
450
681
700
632
791
261
698
829
982
94
480
274
448
938
517
87
300
131
190
882
458
491
654
871
157
331
602
565
855
275
195
896
90
609
419
269
346
784
371
753
808
636
538
740
318
660
63
990
171
169
841
528
736
765
208
959
27
828
475
461
658
133
974
708
898
584
185
838
519
248
740
516
760
436
74
822
953
914
554
497
268
611
394
686
434
667
160
324
402
460
242
517
310
910
95
675
661
829
842
734
476
225
472
922
428
325
768
300
691
386
6
113
275
978
193
48
739
288
275
231
424
860
437
59
6
224
207
849
341
399
161
124
73
819
21
44
140
471
258
109
899
859
633
16
454
130
242
331
717
48
936
374
555
611
310
616
787
413
917
205
119
918
959
293
225
882
41
455
958
149
907
268
30
166
332
565
227
421
605
876
981
875
133
293
462
787
568
461
510
404
257
727
554
54
990
981
900
340
791
572
89
786
373
569
140
669
344
389
279
745
389
367
807
41
223
243
786
666
831
437
314
579
945
554
892
181
713
976
176
350
664
887
629
34
787
196
503
563
153
793
444
180
182
765
15
889
919
513
830
748
196
235
509
355
258
510
841
819
676
959
955
367
214
929
81
502
738
774
253
28
740
223
513
38
993
135
397
181
539
3
262
200
147
427
155
430
379
275
776
278
354
683
886
194
837
77
965
253
684
513
152
145
260
802
9
972
721
471
361
123
113
661
280
673
698
755
221
786
774
650
123
463
998
975
673
57
336
319
200
917
170
145
496
27
851
117
939
344
419
182
709
907
913
653
166
693
404
213
496
83
855
179
478
34
390
688
147
285
129
951
636
402
271
444
953
968
165
253
822
581
815
876
367
593
941
216
550
345
810
980
652
124
823
118
62
990
666
462
636
164
970
655
215
467
545
307
636
469
700
197
528
151
391
914
267
979
812
885
93
175
138
801
475
149
300
513
578
154
383
962
303
703
617
658
611
161
661
900
48
635
579
81
645
613
452
501
732
909
851
82
179
780
370
462
26
169
180
67
168
32
728
483
87
738
894
825
534
732
303
106
318
912
838
457
596
58
157
862
697
798
781
669
303
301
784
522
334
156
633
442
980
595
732
16
907
96
994
907
718
626
967
999
606
745
764
267
942
912
865
968
13
318
370
369
251
59
180
785
953
373
492
379
100
861
125
723
180
822
550
500
63
250
144
71
831
781
64
558
537
518
580
421
290
664
430
663
226
364
765
848
915
210
953
346
135
589
900
744
620
42
87
120
363
366
906
763
174
299
538
470
994
622
249
436
793
71
89
435
432
462
497
816
58
701
584
852
296
798
936
243
880
319
937
495
431
460
59
924
758
666
489
926
825
296
853
294
961
517
552
64
500
466
313
158
544
271
63
661
781
54
467
376
363
296
589
676
685
753
6
334
13
165
677
765
973
570
990
761
848
291
891
779
247
872
742
415
6
779
951
160
397
398
144
704
200
114
564
530
707
178
608
208
512
219
52
336
788
548
185
973
280
302
812
490
163
688
129
490
553
174
670
905
802
845
937
614
21
972
565
859
7
460
55
671
682
683
267
28
820
407
626
458
595
977
880
95
585
653
542
512
984
74
977
533
507
703
406
667
282
437
315
816
982
326
967
820
247
142
808
480
421
102
670
146
547
212
311
825
965
842
30
368
430
54
875
932
483
522
164
979
277
600
746
384
92
810
475
270
11
61
848
443
845
63
91
883
404
831
985
296
393
581
702
439
408
947
386
928
450
35
337
725
978
828
203
821
355
286
55
737
736
42
814
905
993
586
522
368
963
991
529
651
537
868
587
696
898
308
976
145
424
547
819
976
723
124
465
17
860
269
528
118
777
248
559
352
766
796
445
821
425
19
964
459
505
686
189
111
242
507
923
48
310
909
314
190
222
838
182
870
122
505
508
695
463
411
873
289
309
236
929
102
862
155
719
405
582
361
471
37
935
354
775
354
345
481
808
867
933
369
130
927
614
575
700
919
511
270
995
95
812
899
801
7
577
822
186
155
191
908
608
861
368
145
934
767
730
155
351
982
602
6
355
940
106
2
487
287
455
799
894
313
366
376
225
37
553
768
776
522
296
653
677
25
761
268
560
469
640
933
189
356
919
13
492
806
544
861
900
576
336
898
700
391
14
295
496
991
920
898
214
962
378
828
686
948
329
330
180
838
441
18
646
521
610
539
394
353
884
418
492
692
867
201
187
397
953
286
12
466
772
568
549
742
719
227
978
91
327
543
478
214
682
63
135
318
253
180
780
475
901
144
108
503
407
522
95
178
641
289
995
43
319
713
66
873
469
904
801
384
560
303
26
341
939
278
11
805
67
869
145
774
506
536
565
629
461
46
335
198
132
800
450
38
548
436
894
968
996
262
849
348
378
397
914
599
118
766
563
129
511
290
112
771
145
221
537
783
149
437
412
423
569
603
252
760
853
988
793
503
384
42
808
804
21
797
396
109
621
966
511
695
483
207
687
841
689
678
893
327
899
112
820
559
849
426
779
774
145
155
745
129
972
60
745
469
482
307
751
348
825
428
162
183
926
716
940
363
916
411
71
175
96
467
604
272
222
249
954
594
19
622
963
466
221
382
723
423
462
218
360
382
926
545
502
471
949
637
633
134
486
416
858
734
84
571
34
505
456
473
247
233
352
157
330
203
464
696
962
544
992
518
900
699
51
688
248
550
965
133
323
585
616
821
109
602
763
230
382
650
349
218
966
989
970
127
31
770
216
299
8
254
675
90
141
968
516
160
683
396
323
483
540
324
150
662
617
531
49
728
439
235
314
313
195
774
551
911
728
924
658
478
335
667
126
70
910
527
680
141
86
604
546
986
327
866
678
642
839
308
510
500
722
488
859
772
939
362
894
366
417
605
431
759
737
844
149
872
199
81
752
91
850
907
642
835
689
327
985
329
96
908
72
420
415
159
756
846
807
353
130
548
632
314
724
481
174
786
250
483
717
806
444
758
556
419
649
814
845
25
84
612
377
566
270
508
533
11
345
579
88
302
65
845
950
205
458
536
184
162
661
902
78
503
611
290
465
313
864
995
509
942
2
783
270
517
171
67
44
216
947
163
442
670
395
416
741
598
808
351
961
114
630
684
363
181
535
873
955
980
44
220
146
350
70
146
301
282
575
434
34
392
492
967
214
498
460
407
109
195
549
866
505
514
34
396
312
318
420
89
982
297
112
64
173
727
17
93
601
249
116
459
24
374
318
570
621
663
470
864
721
128
765
760
431
177
715
632
316
674
834
983
861
487
451
736
281
429
795
487
481
367
806
859
80
90
843
131
196
464
774
649
847
555
368
855
532
351
632
996
13
385
777
926
415
132
597
536
923
581
290
193
868
983
383
354
321
906
680
341
334
584
436
851
899
186
136
306
120
595
205
929
796
798
474
97
590
880
444
947
492
307
208
615
175
582
780
864
173
14
535
625
670
291
662
429
948
926
27
230
996
292
417
328
376
360
397
70
509
287
764
441
463
733
848
27
376
821
676
318
405
271
134
106
61
580
259
505
137
45
149
664
853
214
950
201
890
880
239
814
185
711
355
886
249
95
162
937
442
636
53
128
250
708
825
725
158
311
267
796
102
891
933
464
138
101
587
249
782
648
137
496
582
862
133
693
915
248
856
966
418
321
63
500
992
22
414
145
389
225
44
579
613
443
712
294
778
891
748
149
507
913
156
794
500
557
545
387
575
132
810
909
454
301
378
781
829
433
472
117
686
442
860
557
604
557
882
139
150
839
915
25
499
708
459
505
166
268
1
435
476
27
570
257
415
134
126
313
66
931
464
345
419
632
463
65
53
598
191
943
674
407
238
735
216
785
410
746
841
873
616
561
433
38
640
659
872
603
142
471
431
570
74
218
376
571
606
867
246
395
452
567
78
58
761
70
789
834
41
630
723
380
471
192
316
903
911
382
992
803
193
450
457
719
512
104
334
21
360
645
180
543
501
447
421
49
483
376
277
571
870
39
562
512
747
52
99
881
901
472
659
224
875
442
203
2
110
358
545
657
736
769
474
396
450
181
878
25
771
267
420
536
106
422
933
154
888
945
972
460
5
452
119
888
986
955
668
60
244
420
939
126
830
619
834
101
565
167
62
567
173
75
111
635
53
123
119
454
508
49
114
165
386
86
652
284
650
586
409
494
512
819
780
351
328
295
705
486
587
832
588
721
883
405
287
930
342
484
835
863
837
214
552
196
306
774
739
745
967
551
451
979
757
567
55
353
294
759
307
758
417
632
867
675
460
392
282
981
798
721
941
167
750
545
657
298
268
585
46
553
555
960
519
36
382
609
964
316
350
933
637
583
177
77
447
205
347
876
735
913
493
758
947
246
609
284
229
212
910
757
86
708
713
753
204
457
114
831
293
851
428
965
631
864
85
359
989
673
99
452
950
391
849
132
61
797
14
273
426
99
380
752
406
593
848
928
869
424
873
989
91
516
584
884
486
527
127
83
162
251
294
555
113
458
806
694
859
581
692
407
444
841
405
195
471
675
560
38
16
157
489
566
800
110
361
435
807
965
646
533
670
930
112
176
804
825
639
947
787
155
70
288
731
467
546
250
111
390
414
810
967
90
67
6
761
727
755
4
97
371
887
894
934
160
736
513
730
230
390
646
37
612
251
861
87
201
835
333
563
112
325
417
551
836
565
580
864
106
414
77
70
636
850
417
267
176
353
571
730
34
520
880
999
768
774
356
839
205
918
560
891
422
441
985
47
470
343
98
594
156
649
624
816
314
576
400
761
833
594
911
847
265
602
530
592
444
418
783
63
210
741
659
188
853
185
647
195
865
371
797
832
255
977
574
385
895
65
686
192
374
594
6
611
7
713
627
820
911
394
602
53
559
36
384
415
990
437
962
129
929
205
896
463
797
79
592
287
28
146
696
379
731
591
689
616
736
48
181
141
557
827
284
472
768
744
274
220
593
160
394
459
102
557
263
169
698
542
813
928
121
340
792
766
697
223
321
967
346
768
678
942
256
822
571
102
921
425
695
53
805
373
694
868
751
238
278
175
329
521
917
195
235
253
21
218
36
518
775
545
424
306
874
824
482
452
203
280
986
161
248
273
847
761
123
748
646
924
15
459
945
147
639
825
850
483
708
4
802
354
67
403
649
150
629
500
498
869
386
299
36
997
188
168
273
645
347
473
130
272
571
112
503
316
599
278
666
49
973
998
744
200
477
632
95
844
623
697
133
623
250
776
538
716
424
947
958
471
552
206
137
235
873
530
782
955
899
334
550
351
833
450
895
387
555
835
521
556
74
429
22
650
341
507
23
794
573
787
892
651
319
196
497
768
862
509
326
947
850
140
945
290
148
781
789
800
880
151
161
588
427
403
398
124
185
486
893
366
507
987
382
112
441
898
33
638
952
128
525
46
510
574
705
934
483
731
502
560
718
223
914
422
627
304
225
916
798
373
583
376
616
959
440
862
757
833
849
249
748
151
847
753
626
115
79
853
697
463
640
454
983
333
648
285
74
959
485
137
674
117
840
580
545
149
430
550
134
843
177
649
881
254
811
567
376
161
796
513
226
371
219
335
733
130
392
283
312
155
788
797
349
712
575
632
311
268
209
478
684
529
719
853
287
990
572
730
521
81
908
912
164
972
911
304
897
506
846
415
756
148
238
979
55
379
301
170
679
180
256
109
952
319
828
697
651
366
48
742
557
662
761
232
247
875
634
377
801
271
735
805
421
793
721
537
292
740
799
907
690
403
51
342
824
800
960
845
145
214
652
531
458
105
858
94
386
7
733
179
745
923
368
408
444
451
688
160
597
291
406
910
567
141
52
155
611
419
407
446
915
788
233
587
619
204
348
316
935
627
152
285
8
620
162
766
36
643
898
374
112
800
248
853
808
741
964
317
54
703
483
966
600
287
264
956
691
780
789
240
104
373
225
970
140
121
903
946
979
285
120
968
521
33
335
115
541
379
779
877
239
31
263
232
145
185
685
721
357
205
76
255
854
658
271
739
576
278
714
688
838
18
338
768
584
515
446
567
952
149
416
312
2
911
1
73
110
992
825
954
435
182
590
774
210
864
115
862
762
595
539
263
665
91
39
222
692
495
648
630
738
119
769
208
789
763
254
942
657
198
629
584
452
759
253
657
427
564
558
720
400
583
804
357
609
153
647
910
873
779
381
615
345
196
217
317
413
382
985
447
610
172
206
565
965
955
810
905
837
382
794
129
936
927
230
155
314
412
599
636
116
344
70
878
817
15
239
257
543
936
245
46
578
112
110
228
378
240
392
654
342
742
73
491
985
252
678
417
965
62
4
1
783
349
331
266
103
328
748
951
716
554
362
901
138
749
550
825
818
2
777
74
21
944
294
374
271
578
892
565
336
822
291
482
932
244
262
229
780
843
126
51
492
441
938
788
381
172
354
237
701
853
599
964
285
930
979
839
56
957
995
525
435
183
615
893
263
879
969
893
488
321
45
974
876
726
581
580
6
505
992
100
224
656
864
482
223
327
198
3
264
422
174
823
848
600
616
310
825
45
526
501
203
461
749
380
808
625
89
558
349
400
833
550
964
896
301
778
318
134
670
935
682
966
629
66
148
222
126
276
111
272
755
961
979
492
897
762
907
484
673
598
239
639
653
864
588
624
858
952
299
837
991
692
374
590
818
236
832
683
233
587
499
812
448
78
645
872
571
473
999
538
870
834
460
73
697
43
314
765
477
524
364
174
976
273
280
63
587
389
673
661
930
225
252
87
99
426
192
576
219
715
53
386
953
760
967
158
232
302
893
775
921
68
206
708
223
326
836
176
797
582
286
182
799
338
608
646
582
373
973
271
851
738
546
761
471
978
220
216
306
123
831
286
496
898
739
863
19
543
863
773
590
17
778
637
430
871
586
616
153
321
575
859
328
622
924
184
522
444
238
245
107
620
870
674
751
999
686
901
598
744
628
39
509
201
680
835
959
908
332
600
392
604
63
984
547
971
957
873
973
556
342
574
306
619
666
969
147
104
885
430
186
685
18
408
692
537
350
128
942
89
224
613
113
638
853
502
557
885
128
779
43
812
927
43
403
54
732
890
534
711
689
856
24
902
414
706
587
655
293
11
622
830
931
884
332
729
462
668
765
165
412
261
976
107
388
373
757
975
6
639
804
459
593
231
400
368
589
211
224
147
915
902
592
117
158
212
881
43
710
674
592
65
125
369
299
428
880
916
514
42
948
611
649
654
206
163
238
700
485
963
140
251
445
619
250
510
669
859
949
176
492
715
265
332
47
740
334
224
932
971
488
673
696
182
198
304
253
938
910
994
974
181
558
746
534
341
619
506
120
789
759
21
967
339
550
234
347
318
607
466
829
14
767
513
476
467
555
263
421
945
257
730
948
954
202
311
157
518
797
705
121
828
104
144
213
467
705
358
632
963
957
935
332
445
166
960
414
45
271
68
786
357
85
174
532
30
72
13
137
239
78
828
521
902
346
1
910
623
301
9
761
198
630
458
988
321
398
504
789
242
897
113
248
729
919
764
743
930
611
183
395
693
221
394
886
129
414
430
99
165
51
790
744
262
307
589
726
627
186
211
631
568
223
895
342
964
581
791
982
581
258
979
12
118
613
69
976
237
571
860
907
968
405
625
191
108
369
985
423
331
39
116
745
400
552
827
470
326
53
921
547
622
447
517
906
71
778
626
648
238
612
489
57
325
304
662
163
598
704
234
596
595
369
652
543
143
235
611
566
786
598
651
185
649
313
285
522
887
718
121
329
742
338
185
718
549
59
420
97
889
664
871
621
818
326
952
254
794
974
764
835
167
61
862
639
961
305
408
13
20
141
276
879
584
905
854
258
184
934
994
84
815
515
676
122
727
30
367
324
361
32
727
913
954
286
162
681
475
545
756
245
651
407
77
749
389
991
38
912
471
694
70
860
979
681
20
651
385
740
912
932
938
84
651
987
414
362
925
298
743
173
782
639
179
750
432
408
438
927
732
735
991
454
852
667
961
866
933
273
266
511
297
734
632
823
306
567
755
90
335
28
66
739
170
299
911
430
682
230
249
611
214
457
9
178
940
484
232
984
26
547
428
652
32
233
875
49
7
355
444
864
652
349
592
705
669
252
284
553
755
532
185
704
25
655
297
839
726
455
882
821
336
771
64
788
599
413
708
936
423
863
424
327
785
385
958
864
865
304
508
689
201
679
230
494
362
723
628
377
935
36
322
552
473
622
529
881
286
803
106
256
544
348
130
892
108
858
919
639
696
433
974
422
946
194
621
657
541
569
426
876
785
331
2
388
541
871
854
163
856
77
578
62
199
253
145
852
549
337
386
504
804
989
681
503
62
900
605
279
1
872
341
717
378
229
471
214
347
742
352
237
4
756
783
619
854
912
224
694
49
769
108
204
183
922
72
795
649
499
326
641
266
575
163
984
736
861
684
969
781
930
506
806
985
150
500
49
206
63
648
149
676
911
230
232
764
137
535
455
158
675
565
847
416
711
970
429
594
799
882
993
229
255
912
119
263
301
219
33
422
24
590
587
850
177
964
355
345
930
220
600
326
229
812
107
366
658
390
275
180
72
455
407
180
654
920
422
999
112
969
463
917
502
34
134
86
977
997
240
746
615
84
663
579
282
667
999
443
805
752
604
910
944
852
351
569
183
407
197
257
543
355
233
960
757
683
823
196
678
21
388
661
151
528
564
987
791
828
897
986
921
979
194
360
366
552
972
650
683
565
903
571
800
983
204
261
850
703
821
599
843
804
765
785
364
942
760
417
288
363
778
355
509
210
335
564
161
873
595
205
710
174
513
113
118
817
861
168
324
304
137
88
7
298
143
118
215
409
995
423
792
556
363
320
787
548
63
590
648
640
101
977
109
617
889
670
291
652
667
547
82
592
93
984
227
690
349
211
68
218
350
751
877
172
413
154
811
194
325
569
755
271
520
684
204
160
979
389
409
473
826
562
742
449
341
201
464
378
93
98
200
851
523
430
290
349
100
936
205
736
859
98
327
98
792
811
72
408
781
68
710
959
802
594
392
787
10
429
831
212
690
433
101
228
370
903
747
90
394
854
60
44
185
673
613
728
235
644
657
530
129
56
597
26
387
241
50
928
39
502
339
671
106
992
46
426
997
99
728
888
65
982
14
926
9
667
774
130
980
663
553
366
772
301
84
635
835
76
841
130
854
818
52
891
515
388
938
192
627
188
731
137
916
768
465
147
42
671
18
720
466
920
948
375
949
973
899
804
909
411
591
921
258
598
35
246
930
122
411
620
728
582
502
793
932
416
449
4
835
936
593
165
59
122
663
934
870
677
942
542
489
135
283
217
596
809
878
318
733
220
217
920
260
397
991
884
418
155
442
533
524
895
968
973
818
427
863
136
935
101
376
254
180
869
131
594
300
286
198
123
538
132
271
616
720
673
904
661
130
779
516
716
235
409
18
594
166
310
399
170
946
742
382
633
843
962
740
391
267
397
584
133
957
320
995
393
624
352
253
145
522
202
6
157
585
660
19
771
851
537
428
990
887
28
176
795
749
637
772
757
932
514
395
733
195
383
758
915
413
625
969
814
57
254
647
745
736
226
49
184
943
968
539
729
969
594
246
929
144
201
643
987
579
496
213
9
806
273
961
202
901
104
359
226
568
614
933
634
381
431
59
524
589
589
813
963
974
666
763
600
137
829
772
213
982
982
235
561
41
638
939
464
264
846
283
840
610
314
162
355
661
612
549
713
142
120
398
990
682
249
35
141
509
362
65
72
332
147
244
585
379
373
593
742
492
595
260
743
307
973
354
661
504
408
939
525
280
60
71
863
584
245
879
792
604
798
954
902
782
211
509
464
70
576
976
289
20
807
221
547
859
655
683
709
895
374
636
102
423
540
791
273
76
381
1
135
493
800
138
693
641
358
960
97
465
889
591
927
432
650
506
473
838
524
4
929
561
170
897
231
162
852
480
242
419
236
389
689
575
842
795
219
669
528
905
502
694
587
245
6
782
709
669
772
34
319
435
552
377
72
573
324
903
907
531
788
878
718
677
229
501
902
352
590
855
287
803
310
618
502
236
974
925
891
448
453
184
707
209
100
801
836
312
504
270
472
316
762
997
118
624
975
909
16
505
879
357
80
916
747
515
125
934
875
835
598
398
12
459
78
605
171
510
577
428
664
591
848
320
384
971
42
313
501
878
260
65
909
386
568
97
104
791
462
585
676
902
436
668
671
74
304
303
919
512
453
465
332
588
840
289
509
759
533
775
474
812
434
997
576
534
489
625
890
981
501
380
49
992
751
762
155
180
649
311
668
738
394
988
425
795
733
322
546
279
587
344
258
686
112
863
468
439
93
138
584
678
413
937
12
74
416
340
836
79
135
329
111
222
107
735
419
446
572
780
800
168
80
611
394
157
122
363
881
888
294
715
87
512
726
990
326
456
976
351
379
394
485
467
145
259
234
36
579
376
445
23
866
312
337
417
598
801
544
854
952
54
458
948
784
420
242
599
496
117
410
963
469
222
401
407
682
613
467
136
922
86
783
505
443
271
848
775
175
309
393
524
912
122
399
326
935
536
683
724
17
635
540
463
966
482
554
645
910
929
735
985
335
408
931
866
270
953
505
513
571
467
424
187
724
886
51
347
822
76
472
146
929
742
120
288
546
320
539
961
717
203
864
245
574
408
190
504
191
533
56
981
32
170
153
549
211
353
739
81
431
208
823
835
458
589
56
592
289
644
321
950
415
544
796
368
603
179
613
317
696
547
157
289
21
490
115
760
589
570
77
194
581
459
531
510
380
29
787
984
352
598
216
546
213
106
567
488
374
785
945
32
739
423
384
884
51
534
815
967
475
295
3
718
567
128
369
955
13
287
988
574
392
629
964
99
331
610
77
914
923
627
387
804
625
45
454
159
76
646
459
846
214
820
509
58
595
498
979
86
736
611
475
88
796
372
640
111
459
285
553
441
457
900
44
848
908
198
94
523
673
211
880
367
827
143
361
572
120
906
504
833
631
991
179
312
152
300
9
254
405
344
699
790
94
18
389
314
776
661
149
397
404
457
412
525
730
109
260
654
12
69
990
552
781
719
810
465
722
732
696
609
190
840
118
330
512
91
273
810
754
47
796
459
758
107
429
175
580
653
581
44
40
354
243
336
353
148
9
374
208
923
591
45
965
539
207
564
339
83
14
640
835
449
900
964
273
532
794
675
291
635
885
69
151
652
569
835
597
782
976
364
82
899
602
830
455
752
494
219
899
865
836
497
639
941
209
591
454
278
64
821
354
334
84
572
38
523
893
313
970
371
966
557
107
649
558
935
846
70
509
521
39
575
775
425
799
388
430
209
443
978
382
319
718
155
11
748
815
31
792
932
858
181
249
528
898
280
391
989
384
273
744
385
769
543
783
778
558
658
772
649
94
685
869
991
989
648
838
951
639
810
120
816
277
576
662
857
327
248
527
520
997
440
825
171
235
997
550
176
372
233
190
158
258
143
839
174
311
258
538
251
441
440
351
574
153
927
108
194
880
925
452
311
131
253
652
653
859
699
756
992
98
663
580
406
620
962
558
135
736
489
546
69
709
277
79
558
90
252
18
307
890
356
295
447
781
878
28
6
491
187
314
612
501
546
153
778
859
944
953
191
370
973
457
391
379
383
602
853
174
95
564
608
681
450
103
741
368
134
625
741
935
553
644
550
176
934
568
163
125
301
698
145
298
827
937
916
899
903
68
398
277
174
831
396
622
705
930
52
444
411
410
726
319
213
256
816
330
906
216
444
814
440
729
873
397
420
310
854
512
186
842
464
66
227
465
761
721
248
928
470
4
517
719
714
890
971
825
86
572
121
587
993
688
623
584
837
445
958
998
203
395
77
539
258
569
945
661
93
747
494
96
82
977
745
441
298
721
16
982
426
594
225
283
391
598
848
776
442
643
628
317
763
249
726
75
927
977
461
145
944
310
733
338
79
26
506
16
943
183
286
116
429
975
573
608
171
793
149
660
720
170
219
449
120
177
332
832
252
670
513
321
261
870
38
116
861
886
205
365
93
833
833
260
358
512
888
787
676
118
904
135
828
800
425
775
92
284
219
902
694
673
763
273
670
965
855
559
937
457
747
284
589
783
567
887
337
959
92
607
289
545
157
135
765
378
492
460
445
263
25
577
667
303
671
420
70
560
589
392
656
329
849
219
371
621
545
46
234
538
438
132
193
611
613
149
517
629
507
292
474
396
114
675
433
170
616
287
113
148
817
776
370
699
950
959
695
937
763
145
833
447
227
907
824
892
385
56
689
522
902
441
54
298
918
261
215
175
786
202
5
259
932
86
720
662
762
493
661
654
454
579
865
362
459
28
169
207
850
540
785
560
598
590
245
377
723
73
781
690
745
520
152
562
141
574
514
141
187
163
131
891
395
35
68
324
575
691
838
890
92
9
324
246
417
444
661
343
840
344
938
689
711
971
909
933
428
304
222
884
514
28
20
688
410
893
166
563
522
921
802
33
234
891
598
736
196
906
146
697
913
172
301
843
224
442
180
424
126
135
896
271
470
954
377
64
988
636
835
523
279
98
820
918
542
906
455
820
373
173
737
521
159
524
970
343
727
177
464
968
713
741
437
388
26
531
563
279
514
534
748
560
71
622
419
816
351
382
302
317
986
360
51
953
397
375
113
945
984
35
337
812
172
867
809
537
661
432
893
11
344
176
307
839
425
178
451
536
106
155
991
345
874
148
981
354
691
484
991
651
418
617
295
479
198
935
388
203
813
881
155
919
489
291
973
810
54
212
528
220
924
577
839
830
44
991
938
25
886
456
846
177
441
242
592
726
881
827
642
490
789
248
723
225
999
73
856
583
174
172
301
479
955
772
727
841
778
465
436
206
997
364
317
357
35
978
479
247
699
247
928
226
569
39
430
676
854
615
830
971
136
355
850
714
156
367
222
668
515
751
947
417
391
436
492
426
930
366
190
22
593
609
884
926
243
75
910
916
342
51
986
164
634
465
71
642
513
603
202
668
756
810
732
947
300
512
835
134
546
5
746
489
425
809
378
526
470
923
472
82
457
305
327
465
764
784
782
926
366
850
912
328
164
522
265
783
877
936
627
730
239
777
370
338
304
498
738
825
87
545
172
589
131
121
211
451
484
267
184
515
730
908
767
696
92
418
325
903
544
594
648
534
297
741
842
680
935
989
161
266
46
956
839
820
678
324
197
44
311
814
300
611
753
112
999
330
10
674
246
886
174
835
282
493
896
638
293
389
279
531
516
495
106
917
470
774
70
947
18
768
221
281
593
729
294
38
781
185
742
512
671
262
743
275
93
210
674
347
924
41
31
808
765
780
298
805
505
835
642
225
261
63
656
477
665
892
242
552
199
859
857
108
647
766
859
255
751
831
825
260
101
722
23
977
738
413
516
813
432
489
533
945
543
517
251
609
606
267
609
200
968
122
149
66
183
922
161
998
920
44
55
673
10
382
125
538
40
678
739
252
377
429
121
709
326
911
565
130
516
251
649
484
222
626
292
978
574
957
794
815
252
517
893
388
434
859
936
161
393
712
570
927
528
357
822
539
1
439
739
272
358
32
483
669
395
570
451
384
90
146
963
82
883
923
1
860
536
733
276
467
975
404
737
803
681
721
956
865
803
753
978
136
219
523
458
221
34
224
992
864
408
552
72
248
749
488
44
604
357
962
4
268
163
273
297
953
294
680
987
673
614
586
581
337
168
828
863
361
466
779
826
312
740
412
59
423
333
490
55
194
678
353
508
840
749
711
972
946
226
505
926
354
237
319
251
822
971
734
81
920
625
682
138
578
136
692
527
751
214
874
620
804
626
794
995
262
79
740
587
456
855
916
136
961
853
473
76
421
161
237
451
599
410
134
568
995
215
930
705
58
184
221
732
352
884
122
727
442
323
988
743
232
148
624
66
708
547
177
725
663
617
106
590
977
423
22
395
493
226
1
47
149
35
530
272
634
185
784
77
731
745
633
99
173
493
220
452
786
69
860
448
38
206
42
441
79
630
754
928
863
727
235
216
323
941
595
197
617
352
431
523
763
101
993
918
983
8
418
485
204
570
609
424
366
552
10
943
993
89
194
5
431
855
213
4
510
418
775
231
897
23
834
434
637
337
685
937
212
124
457
72
212
270
725
294
118
811
850
770
932
652
204
528
158
426
93
907
887
989
408
566
232
188
587
181
735
175
786
29
866
72
732
870
631
123
792
162
130
919
886
699
568
6
298
246
819
306
276
211
245
777
51
222
715
891
839
25
682
544
558
943
25
821
903
860
919
333
897
36
634
931
778
968
104
709
998
227
890
341
362
430
898
575
784
90
22
511
156
740
283
768
479
585
361
942
675
746
102
437
326
486
409
241
577
313
999
83
118
6
893
613
135
341
183
128
45
449
37
814
839
409
178
158
752
866
453
193
607
162
35
252
125
453
15
875
22
658
998
472
90
939
393
150
846
670
634
138
402
233
898
227
709
288
598
917
309
252
489
710
860
807
475
956
971
642
488
681
326
308
107
387
450
565
725
899
17
28
311
82
233
315
790
374
263
808
542
837
854
98
566
770
170
288
611
282
464
437
179
204
183
952
812
95
127
512
776
145
562
698
901
281
940
407
478
546
18
102
693
163
101
650
826
229
742
337
218
163
953
443
435
579
849
108
899
280
503
696
247
751
32
398
275
156
197
285
829
762
809
66
265
363
743
16
104
532
126
583
353
790
294
614
191
119
264
322
432
833
507
199
44
322
854
942
131
703
375
671
32
457
507
455
353
888
179
73
835
833
4
368
154
919
344
457
457
418
207
156
892
875
853
996
256
611
23
943
508
801
884
401
157
455
552
895
283
839
262
303
940
191
486
598
829
140
45
125
977
397
485
713
496
220
778
157
603
510
200
741
865
236
564
35
949
603
211
699
367
448
174
618
157
904
216
702
389
255
167
116
567
898
965
112
317
172
904
937
677
395
292
773
639
520
437
705
627
452
649
227
928
345
757
530
223
867
556
592
4
77
767
349
344
84
175
967
271
453
718
778
698
274
23
971
156
401
978
637
467
511
76
937
606
939
188
222
141
435
888
449
615
312
933
600
628
943
429
556
345
470
434
174
734
870
529
654
323
785
375
822
888
919
126
493
2
830
742
404
895
953
826
835
564
269
163
386
341
422
344
212
971
422
292
996
77
901
203
736
411
533
898
355
61
67
561
695
187
441
599
797
202
26
660
392
643
599
610
465
707
143
314
901
442
163
850
466
627
129
416
101
628
7
992
362
55
471
775
498
708
467
200
900
822
547
11
946
761
900
354
478
292
737
29
268
220
997
913
898
217
95
69
58
25
499
170
196
34
299
337
173
823
112
757
240
943
414
79
894
152
904
704
727
775
938
809
890
977
724
143
58
557
876
281
613
399
142
876
324
378
814
912
463
563
181
654
180
980
788
325
805
918
19
746
313
390
341
283
86
690
279
218
309
156
279
615
947
831
145
841
802
538
755
517
337
991
241
164
594
285
630
910
190
400
337
140
539
131
968
223
59
858
790
633
99
597
604
308
285
566
707
348
835
947
522
268
164
502
409
321
149
178
688
800
61
369
29
909
818
140
77
816
862
921
783
943
747
122
419
740
388
933
879
28
578
282
75
242
877
70
976
38
721
647
74
880
171
989
573
729
568
694
489
145
490
890
486
914
165
578
520
43
83
668
933
216
298
660
223
779
295
786
32
749
164
39
96
215
847
902
773
757
548
689
172
693
444
734
538
687
795
161
78
299
549
933
954
53
713
858
583
510
767
794
435
782
662
740
981
451
795
271
67
263
805
762
494
394
497
241
772
564
123
535
983
134
709
733
201
230
85
43
502
989
319
264
990
753
254
390
31
704
752
87
892
525
94
815
494
786
440
560
556
473
87
19
387
232
811
301
74
929
540
752
367
753
769
78
943
542
772
740
140
107
210
68
811
37
643
459
41
893
239
414
789
524
486
29
903
301
876
759
942
953
317
102
165
1
720
140
755
17
871
952
15
699
421
449
264
19
208
351
589
353
261
180
690
126
962
842
267
741
174
643
665
14
797
186
790
108
903
811
317
503
703
25
23
287
400
90
104
37
764
885
94
526
170
590
693
137
411
39
38
877
873
15
842
229
287
2
902
235
658
156
115
396
35
87
649
236
157
404
726
872
739
230
976
289
550
140
843
208
493
654
697
864
773
439
630
688
183
793
999
399
188
868
378
608
770
697
492
84
940
457
979
8
313
166
139
643
39
553
679
148
158
694
742
5
459
251
623
595
456
961
54
364
404
328
684
871
851
368
519
852
648
759
267
36
674
690
552
607
300
987
650
629
115
852
241
493
126
374
150
519
74
896
627
979
404
616
603
985
481
268
791
670
35
826
500
399
428
706
331
769
699
16
295
469
311
424
249
551
87
191
745
478
219
999
778
751
132
288
632
58
87
566
126
33
196
979
595
289
353
842
66
420
43
381
820
59
601
159
668
979
368
52
898
291
523
313
452
35
48
748
267
140
75
273
682
133
889
263
274
332
829
960
199
245
126
325
435
838
179
720
150
973
620
652
690
35
668
835
510
882
528
561
241
604
575
925
346
770
698
688
169
339
885
337
151
408
852
653
166
198
878
614
855
328
598
294
520
422
583
648
465
55
753
391
803
269
719
595
670
200
979
665
140
491
551
811
88
283
502
282
182
15
670
312
5
913
705
913
6
282
405
923
188
51
223
115
585
494
533
882
688
258
983
965
218
214
474
364
776
787
206
237
920
301
466
450
384
441
387
889
563
806
589
389
794
57
478
90
268
437
227
593
750
620
594
924
32
704
95
791
440
341
138
219
77
168
4
886
584
772
730
144
108
643
319
882
669
595
172
162
735
384
97
339
560
612
487
300
707
541
419
680
347
595
450
222
668
371
312
626
53
591
506
495
707
83
486
107
301
711
256
436
533
933
56
56
245
798
658
464
681
703
180
43
354
51
797
513
194
98
214
298
283
545
109
145
878
601
632
478
127
381
999
995
286
982
147
414
540
394
976
870
712
848
945
350
411
463
142
656
285
972
912
203
497
957
154
987
824
910
178
644
167
180
338
300
703
184
757
371
903
384
972
800
121
344
586
435
600
758
733
416
459
975
193
154
468
796
499
329
829
159
589
629
216
332
703
532
510
645
646
227
706
771
753
901
1
113
83
154
372
719
388
67
177
762
186
191
986
185
832
907
685
428
542
744
794
344
584
788
640
54
924
954
113
507
709
688
223
292
154
355
714
345
957
110
771
523
452
454
147
513
545
326
812
739
541
278
229
9
107
656
529
294
513
318
795
433
954
670
53
497
968
695
32
478
194
341
471
432
973
272
891
130
641
128
508
599
142
373
965
432
459
215
185
497
825
420
831
639
315
338
569
781
402
649
544
850
295
335
546
201
807
797
36
835
764
400
652
386
810
197
291
581
705
621
39
754
510
534
652
773
509
831
118
635
703
111
728
992
583
658
304
806
827
764
625
662
180
350
732
426
767
446
829
119
47
987
77
781
611
790
340
760
683
772
692
975
679
400
132
654
671
660
803
152
892
484
753
941
995
377
575
161
802
226
7
63
3
999
588
715
35
947
381
792
318
544
124
55
72
650
982
779
219
79
755
107
643
677
227
562
235
135
785
234
216
180
958
457
766
629
972
680
811
416
620
724
280
11
834
348
361
698
869
346
394
795
942
723
471
899
420
325
772
26
481
899
163
147
577
139
585
666
289
443
677
302
967
802
459
31
827
632
843
878
202
536
266
439
839
420
238
235
985
867
210
647
907
785
935
720
561
133
433
696
762
694
410
427
669
93
828
140
265
440
72
787
482
894
824
944
633
723
307
157
901
351
681
422
234
30
394
182
866
738
469
695
200
147
116
507
127
839
770
747
592
98
970
545
795
422
165
14
961
990
87
838
825
276
795
412
14
987
194
639
698
646
274
527
970
377
588
335
778
317
818
794
952
560
565
803
381
136
626
811
864
381
221
875
651
631
870
923
352
704
494
139
646
132
50
945
823
443
575
418
833
829
235
644
173
293
886
266
711
991
32
878
362
382
774
318
426
398
875
340
507
665
983
75
822
679
149
821
511
619
979
937
561
209
977
35
147
576
702
359
745
604
213
361
672
616
777
265
357
732
520
426
568
235
911
169
846
160
821
494
145
65
755
92
12
94
318
153
404
739
172
849
695
517
595
902
453
622
403
207
902
883
464
778
100
554
370
326
297
809
188
986
754
209
214
680
849
121
350
578
299
624
860
617
561
671
730
51
640
9
716
225
757
615
592
261
601
976
992
457
724
991
856
594
552
185
95
487
303
914
53
332
272
824
908
278
24
846
218
429
823
319
686
289
93
963
230
140
616
953
80
873
129
892
854
308
768
266
66
376
576
244
747
725
955
385
952
933
707
314
238
754
758
563
633
405
305
567
502
588
955
954
870
350
835
180
203
380
969
600
510
757
781
842
852
580
571
961
333
708
11
296
433
303
715
325
116
566
259
449
3
201
764
477
421
621
373
398
889
776
183
573
963
107
804
481
973
916
711
54
834
343
235
793
578
659
522
568
634
511
64
637
121
521
598
309
992
304
422
231
207
174
73
556
526
437
333
327
498
235
352
200
855
206
615
659
965
970
899
761
100
805
763
378
712
545
453
442
509
496
488
669
494
480
846
660
271
679
268
142
327
195
71
400
159
864
782
914
906
938
343
22
405
661
132
402
410
694
843
980
983
890
818
2
746
682
705
375
360
954
389
287
703
758
434
904
734
364
219
847
763
539
536
570
153
467
265
833
348
444
251
576
835
287
158
436
377
69
653
477
160
407
555
952
550
57
319
647
227
227
667
47
475
995
218
445
355
248
849
279
418
871
28
915
703
812
452
416
601
998
527
666
710
742
688
356
984
583
21
97
149
618
607
121
776
205
101
839
70
712
82
130
220
374
59
288
380
639
249
737
605
902
47
228
699
2
336
733
308
861
461
771
228
752
131
800
265
906
140
499
712
612
347
888
916
398
446
337
684
401
976
345
335
284
491
247
571
379
421
774
868
368
532
208
251
311
902
467
244
258
24
473
499
749
26
992
556
158
312
302
556
999
49
906
884
116
436
943
262
884
229
885
485
365
631
344
81
139
637
606
496
979
93
426
377
504
846
586
259
499
690
414
68
120
219
869
320
625
324
136
874
958
206
359
30
139
987
135
119
681
912
418
520
705
805
577
906
622
530
381
270
850
685
762
194
815
817
365
146
761
25
455
814
502
732
538
773
734
397
239
516
712
467
577
586
273
893
363
314
642
962
697
96
943
865
24
273
443
166
215
321
622
988
357
656
457
603
19
973
268
803
173
226
291
864
558
383
109
176
921
921
455
52
504
798
328
360
871
636
708
265
330
568
183
917
893
724
111
920
130
670
875
390
47
838
790
471
804
79
308
641
165
267
244
293
866
571
484
558
329
97
731
382
265
3
473
604
44
373
971
834
273
188
47
251
47
65
5
665
9
857
556
792
329
67
101
63
324
889
52
322
240
552
592
34
938
494
125
44
365
186
427
431
108
474
369
976
221
993
247
801
566
819
550
472
541
939
54
198
901
411
280
155
322
649
594
720
596
14
313
553
940
961
300
822
430
125
684
854
698
124
842
331
643
250
755
420
2
121
492
998
440
926
142
954
906
273
110
459
879
648
381
208
680
694
861
605
520
728
42
417
255
199
500
777
569
948
511
72
893
175
718
475
521
314
113
14
819
345
915
157
15
226
974
51
743
634
651
949
389
151
900
274
79
76
744
242
427
364
386
957
761
39
566
705
929
905
686
366
581
848
786
175
812
884
402
30
224
450
35
934
298
562
682
743
275
445
397
445
570
871
586
455
959
958
396
975
660
270
121
837
947
285
368
540
364
725
461
195
674
715
18
977
330
452
660
200
356
822
431
484
509
241
796
710
262
332
216
854
489
426
370
954
329
198
986
14
194
143
379
549
983
202
771
854
853
608
125
507
298
196
620
837
839
636
328
707
488
658
279
33
510
607
705
248
346
63
649
133
465
647
6
214
444
881
501
307
470
941
856
654
207
708
556
294
806
533
116
692
869
280
525
536
863
347
40
377
497
524
509
791
959
992
43
651
190
406
393
957
136
21
238
546
801
624
826
801
51
412
442
813
947
956
263
186
122
470
350
98
842
125
810
945
432
66
694
214
666
905
104
400
140
158
557
849
43
978
734
240
520
238
326
86
83
696
843
4
730
857
529
719
57
296
116
12
211
292
114
736
929
612
136
146
308
42
673
789
399
414
143
144
736
111
577
604
798
725
863
736
222
691
484
808
376
384
344
843
42
546
639
751
864
997
310
908
103
180
777
41
23
55
604
317
714
386
983
946
719
512
213
486
429
378
515
239
129
327
770
924
698
830
747
853
775
392
279
738
800
669
501
619
947
822
713
168
88
168
95
989
400
397
125
530
333
154
322
487
483
72
779
776
409
853
342
193
307
750
542
323
108
246
146
51
12
593
538
606
665
348
151
961
233
780
524
301
705
218
520
622
70
791
256
729
889
725
210
95
481
520
860
338
626
771
882
155
252
75
519
740
615
716
821
135
920
818
543
628
330
41
488
89
231
919
253
316
989
416
161
286
384
444
125
145
487
813
336
461
898
369
50
631
699
780
7
353
969
121
808
71
182
581
764
440
33
771
108
706
519
566
166
836
913
233
356
172
591
677
647
108
483
83
730
960
991
857
390
450
913
899
346
868
607
91
105
802
679
685
113
715
706
630
942
333
204
213
717
466
424
835
761
293
474
701
588
99
851
803
449
175
382
657
792
619
220
297
229
823
128
554
492
906
564
932
402
853
141
398
757
778
140
924
26
79
138
53
395
906
502
6
950
875
236
937
334
49
837
323
113
906
984
894
339
870
343
854
729
541
299
735
958
454
47
670
36
457
632
714
481
167
901
322
322
123
603
617
671
626
598
353
16
817
286
850
794
246
586
156
735
284
324
853
608
766
48
497
829
566
902
876
417
123
842
945
6
662
572
216
267
725
184
104
942
946
719
141
169
196
875
790
871
476
978
198
843
48
714
555
75
107
787
105
723
722
935
893
975
340
845
133
673
370
888
11
100
220
911
662
48
906
329
634
691
113
5
940
144
644
102
957
947
18
141
161
938
80
380
221
11
826
166
828
350
743
117
502
588
968
99
623
137
53
508
169
777
154
414
611
717
995
749
332
239
888
185
655
229
728
72
21
840
690
651
221
740
500
284
947
995
503
353
176
546
478
820
895
510
972
383
784
665
769
504
16
78
834
590
461
558
461
274
859
896
79
783
447
401
287
429
278
869
466
615
215
642
573
785
760
69
290
146
257
345
288
355
71
186
636
144
906
910
822
389
534
229
494
279
468
694
373
494
223
543
106
914
200
154
290
373
504
49
829
393
269
316
18
515
609
723
713
261
764
144
522
367
47
78
81
985
149
295
318
66
695
796
923
713
239
373
156
916
896
263
639
857
81
430
121
219
212
978
670
744
981
112
729
79
21
739
867
123
74
304
225
210
731
764
698
473
393
305
276
236
568
796
365
501
505
665
286
617
956
862
774
170
624
573
84
583
67
844
692
500
506
34
843
593
39
430
126
317
732
647
826
907
703
434
176
186
747
228
574
356
453
251
166
212
529
56
585
158
680
115
407
548
612
775
730
535
953
771
463
75
539
968
885
309
36
867
467
191
398
898
835
838
271
336
48
255
867
632
64
982
845
968
637
617
241
278
295
927
704
640
233
976
764
499
817
484
365
856
176
662
589
395
760
781
279
568
278
276
728
475
667
322
708
480
230
570
332
268
69
758
572
539
486
757
666
859
74
771
519
563
890
12
456
402
394
451
209
855
338
673
1
19
199
229
973
910
269
285
270
247
152
98
788
418
90
50
908
3
116
420
494
506
757
166
585
656
865
306
87
778
362
477
929
395
757
554
341
257
784
755
591
789
501
272
411
792
224
39
312
345
542
206
739
918
180
494
261
34
644
317
46
962
198
491
884
675
168
393
660
536
709
651
219
361
829
704
5
485
754
792
432
826
994
742
237
157
737
12
216
263
293
307
613
467
709
628
592
10
388
736
625
830
379
776
635
890
986
379
89
475
490
776
280
851
885
220
968
456
255
727
937
156
178
398
243
402
39
752
651
201
113
994
98
18
168
602
448
219
107
346
171
359
922
740
773
517
28
761
582
490
660
136
755
660
799
469
652
981
533
233
852
235
728
888
363
495
679
262
684
283
771
749
349
909
557
579
234
438
624
726
375
278
170
161
540
976
240
437
219
698
949
467
685
873
494
935
630
35
377
279
838
766
78
299
718
910
787
845
103
220
236
215
357
806
858
575
65
567
348
387
255
242
43
985
334
305
65
475
416
622
948
199
61
346
888
609
200
871
442
630
189
395
334
998
463
734
110
879
16
918
871
63
687
990
25
596
723
92
965
414
846
312
430
481
272
37
154
12
917
250
375
194
126
717
198
860
907
44
522
599
196
185
459
497
750
885
512
71
322
293
885
109
905
29
783
877
964
852
727
427
581
99
961
766
544
678
937
969
793
164
688
679
569
367
219
662
852
932
730
387
525
84
690
625
364
266
288
97
934
321
895
55
317
96
18
97
223
693
953
73
947
542
278
158
604
206
539
539
810
122
25
32
123
340
901
497
409
337
403
278
390
841
36
472
269
633
363
474
349
122
439
160
979
657
439
982
806
532
22
158
727
749
286
813
296
863
932
976
195
521
688
885
291
675
683
106
507
805
889
970
843
66
190
689
682
864
53
465
901
919
691
876
316
245
551
640
555
222
177
405
701
386
279
828
433
553
869
305
974
333
475
1
643
51
315
661
560
597
131
431
811
468
76
275
829
811
570
46
125
43
551
285
629
484
270
457
786
361
256
129
995
747
490
568
444
691
234
266
930
889
81
958
92
745
593
233
311
5
999
621
983
823
181
931
782
190
372
159
780
857
875
199
341
2
436
64
977
508
831
139
578
305
116
235
962
592
194
883
891
38
147
782
362
634
146
173
567
559
785
254
319
76
485
74
15
882
617
91
310
530
255
803
174
860
44
679
708
945
969
191
996
488
268
743
710
93
836
707
856
263
497
419
722
577
819
503
819
43
221
80
975
104
574
361
782
344
609
502
590
467
465
622
589
595
258
830
807
741
363
921
46
909
234
47
34
835
81
596
41
541
859
665
725
889
215
893
913
906
961
367
484
335
117
389
798
874
830
128
320
988
695
79
679
299
34
66
869
528
328
946
264
13
461
50
608
799
897
699
380
365
916
901
780
996
438
711
793
845
248
159
6
952
277
52
846
780
986
426
856
149
24
386
578
15
103
471
873
67
781
999
977
132
747
955
73
793
299
683
861
323
273
24
280
170
941
311
736
409
204
827
812
471
843
232
341
531
323
765
893
966
837
726
65
248
181
874
206
322
979
53
482
303
565
533
876
999
106
409
74
792
735
465
863
953
187
507
289
516
615
541
470
533
790
894
485
546
959
33
988
67
106
414
430
151
346
510
906
310
355
341
425
914
691
101
231
373
862
111
61
674
586
689
707
439
582
948
512
670
49
330
41
74
420
8
686
322
35
712
608
677
600
978
161
274
116
556
842
689
664
112
683
849
971
315
481
417
707
990
569
397
998
236
261
26
300
352
495
684
414
909
338
151
503
384
74
607
528
433
323
27
106
822
7
936
646
191
102
106
526
270
614
45
144
211
679
365
717
136
973
764
61
159
276
754
773
533
346
588
241
874
888
274
668
542
292
176
230
325
379
110
250
389
158
145
295
294
7
293
705
709
889
392
459
558
965
947
547
253
164
114
845
514
865
652
382
341
376
602
918
503
135
393
757
864
515
672
1
132
459
479
527
54
882
531
984
496
814
111
576
344
629
977
161
266
264
735
524
506
762
954
918
404
374
203
575
496
635
594
43
294
947
416
793
684
586
791
631
334
667
885
526
265
26
575
874
157
232
492
600
779
148
494
369
504
561
123
679
680
956
489
861
221
68
282
397
213
184
477
679
473
104
190
839
877
429
653
379
799
329
418
264
143
993
264
147
453
48
289
123
463
113
951
378
179
25
306
198
743
178
661
973
755
812
128
675
957
655
491
76
907
744
880
352
538
225
718
227
804
136
944
166
895
355
216
360
153
812
661
853
123
456
635
621
667
445
509
330
866
588
189
798
556
213
216
719
232
599
839
953
306
79
394
608
234
495
78
401
597
767
522
146
993
638
952
451
110
260
684
94
716
389
361
216
947
146
610
682
139
497
129
554
972
708
548
45
63
27
388
173
367
109
733
99
67
43
804
917
260
764
610
972
914
745
238
916
718
178
660
88
885
396
262
101
639
968
174
286
91
908
389
83
871
512
727
607
656
262
150
905
341
692
422
375
886
157
639
227
470
631
326
884
367
300
288
970
847
632
459
98
869
519
826
352
375
527
101
403
19
630
261
456
29
755
746
193
973
886
214
483
330
946
815
460
583
504
716
572
225
756
760
24
803
52
37
822
866
71
999
360
56
237
208
840
370
869
856
611
553
96
997
960
419
976
768
922
703
367
768
871
811
529
179
263
869
238
653
976
719
924
327
903
886
854
427
93
738
975
91
713
648
105
19
129
759
800
604
826
284
114
119
499
302
129
548
527
59
945
970
132
217
879
892
629
769
94
74
565
549
675
184
728
277
56
223
707
511
50
503
70
634
827
693
605
805
827
601
757
306
900
35
793
6
958
497
769
213
389
360
665
726
40
277
608
930
391
223
247
906
841
16
9
442
901
498
389
186
287
824
941
492
316
260
648
641
391
723
318
558
454
495
122
689
838
343
595
550
86
675
414
605
355
851
465
884
26
351
104
461
108
583
925
565
418
173
411
779
628
967
539
668
904
688
452
347
894
320
604
558
903
839
101
611
410
337
138
464
795
764
615
41
619
857
451
870
569
557
271
665
932
815
921
118
137
746
701
666
400
118
990
706
746
546
558
269
483
315
155
82
36
946
984
864
353
499
50
47
238
582
777
338
49
939
626
88
917
982
475
664
636
471
65
677
773
908
294
74
300
182
388
255
402
190
629
986
830
58
765
637
696
654
429
818
340
653
658
807
919
470
351
501
839
490
446
564
881
308
91
445
205
976
747
56
195
523
935
859
310
639
258
860
217
837
968
982
43
247
337
121
250
487
154
830
830
886
415
911
743
66
106
522
966
321
433
720
906
373
624
817
717
799
497
281
212
491
284
3
522
464
522
634
971
970
195
717
823
917
225
308
108
25
116
245
534
735
893
896
404
248
76
669
623
519
404
451
990
873
618
340
602
413
389
280
544
471
551
996
127
715
897
989
149
316
709
693
683
253
746
477
598
388
598
275
389
852
11
452
567
743
727
949
299
885
705
695
635
836
700
63
185
897
769
689
351
86
521
308
810
710
768
737
127
142
741
214
815
115
891
691
461
100
430
384
988
947
691
263
610
15
58
847
552
683
292
701
619
908
923
303
331
703
642
856
974
989
823
157
144
491
879
521
945
9
602
85
468
386
701
404
394
258
697
795
653
921
186
443
849
41
595
906
191
588
361
757
458
573
409
998
124
534
120
119
135
537
901
543
82
207
234
234
208
520
908
74
7
846
204
53
804
380
308
104
896
973
330
357
648
844
627
894
976
702
280
860
139
578
661
116
20
643
362
642
807
362
698
671
679
288
751
612
370
357
195
744
227
16
223
161
208
545
894
237
580
340
257
506
240
49
934
428
185
88
34
161
19
665
296
534
276
658
678
361
94
16
524
620
507
535
634
123
355
500
907
475
748
125
63
468
105
192
431
631
353
323
427
282
323
34
726
561
720
688
885
550
867
534
144
564
815
637
998
704
414
811
74
684
181
558
413
893
603
828
430
84
227
47
9
770
588
242
297
474
809
73
403
666
615
358
608
215
981
498
652
467
194
726
217
541
250
742
102
764
620
832
958
891
259
801
324
820
525
373
975
574
341
525
895
341
409
407
70
823
950
199
911
105
176
962
890
500
830
467
521
846
140
532
853
977
115
512
408
813
35
788
689
609
523
79
127
668
831
875
133
843
673
279
814
422
920
854
715
297
911
823
989
58
852
130
434
809
672
918
227
897
999
256
789
163
510
303
582
98
836
222
668
955
335
677
173
860
717
432
57
261
796
111
901
211
798
631
756
393
644
317
996
913
648
235
844
417
490
652
912
617
273
618
460
689
156
35
723
175
956
574
92
241
861
966
101
888
354
578
364
878
547
189
454
519
226
754
307
100
833
756
371
66
519
439
988
179
651
213
56
764
908
581
436
71
226
756
52
682
134
955
63
912
288
34
71
84
164
940
464
401
727
623
342
201
204
26
721
423
978
922
237
142
523
599
970
965
752
383
294
469
702
625
965
877
693
458
777
486
368
904
15
710
748
655
37
285
240
236
867
200
36
629
703
212
719
920
389
689
64
106
331
781
647
994
698
103
657
464
507
745
249
235
55
74
908
527
394
868
562
685
725
517
516
95
434
74
921
754
159
773
70
89
423
263
573
234
64
754
957
934
628
776
728
123
951
800
575
629
303
192
527
521
127
378
380
814
265
553
560
625
182
902
305
734
676
160
812
791
501
675
463
639
911
628
57
949
788
394
143
634
498
292
451
966
246
548
962
45
883
758
968
511
194
333
752
725
471
993
446
791
987
783
129
628
729
887
610
498
321
430
26
870
410
926
127
890
452
339
489
128
198
768
907
742
706
952
446
579
876
332
479
794
947
352
647
715
163
822
238
358
937
464
723
454
733
99
101
268
206
862
274
133
505
319
593
219
875
386
922
776
442
32
622
989
951
232
922
58
280
412
727
629
101
131
191
734
46
454
10
607
851
178
373
14
58
347
290
629
758
428
839
776
899
462
915
905
841
733
503
501
176
44
988
794
135
644
32
374
128
859
174
421
377
316
924
265
659
608
931
604
942
294
299
852
572
951
729
639
216
285
892
312
951
508
432
808
190
578
879
414
315
915
501
899
254
418
400
584
537
651
247
233
802
898
559
882
744
137
223
184
915
393
159
843
966
861
470
868
883
117
75
82
729
518
289
28
792
400
598
155
551
145
103
564
38
659
510
54
948
550
65
54
356
696
498
922
756
658
933
392
948
531
701
420
576
166
504
284
609
532
90
344
538
68
632
770
290
594
805
307
352
417
919
334
52
22
725
34
21
367
271
135
467
206
207
20
444
682
988
872
156
227
444
417
460
720
515
288
64
727
633
162
852
626
41
532
612
367
369
554
440
471
264
243
262
955
877
332
861
613
327
608
606
933
152
126
972
503
874
331
507
438
969
293
734
109
282
840
166
674
408
77
314
434
433
684
962
201
155
504
843
183
426
451
401
25
556
919
474
915
559
109
493
38
48
2
501
970
509
153
674
37
167
187
205
250
294
172
501
467
163
771
348
371
488
324
12
519
892
709
553
363
367
251
116
300
584
277
386
431
184
992
691
3
829
806
17
239
246
151
731
384
419
7
752
787
760
123
549
723
989
981
79
800
599
312
670
915
72
905
665
18
785
70
284
171
80
346
541
681
307
773
274
741
977
169
944
360
498
328
540
462
727
662
441
203
913
891
403
518
137
102
168
341
486
713
598
349
723
582
707
414
581
868
416
217
708
337
822
431
367
310
417
743
366
203
290
123
628
82
257
189
943
23
545
206
605
932
256
265
570
595
636
916
620
126
880
859
246
225
494
576
69
972
152
826
684
424
975
283
424
475
720
642
326
519
471
559
324
211
612
775
82
558
860
771
674
501
124
240
323
431
876
404
587
680
120
970
870
718
521
181
956
973
840
96
875
993
590
102
654
321
536
36
613
718
495
511
113
380
153
184
301
735
960
992
598
316
56
645
399
501
688
605
689
431
818
109
717
765
896
680
910
22
586
2
895
841
791
868
186
609
858
491
566
338
879
222
13
848
497
559
938
944
702
154
633
930
347
182
899
387
793
348
483
472
273
280
150
959
98
757
525
188
460
790
642
198
40
351
551
597
96
869
268
338
742
965
320
432
369
964
495
610
968
798
815
511
8
94
66
600
72
54
750
739
35
751
485
911
512
435
891
995
630
303
291
924
80
146
730
307
959
718
591
133
263
915
219
661
975
131
190
946
286
951
526
42
119
529
303
990
481
408
920
933
74
499
979
666
508
890
432
861
363
758
640
354
463
617
477
120
532
823
936
381
246
945
710
679
776
250
806
550
843
739
826
552
797
657
60
764
935
553
154
85
699
328
583
528
311
173
578
501
53
184
459
657
471
540
687
129
789
300
889
258
85
881
19
624
932
89
556
805
558
712
184
979
670
852
681
918
362
182
369
604
671
305
498
659
281
169
81
258
970
930
974
635
664
896
999
817
309
958
596
222
616
772
942
340
1
480
987
619
858
769
766
607
931
285
586
779
384
360
344
763
9
299
835
628
738
548
316
773
852
864
609
404
586
148
988
899
363
158
659
800
182
461
399
201
164
368
704
379
310
220
434
949
615
832
213
318
936
315
602
452
165
214
766
994
160
363
21
783
297
687
417
226
701
543
582
547
899
634
464
370
843
936
464
632
431
660
789
753
934
670
962
48
556
207
636
967
694
405
41
801
347
920
82
623
803
208
248
72
251
666
419
302
851
232
609
228
750
135
564
500
574
267
849
626
724
370
670
494
907
615
852
494
594
662
24
922
855
840
829
223
412
717
503
268
252
660
197
325
598
408
217
560
841
541
228
80
72
455
898
433
538
754
165
636
813
924
708
189
208
686
373
909
305
341
89
856
764
581
375
65
174
345
896
499
398
292
653
54
435
943
851
400
942
397
685
658
552
867
455
328
951
8
117
912
36
307
256
500
453
371
316
490
81
834
260
193
858
666
238
521
271
655
754
264
834
972
967
908
656
430
305
897
127
47
113
167
229
983
463
91
37
154
600
64
628
362
319
108
137
492
800
886
629
933
57
297
253
852
79
63
340
348
843
23
67
419
364
34
722
94
964
874
203
148
485
118
55
691
636
472
653
859
771
164
630
419
268
193
989
816
913
376
905
400
751
688
310
578
997
210
998
285
386
44
528
925
683
481
448
939
242
562
217
606
409
480
577
680
392
647
151
171
45
905
180
588
968
802
397
797
807
477
693
426
474
369
473
727
636
705
736
786
745
51
574
352
160
300
991
271
112
630
186
351
60
828
241
480
863
939
956
880
85
651
132
764
868
790
132
41
7
849
45
687
911
364
425
993
332
828
429
669
811
126
685
178
291
343
367
645
128
993
863
696
748
855
702
94
919
809
483
369
168
950
264
262
586
499
439
696
403
248
149
36
510
288
69
958
965
953
474
526
424
487
913
14
985
348
938
56
661
332
75
522
345
61
502
861
862
423
592
792
903
670
243
879
844
828
186
461
787
743
128
965
336
957
944
681
37
250
277
238
560
384
35
71
173
627
691
450
785
208
97
543
362
682
622
753
244
34
170
158
162
478
269
918
204
110
186
387
117
820
824
612
147
355
232
520
636
172
706
217
137
736
675
580
647
585
603
654
336
191
437
3
81
119
76
83
116
116
867
64
442
304
333
965
383
484
396
8
450
102
118
72
327
953
21
425
803
689
272
619
506
531
52
925
384
821
532
29
279
150
405
520
305
643
774
833
403
710
197
163
190
596
204
234
74
366
676
127
98
650
279
427
844
248
558
910
252
408
581
561
951
367
728
301
697
597
767
684
179
188
23
94
492
109
430
909
328
817
851
19
146
405
931
628
870
978
676
57
86
864
582
994
129
635
211
822
867
902
537
476
598
991
948
910
628
186
934
735
818
648
583
434
557
563
416
547
436
101
431
718
921
710
599
315
606
28
964
856
898
607
42
425
281
375
420
154
457
22
999
684
44
940
238
437
281
148
438
565
220
664
386
766
472
818
555
888
393
634
304
601
222
78
837
212
606
159
154
182
144
262
91
415
102
746
675
980
472
163
34
458
589
400
637
234
221
275
952
462
820
531
761
822
717
398
463
965
104
27
830
123
993
256
421
957
574
971
665
726
144
574
416
231
601
846
13
821
441
603
990
332
206
692
362
612
501
268
698
704
283
709
877
445
332
910
465
333
978
679
660
250
610
227
319
246
116
531
222
871
385
641
525
501
37
499
917
302
894
809
457
306
274
961
443
434
697
971
898
690
381
680
843
761
942
741
721
979
373
117
497
969
47
827
319
642
185
376
409
833
993
164
439
170
222
354
975
648
784
884
548
145
632
531
490
705
798
763
559
295
777
937
928
777
312
487
260
446
643
801
250
322
562
65
697
218
241
674
540
588
765
74
196
489
569
353
337
515
337
613
843
421
817
114
57
56
235
661
857
734
95
529
6
983
634
227
582
568
834
273
464
124
224
970
530
704
742
440
209
959
151
745
110
30
957
829
504
448
9
641
982
579
817
805
494
236
68
213
854
343
770
769
681
65
149
720
197
847
584
352
313
795
453
898
584
349
420
976
26
805
722
134
559
193
290
884
307
419
476
294
636
530
585
865
189
381
64
45
880
238
632
657
863
656
328
188
127
918
221
145
815
92
187
49
621
636
210
488
775
264
413
778
371
291
715
783
210
587
709
204
285
375
96
788
173
65
271
903
864
102
758
388
199
331
478
545
344
536
245
552
171
576
270
616
824
854
286
573
940
545
978
539
210
17
859
441
995
398
876
556
366
307
623
674
506
25
579
40
812
171
439
673
343
158
33
709
106
479
963
318
778
697
962
320
123
220
179
182
471
38
550
945
660
689
186
864
952
595
111
800
275
247
760
770
106
305
197
53
984
151
335
516
434
558
777
669
344
304
551
286
845
398
568
775
621
493
13
653
971
169
756
511
369
164
43
532
936
193
214
817
24
127
198
321
703
34
512
102
911
517
520
648
45
824
954
877
678
985
150
613
293
543
81
815
394
824
148
271
515
246
732
152
91
733
263
719
201
248
73
587
981
911
742
454
649
108
466
544
209
166
853
951
44
601
525
481
46
383
927
879
886
242
586
665
784
369
558
311
562
236
676
431
913
562
631
381
800
626
166
286
358
603
63
350
392
781
108
490
208
782
673
818
320
194
701
740
325
77
670
281
550
155
982
972
490
423
39
482
969
145
680
419
217
641
521
284
179
237
274
4
261
69
104
780
563
857
111
720
860
891
57
724
956
885
736
203
620
90
859
968
742
626
520
64
103
254
602
678
672
418
561
88
802
666
20
481
52
203
409
632
313
319
621
79
88
955
463
332
905
318
663
90
378
305
262
635
548
40
678
309
256
432
48
442
330
969
921
291
865
255
152
418
680
227
656
424
5
442
976
147
791
270
773
354
755
472
710
498
405
385
932
12
525
100
377
880
271
179
748
118
35
172
466
651
167
245
409
151
648
838
631
107
64
531
518
985
659
693
687
858
260
424
886
481
322
141
893
580
850
776
153
825
693
858
113
620
804
122
188
511
63
559
849
567
753
826
947
993
582
392
222
578
492
890
858
611
286
985
330
26
351
828
300
872
685
805
413
206
419
898
182
537
506
177
795
700
574
320
727
495
193
900
998
459
555
575
333
803
1
502
334
819
792
163
160
235
260
976
881
948
414
742
574
684
210
684
72
315
95
159
37
966
258
834
832
451
830
841
318
111
472
609
205
917
564
363
745
343
18
560
441
598
438
779
82
451
326
314
249
870
503
18
709
842
465
368
561
957
330
708
405
418
658
770
476
804
537
657
120
847
938
728
298
534
717
438
528
478
752
382
126
516
593
447
608
454
900
363
452
196
801
787
14
309
156
23
939
668
304
277
913
669
194
401
932
774
720
175
125
28
840
83
205
948
583
889
825
212
163
22
904
174
205
923
47
151
715
988
379
694
499
860
175
475
468
456
322
192
515
833
734
725
239
425
356
718
582
66
726
267
198
728
505
283
373
740
464
270
355
781
60
731
796
430
528
980
908
729
481
127
567
633
696
330
287
179
935
779
568
328
569
650
263
113
496
770
355
892
103
727
991
52
837
733
774
3
929
808
896
375
810
852
585
599
699
565
32
175
995
195
805
685
702
27
213
410
469
684
933
757
625
17
627
753
135
516
795
962
556
284
249
127
882
193
517
716
66
663
413
931
739
180
896
907
922
307
349
811
521
365
534
246
875
140
750
794
226
831
465
184
770
69
619
711
945
679
802
509
510
497
344
806
271
3
19
446
120
719
830
828
167
984
442
191
750
4
252
743
443
723
491
234
198
230
161
670
560
185
962
244
505
840
302
25
21
728
974
872
121
305
675
506
2
636
17
786
627
428
961
942
428
59
67
786
7
111
608
42
842
349
885
935
757
586
323
327
682
417
171
23
29
379
623
139
49
984
232
561
213
375
43
132
223
20
816
447
773
515
19
909
120
933
31
772
419
739
749
415
314
690
104
210
258
939
914
49
436
927
738
22
879
47
829
468
306
753
712
737
770
876
553
168
399
262
902
95
349
850
719
309
236
817
248
522
271
832
874
284
106
768
12
846
776
996
31
74
105
562
467
666
28
12
645
437
138
935
811
996
37
819
699
585
209
430
786
63
798
307
197
473
878
428
632
3
865
707
392
402
231
829
990
786
384
54
281
224
172
811
385
336
22
878
247
286
69
426
637
346
211
968
275
797
366
993
787
600
380
643
571
431
544
410
765
208
829
912
201
156
150
562
890
987
922
861
452
1
181
346
933
439
70
46
191
263
554
193
421
390
266
680
844
529
240
953
791
611
113
40
457
157
226
482
196
649
78
288
875
504
542
786
419
35
709
132
361
498
220
503
653
636
491
810
889
470
717
361
747
968
70
840
888
142
888
777
214
587
850
541
185
267
318
916
848
479
261
810
819
108
593
294
392
610
387
820
665
415
592
726
931
717
540
906
434
701
898
278
146
932
918
774
648
678
318
386
319
574
962
411
209
907
541
640
376
776
449
278
755
69
112
799
995
124
609
468
727
411
483
147
580
982
664
887
190
819
646
714
293
1
501
91
452
182
518
25
176
899
531
658
253
620
523
78
820
119
778
525
69
849
659
908
92
816
830
226
243
654
451
557
131
734
985
754
567
22
348
813
605
585
292
827
880
824
893
959
460
587
67
71
41
121
646
443
342
593
998
636
351
292
781
521
449
973
528
518
635
769
510
798
771
965
919
483
558
831
28
268
922
870
766
655
588
380
517
10
89
543
413
973
24
711
462
313
803
771
378
906
297
376
325
691
77
268
299
75
202
163
885
510
565
730
713
481
526
127
933
70
457
518
429
93
356
536
775
60
503
606
680
787
453
122
971
547
546
76
579
320
81
442
807
926
658
903
408
293
998
981
787
677
837
309
450
778
946
233
335
540
492
239
572
595
482
99
57
444
759
166
934
451
547
613
988
15
711
503
435
453
129
482
62
522
819
4
949
145
672
194
601
314
740
39
828
841
870
212
445
560
846
964
534
832
47
337
130
225
320
435
67
443
798
882
412
10
178
51
776
479
149
912
772
566
565
621
710
509
785
147
145
499
59
874
606
164
948
229
475
483
873
725
824
237
127
158
516
858
626
818
664
820
436
965
411
934
192
967
268
425
626
620
439
174
291
568
385
923
276
249
62
948
575
294
605
424
88
536
440
407
106
851
883
967
483
324
64
93
464
672
972
981
961
50
856
254
286
651
946
558
773
592
583
378
757
715
246
142
361
986
846
656
528
860
319
774
737
472
691
966
505
292
459
603
276
80
986
525
438
352
138
437
589
881
634
513
269
506
211
767
79
921
732
477
826
316
453
102
731
82
516
814
959
979
54
481
134
979
102
677
729
720
704
9
849
409
67
646
227
806
506
232
262
923
888
583
560
982
776
960
626
885
794
356
835
324
477
610
828
153
380
289
404
533
39
358
218
723
628
418
249
807
875
925
575
285
553
37
91
470
920
152
204
141
51
843
926
348
174
525
931
457
817
74
426
218
827
728
885
530
366
837
354
359
711
819
11
869
780
550
771
441
519
359
232
229
86
263
483
195
432
869
550
104
486
792
989
801
499
358
458
824
151
560
104
84
797
844
429
231
833
58
567
623
753
490
937
459
842
198
132
564
245
690
99
497
288
251
872
919
829
210
370
423
93
946
290
958
255
149
431
241
833
253
362
374
302
926
350
996
855
531
959
302
226
893
580
461
462
607
796
546
972
510
401
624
687
145
531
807
200
978
204
693
766
891
730
992
329
724
195
361
901
876
65
299
250
69
197
199
367
829
497
648
352
885
269
324
851
737
687
158
396
543
796
877
327
266
536
335
164
588
132
737
413
436
645
96
446
103
374
619
948
332
440
371
481
556
342
881
622
407
141
591
38
38
965
359
80
188
971
984
532
861
35
779
697
760
236
916
240
173
877
749
364
69
210
64
103
426
396
771
923
655
713
757
447
541
699
376
470
287
16
259
131
390
87
87
297
661
673
720
320
425
641
449
529
392
228
969
827
901
257
654
791
200
61
877
149
278
332
157
62
860
446
953
158
619
619
974
981
123
766
441
753
676
451
498
14
264
228
55
313
730
548
569
31
362
468
930
329
209
937
20
329
516
659
460
979
688
292
910
773
254
987
705
135
815
901
116
749
562
864
885
51
278
844
332
312
877
923
795
152
688
645
773
185
747
112
237
17
991
519
326
971
318
281
60
742
843
434
215
460
353
182
766
345
53
968
52
672
328
148
103
764
496
759
85
608
215
520
387
703
664
99
757
44
538
913
733
996
784
589
469
443
708
336
798
507
879
428
132
779
61
565
689
843
417
561
476
558
197
451
528
323
47
512
796
254
424
723
807
140
236
55
887
738
679
659
57
161
960
578
729
786
388
608
642
99
409
914
626
976
437
175
800
333
61
147
396
197
540
545
84
157
621
992
543
7
678
950
164
757
505
316
598
618
722
742
935
438
869
697
845
509
97
830
702
62
255
554
678
533
263
859
621
416
495
572
165
396
66
636
421
458
751
868
471
122
576
182
610
319
212
957
327
842
699
574
60
791
290
481
751
124
273
631
495
646
694
183
124
151
578
539
373
233
276
387
758
228
360
581
486
73
943
359
322
306
533
778
716
920
513
374
107
585
884
298
185
120
374
825
427
394
58
460
741
672
585
94
567
313
816
831
431
708
995
678
181
914
310
190
113
916
466
204
637
205
433
788
348
978
202
638
854
534
154
92
15
483
618
649
720
439
212
404
104
681
942
398
589
207
117
271
810
185
712
511
927
854
823
537
240
797
745
588
111
178
977
897
555
903
664
697
296
660
469
674
705
63
100
955
262
35
199
142
861
931
828
669
822
643
165
160
660
82
410
922
693
623
293
926
704
46
843
685
542
420
974
150
715
38
806
864
755
867
275
205
598
603
727
180
350
308
75
912
739
504
37
215
251
546
980
83
770
173
252
217
192
514
600
441
956
678
954
784
837
300
405
793
807
205
325
91
895
113
577
396
970
931
945
39
383
760
899
170
58
723
95
582
615
58
14
85
4
286
224
671
354
290
76
440
99
244
407
46
222
890
187
657
596
855
247
261
568
561
58
196
778
784
727
114
205
822
178
750
192
241
87
609
889
905
43
680
856
505
939
140
353
854
947
167
536
438
986
760
811
753
516
442
228
29
892
569
563
961
235
276
66
657
854
981
804
578
767
690
812
566
405
64
621
918
842
924
837
561
577
767
836
418
939
438
724
644
381
861
13
474
118
894
271
663
74
696
1
966
363
958
670
296
947
245
348
453
820
310
186
968
732
3
385
468
440
648
718
416
257
160
197
906
677
339
449
510
792
957
844
147
923
870
199
618
97
540
471
694
90
272
823
72
675
45
741
116
510
802
224
426
977
585
710
203
762
764
619
608
796
838
660
863
465
40
46
861
804
766
371
899
177
25
326
984
337
125
231
633
597
333
1
990
734
419
169
339
160
995
856
332
921
863
897
252
612
960
607
636
999
879
312
743
431
325
250
953
259
725
866
638
534
985
11
463
837
669
129
47
870
706
701
808
910
40
977
313
127
74
373
376
518
594
634
717
22
257
559
410
169
216
80
435
130
218
798
936
853
435
415
942
831
560
766
293
179
503
833
392
347
936
827
186
353
490
121
940
352
293
442
580
111
719
877
655
626
267
678
692
241
41
460
692
659
430
544
957
828
341
539
518
423
168
63
233
388
894
82
639
98
858
585
560
993
834
832
113
683
111
667
911
825
142
151
306
476
136
527
922
946
164
112
11
753
923
158
942
657
645
267
731
186
39
594
383
456
900
698
824
598
432
274
717
674
628
693
282
17
756
756
253
368
159
693
934
746
574
806
70
677
889
455
38
843
935
725
786
547
768
850
576
437
702
325
514
889
394
336
125
230
875
926
901
888
15
364
28
346
660
637
882
94
629
148
709
976
236
874
739
903
907
734
249
905
181
816
666
833
179
46
352
238
682
840
801
963
554
150
828
572
697
441
886
132
968
482
808
554
616
538
653
520
597
222
323
141
678
995
708
199
698
194
167
615
285
644
412
789
346
745
422
87
46
168
206
467
848
117
937
698
8
112
218
641
392
832
641
460
517
661
285
558
441
630
873
504
274
272
846
324
71
19
209
870
116
566
474
430
16
856
293
561
58
11
191
587
975
526
223
453
4
951
272
685
461
863
646
416
294
701
193
576
271
614
627
988
902
348
525
826
358
211
445
661
368
724
501
431
439
287
528
748
49
394
321
119
747
523
410
252
920
59
137
314
663
717
291
444
383
202
684
628
1
397
95
792
507
611
318
736
363
215
977
7
174
445
527
876
293
509
242
380
937
273
905
300
75
131
997
651
434
57
49
237
603
900
747
652
300
528
612
137
206
673
889
705
81
130
141
219
190
414
151
873
960
305
690
727
491
794
718
377
613
666
303
306
167
740
404
274
697
875
577
764
896
106
174
264
384
201
219
944
989
779
462
20
905
175
277
299
210
21
161
505
809
236
524
539
371
583
539
341
726
867
521
314
837
387
977
854
131
427
343
291
575
774
387
833
205
283
400
991
463
105
65
677
715
72
954
661
582
634
893
801
661
878
219
123
258
148
182
519
198
423
169
783
677
869
929
36
849
690
335
89
183
547
878
621
803
844
599
766
432
317
273
496
533
542
629
697
555
264
576
57
102
880
794
41
936
282
1
845
142
919
811
892
300
805
618
115
999
597
320
413
549
415
88
880
150
672
250
136
241
232
480
585
115
278
986
302
753
837
684
522
844
753
624
512
505
381
197
728
923
515
698
958
944
163
507
686
793
913
890
265
32
864
605
909
439
227
778
22
818
317
361
162
912
798
569
795
790
575
376
769
476
521
213
725
534
522
641
951
770
301
509
839
947
420
490
979
149
715
74
279
602
175
910
607
154
536
46
146
593
711
895
218
538
121
788
511
652
879
375
917
585
826
251
517
807
522
215
493
309
590
647
76
502
97
167
301
610
605
571
998
476
495
359
59
406
292
301
826
631
978
327
270
340
157
693
776
924
393
799
632
321
553
837
4
65
819
716
441
953
487
900
47
308
376
441
90
468
192
112
515
221
388
861
330
263
377
735
345
404
391
377
217
806
939
678
923
658
355
994
586
576
859
873
145
78
280
962
963
716
603
309
732
281
284
411
932
692
507
740
687
85
371
38
563
111
683
241
368
698
517
432
113
198
526
939
362
515
717
253
983
415
771
629
800
83
645
936
522
529
745
232
152
614
307
501
206
822
310
34
394
39
594
266
199
172
196
534
755
345
50
418
975
255
757
272
313
741
237
481
465
747
719
839
953
285
280
499
891
25
733
540
205
683
858
944
821
506
430
628
886
111
182
177
480
327
257
897
857
35
189
464
585
829
568
646
320
755
313
914
892
697
643
730
611
510
213
292
396
813
451
806
312
609
594
355
566
542
360
626
29
383
641
856
836
270
955
375
115
212
624
67
194
516
736
190
467
451
566
970
115
964
501
44
583
382
153
975
236
214
81
778
395
686
885
509
56
787
894
342
554
837
178
185
189
385
613
795
872
404
888
116
976
390
512
64
882
597
273
454
118
979
140
901
132
846
671
507
630
228
135
680
557
225
416
277
787
316
855
199
768
357
104
831
326
965
801
6
175
821
626
458
514
440
224
575
698
276
53
342
713
107
166
644
270
209
558
752
974
235
277
566
742
74
685
761
875
308
576
167
45
666
332
809
601
676
166
118
1
840
578
511
263
513
486
662
192
459
561
118
407
50
32
939
545
61
715
441
754
463
700
390
700
886
298
48
774
356
44
593
43
441
751
135
656
765
303
229
588
23
570
416
747
459
759
994
635
393
264
541
960
725
363
537
140
189
810
377
216
438
888
835
416
967
75
966
299
896
283
779
757
487
852
732
893
284
643
242
127
303
413
382
93
502
633
318
78
215
994
468
955
926
14
150
135
734
999
779
385
792
696
738
110
485
784
474
872
631
644
856
545
568
250
913
26
507
743
914
335
756
889
84
902
815
824
830
474
702
597
159
284
864
857
334
606
674
273
607
718
159
446
447
571
138
922
387
676
100
124
628
991
86
444
628
903
612
835
294
661
953
1
170
34
485
572
681
711
915
307
352
235
136
196
177
310
442
513
764
892
437
154
374
579
969
168
198
420
229
431
993
839
978
946
764
158
276
413
86
566
242
676
761
793
772
394
856
889
268
318
461
100
71
402
224
799
627
591
64
318
374
261
482
485
313
512
256
190
432
19
35
30
427
199
651
761
393
580
806
576
311
309
153
910
969
894
768
576
723
964
531
685
349
768
193
980
194
276
480
260
138
667
458
249
284
432
672
872
750
462
406
47
784
488
7
66
108
571
515
419
744
680
466
467
487
349
680
658
7
671
568
117
101
547
439
644
850
904
627
538
222
896
826
261
559
485
901
861
762
127
872
623
761
61
516
458
201
991
762
935
751
15
866
80
894
290
946
238
49
362
215
204
944
977
198
847
853
206
908
3
448
819
896
879
798
944
356
40
31
981
444
859
143
691
786
208
31
746
367
269
538
664
812
400
911
669
678
784
863
668
604
995
83
759
488
932
118
986
282
949
933
906
207
68
918
356
62
253
191
990
817
108
839
639
464
784
8
496
967
129
267
572
177
362
378
449
776
383
204
854
90
44
464
417
336
632
457
744
482
556
607
426
593
872
851
496
156
444
295
704
924
622
19
153
683
362
730
845
690
469
579
678
49
336
901
773
643
422
304
832
327
263
14
412
522
840
978
304
510
881
293
333
88
500
929
467
25
312
734
973
902
612
55
13
977
929
377
257
971
78
852
734
141
463
377
662
608
607
631
842
383
426
335
808
177
246
591
549
406
434
748
332
687
330
929
715
209
2
435
592
463
721
332
432
30
558
193
624
124
268
859
417
680
891
591
476
278
246
836
731
338
828
851
538
330
520
48
810
534
661
454
607
173
39
379
662
95
902
779
618
54
966
425
139
574
332
651
795
739
454
438
962
165
704
255
635
870
793
103
509
511
382
91
462
813
252
245
642
513
928
382
375
466
218
677
372
403
712
963
998
869
252
72
80
224
491
442
469
784
744
791
301
799
271
108
672
875
962
325
323
87
10
283
810
72
63
496
947
27
882
232
158
829
105
640
259
310
11
239
322
810
775
857
768
138
81
576
196
110
5
496
440
388
641
911
859
969
262
8
161
995
495
442
901
512
633
471
694
631
849
362
864
724
3
512
311
152
514
673
991
487
300
837
22
386
792
770
188
194
780
290
49
3
79
327
316
334
955
257
504
609
882
565
261
643
632
716
385
130
600
707
455
588
17
674
695
657
420
516
720
863
283
500
850
560
314
861
645
676
197
977
196
258
170
382
604
735
577
379
754
76
386
59
593
73
834
460
986
404
631
659
913
440
536
640
326
382
714
701
330
770
71
709
932
623
512
197
419
635
70
959
80
42
761
644
477
225
906
778
725
853
875
242
45
538
65
756
721
529
56
223
22
876
50
984
6
677
127
970
561
637
41
352
335
672
579
872
679
892
164
102
475
936
975
476
894
829
664
395
558
756
476
890
579
847
938
203
991
777
639
800
98
935
217
88
812
524
906
373
958
192
78
829
366
953
748
86
900
574
90
176
13
732
413
805
162
151
772
488
733
377
880
901
253
363
5
539
719
888
663
371
922
292
436
367
679
647
525
625
99
853
302
418
687
463
787
366
523
412
926
662
751
419
639
582
312
176
576
3
949
209
366
13
910
719
254
721
296
47
127
515
626
147
389
880
75
463
215
789
575
638
16
308
961
2
619
503
653
853
55
503
71
522
676
889
487
289
507
968
210
67
70
477
285
412
36
605
31
759
508
849
960
786
427
311
194
59
52
909
100
750
68
443
991
623
444
104
471
499
393
785
955
247
580
509
569
538
23
550
965
15
473
893
346
206
543
285
96
365
696
429
238
597
868
459
998
627
486
662
968
932
134
531
366
722
893
714
207
918
741
655
37
501
944
86
278
174
97
785
81
160
9
107
803
964
547
358
379
121
510
942
52
360
582
33
880
941
528
624
312
829
78
178
623
41
392
737
652
782
182
825
530
700
582
808
924
28
728
401
176
535
336
86
409
799
604
676
919
912
205
336
646
473
474
251
82
830
483
762
572
810
705
596
939
685
412
352
778
773
109
853
213
127
448
777
493
991
769
824
437
716
818
740
578
845
179
58
227
331
727
94
544
966
829
365
829
740
147
723
387
252
898
146
804
352
124
519
25
697
757
90
62
659
326
856
992
965
18
94
506
354
125
447
47
15
309
247
298
84
947
753
845
46
437
185
818
672
936
227
722
659
34
530
573
637
33
885
641
972
373
864
722
53
218
33
127
451
99
789
43
877
222
941
749
5
245
17
223
141
39
320
29
791
372
846
321
595
874
409
982
424
606
325
710
83
32
792
828
404
58
367
573
148
184
844
438
93
780
569
393
16
662
501
934
53
836
930
681
371
712
532
576
690
807
618
272
897
231
666
972
452
189
819
83
671
746
881
608
527
409
229
814
305
17
966
761
106
390
657
247
102
112
457
692
526
791
883
340
565
573
540
861
115
597
940
827
843
418
264
307
954
323
154
961
483
717
271
674
840
856
167
508
573
419
870
341
731
127
556
880
863
541
43
953
869
367
700
708
76
140
918
687
127
351
293
779
957
496
209
809
520
209
499
709
407
33
289
695
726
600
97
716
862
384
444
413
281
200
93
116
18
563
599
701
938
479
382
222
127
92
384
236
918
747
361
654
42
333
547
836
79
5
982
476
44
202
825
742
907
879
499
757
404
93
791
956
610
798
770
928
651
67
569
634
216
860
798
115
23
789
372
947
653
256
38
13
580
123
658
736
654
639
315
248
593
626
832
825
955
404
44
244
562
619
186
13
436
349
260
183
404
710
719
118
508
552
105
149
56
779
377
487
140
35
274
13
751
321
41
590
29
972
159
619
746
128
385
35
70
25
576
231
863
476
333
944
919
197
740
42
521
684
769
177
27
556
104
528
345
174
261
115
308
669
154
431
551
101
372
380
167
70
79
32
203
146
624
664
702
330
93
555
581
999
70
345
204
982
593
190
25
856
689
896
764
462
923
195
322
901
393
818
824
360
874
452
605
738
974
880
932
440
826
16
81
706
533
309
600
808
227
569
508
182
356
311
380
183
268
741
223
430
342
800
936
275
730
221
125
618
740
466
9
712
258
585
31
674
815
59
928
614
594
513
674
824
311
642
5
564
72
423
471
233
658
503
98
27
80
806
975
312
184
982
69
761
560
796
924
770
281
706
367
209
812
608
835
828
126
112
963
88
217
561
546
317
995
775
54
755
487
5
595
10
83
616
430
612
445
913
264
515
718
234
284
365
57
262
420
50
668
269
900
967
842
887
96
623
436
752
766
785
742
170
284
276
112
357
127
197
178
223
384
212
848
448
370
982
277
182
260
734
355
5
87
219
104
627
167
195
520
807
177
693
148
479
773
548
950
8
254
700
135
224
871
445
884
688
120
395
518
114
346
255
492
32
430
738
83
65
173
484
190
931
676
371
47
691
65
369
675
821
32
270
928
560
599
131
133
642
335
415
508
772
676
407
461
922
201
116
50
35
466
886
835
769
510
204
548
500
399
193
624
750
719
697
83
77
326
931
433
299
606
441
730
757
976
417
255
270
910
125
490
948
320
640
356
145
435
160
51
395
583
632
244
142
790
757
54
979
324
385
596
270
682
750
429
26
157
78
792
93
948
278
590
275
703
675
431
79
342
937
642
167
881
38
715
973
198
589
966
219
364
276
945
526
528
220
266
569
212
331
988
357
367
957
447
306
42
969
438
116
326
974
638
387
743
429
389
644
36
456
828
568
111
574
728
673
332
65
746
483
409
862
867
11
948
285
800
923
591
410
931
228
151
851
893
389
637
559
783
99
831
622
534
756
502
421
246
793
229
773
973
977
223
955
706
464
108
627
438
458
629
466
54
625
524
600
417
260
680
339
36
773
282
647
651
787
328
112
508
527
39
8
694
818
437
954
6
195
146
429
282
10
121
325
470
366
569
908
232
902
4
986
113
889
737
200
695
576
304
918
136
996
119
910
419
622
771
236
189
569
595
223
114
252
58
27
652
957
177
286
219
420
879
606
524
52
895
804
81
237
260
429
890
228
294
286
891
211
905
848
594
334
720
663
308
781
872
861
832
711
548
738
399
19
699
716
118
513
387
368
726
966
155
952
310
166
332
886
957
772
135
442
52
329
691
885
699
216
298
742
180
35
972
369
688
521
31
872
528
577
168
378
823
538
122
628
179
767
354
142
450
986
903
60
576
106
686
71
327
813
17
901
215
644
188
692
993
786
264
788
136
459
359
381
604
756
619
514
208
64
707
931
862
156
293
193
131
912
792
583
834
960
546
714
560
267
164
179
350
429
634
392
504
565
7
990
628
522
456
820
487
173
862
264
107
86
40
59
352
995
561
82
993
681
953
176
912
644
820
338
593
440
164
778
429
315
428
297
150
302
565
609
457
972
96
662
98
283
608
475
227
105
827
355
867
553
399
823
612
830
78
983
702
118
227
47
10
85
834
792
657
743
909
50
430
952
624
22
585
292
79
630
37
345
111
489
613
809
911
876
916
604
685
320
225
582
907
340
745
49
652
14
448
816
818
484
196
777
925
914
928
377
239
320
752
447
947
357
7
738
434
201
173
958
875
54
58
589
825
848
46
285
276
536
639
66
183
221
527
627
293
835
883
996
947
539
366
365
568
777
634
550
333
8
615
452
840
490
940
764
426
606
952
78
869
644
101
702
680
686
265
726
830
380
445
598
317
177
11
336
687
693
22
49
214
496
951
269
920
187
226
692
280
762
201
687
883
806
128
303
438
663
684
881
512
907
720
953
563
17
136
663
479
604
78
733
584
904
863
373
692
832
782
494
461
573
447
68
179
758
715
510
49
707
897
25
9
141
536
306
775
998
705
904
52
562
214
675
685
468
103
979
943
754
611
606
881
191
421
939
461
652
774
804
302
626
614
771
707
53
724
444
368
557
597
693
127
878
442
898
360
771
382
711
655
736
567
295
97
292
144
817
719
597
845
124
225
900
602
425
947
442
968
632
743
659
612
386
157
917
479
4
748
522
579
690
270
64
150
566
60
320
674
415
909
907
724
770
712
474
469
226
276
18
950
917
802
750
967
996
124
181
138
180
813
140
69
198
18
155
853
161
751
37
366
628
767
554
723
836
934
841
673
682
448
253
727
731
572
662
887
520
96
154
442
878
182
495
602
769
838
527
752
558
621
309
475
239
651
323
150
249
27
132
62
283
507
455
731
561
412
338
626
356
267
333
65
598
594
488
446
272
951
953
998
408
90
116
62
140
777
489
81
249
512
639
493
964
92
160
371
727
763
41
357
500
900
397
291
289
244
876
645
164
876
878
297
74
134
654
194
392
394
592
783
923
258
377
843
628
839
101
507
435
117
719
508
910
596
498
507
693
825
772
895
900
844
916
372
634
342
420
831
438
966
979
333
172
258
433
243
524
553
662
449
144
370
210
47
158
370
387
477
636
147
500
566
621
697
882
80
341
5
210
287
420
270
69
469
138
386
337
653
163
255
983
141
164
323
752
530
634
870
214
265
955
942
196
291
466
413
712
475
375
354
902
519
343
376
30
874
302
741
909
772
33
733
315
381
164
360
403
298
945
353
446
470
791
945
331
477
74
777
4
724
673
862
278
809
352
464
797
787
293
877
229
893
961
441
232
222
628
814
128
106
11
414
530
23
907
432
728
398
45
553
800
524
737
185
99
171
455
505
29
699
563
615
6
68
124
552
509
350
713
109
849
260
650
897
714
260
333
256
902
920
736
400
742
740
78
704
156
776
342
62
767
124
785
428
542
395
409
463
898
356
923
379
685
935
703
540
874
840
471
839
838
200
603
109
963
164
873
265
989
419
396
732
8
651
342
726
474
222
355
320
851
870
357
547
996
358
714
807
37
537
830
316
306
503
224
567
521
676
465
379
522
145
473
480
959
191
372
34
593
977
67
652
485
151
988
968
842
57
112
606
449
66
228
452
588
81
427
504
428
775
206
797
757
976
798
707
397
877
587
806
985
681
214
60
471
179
831
155
515
256
724
464
564
858
930
456
916
21
891
878
763
867
606
818
772
269
894
509
353
282
571
965
469
306
620
767
852
169
981
410
249
272
989
172
51
741
234
898
46
343
790
377
986
709
44
119
76
395
287
203
285
323
802
233
685
759
995
259
239
163
603
748
40
482
629
492
877
434
767
32
36
995
463
11
492
194
979
759
263
501
692
457
882
778
126
926
469
756
487
292
745
974
660
883
739
42
338
504
80
551
241
641
627
255
168
289
860
792
741
491
779
236
996
737
470
146
866
261
357
703
23
121
947
476
287
61
336
579
271
450
856
475
680
711
261
52
830
627
611
836
67
677
16
996
512
509
977
923
414
593
176
77
148
377
529
120
694
152
968
107
952
281
521
292
634
305
556
286
477
419
316
239
650
520
636
346
106
950
963
777
84
413
166
678
274
780
327
304
183
141
358
678
659
504
883
785
156
723
362
208
953
692
446
995
278
936
427
628
740
183
15
743
188
191
24
540
116
843
18
854
977
253
103
337
62
637
580
146
636
851
190
383
589
756
824
391
966
170
400
337
353
698
564
999
127
614
491
469
480
344
669
312
705
508
230
701
589
110
933
640
357
281
992
888
992
632
155
432
366
632
574
945
443
681
501
280
688
103
211
447
147
112
666
293
183
878
677
81
526
124
802
856
237
759
980
73
706
675
8
494
460
59
103
848
769
723
868
25
7
950
13
486
899
487
494
246
615
700
706
115
954
74
905
242
830
717
709
683
701
429
574
14
96
716
987
88
9
817
523
459
10
652
74
576
112
316
957
749
266
734
457
6
969
892
540
386
154
860
18
53
14
185
324
577
377
998
391
184
500
407
238
797
178
247
105
303
999
330
131
514
760
960
418
966
972
568
45
203
177
601
934
148
800
471
445
824
328
497
200
113
925
773
250
859
497
660
828
722
788
237
386
823
730
504
292
54
767
358
605
808
954
188
8
898
473
90
997
706
802
281
974
503
131
18
589
986
710
559
470
313
739
322
415
939
216
111
418
297
179
392
58
970
891
391
159
737
766
352
387
408
662
122
920
507
263
882
693
712
914
306
343
209
887
293
70
633
772
68
682
362
671
701
528
411
224
4
612
739
859
851
220
359
173
63
650
618
402
907
677
333
417
706
382
873
49
849
83
599
322
525
965
698
669
25
736
961
594
510
284
259
271
953
853
64
86
984
36
825
642
451
231
865
391
349
945
965
320
655
362
375
920
13
418
334
886
521
689
148
326
689
24
892
624
418
63
463
853
318
787
64
813
258
956
870
294
101
308
320
79
771
642
939
148
909
338
259
536
519
178
564
296
887
500
953
428
339
241
972
287
483
113
2
867
299
561
663
57
548
40
786
214
369
70
555
48
85
744
714
81
803
927
334
141
223
768
925
757
4
442
955
859
335
34
596
659
640
72
848
348
674
202
987
479
391
350
926
818
945
906
343
595
526
892
483
555
778
860
644
531
636
906
53
106
85
926
879
336
474
896
407
14
895
367
406
602
939
854
750
873
841
107
812
97
99
361
333
442
550
41
880
780
427
318
712
768
149
881
395
464
471
591
345
50
500
330
699
160
486
881
616
923
111
771
689
529
94
956
7
724
594
437
786
434
16
626
586
578
655
638
453
59
460
286
402
250
762
763
597
769
661
173
955
668
425
956
670
655
628
183
675
193
874
670
870
34
805
910
34
873
744
121
505
848
429
557
464
824
370
439
767
330
359
238
63
421
481
118
9
60
956
930
949
472
963
260
184
789
416
368
445
851
730
724
25
540
667
108
239
867
493
845
286
190
416
345
834
637
608
449
553
687
901
974
917
813
172
33
885
170
374
674
409
2
994
915
600
635
214
522
754
374
879
142
566
112
644
760
57
618
426
547
182
966
815
758
949
755
807
211
369
635
222
70
493
818
436
285
196
500
744
199
424
86
695
179
808
760
408
805
170
412
976
267
744
827
492
442
186
236
965
845
828
3
154
119
152
810
649
747
675
360
565
557
874
227
124
97
272
637
950
190
348
2
42
956
658
954
325
665
327
993
100
959
535
899
371
421
931
576
28
997
111
660
131
809
847
419
393
517
704
396
171
548
286
775
497
827
960
197
460
197
485
983
421
681
260
605
22
975
856
702
165
696
610
952
79
687
870
232
110
240
562
808
961
931
823
551
674
759
402
544
461
735
116
830
513
128
239
449
550
242
397
418
661
3
232
475
938
333
696
809
956
728
88
221
635
676
22
490
858
709
931
263
573
313
241
430
580
779
439
951
449
421
682
867
842
145
148
959
699
349
612
341
63
592
587
733
647
894
196
836
106
749
591
841
311
135
844
349
761
801
894
159
894
745
361
535
46
221
379
490
529
63
790
510
97
591
200
981
725
508
782
686
584
602
845
699
829
841
556
707
301
799
198
898
454
454
447
318
231
52
687
426
515
705
308
43
958
82
745
720
934
863
623
254
20
208
574
292
899
662
705
204
664
671
190
730
865
892
56
642
145
882
750
673
820
356
171
879
295
803
741
748
97
836
773
438
176
943
879
247
879
155
419
569
346
483
762
844
516
577
177
67
27
103
575
53
113
949
433
663
38
695
996
96
920
957
108
827
898
752
555
921
14
809
763
989
464
181
327
338
594
327
363
718
626
675
721
994
262
721
325
226
511
216
209
184
159
323
648
389
376
934
946
764
23
255
53
218
339
586
588
931
623
96
69
711
333
279
470
246
236
113
566
177
427
329
411
797
600
579
831
141
532
938
961
659
380
599
695
371
622
504
655
675
133
393
603
415
147
498
851
879
852
403
153
263
369
769
337
693
844
255
617
760
754
447
400
684
134
410
331
734
583
99
624
732
458
890
45
35
726
995
650
103
728
952
288
130
786
698
290
611
262
3
527
367
886
895
921
685
993
918
282
737
167
117
296
754
779
421
805
479
725
303
967
848
605
515
32
802
159
270
898
435
120
719
472
581
572
257
845
562
968
359
41
807
714
913
935
611
656
534
351
365
893
811
886
958
35
679
762
372
864
119
526
724
21
846
617
448
644
715
183
522
575
243
510
366
262
160
134
691
580
420
147
625
918
533
542
308
832
514
546
892
495
474
698
850
833
317
787
867
296
487
966
940
352
828
790
650
302
521
696
875
545
72
791
444
972
901
805
487
305
309
615
131
169
290
28
102
545
660
533
945
372
267
395
93
453
206
273
91
743
891
6
312
817
671
348
424
682
255
877
931
512
301
563
987
872
836
772
63
801
689
106
642
988
751
503
278
676
699
990
767
628
715
743
413
304
303
314
497
941
604
419
290
782
601
433
72
703
408
220
617
434
211
289
55
785
364
324
67
169
70
747
983
264
111
304
797
557
150
684
569
522
276
121
197
270
815
860
387
318
431
575
269
479
374
334
418
426
689
627
939
979
248
328
871
857
435
27
672
298
636
514
554
724
651
95
158
90
93
784
970
503
936
748
738
495
479
505
890
777
886
371
868
522
744
590
275
947
250
340
835
788
188
90
681
916
21
544
828
279
176
328
334
904
657
436
44
499
590
376
378
929
137
895
412
266
645
32
980
61
820
211
840
752
948
182
316
846
67
821
475
934
677
611
601
558
38
964
864
308
547
776
358
873
961
905
652
293
678
416
272
989
564
767
459
964
488
581
955
476
121
197
432
769
901
443
253
525
294
853
228
681
167
673
514
45
853
966
790
44
529
24
168
651
550
486
371
909
153
637
70
457
9
389
187
350
344
589
972
519
652
127
998
825
189
590
822
891
253
414
112
522
790
912
946
98
30
781
219
416
72
343
373
657
783
770
673
778
486
164
700
265
994
272
391
403
25
343
463
959
663
480
656
738
525
548
667
97
442
89
321
563
370
556
447
310
754
342
42
418
916
45
405
90
714
847
527
518
521
544
74
686
319
259
753
592
686
634
132
235
104
577
336
397
843
138
894
438
825
82
649
683
301
45
44
619
76
567
25
678
22
149
575
898
16
634
245
111
803
855
623
120
210
806
314
340
708
8
246
576
952
89
693
440
894
390
386
274
216
134
517
120
610
454
214
955
3
437
382
209
893
784
635
969
459
530
473
494
731
704
910
68
321
448
725
932
455
136
5
625
249
971
894
669
339
503
510
755
593
358
337
271
626
38
683
169
454
723
980
365
916
891
542
512
223
449
798
162
728
282
501
867
433
756
959
922
889
965
631
955
20
717
901
374
367
640
442
284
765
557
478
731
155
639
709
358
429
383
447
890
705
348
28
311
857
470
837
869
78
761
279
488
92
26
345
199
989
169
146
583
7
514
397
172
803
769
712
793
48
602
493
507
519
741
250
671
690
591
517
896
802
573
206
4
278
989
639
130
295
510
369
261
237
863
883
192
951
855
508
88
757
45
822
476
269
772
969
351
775
673
509
399
651
249
781
434
308
393
894
813
130
583
499
538
233
232
270
655
857
59
720
835
83
429
139
758
750
729
735
505
21
289
354
621
1
969
610
988
83
450
883
558
961
694
957
174
545
285
243
38
503
314
493
717
953
673
316
223
110
23
683
579
658
389
793
840
230
877
537
264
622
282
572
408
176
162
874
388
471
965
213
466
487
697
3
706
796
637
668
328
654
387
878
60
767
305
899
573
901
118
944
668
747
979
415
222
741
85
542
791
799
927
751
145
810
218
92
961
386
87
44
593
209
209
610
235
403
512
641
870
263
302
487
354
21
544
718
507
283
781
964
712
95
877
529
726
636
733
250
549
213
938
187
815
74
351
459
538
370
181
818
230
444
671
528
498
441
398
124
266
499
585
678
604
122
332
498
332
680
883
599
669
263
92
658
324
115
671
280
670
86
180
138
102
963
735
268
424
349
32
286
238
609
983
51
628
260
583
693
741
852
128
858
487
582
149
966
352
13
205
383
769
118
454
181
319
448
577
641
387
64
74
983
649
598
361
60
279
42
31
65
532
978
539
817
957
322
651
520
814
769
916
412
145
648
516
121
156
803
731
181
683
941
307
678
778
144
209
888
221
89
687
311
982
140
851
790
579
636
223
997
796
57
826
618
148
662
839
2
82
241
904
476
310
850
382
590
672
861
39
813
113
762
300
725
82
605
429
5
797
726
541
519
580
733
384
626
115
688
530
116
305
208
807
979
185
212
1
132
758
261
119
718
598
409
884
35
757
101
537
543
234
834
204
356
699
385
895
577
467
755
476
983
331
922
509
905
954
320
541
869
604
297
246
537
607
823
921
172
849
349
868
14
152
986
882
471
4
452
281
799
316
424
665
4
784
135
387
675
900
979
80
438
560
667
938
936
589
667
748
876
464
724
727
118
886
462
832
344
40
38
901
503
40
741
554
180
632
243
752
473
436
246
271
869
269
431
454
485
49
946
881
337
703
404
336
592
696
548
117
323
303
43
636
862
78
577
399
818
113
758
305
347
914
275
440
218
454
858
848
456
9
347
296
94
157
564
799
635
406
962
483
85
126
430
171
393
610
408
791
692
33
635
372
290
642
535
423
428
964
118
138
838
699
661
315
955
747
543
706
514
777
763
413
151
275
220
222
485
105
47
608
46
67
157
423
373
974
7
451
622
142
371
670
288
824
645
385
464
115
215
646
67
702
278
914
269
223
221
15
422
313
938
324
917
509
93
772
542
239
941
980
741
92
84
372
406
94
126
327
630
835
757
370
890
400
541
343
788
242
154
151
754
991
30
309
204
48
752
778
731
872
843
226
173
234
905
975
618
905
508
176
98
894
384
587
556
568
434
518
968
750
984
300
85
791
227
749
63
775
169
359
341
347
596
758
991
531
197
656
495
566
724
882
734
978
54
860
608
442
752
635
614
235
810
981
888
543
142
382
8
156
912
843
737
150
834
750
298
626
595
26
371
777
23
402
26
102
566
107
738
367
142
621
23
533
744
107
537
614
869
449
390
815
648
339
653
881
146
584
144
303
562
981
846
727
264
836
213
408
956
787
976
36
643
641
15
292
820
204
405
728
214
684
756
147
636
556
130
683
749
144
956
982
962
436
805
160
774
296
270
908
893
130
658
83
472
354
173
8
325
361
61
941
179
416
90
878
225
700
92
708
707
529
658
812
831
994
73
208
835
854
518
525
934
497
834
85
26
674
674
282
384
122
359
388
84
15
803
547
346
927
934
74
205
561
201
365
471
846
252
478
282
965
172
470
843
536
8
682
581
6
852
551
26
809
325
586
170
271
728
816
191
526
861
908
920
444
320
373
296
470
613
179
423
196
1
419
949
889
545
548
8
122
965
341
75
384
48
395
237
615
195
201
119
435
287
755
104
264
549
399
216
634
386
112
392
674
129
830
809
906
636
280
725
181
809
70
560
521
834
536
397
925
137
681
275
413
61
987
909
245
315
686
340
147
332
373
735
854
948
401
256
218
586
331
978
914
475
937
625
218
195
583
430
14
3
291
498
704
837
978
613
141
920
564
591
950
940
578
849
437
334
706
572
434
281
179
339
805
703
360
937
123
362
692
50
731
257
327
145
42
874
32
17
969
787
115
297
22
739
28
974
896
89
189
883
488
12
996
732
823
951
692
2
478
42
491
779
229
514
859
694
613
434
807
562
303
690
602
646
167
881
318
66
675
385
41
35
173
809
562
720
260
595
321
90
182
30
539
928
297
336
69
507
879
333
362
463
281
627
580
798
409
350
566
942
634
627
326
93
1
456
606
420
952
140
434
18
113
718
380
273
151
674
350
831
813
810
186
343
23
578
754
546
229
763
311
910
29
379
456
555
704
446
928
840
729
648
554
740
899
344
351
563
247
307
647
735
999
735
129
823
441
983
71
423
702
61
191
190
828
524
989
733
262
824
569
705
745
510
102
165
257
446
443
679
227
191
299
922
116
576
911
294
251
633
114
721
376
506
139
669
457
365
911
376
355
618
301
423
738
942
989
490
633
964
567
995
540
392
196
511
761
269
74
253
612
695
483
629
711
848
330
240
372
433
707
891
534
68
324
609
889
876
185
173
586
421
661
286
67
119
181
983
310
627
907
189
291
658
763
660
135
672
711
890
613
750
119
201
257
675
462
472
68
586
621
884
85
900
667
192
34
197
562
593
667
346
929
744
525
519
600
875
305
663
474
218
165
295
560
835
302
461
29
391
656
709
915
724
6
23
104
391
991
571
626
938
110
119
223
267
821
374
675
738
76
586
167
404
112
404
720
790
341
831
889
573
168
172
936
957
430
206
739
502
415
210
884
734
38
536
108
47
72
293
15
928
785
291
316
71
542
511
612
601
303
314
51
160
681
53
770
938
183
265
837
615
635
174
323
866
701
433
367
576
297
674
719
48
817
961
788
877
856
865
416
918
594
138
199
102
159
725
53
984
766
170
863
806
456
399
293
611
967
450
370
110
145
36
305
629
594
3
342
720
265
893
83
317
849
918
22
497
974
222
707
976
380
382
810
128
810
912
591
418
668
177
909
407
496
307
774
558
833
570
507
156
383
333
720
872
87
546
957
538
378
796
637
746
742
394
729
762
226
178
818
682
412
924
52
88
983
676
821
543
144
464
664
405
714
551
593
48
662
937
41
264
955
54
41
872
540
164
664
103
577
13
332
655
751
825
744
459
281
633
889
411
725
414
394
914
132
233
32
191
800
681
101
289
138
554
727
358
883
180
547
820
12
719
965
132
132
9
653
889
807
134
767
29
48
629
539
541
659
127
740
308
132
473
302
895
911
44
518
197
99
386
576
102
87
70
399
6
449
263
783
124
579
143
384
666
914
73
241
508
16
186
699
757
440
239
688
539
417
70
220
88
491
456
791
421
558
665
941
978
231
534
93
396
344
617
728
988
89
635
981
839
803
11
182
912
687
818
662
847
381
860
588
379
44
695
632
124
352
963
108
249
131
262
278
481
94
303
413
822
510
700
450
781
89
380
284
481
274
879
733
739
4
94
598
370
945
713
352
648
984
605
637
125
528
732
709
542
733
700
818
385
406
839
338
681
410
807
290
664
411
152
849
473
231
369
245
37
663
907
536
381
950
765
838
905
63
326
254
357
670
742
747
574
62
348
334
165
756
917
959
139
424
688
238
833
756
165
894
159
487
673
878
825
165
438
434
640
1
433
618
85
553
932
993
668
404
276
412
882
35
81
280
745
947
397
956
263
528
6
149
897
432
95
870
997
863
921
409
623
914
693
164
324
299
875
585
491
694
569
429
481
753
12
125
406
393
134
878
767
481
172
113
995
284
720
653
458
63
996
805
482
866
788
968
341
916
956
446
73
811
466
568
958
576
668
145
420
970
464
604
730
44
642
143
742
580
169
40
579
222
128
428
698
764
946
615
965
44
783
490
437
687
806
955
16
604
154
419
616
576
233
488
599
392
75
439
225
645
226
760
748
916
867
850
684
38
869
195
630
54
179
377
187
973
167
44
237
686
128
139
426
749
424
3
988
639
829
306
689
508
390
320
817
23
741
521
819
956
271
977
734
959
789
563
397
856
302
625
225
31
202
538
518
88
335
999
492
864
861
46
209
564
505
122
663
859
560
164
233
646
225
281
415
150
404
467
959
861
606
133
338
204
81
659
306
852
802
729
688
742
29
954
95
226
769
171
454
667
899
538
296
139
393
579
806
921
123
369
683
867
40
631
259
729
707
5
483
846
816
811
57
830
475
491
617
270
187
190
380
233
14
293
961
68
836
199
811
502
853
385
729
434
47
821
702
398
695
366
518
764
688
607
851
89
481
466
664
901
962
536
734
933
988
450
853
747
670
191
892
509
194
981
993
431
83
623
784
653
789
219
574
820
671
615
545
406
442
872
586
370
535
909
539
317
650
795
445
596
968
954
728
505
473
10
571
706
614
420
7
858
682
11
113
743
962
913
263
374
905
447
306
797
604
522
973
285
442
676
781
287
179
189
685
834
491
70
348
661
45
839
791
22
866
728
688
525
797
796
355
736
533
72
690
521
649
931
900
950
37
286
265
938
639
719
680
494
325
278
253
892
566
601
329
67
655
284
930
876
834
448
487
646
322
45
754
108
498
165
186
560
170
397
625
758
574
853
383
148
49
195
200
519
544
462
171
931
742
624
865
365
1
24
117
588
799
618
616
595
964
572
996
161
93
692
723
170
975
570
492
802
901
783
827
640
249
968
103
860
874
823
365
873
300
820
559
146
280
38
959
956
238
788
183
476
198
40
426
851
738
1
955
172
133
64
464
218
196
477
340
830
516
756
720
142
208
123
861
273
134
578
889
938
611
536
564
113
600
352
442
210
543
251
123
873
867
193
740
236
356
342
949
803
698
129
440
481
68
42
268
75
178
153
718
160
112
17
561
597
499
352
617
844
36
130
288
266
634
847
275
15
382
625
917
791
629
87
241
482
96
84
45
559
84
367
32
390
533
962
762
850
631
144
737
5
725
105
768
568
841
175
847
220
767
254
693
553
236
926
531
25
776
80
501
415
307
58
760
668
99
898
732
671
86
424
384
239
887
912
67
524
319
673
640
921
236
824
792
830
674
478
154
607
432
737
75
552
643
322
697
667
345
100
469
943
442
176
135
343
870
454
665
324
859
7
706
103
439
579
180
482
265
930
994
620
744
126
240
349
350
831
596
566
215
400
180
219
205
697
479
61
690
450
960
220
813
830
747
425
31
971
113
64
143
216
402
414
106
848
199
317
935
785
993
39
858
100
109
460
827
487
898
741
100
119
791
815
970
774
807
914
378
815
318
378
719
532
423
999
997
765
114
356
499
163
126
904
456
921
361
714
722
288
597
544
74
371
963
25
424
586
444
331
42
285
939
120
468
616
319
327
676
110
462
62
373
542
243
937
993
886
359
49
414
93
192
90
218
773
304
348
569
399
575
411
321
783
314
215
223
6
437
840
603
35
38
613
826
536
171
532
129
26
31
537
227
396
917
948
93
850
902
694
312
971
758
278
534
51
740
590
228
28
714
988
450
519
446
379
56
579
264
682
603
772
219
543
368
38
185
925
865
366
123
373
103
742
529
631
277
759
79
775
795
581
304
102
312
43
88
708
950
538
893
513
587
220
92
539
752
215
910
497
866
815
724
862
905
341
885
708
989
814
102
296
501
488
887
23
469
118
231
325
950
476
975
327
473
610
786
882
650
989
878
62
849
582
909
979
856
441
197
970
158
379
718
136
436
597
13
99
333
70
71
635
984
585
546
391
840
397
390
296
555
3
59
1
935
41
447
918
579
907
166
29
921
261
168
572
757
839
890
875
597
687
550
580
918
244
78
265
36
518
140
459
51
900
416
155
320
718
200
396
150
94
520
425
903
43
713
723
417
974
633
1
506
515
698
867
452
478
82
691
963
182
883
61
767
707
978
21
844
13
252
39
639
495
725
504
168
125
677
876
531
354
847
62
885
140
952
536
203
549
702
842
636
509
433
968
211
460
657
197
64
693
879
405
723
594
361
12
789
194
699
328
800
205
161
609
335
821
175
628
754
443
817
296
310
409
403
131
63
757
294
707
468
481
812
838
475
443
338
291
778
941
746
10
849
375
42
432
348
823
633
389
285
30
442
621
875
583
95
314
192
230
948
32
900
992
860
320
392
323
135
892
483
884
849
813
696
808
447
935
367
970
783
239
125
904
423
438
39
192
962
891
348
25
99
549
992
715
109
857
515
721
40
25
689
741
905
401
180
629
925
67
137
160
946
221
447
710
907
996
570
422
282
201
360
243
544
459
785
301
820
980
700
589
420
646
931
758
550
384
998
22
259
410
266
895
755
189
78
877
102
283
808
113
288
94
440
838
665
446
197
447
615
878
808
944
367
547
739
301
290
688
160
524
997
548
163
872
934
464
488
356
382
907
199
538
173
587
302
327
206
93
94
105
187
552
406
380
601
322
529
208
449
776
588
413
124
285
115
739
930
568
903
201
957
841
65
708
680
271
771
780
246
413
95
197
595
55
337
445
142
783
272
613
935
281
906
605
319
785
414
888
472
562
396
638
189
892
147
346
488
698
700
330
550
748
961
37
681
391
818
69
947
670
598
148
296
290
265
677
934
459
389
894
856
883
308
684
17
457
8
702
908
991
957
444
83
941
64
187
319
870
924
928
967
346
941
802
964
249
342
899
628
469
411
29
309
806
473
666
441
278
20
225
383
116
160
956
712
154
65
355
227
78
359
65
535
461
926
510
942
505
719
768
115
109
75
439
580
929
135
277
468
397
746
41
850
699
545
852
187
984
91
810
184
987
672
550
111
347
493
848
879
962
724
936
559
251
110
275
41
720
376
782
20
788
886
829
332
318
214
835
916
74
324
957
414
909
585
128
437
525
329
234
436
287
397
505
673
809
482
600
590
271
812
466
609
308
791
396
101
842
218
792
134
657
932
806
638
767
522
649
666
982
837
516
392
143
347
732
391
381
157
523
836
614
246
645
262
858
348
107
118
189
27
594
307
537
100
778
354
591
867
905
287
832
933
607
433
296
74
466
961
59
5
720
686
695
956
519
412
287
544
780
419
416
532
477
955
244
210
855
43
568
378
800
514
252
236
4
680
638
213
965
785
882
145
59
185
307
908
611
581
580
367
68
47
87
487
871
301
456
652
189
87
219
424
394
681
205
206
434
460
952
839
773
74
578
995
537
272
473
293
649
336
599
274
462
201
311
753
427
765
364
703
224
986
25
879
566
459
750
378
979
101
474
151
629
741
594
994
468
92
949
599
827
164
3
853
488
944
961
194
371
451
778
669
96
249
616
786
49
699
429
79
521
96
313
548
862
448
645
721
607
316
286
335
815
764
876
61
984
172
392
621
497
557
8
529
322
804
55
380
126
807
945
769
663
871
79
731
850
455
990
40
299
240
586
55
166
444
854
332
372
555
802
877
308
808
581
963
89
784
226
58
393
266
595
800
371
517
672
943
686
145
210
529
181
352
322
257
971
952
363
878
949
723
8
570
5
68
462
855
291
115
643
66
229
932
646
34
645
786
683
649
771
910
645
228
346
273
696
955
486
324
992
136
421
348
109
670
258
26
795
303
56
817
653
571
502
144
301
248
705
289
612
186
270
714
107
39
79
780
225
731
371
506
369
967
122
508
645
881
824
976
776
619
990
380
593
954
258
74
726
202
972
449
250
198
711
807
865
706
241
70
592
478
800
65
932
549
448
686
449
993
499
420
423
729
513
992
195
889
121
153
781
5
55
24
759
922
257
172
256
315
642
938
640
755
385
298
819
925
448
45
506
572
624
732
702
553
26
520
685
718
612
976
585
88
289
587
423
777
306
10
292
277
430
135
352
561
779
668
344
215
174
270
442
77
646
209
380
322
322
207
897
736
487
538
702
666
353
552
466
797
875
42
620
438
753
230
142
490
381
141
773
357
177
471
544
343
535
509
442
80
208
101
456
100
113
555
789
892
432
685
208
227
202
547
339
132
649
4
323
416
67
889
941
181
433
540
560
17
993
360
131
844
111
387
589
774
586
521
326
198
441
250
59
695
933
547
156
629
132
413
694
532
186
26
14
318
160
275
666
573
994
773
899
72
555
364
116
815
957
565
545
129
677
125
975
817
831
246
248
886
385
930
885
580
666
599
658
86
374
272
614
311
854
753
203
667
351
986
141
569
431
340
672
566
867
565
854
62
50
196
487
913
28
780
189
64
888
319
406
955
706
31
442
686
950
234
274
924
922
308
467
845
106
678
455
45
259
319
713
101
745
597
37
178
784
700
284
74
564
139
779
32
580
185
862
401
898
986
616
633
292
929
139
741
729
642
808
350
326
144
805
569
606
306
211
110
993
264
901
250
950
200
360
783
529
435
265
920
815
54
146
272
702
80
808
815
458
295
448
143
892
933
748
420
334
211
425
275
973
753
407
634
85
366
683
92
570
356
213
295
377
887
534
272
998
533
867
527
497
396
652
699
816
759
358
17
452
939
449
318
10
989
947
63
646
511
188
336
397
717
246
102
83
154
765
5
400
476
422
800
344
898
778
578
101
708
818
326
9
666
640
630
907
894
285
387
940
471
625
487
346
531
131
780
151
551
616
663
993
353
617
975
518
648
974
112
212
369
961
938
693
861
328
730
77
615
195
188
868
379
65
928
850
935
455
812
768
998
428
550
92
155
332
656
49
664
113
259
919
173
176
571
510
687
793
484
204
400
703
535
356
428
794
615
288
689
126
583
194
162
343
214
941
412
846
538
529
671
682
412
503
936
269
696
203
493
419
164
142
970
609
369
295
893
194
663
361
717
368
360
539
530
65
757
830
961
630
98
840
255
954
532
718
292
32
420
160
99
412
795
270
961
441
224
553
974
918
49
218
184
178
812
303
322
872
973
871
511
865
242
862
321
323
886
16
77
651
4
861
774
504
263
305
573
91
577
89
841
205
855
44
582
880
657
78
143
230
396
419
59
548
648
233
171
932
949
639
555
208
476
324
915
187
444
679
914
508
729
232
295
884
31
307
11
198
280
441
665
808
873
847
255
584
802
226
856
31
134
641
141
938
533
633
729
532
129
395
436
977
163
635
500
165
125
174
518
341
223
973
652
508
973
746
334
628
69
331
385
219
823
884
374
89
91
357
351
397
578
478
70
884
5
687
645
239
348
90
460
628
708
515
807
161
988
632
965
786
299
101
464
797
11
218
155
278
262
411
75
767
823
121
763
744
903
767
504
286
102
96
281
978
871
756
510
309
78
213
101
458
391
564
99
478
15
273
874
787
533
368
977
936
16
692
805
588
752
63
258
221
129
679
685
204
820
485
926
254
707
846
201
50
311
616
376
259
23
285
730
631
893
716
752
734
119
344
963
179
951
922
556
15
954
880
329
712
879
894
658
529
346
620
81
687
167
928
626
399
316
547
565
467
333
627
328
413
926
951
85
476
522
747
302
784
290
187
95
430
288
664
380
128
627
202
285
273
636
66
567
191
718
564
862
405
358
90
682
328
553
916
785
927
810
182
8
598
319
296
398
979
833
196
112
652
168
438
839
131
342
55
776
861
385
893
757
957
885
897
427
200
505
767
877
372
879
452
317
445
194
686
954
340
668
587
357
522
453
211
238
919
250
551
985
498
140
924
542
916
425
50
713
421
869
198
475
67
319
740
772
715
122
395
937
656
101
436
194
797
537
236
505
674
660
508
950
953
781
380
232
955
910
401
21
145
972
533
471
470
112
291
204
713
438
523
798
855
614
330
398
703
730
745
380
189
544
39
761
362
248
521
286
938
508
817
805
721
374
792
683
567
965
723
685
246
33
792
237
138
710
95
340
451
982
528
225
165
21
832
600
934
772
110
223
590
5
265
205
620
718
78
481
821
647
830
738
8
61
134
157
752
802
623
652
153
182
834
956
979
593
640
700
542
192
748
794
855
500
95
241
767
587
616
420
632
614
518
804
152
790
217
105
886
675
848
132
150
458
71
409
171
308
225
28
78
377
939
630
898
37
882
507
965
892
389
165
186
204
20
539
663
31
805
190
376
536
813
866
344
616
645
398
430
685
71
459
363
588
342
256
674
888
905
116
907
709
139
993
286
683
945
945
439
532
746
141
503
35
651
542
563
73
286
282
391
485
78
280
822
930
802
598
861
763
864
774
125
689
283
666
397
819
581
660
670
699
959
898
939
930
955
328
936
800
692
602
603
624
724
422
632
859
172
356
881
348
84
675
667
971
16
814
752
985
145
743
492
626
611
692
526
180
341
891
974
474
661
62
72
263
172
500
965
860
35
538
648
225
778
323
616
284
231
967
914
142
576
951
656
948
111
976
13
33
896
453
518
280
381
407
687
23
604
405
800
515
848
891
951
607
96
267
847
289
76
242
948
373
977
832
898
709
406
123
153
195
488
932
964
582
20
368
844
372
635
593
680
825
168
399
293
684
1
49
852
843
130
724
956
655
504
145
303
548
508
978
617
481
253
605
28
916
927
369
587
728
423
475
654
483
561
123
206
578
539
214
708
357
270
309
66
764
976
309
78
874
65
296
863
657
976
200
573
562
371
377
757
631
462
124
421
654
70
473
94
381
939
725
9
295
270
261
211
943
540
264
939
618
292
712
664
127
612
997
507
362
550
644
207
163
457
78
895
147
887
412
694
503
215
697
935
339
287
569
387
716
988
629
23
108
438
139
340
749
460
294
43
73
966
732
831
295
518
846
837
192
365
65
56
128
570
437
404
595
777
325
840
43
610
791
374
920
622
100
724
318
738
146
686
594
370
621
536
483
865
640
821
440
731
195
351
923
573
894
538
1
735
745
972
135
454
999
462
176
359
910
673
419
122
520
454
220
378
462
758
948
900
920
729
137
504
400
311
415
441
450
347
727
562
724
582
992
174
552
141
370
160
361
125
955
967
403
318
212
741
131
545
112
136
589
100
814
17
835
631
54
688
48
735
908
564
945
856
398
937
461
47
826
322
389
789
540
796
774
170
102
83
100
674
310
905
236
592
972
624
768
976
338
921
87
681
112
625
217
391
22
546
919
274
280
85
719
789
747
800
560
18
242
666
530
970
589
373
426
3
328
354
884
773
170
485
708
904
235
707
677
914
580
383
148
555
163
825
395
225
186
446
844
173
65
750
734
671
392
117
93
739
200
214
64
668
662
147
105
794
376
814
555
40
124
645
438
859
519
974
808
763
978
201
817
881
509
712
709
420
750
38
513
119
615
937
715
367
319
479
893
17
721
600
849
371
891
804
49
420
313
875
152
417
308
329
760
999
396
182
160
950
437
685
45
339
302
436
425
186
929
71
540
41
82
792
42
379
352
446
990
704
663
289
107
875
885
96
810
286
178
716
970
138
320
942
579
37
555
510
70
455
380
863
490
242
335
112
336
516
288
382
647
950
192
456
287
148
578
170
453
206
625
140
9
214
100
403
720
139
213
6
823
841
376
535
325
800
798
865
540
774
760
295
998
795
69
21
946
864
656
431
459
386
58
864
829
240
854
277
142
932
391
197
304
282
559
806
575
656
131
487
350
712
630
679
446
331
142
213
145
80
456
856
483
781
546
438
784
512
705
85
945
522
723
607
383
563
990
716
237
263
446
290
733
169
82
746
756
378
419
498
99
641
132
62
476
534
714
522
735
121
22
63
950
47
542
827
989
23
296
882
340
425
976
882
634
167
124
315
700
800
681
406
94
207
986
304
390
662
132
848
849
469
980
116
241
383
339
687
627
254
757
734
82
536
159
673
665
250
428
310
411
400
822
935
440
616
969
743
60
238
438
327
890
448
34
871
445
860
641
252
827
436
687
446
44
947
324
557
49
313
638
141
235
821
437
449
647
46
676
625
413
595
627
389
816
430
843
634
503
287
229
805
609
176
483
974
712
376
892
492
292
413
695
747
599
297
93
70
11
584
224
399
184
16
838
232
809
299
629
613
105
689
54
761
84
833
532
59
339
463
737
271
154
185
333
1
900
880
790
519
337
774
624
919
63
829
621
593
338
251
166
414
746
279
387
602
359
933
663
765
765
35
730
548
846
953
246
999
682
838
331
929
508
111
277
331
66
134
699
255
213
938
720
88
298
324
525
875
797
731
641
967
217
25
754
302
44
77
73
110
584
621
910
500
920
236
905
636
2
57
537
226
235
409
552
826
315
642
251
523
429
371
203
951
197
364
712
484
356
974
287
989
62
589
671
592
29
221
168
62
418
888
873
740
195
416
733
808
472
927
987
402
825
550
681
213
419
958
303
557
524
421
280
28
770
547
164
645
738
960
798
94
474
190
106
540
498
462
757
781
631
903
13
429
986
885
164
512
907
458
173
70
917
611
537
996
609
845
970
647
252
88
71
511
130
894
927
636
444
142
715
957
202
521
925
621
409
851
41
885
383
652
738
280
787
728
176
863
652
109
930
652
491
110
530
543
832
501
300
93
957
527
68
766
743
216
867
397
685
916
588
758
804
86
264
599
350
791
723
401
718
65
984
336
211
63
466
92
991
383
788
908
552
948
927
855
585
971
537
572
861
779
178
736
521
173
847
405
845
930
194
42
777
898
375
892
543
731
556
680
749
776
405
303
129
679
207
856
158
409
14
378
254
152
540
938
887
249
815
38
215
62
246
62
189
746
131
653
574
36
313
854
416
856
822
85
375
874
607
841
966
991
247
437
916
815
788
625
359
436
6
295
916
518
466
688
530
343
115
383
549
553
283
123
96
160
962
397
330
455
564
13
641
973
71
224
814
808
145
373
957
505
295
139
30
19
937
897
391
134
555
32
760
225
292
414
708
125
342
757
853
391
296
903
871
993
654
942
447
242
874
721
199
741
425
45
259
145
94
78
222
65
7
196
900
532
252
416
681
657
516
690
467
388
519
567
209
391
267
37
365
995
450
149
260
833
833
20
800
248
155
563
31
264
535
788
385
101
4
339
741
238
262
790
726
185
254
810
222
857
835
868
878
57
713
227
614
857
935
67
699
233
615
433
502
952
659
203
853
730
182
109
387
927
295
127
734
660
423
76
579
24
797
942
413
287
685
973
551
309
175
528
165
937
640
509
623
828
289
774
525
52
957
491
676
726
481
950
762
586
493
954
435
860
487
676
436
672
21
215
267
685
652
545
556
654
944
450
288
786
503
905
371
649
550
528
66
306
267
686
806
734
212
964
815
220
93
305
450
964
73
950
807
74
507
840
400
413
934
22
782
31
663
975
84
587
583
785
310
958
610
130
406
334
408
532
473
687
729
337
561
639
999
323
713
553
98
298
142
710
129
653
371
246
903
775
72
236
881
228
636
307
994
492
355
943
545
474
665
974
367
712
683
598
460
144
32
341
262
530
489
286
644
600
830
956
758
160
430
633
461
237
805
501
701
254
644
508
968
770
8
624
632
168
343
416
969
773
785
760
744
731
974
351
739
351
663
395
661
398
185
385
44
33
513
130
906
183
897
206
499
523
372
491
523
865
653
476
257
414
987
985
374
670
888
730
263
455
762
350
591
250
846
570
586
622
581
600
654
213
509
786
876
580
262
222
359
483
828
873
697
187
139
248
411
199
11
374
145
783
867
452
421
547
615
250
676
802
905
900
284
53
822
44
904
201
110
794
408
666
372
780
626
888
653
404
111
599
160
388
611
208
456
871
346
57
366
329
964
13
545
556
577
927
590
644
365
95
343
210
90
217
965
478
411
87
825
532
894
212
139
77
642
518
290
77
597
950
697
848
834
780
830
395
121
815
203
699
299
9
39
16
257
949
298
395
242
977
460
260
231
833
435
753
874
469
914
60
638
513
48
415
398
495
376
310
387
570
357
596
883
127
234
885
173
123
820
693
220
894
834
620
490
438
617
1
345
77
521
652
901
143
61
785
961
624
618
762
574
988
9
672
621
864
376
105
600
550
580
751
649
222
840
743
679
427
924
959
878
375
964
310
49
704
694
740
66
449
924
549
505
58
119
231
886
163
998
625
63
512
401
795
497
770
4
680
303
318
107
534
700
659
884
200
25
698
623
916
171
635
39
152
625
31
247
591
103
610
857
517
429
299
897
366
973
170
812
279
701
15
438
748
342
391
849
845
174
919
207
188
539
83
455
427
473
250
170
466
523
412
577
693
461
589
106
401
761
519
226
855
886
344
215
156
197
291
809
235
182
401
418
184
403
669
977
346
843
470
892
723
999
346
755
289
437
745
288
753
285
448
85
655
693
352
302
195
868
299
230
183
441
935
285
123
994
393
290
791
612
760
558
292
626
503
855
540
588
926
718
452
3
57
949
733
317
763
491
52
368
782
478
544
241
709
283
65
62
633
294
45
455
496
141
525
890
793
29
191
496
762
607
942
581
777
180
385
985
551
805
232
902
238
424
829
283
14
52
917
220
791
479
954
632
674
997
507
915
425
843
524
734
301
556
605
176
535
963
463
529
898
79
510
828
63
142
217
73
312
243
876
741
112
970
704
283
652
310
906
780
673
469
561
708
282
498
601
682
818
653
747
51
588
388
321
713
968
127
570
533
780
434
603
182
966
782
622
330
852
323
524
226
57
682
855
429
517
801
547
564
540
535
254
659
496
826
154
724
649
991
314
525
740
374
999
240
866
380
742
499
875
272
830
496
129
521
993
906
532
892
196
168
580
6
992
246
180
944
685
140
629
898
681
861
9
999
485
683
683
616
563
138
60
48
689
269
705
758
530
974
833
248
192
757
795
147
945
735
381
754
60
921
694
602
870
976
591
969
488
130
37
310
223
915
329
58
108
532
316
724
540
422
414
711
306
382
706
923
66
861
55
750
302
928
557
641
444
458
178
712
678
736
271
400
938
524
25
276
428
737
40
413
419
657
214
637
507
983
296
488
271
667
903
627
76
286
8
295
359
688
614
649
355
603
46
804
152
15
772
782
358
430
495
328
821
642
331
645
715
919
134
461
162
689
442
11
832
644
325
652
516
730
917
740
124
390
58
815
611
410
486
493
211
513
131
840
172
575
805
434
955
363
580
440
555
154
488
665
162
35
971
508
689
121
267
628
513
755
205
431
584
515
34
305
433
640
250
649
559
602
838
257
838
890
697
153
150
477
186
970
902
393
654
576
438
978
803
91
247
502
327
417
371
374
850
440
330
275
7
914
903
838
106
559
197
714
669
799
424
114
478
36
569
235
529
192
861
457
867
455
836
160
403
57
275
422
886
464
41
257
823
875
471
272
67
64
287
95
380
723
309
5
667
133
25
292
847
136
845
659
579
872
407
552
78
743
436
49
285
775
828
206
758
167
291
602
565
298
168
465
904
766
77
145
146
832
493
270
33
983
574
751
618
382
678
951
469
918
194
324
627
238
810
605
895
104
246
500
842
422
727
550
967
381
754
812
795
263
407
246
250
167
17
301
201
77
587
377
488
339
134
646
105
844
837
666
955
472
250
42
586
992
428
610
257
25
783
238
627
866
156
206
511
948
74
461
222
510
404
818
517
869
13
503
288
81
445
124
544
89
856
324
13
366
659
258
739
406
45
177
294
350
749
622
184
927
136
156
770
376
444
446
68
431
524
717
980
924
323
176
579
659
693
539
10
831
194
146
289
816
722
816
465
228
525
168
120
390
319
360
945
290
354
168
644
410
257
582
841
942
277
814
84
868
598
634
656
211
613
352
734
989
866
954
654
628
981
840
906
357
597
590
605
962
231
290
306
526
895
599
575
611
305
347
539
907
733
597
629
891
511
909
777
967
625
955
423
399
514
16
429
417
676
484
345
686
210
121
637
309
328
131
316
14
777
124
685
520
415
746
895
384
211
15
845
688
813
638
337
276
866
906
12
879
170
158
935
820
2
852
698
612
959
320
563
381
593
764
190
502
270
902
984
767
120
45
206
661
638
657
873
571
783
362
442
421
119
436
843
620
188
865
518
562
49
284
425
890
452
465
95
49
449
835
6
963
922
245
759
125
952
275
182
345
978
127
828
598
878
143
263
158
920
569
314
405
385
422
719
836
620
315
210
174
563
824
123
948
356
478
499
873
677
718
668
913
683
174
583
921
455
827
13
309
202
937
129
879
521
600
579
500
526
922
505
637
65
8
781
154
5
880
242
400
643
389
481
202
901
401
721
211
839
798
382
792
302
900
972
625
696
243
428
756
899
999
348
754
214
31
849
676
392
429
916
574
586
613
666
812
457
926
977
121
878
369
661
728
541
712
335
165
36
156
458
762
453
485
501
644
42
727
988
870
552
46
818
410
881
807
207
689
235
160
169
769
265
308
877
530
339
620
213
501
696
684
641
237
971
154
122
101
113
22
771
730
938
108
569
833
550
251
846
733
505
646
930
876
987
688
497
146
608
970
306
421
514
488
175
867
405
582
439
727
686
107
576
213
388
439
831
158
738
44
980
88
773
480
995
51
754
765
250
283
656
976
492
143
715
350
216
451
932
701
429
967
812
119
48
398
70
717
488
548
857
340
407
564
989
219
647
35
492
125
113
640
333
156
72
709
615
434
498
38
223
381
225
37
615
13
276
655
432
597
980
38
277
701
425
317
570
927
153
497
702
182
958
808
589
788
635
656
48
338
783
636
220
451
325
477
116
370
948
977
942
992
602
894
144
76
363
631
730
754
140
687
281
1
335
42
422
416
448
826
378
619
608
95
814
344
818
826
377
948
202
200
979
175
554
710
579
64
664
514
425
4
926
293
199
97
355
219
116
284
56
699
921
122
600
324
385
508
81
799
257
537
255
782
553
939
708
107
446
625
462
358
752
933
401
374
693
315
895
717
989
599
710
93
893
502
278
857
575
231
326
72
983
864
257
888
748
144
739
259
389
249
772
491
821
697
946
987
720
227
630
70
612
364
810
657
826
162
888
51
661
850
531
216
299
391
375
887
677
513
626
549
575
636
329
740
827
220
272
196
556
291
137
349
600
257
459
620
54
599
62
586
256
689
598
538
717
557
193
431
323
60
311
208
600
82
494
975
35
71
830
607
890
692
495
371
714
183
616
42
931
755
833
78
452
40
294
886
39
791
23
270
28
840
873
496
979
929
748
518
763
483
585
983
768
455
696
563
194
227
824
534
940
151
500
567
226
234
756
561
788
607
937
244
48
560
580
51
818
998
392
784
435
98
279
448
170
849
309
997
344
730
693
812
966
489
330
877
341
307
270
745
174
187
730
156
546
342
936
208
874
645
744
195
835
40
100
843
871
52
397
376
924
759
218
58
914
126
277
559
231
702
709
512
728
646
611
249
367
124
902
828
913
101
123
698
985
498
976
927
389
486
7
290
909
894
820
415
969
673
242
421
65
378
977
173
936
233
466
189
429
850
476
747
149
568
463
824
636
520
72
416
149
350
170
744
696
420
602
834
825
197
280
694
881
482
764
536
124
949
762
753
32
787
499
538
11
259
141
342
431
996
778
449
601
825
273
714
208
233
476
516
630
631
364
232
571
781
865
667
804
926
701
686
757
319
385
361
851
631
734
438
279
261
404
829
418
830
94
57
209
50
328
890
474
246
123
400
424
267
967
229
393
473
538
504
295
92
691
282
440
911
863
577
499
38
237
370
228
535
813
741
688
809
458
754
598
810
213
512
197
984
937
585
664
505
46
806
723
899
534
327
139
812
616
298
187
751
392
436
9
752
172
889
453
226
541
583
16
783
905
485
878
180
85
456
974
278
912
993
992
431
647
329
2
487
603
875
193
161
568
847
419
776
503
444
813
48
132
438
964
462
791
939
993
50
448
958
727
161
323
908
839
399
444
578
106
843
887
966
623
665
391
854
216
59
66
103
676
641
642
926
147
474
30
530
640
707
336
952
39
644
149
32
838
659
9
21
332
925
339
970
161
166
815
299
72
936
724
934
983
346
283
87
518
396
762
365
369
913
937
398
507
935
927
978
516
359
17
556
51
46
770
751
302
672
766
980
659
730
459
703
982
401
968
693
362
63
513
442
897
644
651
418
987
940
463
225
238
836
782
712
920
169
884
938
575
531
784
846
629
782
705
639
455
235
416
107
966
235
617
454
846
574
658
407
394
352
763
362
210
542
742
823
947
747
783
814
517
31
118
830
279
667
812
116
938
12
963
753
525
357
258
3
219
329
866
346
510
477
544
223
768
422
636
88
40
882
692
708
451
601
589
936
118
787
175
179
762
543
468
383
389
10
837
853
285
739
604
618
880
437
304
40
487
894
63
856
31
724
76
57
320
256
302
923
767
322
885
432
154
687
584
966
10
162
834
758
585
783
803
300
279
74
827
15
297
550
449
224
724
319
148
38
467
412
63
133
707
913
86
962
854
172
465
194
853
338
31
326
60
304
272
247
921
776
777
246
429
288
626
218
872
662
707
835
539
547
500
597
99
702
51
672
698
840
446
107
609
633
162
959
519
124
164
421
47
900
116
691
634
817
704
419
287
867
91
193
464
629
654
306
837
434
228
358
254
600
549
81
331
671
637
795
127
666
698
749
498
287
788
638
431
808
962
281
997
631
385
830
750
253
642
979
979
855
123
86
895
806
167
447
352
36
361
963
181
908
293
620
169
342
694
178
841
16
875
29
471
946
360
622
216
718
331
78
29
657
815
272
544
613
853
692
120
341
287
396
448
999
101
89
339
764
662
408
558
465
139
964
979
94
615
949
446
545
232
634
704
284
934
523
94
21
77
556
488
3
58
500
728
480
581
471
845
271
284
451
57
922
519
564
519
851
292
451
997
904
246
575
110
652
691
165
65
578
995
318
688
106
920
556
407
639
236
500
513
144
104
176
261
780
578
781
765
371
5
243
728
625
558
584
757
482
391
77
788
416
407
268
275
965
763
950
3
963
157
879
615
792
938
854
801
70
314
329
75
909
400
694
573
753
590
63
548
336
798
925
248
160
712
97
737
835
900
296
18
627
778
801
214
125
627
936
687
703
783
687
168
62
2
878
17
712
695
522
376
700
403
667
165
232
631
455
81
841
118
965
170
19
311
448
131
598
481
448
126
653
376
844
553
111
757
187
159
833
80
25
141
379
919
317
225
112
637
982
493
173
856
845
586
817
518
150
750
553
747
418
232
247
396
723
325
558
114
55
475
445
297
247
762
93
825
791
99
994
223
20
961
498
955
953
796
531
259
736
593
608
436
605
86
661
793
894
982
197
991
666
998
582
508
48
875
609
84
493
991
727
51
756
331
728
457
733
291
442
926
794
300
378
462
866
10
691
162
101
300
931
808
902
3
557
21
379
990
907
78
187
447
765
744
865
557
679
275
357
205
61
603
540
271
198
366
620
121
641
38
184
448
983
194
61
919
149
753
773
707
79
742
384
365
739
347
535
634
596
310
331
417
805
895
240
328
268
632
805
191
401
258
350
869
894
739
464
572
683
946
409
926
501
649
127
318
220
176
531
850
831
986
525
331
707
767
643
88
954
732
651
517
948
583
307
820
392
514
470
1
883
962
950
650
900
405
915
156
769
921
109
92
101
955
359
414
733
19
163
127
97
376
618
950
295
892
977
918
342
306
925
705
705
531
966
869
36
874
431
303
851
487
318
33
624
559
416
992
224
892
88
374
352
344
903
507
345
1
355
8
427
997
813
464
996
403
387
569
988
490
379
858
588
859
275
609
58
585
327
735
477
985
695
450
218
552
354
362
627
460
524
35
519
423
876
854
674
854
37
221
173
846
5
733
514
229
786
492
69
295
449
759
674
620
531
442
302
364
246
444
49
25
942
528
966
344
339
165
983
421
935
204
549
106
563
630
980
961
936
989
766
862
294
333
11
765
361
899
891
434
553
310
609
592
173
149
904
476
767
170
890
621
508
648
360
246
210
569
58
901
461
340
428
257
678
187
731
610
518
201
983
440
273
550
868
625
594
957
933
414
726
504
195
766
100
145
355
645
972
765
555
792
842
990
973
213
882
352
914
985
417
295
958
566
186
450
348
958
780
734
651
253
636
643
175
957
146
661
158
533
831
86
637
752
646
192
597
282
577
655
743
243
44
947
997
431
545
629
580
649
797
397
865
239
114
303
157
200
815
16
68
221
195
381
155
331
658
206
920
994
853
66
381
125
991
409
210
688
645
743
412
516
81
509
736
435
221
398
639
344
35
397
467
561
588
523
48
662
792
666
773
340
709
586
795
731
16
741
248
705
93
468
554
72
604
551
140
686
645
720
111
260
567
576
959
456
599
820
537
469
361
547
895
979
970
73
807
495
713
5
419
480
151
933
251
567
842
395
956
38
383
362
18
73
556
514
772
133
626
339
132
195
204
778
344
546
572
575
102
532
743
644
972
640
301
631
109
633
326
393
614
205
863
500
86
999
530
823
423
457
300
675
869
375
872
224
276
372
590
705
994
268
293
425
294
738
389
378
771
925
405
140
806
234
725
927
332
704
693
345
16
749
152
645
232
68
775
598
767
77
355
737
44
620
398
346
911
438
206
347
610
153
52
498
52
161
868
635
649
945
892
571
679
246
689
246
116
648
194
226
962
791
610
694
570
668
97
187
835
379
17
893
499
346
734
863
697
654
593
71
200
140
948
822
185
784
58
797
931
152
231
264
245
979
385
818
542
357
928
384
65
682
799
271
928
999
73
334
511
826
549
461
55
123
27
822
843
788
510
786
610
299
255
684
148
753
648
519
961
915
322
341
726
210
7
517
340
678
893
185
712
724
287
106
603
769
209
122
953
562
975
753
846
142
773
765
427
116
123
176
351
553
372
595
504
209
735
845
116
509
482
166
895
326
75
886
12
150
81
379
544
527
565
400
940
568
494
584
436
241
91
225
555
718
833
159
352
692
601
395
34
364
7
445
80
810
858
521
68
887
754
277
35
744
631
824
988
972
654
935
714
152
409
874
418
258
610
177
492
916
534
320
549
686
345
181
521
120
321
131
709
972
517
549
487
813
190
811
87
10
171
380
38
665
680
882
954
132
27
821
200
681
30
152
353
435
728
349
400
450
304
868
652
524
226
742
634
860
388
605
68
799
91
483
745
155
282
883
6
462
227
389
94
499
930
29
942
366
196
53
85
841
411
637
705
302
727
513
439
937
249
95
743
422
753
401
591
547
406
199
153
844
343
937
224
914
774
154
594
198
799
269
664
336
520
227
388
453
777
444
427
768
445
68
214
132
646
672
745
530
437
396
960
997
899
241
498
473
413
791
528
574
919
241
139
979
430
408
901
526
13
138
769
962
771
384
400
276
724
92
269
103
408
64
761
403
309
667
437
280
729
914
41
986
916
852
849
204
929
234
702
239
770
219
518
299
627
998
226
515
840
223
749
322
523
425
167
855
480
735
671
763
970
622
797
98
98
782
47
918
535
196
346
491
390
30
333
189
546
462
776
311
441
921
439
507
166
718
464
491
686
994
724
195
563
938
268
148
422
420
202
844
952
307
980
644
876
259
931
493
92
977
309
18
958
361
322
50
183
290
932
379
319
555
233
541
472
152
927
451
762
185
767
127
261
931
358
135
940
794
631
907
787
971
400
708
685
706
236
202
616
218
965
132
488
822
526
398
75
440
172
725
331
481
730
906
211
183
757
28
3
188
109
388
659
25
592
348
155
524
855
766
916
725
834
544
220
635
638
438
406
960
60
501
623
906
576
306
241
493
498
502
948
209
200
429
110
577
473
463
231
179
243
551
584
406
809
605
646
187
687
576
544
320
621
42
128
608
765
753
448
286
107
662
26
354
818
707
526
406
435
643
163
175
208
228
718
509
916
217
97
971
660
55
806
921
957
628
587
158
301
502
811
719
15
944
72
581
525
231
587
102
79
240
751
44
414
369
113
394
324
619
691
548
656
477
625
53
856
104
396
190
121
369
105
933
831
443
161
263
157
138
983
686
630
995
892
421
303
762
508
588
516
194
834
681
810
263
64
538
320
19
724
421
835
398
980
710
135
818
213
970
209
850
238
186
636
6
918
660
585
205
750
94
596
807
674
927
534
424
123
568
380
623
943
138
413
562
850
232
16
182
286
485
549
537
380
666
956
648
46
805
345
403
952
115
269
630
825
28
724
54
176
711
695
644
591
586
906
100
773
74
155
686
645
403
919
266
545
59
428
8
971
886
378
317
224
976
670
828
868
782
736
823
508
961
6
574
789
905
945
793
759
856
874
971
651
658
757
549
195
4
86
767
600
716
83
290
333
379
420
615
916
78
232
990
338
332
179
684
398
345
477
639
113
634
249
115
12
407
665
566
219
121
633
864
696
969
223
792
879
716
241
410
486
331
877
681
624
884
633
320
479
74
152
850
527
447
655
965
467
967
278
926
713
853
396
795
445
367
294
369
109
387
804
682
105
67
154
781
757
568
490
128
773
346
87
146
968
783
338
250
314
257
325
912
438
315
697
632
935
82
237
258
590
265
212
93
269
470
746
461
293
873
209
899
477
151
153
368
767
250
827
661
30
45
55
851
62
892
244
789
369
522
845
675
332
233
537
509
135
994
876
498
38
876
956
441
49
426
435
287
163
330
865
685
255
575
229
546
211
360
32
377
226
956
92
771
28
533
567
244
614
644
234
772
374
329
623
153
88
614
803
635
457
957
627
40
657
161
421
756
5
991
298
774
962
499
272
81
784
186
413
515
858
192
673
518
97
93
312
926
952
76
459
597
556
396
919
269
330
53
115
867
113
811
240
622
346
459
809
874
57
542
368
902
201
288
777
266
284
109
943
564
848
494
803
928
532
701
218
567
580
4
751
732
71
545
403
47
951
51
172
638
283
437
870
410
707
557
396
269
619
654
984
221
110
550
19
618
9
311
91
645
241
243
295
54
791
636
831
656
885
730
314
234
936
306
282
412
624
394
222
975
306
949
948
925
19
530
623
520
527
784
39
641
960
527
397
41
143
816
619
72
725
739
383
888
340
751
284
804
269
607
994
614
89
115
339
291
294
369
35
261
13
311
130
102
691
673
273
409
908
242
270
807
774
151
251
566
566
61
586
268
247
819
252
919
790
424
552
846
189
107
746
773
782
359
59
414
610
282
197
666
478
874
895
28
338
187
840
938
863
772
724
234
782
767
15
194
60
210
311
267
122
427
221
802
495
496
26
416
92
836
956
285
863
919
789
372
923
224
582
603
584
613
982
416
382
513
990
15
345
864
355
401
970
929
545
52
654
94
532
842
161
424
847
28
816
440
370
862
978
642
270
835
627
708
683
509
445
804
420
982
505
12
72
227
482
556
314
933
375
738
717
830
692
740
442
160
766
954
600
941
143
129
37
702
594
519
773
263
247
36
607
849
673
550
337
150
353
620
546
260
127
437
487
241
925
440
144
887
266
523
742
490
204
479
839
377
974
370
632
962
783
51
686
340
132
868
157
142
403
292
807
147
409
341
815
706
641
796
777
155
375
885
996
724
294
117
646
195
711
960
175
983
987
583
477
76
750
148
109
57
284
3
484
973
715
596
81
863
663
134
736
179
593
478
587
897
54
961
46
15
223
961
430
443
117
824
159
826
863
739
955
493
687
720
870
373
401
23
9
697
37
782
532
577
225
996
391
509
995
579
22
789
103
95
834
322
572
42
856
891
437
254
999
923
179
244
492
872
608
215
497
32
952
349
978
440
430
853
218
121
433
650
831
285
717
166
390
593
885
549
801
360
166
118
260
782
782
608
399
981
504
518
901
781
83
990
836
753
117
394
891
719
823
735
458
787
423
715
206
13
853
899
986
60
413
137
865
835
89
196
657
822
454
237
617
915
748
51
202
727
330
637
476
492
657
83
536
430
659
473
360
68
402
387
129
605
531
842
368
945
126
1
665
920
737
70
265
586
119
543
39
372
513
479
682
217
423
495
402
331
601
435
176
616
835
590
420
68
109
12
384
906
682
257
601
329
971
555
755
587
817
949
312
117
434
987
555
923
704
912
183
36
440
38
345
691
824
50
86
147
649
197
478
107
159
133
689
257
877
353
245
867
740
815
513
651
123
60
182
848
36
497
364
197
829
348
466
645
911
910
505
922
470
608
937
621
472
205
957
301
298
298
46
351
667
315
296
625
524
693
568
765
867
237
112
153
833
281
277
810
667
45
345
967
848
323
397
133
877
892
180
918
102
881
550
737
452
13
530
515
53
841
122
219
342
739
55
233
496
785
787
192
928
148
633
254
953
78
503
345
918
163
747
632
514
650
663
985
687
375
700
821
751
762
757
826
922
126
626
109
268
164
637
93
106
987
989
954
248
297
784
375
509
185
597
889
94
490
705
691
77
70
546
122
85
965
441
166
390
807
331
827
451
394
78
754
526
654
526
526
660
709
737
391
590
326
312
566
166
868
732
433
421
935
33
198
617
515
9
140
547
824
564
441
965
957
923
116
108
842
364
439
963
179
31
367
332
156
531
758
654
874
1
522
75
898
406
516
362
879
137
12
646
387
978
836
145
297
425
632
402
197
458
323
504
293
470
243
904
665
866
462
983
250
486
672
823
43
366
67
552
408
753
229
706
353
793
576
200
195
223
36
730
898
356
458
416
677
18
781
429
164
611
696
13
675
28
396
901
307
13
103
930
359
81
994
443
230
617
152
500
893
43
710
443
830
731
85
894
29
256
146
26
584
638
389
796
58
216
32
325
397
675
893
182
121
105
372
818
362
15
187
61
865
282
535
121
901
254
182
943
942
502
873
51
867
78
346
720
692
199
385
14
586
826
104
219
149
529
323
726
360
267
533
14
70
86
160
303
104
268
895
804
34
88
383
894
801
843
314
44
759
652
126
163
629
173
475
39
179
316
972
373
930
456
584
675
969
860
980
782
917
44
616
425
303
581
980
498
444
209
417
305
215
280
966
707
142
370
384
896
610
121
125
787
296
523
873
577
504
708
925
941
862
532
126
716
36
701
860
49
193
976
595
969
898
667
158
651
490
876
534
600
476
85
172
797
918
828
129
780
708
403
993
735
284
476
443
682
154
251
672
440
510
336
703
633
525
156
889
629
365
223
88
628
175
325
465
778
361
329
797
207
573
80
340
790
983
859
685
423
224
476
497
239
204
94
91
141
381
538
272
763
939
500
416
486
315
366
561
958
11
664
322
825
454
465
867
430
995
913
650
665
470
466
405
889
725
849
424
81
235
325
398
822
57
34
268
73
663
854
475
617
299
726
412
560
154
671
784
739
227
660
145
467
888
606
294
473
96
527
760
466
941
481
724
686
267
499
768
420
198
794
767
142
439
33
367
743
55
844
735
54
65
685
853
574
181
930
934
451
740
794
977
137
94
10
676
817
3
726
294
654
903
365
542
432
893
4
29
855
240
551
419
251
792
706
401
257
628
151
506
336
565
318
679
404
817
631
48
430
357
550
741
328
551
81
151
700
143
421
681
177
902
80
212
190
375
727
344
387
608
419
190
851
221
957
90
585
685
139
615
263
955
598
498
689
809
91
699
712
556
701
114
207
470
329
433
486
107
490
29
91
287
660
821
938
360
889
108
593
990
565
15
5
806
418
222
304
581
522
380
284
28
632
831
907
305
983
382
891
525
604
479
196
110
525
976
295
777
559
330
920
983
107
721
990
686
109
400
52
107
130
904
584
110
744
63
654
829
914
633
377
507
216
69
387
87
819
895
282
442
927
527
23
192
459
301
920
911
840
221
196
583
330
785
395
699
894
86
365
462
322
465
863
926
953
413
767
39
334
904
867
214
119
610
180
602
882
392
650
444
143
743
988
693
437
793
178
431
673
687
192
733
530
819
120
462
664
96
239
47
533
882
577
936
354
982
465
720
605
793
817
503
435
920
320
579
477
170
489
161
236
337
365
646
713
134
684
299
490
718
938
786
154
604
910
260
166
53
339
455
328
458
825
880
870
688
298
609
500
541
985
494
607
79
811
197
517
930
223
221
298
166
230
887
854
32
350
831
10
60
413
424
830
35
832
778
511
485
776
25
835
75
799
949
733
445
180
75
793
714
743
235
829
119
157
162
228
938
26
839
339
467
599
440
128
561
663
572
247
34
685
33
155
199
385
224
367
280
154
410
851
275
39
296
317
178
594
712
878
670
550
573
459
937
685
369
476
359
822
172
781
607
828
760
29
710
81
631
734
933
795
948
784
616
987
65
429
304
124
949
967
951
694
576
484
113
573
217
513
17
747
8
457
982
628
245
447
278
267
606
97
963
978
944
874
601
788
842
950
621
939
173
236
873
205
830
913
252
277
916
138
864
118
717
186
788
491
802
988
742
617
151
37
517
852
5
973
749
701
882
325
730
266
892
77
575
771
584
777
797
332
195
2
351
469
233
845
261
759
87
110
985
853
208
4
789
136
719
21
201
857
164
550
394
591
407
598
225
641
611
17
907
25
192
411
423
149
686
49
620
159
713
990
615
772
339
876
58
889
288
440
53
563
577
939
168
644
607
759
62
634
620
619
148
71
203
961
662
797
581
640
450
671
401
42
145
173
935
621
253
530
540
336
354
172
964
345
447
252
243
778
542
926
986
985
538
94
842
544
570
378
215
261
309
647
990
381
162
536
795
995
709
986
507
531
94
285
266
976
106
858
514
410
554
803
99
523
684
416
503
52
330
391
51
874
316
280
28
706
181
583
183
911
457
248
70
555
420
455
892
254
828
865
438
712
864
804
707
506
549
467
697
746
34
743
666
318
935
633
216
814
258
559
795
523
675
602
952
307
733
543
103
229
523
250
223
464
953
339
10
511
572
521
158
714
886
436
878
713
581
751
620
787
240
78
995
269
70
915
38
262
852
400
772
6
365
468
223
784
521
202
365
596
623
704
242
736
402
82
637
239
724
239
725
981
922
316
988
445
254
954
394
38
302
747
659
172
749
152
349
418
214
95
193
380
387
25
165
536
836
260
867
988
278
798
538
613
675
790
84
50
479
777
530
566
808
327
295
875
45
70
987
250
733
220
26
630
46
346
595
898
151
453
609
993
87
406
760
503
210
47
497
959
69
300
939
436
564
627
572
61
729
289
491
766
273
618
255
59
773
908
567
330
196
185
898
26
169
536
480
402
567
791
665
998
573
28
182
434
281
589
66
419
773
534
170
861
961
843
721
469
151
701
730
302
479
167
764
883
401
913
268
28
147
170
494
937
624
493
193
245
437
821
778
184
842
149
556
661
16
37
64
325
815
11
251
865
61
364
520
406
264
298
33
367
322
39
272
604
40
232
238
469
650
477
33
330
922
547
459
331
611
103
867
364
849
942
213
137
918
628
876
260
972
787
981
139
789
411
862
804
876
952
622
784
798
595
675
338
978
921
943
514
904
189
795
162
430
668
518
379
825
136
685
412
355
978
496
862
496
893
540
511
685
655
454
658
481
84
565
255
268
874
158
997
685
363
355
784
991
819
709
121
892
483
979
741
268
210
429
820
99
812
842
85
382
432
828
250
734
137
681
346
103
264
112
950
977
687
727
991
623
712
871
676
185
419
618
202
676
713
391
271
654
745
156
455
32
74
616
253
534
105
50
855
139
363
19
629
372
29
763
580
483
438
197
386
941
167
900
962
813
627
574
22
745
410
692
358
108
657
918
904
72
474
458
518
663
16
537
821
401
989
829
647
949
811
787
217
548
770
513
865
173
654
439
907
531
29
110
728
671
661
521
715
110
859
508
9
979
678
723
925
629
79
561
824
797
926
72
934
622
475
809
338
144
54
731
418
35
550
987
634
906
808
151
740
469
115
538
91
303
779
237
869
47
587
236
94
93
615
110
604
956
175
107
197
851
183
571
56
128
91
974
429
690
89
20
820
928
821
355
682
388
980
632
843
238
939
291
556
817
638
326
420
441
384
678
731
702
954
888
286
543
483
963
213
804
807
179
958
568
415
166
272
260
427
216
975
543
263
958
912
891
15
238
490
765
554
988
307
411
288
119
974
932
69
140
905
18
419
39
430
760
333
988
403
472
54
160
14
168
702
188
440
995
976
395
528
245
473
448
251
819
872
547
280
297
192
339
191
288
311
957
125
224
529
152
558
27
835
18
711
395
975
140
708
100
678
979
955
674
611
661
544
971
788
611
888
785
709
106
281
714
968
725
857
744
64
217
466
825
836
502
410
456
736
856
843
732
839
180
618
213
383
517
677
649
413
153
435
918
264
773
318
729
736
996
426
251
283
964
36
462
513
131
837
110
251
89
236
932
768
156
946
529
487
69
331
452
49
208
331
911
781
548
562
64
185
680
719
740
430
592
450
875
145
157
699
253
679
567
398
325
917
503
151
108
826
788
242
668
665
973
203
75
633
125
681
964
569
774
924
571
370
495
502
176
706
72
385
331
369
79
773
481
809
7
994
278
398
454
237
396
439
51
75
456
390
375
242
20
475
734
683
904
642
827
955
422
1
974
401
755
404
910
299
586
201
721
266
627
131
403
567
115
537
529
133
319
421
47
785
331
829
365
856
634
396
868
838
981
51
572
278
423
54
482
992
528
752
488
255
668
110
615
889
73
168
568
368
114
695
637
1
954
190
71
925
40
55
665
191
333
883
284
576
558
126
144
62
55
537
605
566
932
791
118
221
214
475
783
467
827
500
724
287
414
571
324
234
982
556
953
473
87
297
921
784
826
40
332
946
24
507
313
577
91
71
68
163
72
849
712
564
271
199
364
833
160
997
163
986
801
910
79
499
584
133
480
636
869
333
395
175
143
837
443
321
188
148
196
343
503
161
162
134
844
389
202
888
933
89
625
829
876
345
145
114
428
814
993
958
591
432
294
739
455
537
421
434
755
44
646
12
801
819
483
641
749
945
655
195
931
591
703
780
707
566
299
797
692
329
892
373
155
238
752
72
867
422
679
308
967
767
133
889
443
613
29
57
862
504
365
482
160
798
27
1
729
513
32
888
239
623
742
427
151
273
857
563
68
412
773
327
267
347
228
164
458
813
338
94
538
242
935
188
964
411
214
356
211
752
342
355
390
790
69
345
25
706
739
171
756
465
989
450
730
39
215
812
571
863
542
916
175
938
351
996
688
554
463
740
59
502
352
315
70
419
936
477
279
882
139
751
75
168
338
73
252
486
458
926
196
402
785
348
210
426
180
452
439
72
656
471
244
998
112
254
114
674
380
312
102
738
534
688
724
790
841
8
600
279
745
203
97
536
544
657
716
4
106
644
239
484
38
207
227
668
508
76
56
84
959
577
106
146
824
457
868
97
624
419
584
173
851
161
327
454
375
707
455
455
538
110
569
736
73
617
701
328
462
56
283
766
951
517
320
168
97
950
712
87
788
620
379
686
60
67
633
876
879
772
294
801
621
601
546
849
9
369
74
207
756
541
635
569
137
818
221
335
841
159
358
424
994
368
666
917
730
882
677
7
984
824
448
690
762
482
146
350
970
470
160
728
877
505
331
248
984
810
549
241
845
298
36
720
415
869
806
253
935
628
119
126
692
67
223
932
93
945
807
655
673
871
365
371
999
629
547
490
38
418
933
920
333
436
162
687
789
727
276
892
675
892
415
342
352
35
36
810
283
399
156
40
4
894
568
974
933
664
721
785
323
316
216
518
695
199
792
256
905
536
143
366
669
914
979
780
457
23
20
965
594
736
208
639
263
893
916
439
868
188
754
126
6
491
569
359
677
897
647
154
242
779
905
746
256
789
370
89
914
787
518
910
645
756
191
587
109
577
255
802
282
353
388
717
782
18
360
179
346
620
104
559
376
865
723
814
830
461
383
473
523
827
525
82
670
843
480
250
300
982
251
101
642
845
871
888
392
188
964
239
430
191
743
294
684
958
535
779
33
377
756
648
194
782
279
455
828
307
48
938
537
110
879
364
370
4
917
531
994
834
422
642
496
145
43
332
85
231
398
711
308
700
217
923
226
602
906
860
566
417
61
86
140
26
701
320
312
380
924
680
42
5
785
198
954
114
153
50
739
946
371
598
909
336
630
836
893
956
138
768
98
57
964
577
774
337
502
470
443
722
21
704
307
717
670
304
915
19
968
112
450
856
122
620
46
462
177
804
395
864
427
356
242
156
583
984
41
208
423
618
612
682
606
17
926
666
291
192
666
327
921
874
987
26
318
241
935
344
532
313
160
698
75
579
296
664
463
151
134
686
264
707
595
351
500
767
251
105
694
380
172
984
139
69
942
552
368
216
837
343
49
696
676
111
458
913
607
28
721
262
204
141
58
979
64
215
280
637
526
551
990
830
650
153
141
176
560
7
636
743
296
247
313
791
637
567
31
484
893
587
161
223
384
432
176
32
926
159
6
728
273
731
690
287
353
219
46
524
970
283
353
601
391
977
965
957
827
267
342
496
184
795
743
938
391
767
447
218
976
110
249
402
2
907
470
565
556
27
439
419
521
507
514
611
234
559
831
406
467
219
204
660
816
509
544
478
987
752
896
586
771
828
547
860
34
951
600
484
508
401
402
801
828
923
974
676
281
133
704
831
935
41
751
758
905
589
585
492
363
992
577
804
130
853
647
693
960
654
577
283
959
348
898
67
817
403
832
892
535
868
197
854
48
65
650
731
77
788
954
445
366
108
121
515
823
597
671
975
276
281
716
627
556
422
871
587
143
684
941
503
757
692
956
495
796
722
757
65
203
916
616
172
699
133
916
851
228
383
243
220
732
856
617
254
152
569
299
625
193
64
588
392
847
452
688
673
152
625
719
102
840
606
773
360
665
545
928
423
506
21
359
759
442
722
771
900
76
703
344
227
423
132
871
139
329
224
324
248
445
243
700
603
663
141
379
126
84
257
589
606
641
875
120
173
704
828
950
126
680
787
598
448
281
493
678
709
734
634
32
441
221
680
978
263
320
756
97
301
344
645
816
818
115
738
586
547
13
699
434
500
274
199
567
657
645
253
322
171
462
669
391
450
226
148
385
960
897
856
852
948
732
649
781
35
971
779
334
543
906
132
696
36
200
531
168
23
113
322
618
68
435
925
838
674
255
367
593
966
353
625
650
156
846
486
767
624
417
532
686
865
918
778
264
331
972
356
250
694
980
363
847
575
239
785
513
806
810
108
780
605
187
367
190
281
481
541
190
713
764
543
605
581
636
752
149
656
661
508
701
898
117
898
986
990
778
75
917
62
972
960
813
310
751
81
679
552
589
983
849
432
166
537
930
438
757
267
939
486
636
857
146
303
407
881
488
288
380
200
503
407
623
128
740
803
729
296
829
555
73
597
67
678
658
269
732
580
968
549
233
512
135
431
426
116
815
511
903
869
593
392
172
389
481
443
809
39
796
128
708
462
438
385
413
40
790
467
645
138
150
908
320
831
966
991
272
192
702
625
987
219
392
959
962
681
425
678
198
216
460
694
783
840
840
770
75
750
19
387
325
348
865
765
720
684
73
341
423
489
171
617
336
172
140
490
70
478
422
732
614
113
270
430
678
455
125
479
990
196
917
522
174
316
300
639
353
627
239
278
609
85
255
708
46
842
359
612
700
351
701
596
328
286
772
212
79
436
87
266
559
593
350
227
572
648
444
20
871
501
137
443
239
145
124
530
857
561
384
836
96
513
778
640
495
321
195
888
544
89
561
916
541
972
719
16
734
29
136
397
398
340
741
200
214
258
357
184
162
242
354
517
52
251
171
47
815
709
731
252
454
556
475
783
940
220
902
267
426
109
795
829
426
987
438
755
771
579
426
238
963
11
726
302
734
44
865
291
802
672
201
26
297
884
942
842
864
958
259
993
356
91
757
54
446
525
92
65
812
415
275
236
283
494
288
443
830
173
49
896
355
612
464
753
908
770
532
541
45
596
891
813
320
432
881
873
254
672
856
210
952
800
478
388
397
964
742
803
597
500
13
691
909
363
639
744
627
5
146
675
992
550
20
217
524
462
916
850
613
414
190
158
317
839
944
554
134
77
356
943
29
729
944
545
583
200
903
957
793
137
247
249
526
181
218
402
781
262
864
935
48
891
190
183
310
854
374
71
418
85
611
550
648
202
647
263
605
474
633
324
558
959
58
476
168
940
632
137
622
542
773
871
213
420
896
137
540
762
236
729
825
833
539
708
526
696
601
324
533
955
796
307
629
540
378
89
834
714
15
369
223
238
449
876
312
739
338
228
306
510
723
843
239
903
498
724
421
349
950
472
340
308
603
667
745
466
243
672
43
808
303
825
748
866
507
588
385
662
397
786
359
373
19
24
233
953
69
725
43
653
667
486
764
543
30
915
634
782
132
846
497
666
186
498
208
897
96
373
397
910
340
759
951
164
114
966
289
580
434
791
397
517
630
389
141
817
62
205
836
591
953
603
531
551
290
692
188
521
815
335
858
696
328
132
314
908
534
600
430
63
626
55
348
340
449
979
36
797
357
391
835
890
536
806
956
737
228
401
874
421
779
768
764
100
933
701
190
498
75
233
283
462
775
773
965
899
256
191
103
310
656
391
164
425
500
967
160
522
175
577
680
134
726
10
284
858
290
249
407
747
790
538
722
125
108
373
116
762
840
58
482
37
299
565
764
389
604
340
599
965
542
667
323
497
552
150
736
765
490
108
609
7
784
355
519
119
668
40
317
127
852
397
681
117
96
643
835
161
245
895
254
950
649
441
206
124
215
225
572
958
637
350
273
733
449
475
252
943
46
646
720
565
23
472
114
145
985
207
402
908
314
575
521
595
853
658
357
344
150
396
903
444
467
359
490
502
125
948
668
621
392
892
116
599
175
689
928
178
328
61
138
9
823
664
644
62
829
678
879
790
118
908
793
650
742
277
98
664
981
611
21
37
538
781
517
422
460
921
420
165
730
180
17
89
258
895
621
803
714
428
673
447
70
877
504
483
99
465
857
898
591
264
196
716
41
101
470
42
147
222
602
908
258
714
60
937
892
704
392
846
656
295
949
553
938
573
967
661
278
34
324
994
64
521
574
466
983
300
49
157
425
579
656
492
826
765
189
356
817
566
591
394
73
11
243
296
315
643
778
467
134
809
764
114
898
607
844
737
140
593
954
593
656
235
422
77
639
457
727
173
385
612
843
712
443
929
921
53
278
278
152
341
521
581
24
616
814
543
594
220
921
452
216
225
611
997
738
837
589
166
657
858
916
606
83
521
965
53
670
968
685
791
459
861
442
614
72
75
212
805
263
97
862
507
252
933
397
619
101
445
192
84
464
112
621
294
425
915
498
503
650
761
872
626
534
130
992
354
782
997
925
663
626
784
903
561
995
409
354
150
125
347
952
226
777
602
328
347
241
149
190
157
576
709
155
502
224
237
973
122
940
43
836
103
519
528
458
680
209
61
298
16
561
349
378
304
808
647
848
932
802
645
114
634
808
769
87
917
629
401
337
758
435
232
209
82
510
849
706
249
145
648
139
180
850
174
596
228
331
851
693
577
388
42
320
296
929
203
295
750
442
540
51
807
724
540
581
329
141
296
793
959
940
600
788
155
507
933
784
635
173
859
586
777
708
759
370
393
912
912
153
308
555
955
806
604
597
331
456
310
592
267
87
35
58
734
636
787
254
166
788
995
418
659
577
582
954
274
100
964
170
188
417
228
144
486
404
985
794
184
557
177
478
474
43
906
772
551
719
973
124
582
140
746
125
157
889
895
378
224
649
323
231
491
141
405
849
859
891
572
330
651
993
70
608
612
518
943
617
671
810
403
554
126
841
587
48
670
104
986
596
509
607
570
535
234
946
986
334
638
57
913
660
147
644
472
589
71
139
512
639
946
279
707
414
247
769
105
649
553
357
180
755
904
976
821
45
424
535
374
666
531
610
979
615
896
742
407
482
370
998
977
532
591
348
650
230
900
156
289
465
841
338
780
281
876
159
756
171
822
428
165
535
765
846
109
337
300
92
518
504
362
623
280
555
379
647
164
557
326
592
145
269
247
908
825
193
829
698
738
738
986
237
659
941
833
442
767
745
239
314
930
808
637
784
104
218
58
226
901
230
994
200
844
231
284
896
289
856
22
915
507
601
353
780
517
126
963
338
721
936
880
419
318
13
661
336
631
462
804
607
136
604
796
509
743
787
392
429
658
937
154
910
724
324
806
329
456
857
268
978
255
720
504
964
349
576
881
832
569
948
266
827
52
414
780
903
805
843
37
730
733
535
680
784
783
970
694
994
206
333
879
773
195
826
353
415
101
831
161
168
905
560
859
710
671
327
858
310
543
903
524
612
820
538
245
719
40
719
182
378
881
887
626
237
69
492
632
226
62
365
803
973
683
869
824
174
675
969
114
457
112
385
451
303
809
268
952
657
581
633
375
381
650
782
287
18
933
622
642
179
694
632
249
179
101
551
928
951
713
72
45
71
606
724
266
496
437
323
428
800
540
975
645
429
989
422
323
900
583
806
240
54
328
934
763
480
137
272
203
258
339
2
943
509
589
305
775
926
516
790
581
611
195
841
639
718
986
820
189
678
228
28
368
907
831
991
742
671
961
786
360
165
121
170
462
538
33
137
839
684
647
397
385
793
226
629
858
487
296
45
493
317
84
524
31
311
634
37
677
598
563
104
964
730
430
416
490
25
380
102
686
850
980
505
32
831
643
575
681
203
133
255
376
916
293
44
82
597
140
151
903
996
459
242
121
543
432
655
364
809
139
834
108
194
359
643
337
578
493
199
668
60
355
475
466
309
728
49
437
386
335
893
885
229
198
689
391
738
384
489
400
988
212
872
64
298
148
182
557
650
707
503
105
940
483
844
641
984
776
812
814
383
219
977
475
246
949
878
996
669
252
598
195
5
799
679
848
482
411
168
162
547
491
786
679
831
789
944
746
353
49
407
962
572
674
17
770
234
398
818
349
269
186
888
399
110
309
101
142
803
996
159
574
608
651
268
892
432
299
643
456
5
132
643
621
844
635
622
330
782
909
614
85
592
818
892
361
603
387
569
522
689
802
942
357
889
833
354
920
406
125
338
935
754
363
345
137
542
267
554
474
686
770
360
894
382
75
981
790
758
906
289
46
729
121
767
202
190
287
731
12
282
701
924
657
572
678
330
230
474
755
819
336
832
96
835
919
443
49
974
815
851
564
163
499
835
293
207
633
596
143
947
256
535
543
192
985
845
702
322
703
744
752
316
3
88
953
213
633
286
847
759
141
312
916
160
718
539
426
822
280
472
696
634
332
808
563
800
289
904
850
74
740
726
271
71
100
248
160
411
882
80
573
348
748
383
806
944
619
384
474
446
420
880
43
232
48
119
984
195
524
153
923
729
435
773
20
415
41
845
61
471
380
15
939
200
898
349
885
948
2
619
182
905
430
404
654
859
683
40
24
980
264
964
886
729
157
844
912
974
364
392
903
773
324
4
67
405
941
843
333
698
233
36
193
905
970
18
299
32
120
160
731
2
822
80
207
415
129
210
43
55
437
911
584
609
716
409
581
427
338
250
918
840
706
325
747
228
771
981
759
139
545
881
855
205
661
902
951
244
796
652
277
731
801
279
262
322
451
584
190
562
437
871
693
869
241
891
295
497
332
978
643
147
451
903
509
555
56
380
948
814
457
337
631
686
973
188
39
428
63
426
777
188
792
197
702
674
188
985
963
770
607
454
912
817
9
130
280
897
769
707
266
71
635
376
105
100
241
8
895
54
852
866
435
906
202
455
355
255
201
835
367
71
417
179
207
4
425
814
677
844
908
142
659
355
160
706
553
416
92
603
433
181
91
910
917
741
19
6
615
554
774
25
696
934
340
196
654
457
169
102
674
427
330
52
146
711
208
80
747
496
902
938
163
598
402
186
979
506
261
466
984
420
199
124
70
883
445
725
16
963
52
96
248
990
929
7
850
39
765
207
533
939
258
120
652
836
861
99
532
155
216
148
197
703
117
254
228
207
982
262
266
483
65
783
444
806
691
173
669
396
335
941
741
55
932
46
162
80
471
234
22
347
193
860
748
903
899
544
873
675
778
644
57
503
940
51
874
475
675
845
145
689
430
137
819
275
407
143
770
72
93
149
735
748
241
919
290
204
36
540
907
147
300
993
617
691
885
239
114
881
171
687
404
626
89
333
917
57
42
473
497
757
773
802
583
630
908
308
262
22
761
671
440
135
937
998
389
436
519
128
390
169
29
888
900
406
745
110
659
908
2
233
163
562
44
151
373
498
411
987
783
577
976
92
121
500
247
269
689
91
943
481
537
913
84
329
728
885
901
178
885
799
648
354
21
528
508
877
92
786
625
891
26
532
345
812
192
937
768
401
159
476
421
569
964
520
696
249
478
715
423
488
596
233
102
983
929
622
72
593
991
369
178
902
466
53
456
6
568
272
137
790
118
501
19
409
379
80
390
500
832
260
400
377
364
137
296
792
430
362
883
570
865
175
409
789
299
518
103
912
64
690
680
206
578
632
371
96
215
693
605
849
233
572
761
732
969
800
538
329
757
664
575
207
389
566
924
942
92
230
111
860
976
478
436
142
579
194
798
731
766
200
578
737
756
34
338
294
414
677
820
498
979
774
156
400
116
474
817
13
707
428
4
984
582
744
873
754
136
620
153
775
3
807
563
557
87
838
451
356
229
631
529
414
409
613
880
202
323
37
26
106
377
785
24
338
197
593
155
12
160
583
159
793
525
45
495
173
212
598
314
278
24
462
784
77
899
589
575
969
864
671
432
100
594
48
399
217
783
225
361
493
683
439
196
645
472
735
889
365
118
707
990
724
722
748
83
915
2
947
439
607
18
186
148
489
151
59
200
478
646
278
390
987
238
820
594
584
266
140
604
164
700
211
851
157
680
708
377
845
964
483
216
836
785
753
476
497
291
707
494
413
536
412
718
840
318
4
486
902
154
498
649
862
343
276
907
806
335
991
808
443
682
354
513
163
63
554
202
485
344
98
294
559
645
191
627
288
493
12
838
677
223
475
692
467
834
353
493
510
846
670
163
299
899
51
731
182
899
555
777
764
802
2
558
57
204
91
217
152
648
619
314
324
154
131
221
207
662
46
329
709
61
691
638
674
934
994
659
594
460
446
389
937
234
74
874
221
916
635
263
743
136
341
862
228
356
839
146
768
830
525
520
853
227
68
704
112
363
883
122
210
431
623
692
202
230
377
90
80
256
999
290
28
783
586
574
719
828
411
318
96
848
891
764
935
925
536
711
167
370
763
858
33
513
53
312
513
648
660
998
979
750
67
512
831
235
493
70
640
494
984
284
952
566
27
361
540
858
757
277
693
666
922
710
493
142
257
514
730
274
61
71
168
412
339
346
782
380
932
700
433
467
71
672
385
480
905
467
487
692
772
654
891
384
305
314
827
357
20
689
977
978
339
367
434
913
116
540
227
680
578
160
926
58
843
227
596
250
325
13
237
789
27
39
501
406
180
783
108
26
518
426
361
244
723
454
128
703
239
471
364
365
241
806
114
612
728
834
541
79
718
577
32
7
453
188
952
301
865
28
734
332
433
202
162
153
799
683
334
389
100
892
12
853
648
871
549
221
924
889
677
346
243
29
307
941
394
354
790
535
502
826
838
211
737
33
931
39
644
961
813
46
500
153
978
825
566
178
358
581
638
732
376
976
351
389
90
405
894
221
758
445
892
798
886
273
54
800
117
616
940
511
576
963
77
631
845
91
51
482
376
216
996
209
897
770
450
862
860
349
942
527
144
424
203
368
154
701
266
705
771
766
62
741
641
128
156
413
900
719
543
999
355
413
845
542
449
684
901
116
823
192
939
768
674
413
367
152
761
708
478
145
824
345
710
609
155
256
567
770
615
38
962
142
805
942
173
731
578
660
919
470
800
150
882
580
826
293
67
228
760
4
652
192
241
399
175
10
703
236
388
193
117
132
501
786
230
798
962
731
241
636
574
101
789
9
344
674
462
130
782
861
189
340
10
611
385
771
900
407
768
163
28
343
273
726
353
668
649
96
350
29
330
336
986
124
430
552
402
233
55
501
548
573
453
526
4
777
122
890
401
459
898
556
963
79
609
231
827
63
655
675
26
366
780
754
531
853
353
886
181
833
369
667
352
268
615
455
889
747
723
576
547
758
695
891
131
774
372
908
515
199
724
339
577
379
475
182
793
699
994
150
425
235
709
567
90
231
205
696
464
154
342
80
340
79
129
267
671
888
623
757
482
444
371
981
109
30
90
972
792
434
661
190
752
573
152
312
49
128
801
899
569
676
445
361
857
645
999
498
251
208
510
904
76
238
668
980
864
728
459
61
142
232
903
31
492
153
328
767
927
816
218
543
87
724
188
805
999
11
125
464
31
591
722
584
923
756
114
515
904
171
448
321
669
741
758
338
772
415
868
705
318
233
571
434
989
966
818
352
50
862
981
853
604
994
31
550
510
319
107
735
39
812
862
756
369
897
874
345
966
850
33
584
142
420
147
797
21
288
594
956
938
762
465
42
190
594
717
674
711
208
828
454
308
133
666
505
371
814
66
93
92
473
386
200
830
397
711
185
848
233
530
222
724
150
797
276
348
820
567
774
181
201
633
758
23
579
277
10
753
642
427
206
222
502
864
465
377
265
212
792
883
533
826
479
677
606
729
158
336
391
157
550
248
292
912
891
839
627
178
251
121
702
431
207
805
325
1
223
286
332
899
83
608
775
891
647
375
155
81
417
850
119
673
363
485
876
958
929
589
972
625
750
88
960
671
181
102
619
674
353
606
506
872
4
491
74
942
473
401
265
517
685
546
761
401
3
30
69
721
928
366
71
633
313
707
150
995
647
104
710
546
755
481
727
810
344
247
670
871
411
934
486
529
325
456
940
204
327
560
669
152
33
898
745
987
535
872
560
296
342
79
295
369
690
719
762
205
818
950
58
756
359
198
310
993
880
542
309
856
766
946
668
88
434
559
514
857
735
740
275
471
686
374
530
333
640
117
838
605
694
736
385
377
502
913
792
835
588
751
107
993
563
703
530
396
411
207
934
131
206
904
469
79
675
586
70
984
668
977
354
764
703
704
163
31
561
292
586
521
767
678
269
984
634
281
907
983
844
134
922
434
182
707
400
789
268
307
701
916
843
808
167
611
397
343
291
859
540
499
834
119
621
414
364
527
636
484
444
394
678
86
140
534
56
920
582
996
304
374
763
255
590
669
677
958
512
658
587
291
990
49
444
345
300
803
812
768
343
873
153
783
862
307
238
758
668
633
555
477
761
294
556
166
736
579
528
951
736
406
16
977
897
153
403
630
641
795
234
252
108
813
653
430
221
980
393
284
432
919
290
878
103
110
530
697
492
278
609
721
276
861
33
937
858
176
885
709
904
608
117
873
400
304
370
947
640
126
945
756
186
245
520
816
116
137
875
787
622
706
138
364
186
513
976
246
781
716
572
46
95
684
380
823
802
417
479
798
740
583
57
366
333
852
535
31
342
216
822
721
301
99
87
198
470
753
687
886
328
124
166
924
554
899
662
502
865
696
15
699
658
77
48
40
649
771
31
334
978
945
904
565
894
850
745
996
597
182
353
50
729
592
471
617
417
133
812
433
191
33
166
645
202
124
64
225
52
48
548
699
722
354
907
383
219
601
31
704
155
666
904
684
343
964
969
66
605
430
622
517
959
598
144
945
779
259
364
771
787
520
945
550
633
654
328
375
684
89
398
816
103
109
278
525
128
482
302
237
154
997
619
621
425
32
740
124
211
961
603
959
237
259
917
635
721
354
51
689
637
595
381
517
33
805
415
851
320
619
818
298
957
127
618
789
901
324
126
602
914
204
165
722
485
438
579
843
191
643
803
773
432
612
600
559
616
103
589
619
616
888
803
592
144
306
3
110
641
128
733
397
229
448
775
434
431
659
32
594
227
572
660
677
815
45
866
345
527
60
174
799
735
506
986
26
400
572
579
180
436
469
202
64
909
407
545
983
837
167
128
957
71
994
393
45
229
127
777
100
439
658
583
582
954
934
661
723
462
750
34
858
81
852
158
757
370
596
768
408
499
882
508
361
931
216
729
740
113
941
796
274
794
479
740
778
886
620
110
974
745
821
521
87
133
270
877
218
837
636
674
633
359
370
600
557
150
223
651
738
206
921
610
520
954
760
64
601
113
380
870
750
486
793
662
678
362
421
228
661
339
511
903
477
267
164
915
425
878
184
628
664
968
372
769
824
211
1
133
372
206
276
106
457
765
924
147
565
707
922
195
729
994
989
400
695
18
134
254
791
845
638
722
928
752
207
781
115
25
838
467
361
288
855
455
63
406
446
711
343
17
350
718
956
988
898
669
978
972
74
806
78
747
342
527
568
553
177
705
559
144
32
541
868
456
834
441
139
535
337
289
572
423
911
774
496
919
766
940
853
537
802
143
950
32
389
613
946
329
887
509
229
741
153
200
984
809
849
501
155
457
531
444
635
785
235
655
836
567
32
648
787
237
851
22
341
889
590
837
67
221
495
810
647
828
61
830
271
712
789
686
71
266
786
396
7
359
508
166
797
734
777
379
297
240
722
992
889
131
858
96
219
13
434
933
962
721
797
806
724
404
385
125
778
345
578
521
451
455
16
981
381
425
40
332
444
117
513
407
107
68
940
140
853
694
468
58
831
852
434
285
561
701
441
393
350
652
601
952
662
201
541
435
116
877
714
793
973
103
489
846
209
390
700
657
464
245
272
85
876
520
690
598
22
730
420
680
984
646
981
791
515
561
745
905
527
506
25
975
979
675
85
729
363
588
77
172
1
784
929
106
381
517
76
142
511
942
413
385
457
35
809
327
121
698
331
647
644
795
131
958
221
296
105
202
436
961
236
433
653
249
679
201
717
876
411
998
485
603
395
584
93
639
519
944
865
758
608
665
258
429
527
206
654
970
885
86
412
873
706
550
707
980
732
209
355
609
609
244
288
332
163
42
400
547
865
581
776
161
336
678
353
570
175
224
721
473
546
746
991
325
587
611
897
844
876
112
907
311
589
257
149
364
378
925
267
486
805
108
106
304
309
251
537
29
197
137
805
508
487
882
63
862
253
962
745
551
144
555
670
754
673
466
571
80
529
988
193
250
957
235
667
439
641
687
17
336
74
868
648
739
307
400
823
707
194
287
112
415
181
715
342
251
437
352
631
842
680
458
499
208
944
556
551
253
215
623
221
565
945
409
477
276
907
931
447
274
643
863
885
243
877
778
69
242
893
417
3
290
57
175
655
616
369
440
795
750
848
571
493
571
66
547
470
771
239
67
343
505
904
358
199
816
572
257
331
167
487
310
359
797
621
930
508
771
754
861
906
468
137
697
425
73
371
315
177
331
308
298
3
826
75
497
386
699
975
839
44
112
110
629
263
539
212
695
949
136
39
699
18
378
160
875
369
207
932
127
445
257
81
1
858
190
307
533
723
124
544
809
795
914
817
794
358
507
434
886
861
676
365
42
292
609
280
625
666
199
128
180
766
849
394
787
32
110
770
73
232
678
971
826
591
229
903
103
561
366
517
861
772
46
265
769
892
40
708
249
910
682
866
525
996
365
43
946
521
31
762
249
736
361
655
183
704
539
450
64
706
177
65
301
681
266
407
720
584
624
894
992
401
522
163
550
812
447
830
226
186
957
582
530
603
268
126
412
391
83
65
353
589
644
543
733
617
565
843
730
958
323
362
896
136
770
848
215
198
105
370
258
709
225
877
748
595
534
698
414
141
995
329
502
559
542
404
756
978
430
932
247
603
100
268
863
596
686
395
832
420
910
214
287
712
807
644
365
767
795
138
83
867
430
589
963
993
860
337
594
367
92
236
768
172
123
654
609
956
14
153
909
140
865
993
231
781
43
789
752
898
39
989
184
293
850
380
174
511
305
870
735
349
801
466
329
675
446
115
589
153
35
408
753
642
229
943
2
437
359
182
950
71
585
696
328
102
52
475
322
743
481
99
652
143
417
560
338
400
664
555
336
928
200
599
863
631
236
542
65
906
379
737
152
123
920
664
764
106
138
228
623
970
792
846
672
935
756
610
225
668
606
602
772
803
845
23
871
985
832
697
865
510
411
416
365
744
947
529
223
753
796
233
263
437
932
366
136
354
927
927
874
625
317
396
301
776
964
348
278
897
793
779
273
440
362
113
559
377
482
928
988
227
388
472
871
373
340
336
871
479
886
517
59
904
822
240
193
15
115
588
779
599
252
325
959
18
959
822
75
819
807
759
871
998
938
648
238
845
525
927
437
629
477
798
12
276
720
368
618
122
920
544
262
894
149
390
975
63
512
854
414
517
261
52
672
128
646
60
966
175
2
348
490
188
151
151
122
453
314
684
297
591
205
952
899
264
497
977
850
549
673
176
333
670
514
919
368
426
127
883
630
661
402
443
121
572
54
75
744
998
268
522
748
828
558
822
313
308
152
408
630
668
210
417
502
825
15
819
674
231
782
696
327
430
55
636
189
761
832
327
210
423
234
851
281
151
428
505
113
691
607
60
274
718
253
961
451
984
941
295
558
234
401
513
216
572
196
318
773
922
633
552
476
825
199
208
435
358
137
352
398
509
707
982
624
723
422
608
177
93
185
205
819
538
769
976
23
720
636
709
954
110
731
191
58
55
584
449
520
46
527
94
848
590
896
49
527
418
889
493
151
587
142
681
738
429
732
938
56
222
186
714
721
428
397
289
777
516
925
569
139
972
89
132
566
91
356
230
641
720
449
604
830
144
558
367
968
51
453
628
322
646
393
298
859
812
372
421
194
608
271
11
492
321
354
178
499
10
115
647
74
503
297
336
773
581
883
578
869
30
320
727
64
298
247
493
580
791
272
753
719
935
37
33
449
439
113
510
790
381
868
958
935
806
555
819
349
58
525
279
928
793
552
164
289
544
947
195
74
860
598
708
738
362
928
138
467
265
886
334
469
373
788
488
162
362
791
257
743
428
145
522
266
993
824
925
384
872
744
905
491
918
437
929
783
160
221
574
877
417
353
84
172
191
809
556
6
64
3
927
753
690
451
646
715
76
442
744
537
4
754
594
520
981
843
551
936
859
704
2
141
217
380
326
75
61
351
76
184
269
919
320
869
817
152
800
467
790
214
708
718
476
38
874
663
758
563
190
348
259
619
147
360
2
786
537
311
126
571
655
725
367
561
268
84
435
724
703
829
43
84
146
645
996
283
665
179
505
663
317
497
161
727
925
650
773
960
868
32
614
489
341
220
559
983
351
915
769
791
229
35
860
361
305
175
473
501
363
718
122
359
806
463
255
158
564
639
636
618
310
474
856
672
215
553
743
926
87
14
932
750
409
713
435
283
637
800
423
750
177
273
598
150
909
256
683
878
964
402
419
712
279
152
482
754
178
189
146
752
432
547
415
349
786
372
949
93
29
972
520
764
217
885
442
38
876
706
762
959
869
864
961
684
595
221
471
258
232
680
105
449
655
670
319
629
857
249
364
538
307
591
850
992
881
655
495
394
709
444
877
471
426
187
882
567
586
730
754
566
900
692
860
348
867
72
110
546
567
813
180
628
343
224
652
279
15
968
803
940
725
78
548
788
802
633
23
468
787
751
44
128
494
797
638
614
730
503
125
810
545
948
827
896
265
250
129
202
534
603
553
617
927
814
840
823
144
73
545
235
49
641
759
815
770
53
134
545
586
38
549
511
844
993
395
777
251
651
523
553
505
821
934
185
199
426
201
680
957
814
471
658
957
890
761
904
190
12
127
213
116
583
616
496
55
42
773
933
419
64
573
493
549
992
730
228
706
574
617
344
852
454
588
771
567
890
554
954
232
490
587
239
525
311
437
921
206
439
130
157
653
267
261
893
242
978
109
965
160
533
198
615
395
782
361
662
994
844
928
164
488
818
701
928
476
334
967
239
555
808
23
268
445
461
690
585
194
694
530
589
782
588
794
698
293
972
844
742
950
775
926
361
510
965
668
834
565
332
418
908
11
870
410
352
511
930
170
933
93
775
468
300
314
339
382
899
25
4
636
504
489
225
288
780
881
661
757
480
792
856
21
861
277
622
579
912
179
442
188
362
802
910
650
176
307
626
47
171
584
768
809
562
695
913
419
785
582
630
470
849
173
690
142
236
754
607
23
692
760
469
721
582
815
275
701
579
575
113
473
255
614
587
896
25
47
459
167
364
204
793
331
549
972
338
189
113
769
414
421
700
603
355
410
115
48
228
746
421
212
839
211
469
157
215
236
586
793
118
190
296
440
659
489
967
139
173
610
478
86
589
809
161
692
773
652
260
177
782
977
819
712
746
152
364
582
861
392
758
103
602
319
652
224
125
260
944
865
443
975
874
617
268
335
623
31
51
776
383
563
975
410
12
140
371
583
694
508
126
385
277
780
852
375
484
271
158
936
568
513
707
395
733
807
103
202
445
412
529
334
532
86
10
195
128
192
307
512
853
542
566
436
739
58
698
95
765
893
850
352
872
114
209
870
855
581
676
205
38
170
139
283
979
792
853
192
771
657
248
292
963
645
84
27
947
272
655
676
109
8
437
551
561
177
461
418
877
140
340
546
515
103
474
684
403
283
457
947
205
506
324
108
645
559
389
228
31
183
922
584
925
1
96
30
732
587
722
802
332
435
315
632
318
701
776
861
171
400
623
664
814
707
472
603
684
330
906
3
788
233
388
695
217
755
620
515
7
444
951
815
561
654
616
769
192
691
789
943
782
527
57
630
559
259
769
219
528
493
346
403
681
719
15
99
47
620
415
562
82
261
854
727
449
807
103
160
92
702
411
992
540
963
220
261
177
758
136
958
986
402
986
514
99
548
135
842
640
517
723
572
276
228
862
521
672
330
182
751
156
609
127
826
82
353
863
717
499
753
921
289
484
457
576
679
275
341
628
900
673
261
520
574
979
839
717
312
101
699
588
847
576
385
802
377
276
161
432
746
685
417
343
886
596
435
88
818
652
184
247
332
701
282
79
895
89
552
847
243
636
551
616
800
165
75
712
99
655
199
403
114
908
881
215
256
917
634
978
544
751
898
660
917
453
257
146
294
307
906
288
723
313
190
111
134
800
543
721
522
722
989
164
453
780
133
423
819
67
822
977
455
573
303
491
737
890
699
347
908
928
418
792
748
910
679
800
718
771
81
455
375
913
457
822
762
734
208
138
321
833
326
228
484
929
833
151
11
699
373
243
102
196
812
593
304
198
415
543
101
332
704
49
985
368
603
541
117
480
728
3
683
561
27
75
602
191
308
819
77
529
790
20
398
837
353
179
101
863
519
565
320
664
37
988
129
277
242
117
326
292
34
530
970
370
560
540
169
738
991
113
889
595
466
571
542
685
651
148
15
424
441
253
961
164
683
19
524
38
945
325
949
191
493
784
496
260
50
28
278
812
10
362
872
406
675
724
199
466
447
444
626
94
103
902
851
780
569
806
687
541
17
132
792
666
164
699
103
681
76
282
635
623
869
202
414
79
381
556
488
959
820
59
591
502
698
855
89
590
933
715
691
243
341
737
796
878
570
206
242
976
622
518
390
166
808
4
224
900
489
772
399
14
318
727
721
957
541
291
967
309
611
512
747
361
591
393
282
133
406
535
509
176
314
512
338
302
668
425
693
695
631
188
102
161
316
678
924
613
17
838
338
279
238
932
366
111
770
30
575
416
721
92
495
954
264
224
699
806
390
419
289
116
598
273
678
423
410
586
46
912
468
668
116
567
197
230
938
381
147
227
531
639
850
278
974
539
692
148
896
93
979
119
224
597
550
223
681
965
255
942
700
184
984
662
947
53
975
928
757
35
286
318
660
163
888
650
265
320
298
139
730
263
690
953
933
350
445
519
18
974
548
973
127
204
527
347
655
188
330
921
564
764
391
862
806
661
459
61
709
899
957
361
667
117
212
437
494
32
728
598
607
457
911
782
486
312
192
456
636
541
994
77
990
376
575
966
872
827
147
273
891
385
809
118
18
187
307
11
992
90
852
624
460
732
315
107
853
608
376
495
470
4
425
169
905
880
371
291
541
246
565
667
885
456
707
223
648
794
765
299
6
181
464
546
688
371
617
259
62
468
113
265
452
651
802
888
959
641
212
137
816
16
469
746
524
186
739
4
25
92
459
60
842
77
489
289
540
878
480
535
263
112
229
74
133
301
216
234
654
819
264
8
582
629
483
989
712
717
22
502
631
614
234
970
9
54
422
375
163
513
349
81
161
677
873
704
787
396
614
224
970
506
350
206
828
452
478
214
594
499
577
822
857
977
903
649
878
259
65
79
878
840
71
141
471
183
846
904
755
778
203
316
104
798
532
126
265
28
143
557
576
209
780
663
936
526
224
183
774
225
826
529
331
535
345
130
435
209
735
646
606
573
458
816
296
261
719
59
446
777
384
850
117
508
503
670
61
408
205
944
958
664
131
530
952
674
984
569
453
402
691
56
292
496
951
4
750
964
367
675
807
165
737
996
840
975
413
823
33
674
70
27
4
790
688
941
442
928
863
622
276
151
605
44
86
328
558
620
557
499
919
96
41
530
138
793
926
134
689
977
262
162
536
779
333
665
52
502
808
10
561
822
101
745
399
656
559
693
910
512
417
792
266
533
755
973
986
474
653
894
16
309
239
886
360
115
614
826
710
421
276
57
811
548
938
98
995
296
131
481
234
233
223
177
560
469
895
4
25
360
678
578
848
914
993
253
584
215
385
285
43
732
983
490
236
360
981
718
595
657
977
690
343
172
661
782
86
62
326
890
219
611
802
351
742
698
209
897
554
686
514
781
910
846
439
501
250
733
941
201
488
178
409
367
382
988
235
677
253
211
167
522
888
494
66
432
930
632
747
538
152
84
164
908
144
197
780
496
733
160
533
353
121
126
403
42
203
436
969
754
463
531
644
343
519
991
892
416
781
8
571
617
985
403
50
405
14
500
223
185
208
738
944
94
678
814
402
763
92
25
229
494
663
993
75
620
440
820
390
153
305
364
715
725
589
915
367
717
76
998
28
703
214
784
547
724
587
551
665
705
589
130
325
756
778
77
954
992
329
429
964
193
110
70
880
843
24
219
505
763
447
685
687
94
996
526
281
878
447
350
34
889
156
685
564
176
40
959
947
512
961
375
389
647
34
835
593
144
904
703
701
368
46
901
258
903
442
231
760
252
796
76
545
978
396
76
37
425
506
704
804
64
271
993
802
73
296
41
61
161
933
138
974
744
649
665
843
254
427
660
733
809
200
696
715
885
829
411
252
957
798
168
637
200
899
637
97
53
100
185
608
402
171
599
318
659
102
801
329
730
233
782
997
846
970
995
864
575
278
916
244
885
788
103
362
766
500
774
844
12
568
790
154
243
53
332
638
600
378
57
784
28
82
521
725
17
170
791
230
904
772
522
775
184
941
722
613
68
237
552
159
327
957
317
163
442
628
755
793
639
357
264
198
222
133
216
803
268
378
346
596
709
545
940
239
47
16
970
301
330
718
571
364
826
897
458
71
764
359
283
388
415
997
590
547
509
324
554
52
725
918
346
689
890
955
450
782
17
79
117
427
658
454
463
920
785
900
372
324
675
146
39
909
96
958
182
711
954
393
730
722
461
919
575
412
373
881
473
870
447
675
55
686
242
855
730
960
535
670
761
608
952
230
377
580
879
437
594
931
774
739
827
623
348
394
965
738
879
52
547
904
427
501
876
999
92
353
667
241
229
222
177
284
632
123
770
232
543
995
532
936
288
541
97
708
848
431
339
848
889
991
82
483
123
857
181
451
353
377
489
527
769
353
703
552
563
543
991
226
624
734
195
883
520
611
617
885
405
169
151
660
15
818
351
237
141
693
161
774
941
319
878
166
507
5
167
934
838
544
145
305
440
113
225
155
797
198
963
512
241
296
47
185
227
828
513
951
2
466
412
870
382
217
285
305
856
29
377
515
445
682
48
861
24
846
221
901
594
197
440
942
730
649
534
646
273
693
939
678
492
216
933
373
132
275
922
223
828
919
299
768
821
448
68
559
248
185
161
380
608
611
357
805
26
470
140
733
683
639
32
163
90
698
23
229
749
674
729
749
924
997
73
674
897
672
122
282
582
974
398
88
533
560
71
880
858
128
347
662
135
190
540
190
887
137
679
123
426
838
810
574
456
412
455
610
538
682
908
354
349
858
151
708
241
944
629
529
627
142
371
621
328
68
614
735
458
883
786
760
992
998
856
743
165
824
632
121
105
461
343
176
220
992
313
277
39
831
948
943
507
150
496
284
468
189
246
388
798
720
152
655
895
148
361
350
3
407
543
417
313
509
424
167
799
195
402
335
754
337
697
627
934
843
254
842
503
572
276
976
578
244
323
384
309
688
280
73
631
963
275
631
288
531
631
998
725
329
485
273
787
911
633
461
24
525
720
53
893
519
847
430
131
567
839
69
186
40
857
112
915
330
703
791
62
66
339
403
213
255
117
174
88
4
190
667
610
862
361
783
967
228
179
113
117
845
500
721
692
563
813
686
472
373
358
457
208
842
399
957
187
317
840
638
402
673
342
128
377
173
458
324
679
74
144
688
151
590
674
217
566
617
711
649
442
431
702
714
646
732
459
768
463
404
597
650
387
540
711
443
503
373
345
520
105
489
7
398
230
669
307
618
168
183
391
569
606
191
197
970
971
628
481
645
714
690
861
276
477
493
301
611
879
232
714
194
273
192
545
952
425
305
485
976
426
841
600
280
13
29
45
196
344
740
471
874
891
699
805
415
628
731
920
736
369
695
738
936
468
197
296
415
646
244
546
667
143
504
219
873
90
581
263
448
449
105
268
139
760
839
303
573
386
131
324
693
384
749
608
730
103
664
812
815
732
629
550
100
195
804
732
388
481
932
325
48
468
473
287
264
428
600
176
629
894
722
30
516
919
852
284
394
895
489
771
426
769
448
716
819
554
168
944
956
108
915
93
453
805
277
225
911
463
344
302
502
488
183
920
10
600
35
181
342
520
338
492
991
162
898
279
21
756
467
709
261
656
219
521
979
630
577
710
643
627
373
931
552
187
269
937
586
527
706
220
520
987
602
436
769
423
101
291
906
997
205
155
995
635
42
846
269
661
940
380
24
324
537
714
148
407
940
805
893
961
693
494
51
248
190
274
54
783
752
556
529
286
804
645
423
219
935
916
145
423
668
924
586
327
196
196
450
888
289
363
483
296
398
945
305
710
104
748
445
768
792
486
909
384
850
737
520
892
291
928
471
24
660
470
293
768
907
724
52
994
824
166
494
389
74
234
888
858
340
712
115
188
472
377
631
183
16
202
476
458
675
557
597
360
891
460
635
927
653
537
803
380
696
451
944
626
992
520
311
617
849
662
552
579
814
284
551
284
839
111
753
706
248
594
319
267
569
134
498
613
598
960
206
803
909
735
492
22
433
5
190
495
890
859
608
14
6
19
546
607
908
352
89
543
784
98
132
103
132
678
58
858
23
698
19
889
457
748
669
79
792
530
850
835
920
258
815
389
985
306
261
551
588
890
704
247
872
663
20
812
603
389
889
754
947
332
473
193
840
719
557
257
349
468
815
379
501
253
623
526
282
742
118
826
417
506
271
132
993
771
18
794
729
857
475
403
641
97
888
588
785
622
548
266
749
5
202
121
76
326
746
619
40
494
530
860
272
63
338
441
62
341
200
70
701
763
528
492
992
413
737
405
365
35
740
660
195
851
78
413
305
151
57
668
26
399
754
235
327
614
131
578
758
447
527
444
423
479
565
985
476
710
128
662
588
341
254
6
754
870
666
421
985
925
137
910
285
532
44
303
10
293
165
378
282
160
646
918
508
296
237
715
287
92
936
594
23
394
80
685
145
748
481
457
948
709
592
833
311
616
160
891
436
262
976
184
546
750
380
429
694
336
498
458
633
950
135
894
988
542
888
890
452
359
158
261
811
708
430
572
567
813
607
891
136
345
280
25
115
753
49
273
14
651
990
809
251
23
823
997
575
698
845
768
728
269
440
78
104
716
372
838
321
807
861
881
728
606
323
289
671
110
779
236
494
615
877
801
368
348
10
788
884
432
997
869
968
838
163
867
905
203
920
398
381
211
952
206
789
110
82
645
700
535
327
465
919
609
275
113
392
638
709
755
707
584
953
888
810
992
912
889
443
455
383
469
190
381
854
284
663
671
12
259
267
365
88
350
106
532
950
359
564
51
475
267
493
165
691
797
257
64
396
797
197
192
202
246
153
857
276
538
755
990
450
721
627
450
489
343
496
603
782
278
43
554
326
393
980
116
975
25
690
58
27
599
275
214
63
76
163
842
198
248
257
412
604
573
601
754
640
44
676
348
301
654
282
118
755
643
865
808
265
37
882
251
847
697
964
850
446
413
388
414
180
654
405
534
22
630
949
752
792
227
475
932
349
343
756
373
318
157
459
420
210
354
577
161
366
6
565
906
609
750
308
227
655
262
168
647
249
748
97
125
693
113
17
39
561
950
902
505
940
591
533
289
953
968
205
826
77
245
169
16
65
43
144
42
918
249
277
87
175
110
124
570
61
335
727
97
337
538
599
415
103
61
965
18
218
19
273
687
58
342
570
5
579
82
60
650
969
975
120
313
674
816
330
831
468
963
229
619
242
109
489
538
645
753
912
4
78
126
823
900
975
589
29
832
539
120
990
978
275
77
127
362
419
287
741
287
730
135
550
255
789
654
446
949
853
32
360
826
169
56
573
843
152
220
338
85
787
498
292
348
972
250
345
165
981
127
120
358
12
626
273
942
576
568
111
321
144
80
979
507
760
165
809
219
504
283
210
199
948
657
499
233
842
202
282
539
310
282
967
726
912
2
814
543
782
630
268
584
109
17
940
708
518
785
588
808
441
126
660
698
917
921
409
355
127
41
101
375
286
571
12
861
112
253
595
759
350
267
436
874
16
626
90
932
716
791
715
58
613
474
99
184
621
270
809
991
592
459
417
742
530
892
298
538
5
79
596
266
190
829
458
174
690
786
682
291
831
477
639
336
325
44
761
812
472
828
241
842
443
604
167
891
850
693
344
123
329
552
927
637
195
449
867
784
16
924
493
834
587
518
160
115
820
81
417
487
132
485
66
176
838
754
822
586
662
567
324
996
443
560
962
279
549
2
142
876
176
976
797
548
335
406
255
924
444
53
71
769
276
857
991
844
487
752
799
440
627
281
122
448
600
497
392
28
556
880
566
819
939
541
311
155
687
518
841
432
500
897
142
610
497
555
720
585
568
118
792
797
203
701
249
895
855
349
947
838
14
228
368
563
487
252
830
734
546
836
157
969
911
367
940
729
139
512
951
46
776
807
459
439
89
768
616
238
292
416
300
339
571
3
418
272
529
578
124
245
725
986
39
732
961
823
886
836
761
520
756
343
398
901
63
207
769
929
475
718
635
592
443
131
536
818
398
908
948
668
200
560
388
706
321
790
768
726
477
265
881
780
476
772
659
956
940
669
939
212
503
599
104
405
610
133
543
908
196
144
425
978
887
94
320
196
954
691
580
273
439
43
453
210
836
855
116
670
471
580
877
729
968
737
165
601
457
983
97
188
247
860
531
334
840
903
892
383
453
464
2
250
89
667
772
461
147
893
568
754
17
873
437
616
266
696
10
151
928
719
739
971
595
393
27
579
512
120
370
933
962
733
218
8
578
628
640
302
964
703
455
563
415
342
171
373
423
914
68
145
894
741
454
734
724
31
654
696
641
194
949
27
524
635
791
284
655
429
39
638
56
708
187
226
264
176
557
253
222
653
156
597
53
225
39
222
279
484
283
548
973
944
660
770
754
428
40
779
550
886
717
993
876
429
89
187
555
229
470
549
473
401
475
988
39
353
974
299
596
570
6
172
147
490
664
112
48
416
471
836
136
777
703
335
935
162
720
623
137
852
666
51
15
734
75
572
470
672
732
402
454
741
183
979
881
546
847
386
764
977
139
140
757
634
413
695
698
140
53
877
632
351
163
744
904
955
158
413
416
93
642
376
684
70
383
395
595
723
453
390
314
334
858
159
713
527
293
381
321
380
873
330
619
855
769
103
578
439
76
926
388
435
970
672
335
763
456
688
251
19
101
975
686
663
563
299
492
4
31
377
662
777
93
37
219
312
756
828
300
280
816
157
647
526
2
879
363
187
823
950
72
604
130
303
279
898
643
956
292
471
610
575
408
698
264
611
343
934
454
23
8
627
389
971
202
944
328
160
661
684
935
306
180
80
306
59
648
789
757
320
669
799
537
829
669
242
748
949
262
391
537
429
732
801
943
445
216
159
101
335
571
483
295
608
536
305
395
328
393
206
962
553
178
134
354
208
90
559
302
960
196
379
898
271
147
507
573
379
137
861
843
490
689
422
749
186
505
929
294
365
846
420
556
57
428
984
251
599
447
736
355
656
856
141
139
193
585
25
461
29
732
17
192
532
363
473
863
756
385
169
703
161
266
936
114
776
822
841
843
163
256
974
932
400
506
187
633
548
283
556
600
481
468
265
633
830
228
25
694
954
121
495
214
279
34
194
390
920
27
363
370
744
182
298
773
757
84
791
26
176
840
315
473
828
568
222
693
2
304
283
548
798
148
888
43
761
760
654
367
313
796
713
522
920
187
856
299
170
491
875
746
436
998
518
115
805
22
385
710
811
501
389
617
744
814
572
596
293
256
12
996
430
425
713
379
128
793
553
642
711
923
523
510
428
537
112
799
630
773
237
739
376
943
556
811
408
96
778
106
614
260
6
914
479
878
317
12
285
139
987
12
469
742
998
888
978
878
190
208
702
772
966
520
19
273
621
487
868
902
971
32
16
447
29
451
917
608
32
549
220
101
514
491
785
226
270
634
944
667
833
530
906
571
403
841
294
486
896
207
258
830
143
383
168
956
995
22
714
547
971
370
847
640
987
602
259
475
734
793
3
987
542
201
69
441
125
445
45
187
158
431
712
824
291
390
957
132
324
829
230
248
919
397
696
463
683
267
583
800
583
819
751
103
204
271
288
942
314
726
832
551
977
527
390
540
657
23
350
597
645
127
151
905
564
755
68
145
505
605
757
858
862
244
604
338
680
609
621
20
102
16
817
597
997
678
271
393
7
157
806
661
916
985
156
456
668
846
539
449
204
144
437
709
969
973
689
734
922
52
860
48
401
330
496
630
310
553
908
885
485
674
138
348
799
97
941
876
88
149
670
834
71
173
816
958
578
109
628
24
989
536
470
954
296
758
260
587
490
525
146
116
937
654
964
530
6
90
909
872
33
813
646
774
382
27
977
229
513
537
53
202
924
884
895
948
204
183
53
42
837
354
386
563
3
554
896
416
209
287
952
488
199
756
991
177
889
696
572
270
780
31
75
952
473
944
191
54
758
16
326
822
38
868
36
678
427
84
772
828
131
561
21
227
585
564
4
169
893
718
59
508
610
782
261
806
280
433
91
59
364
843
658
193
960
131
451
331
720
314
750
806
924
744
140
219
10
847
368
908
941
22
161
40
957
818
212
255
607
230
398
993
993
714
464
287
903
828
266
455
113
672
449
580
968
253
584
865
643
43
796
432
66
182
118
342
683
618
236
143
918
197
723
491
915
756
813
210
281
852
316
182
582
913
795
269
573
581
72
704
234
346
612
565
433
966
928
811
596
122
604
286
592
123
536
916
948
958
664
213
439
374
585
790
726
615
850
152
387
848
769
103
547
531
908
572
585
159
58
948
827
3
614
159
248
31
589
460
377
879
320
615
916
858
266
860
761
821
838
818
117
776
424
748
353
502
738
62
214
964
332
790
900
715
385
437
760
427
543
696
26
391
775
507
529
155
186
688
266
49
811
763
320
239
832
51
578
866
806
745
292
528
246
413
548
530
714
201
474
829
101
334
279
143
793
726
2
917
219
198
316
51
796
166
154
568
470
662
883
334
858
894
621
797
405
498
145
362
959
999
441
985
214
436
947
477
485
178
446
107
50
661
647
608
429
241
731
80
259
980
60
53
317
141
970
207
713
481
737
296
581
639
957
220
757
331
837
360
218
676
83
292
216
776
285
198
247
13
368
164
766
65
104
979
939
389
668
74
466
741
763
4
440
151
526
410
703
428
850
99
404
372
862
582
897
767
836
541
855
772
959
701
113
574
529
516
536
978
280
369
662
763
894
477
913
79
852
66
251
875
495
819
162
269
760
395
203
521
82
173
552
128
218
693
781
63
891
866
621
10
873
724
148
482
437
640
477
385
669
818
915
771
291
980
278
141
539
844
814
134
314
16
896
108
816
534
545
201
695
850
188
985
444
241
2
770
671
680
832
120
917
817
851
264
257
781
837
237
416
640
523
48
53
488
696
857
828
41
665
902
96
277
689
818
630
929
327
50
979
507
470
859
12
694
217
496
165
633
851
36
697
308
784
56
327
141
933
956
545
145
941
630
15
929
25
640
128
33
633
327
454
787
258
908
171
664
36
358
272
200
693
196
190
630
206
787
492
634
491
490
996
371
504
835
566
839
845
83
670
576
368
133
999
524
581
910
51
876
884
663
106
576
685
346
452
746
441
384
724
237
149
494
541
144
331
84
284
423
343
332
818
952
687
695
831
560
196
665
50
296
737
616
749
828
384
420
686
159
383
819
398
461
359
433
428
874
591
856
193
497
627
627
533
553
844
153
888
989
514
891
551
775
334
428
500
532
744
713
759
910
398
125
40
524
933
357
594
254
268
957
969
339
472
553
669
110
84
197
983
231
531
697
645
492
269
622
128
930
933
895
130
878
98
283
100
502
587
10
620
487
559
635
721
556
921
212
303
781
759
390
449
548
729
528
380
700
480
547
255
311
230
663
321
373
828
92
242
190
453
167
523
74
576
496
672
896
976
89
571
57
320
346
171
543
447
582
149
570
903
399
22
40
754
309
257
896
315
349
728
830
970
114
329
593
867
375
971
233
856
483
724
391
976
198
991
884
492
778
925
247
942
671
287
54
145
483
319
267
239
775
582
627
361
740
87
206
18
578
675
73
610
915
714
420
675
630
63
557
318
373
404
537
423
482
888
299
826
275
448
385
56
705
993
81
901
97
31
237
111
785
867
913
103
852
636
27
957
867
379
514
420
762
948
866
371
46
204
878
851
788
380
742
131
290
17
904
922
633
518
578
600
826
446
533
506
490
434
571
845
861
341
959
896
933
965
293
756
128
709
856
892
153
385
323
406
125
783
813
836
731
105
324
349
800
914
594
317
416
360
881
611
633
34
990
447
420
845
198
325
723
149
794
924
661
685
448
441
123
127
381
707
620
734
114
757
18
610
96
19
372
976
340
767
828
245
259
120
395
876
985
280
586
489
113
583
310
400
687
116
467
153
195
289
979
174
991
899
919
233
430
809
750
179
952
747
809
27
96
416
426
328
47
247
142
102
121
132
622
531
447
617
922
980
551
219
782
51
788
654
254
360
200
163
446
176
529
408
536
365
773
283
304
271
689
139
107
947
148
877
54
859
277
388
785
812
887
769
627
734
965
758
239
442
163
67
129
884
800
965
572
713
596
257
757
164
313
651
292
413
113
834
903
910
601
395
83
812
377
633
289
760
780
801
400
16
45
862
109
623
11
223
147
182
305
340
263
21
631
621
500
236
478
215
621
131
855
328
840
767
983
317
507
168
677
812
933
794
856
742
120
451
543
669
402
890
687
721
606
262
132
63
181
756
134
54
282
565
181
269
160
717
22
342
639
694
715
979
505
493
407
469
164
888
502
49
692
809
813
731
444
135
722
579
635
920
136
751
34
623
530
368
614
587
582
402
429
201
30
707
175
707
216
113
854
663
898
293
254
85
361
473
752
449
825
26
995
443
706
719
559
964
946
882
962
39
854
577
307
100
620
491
780
106
557
736
919
609
724
972
23
843
497
948
262
58
615
165
761
556
407
986
495
310
149
210
761
333
150
815
808
322
985
155
465
869
693
647
892
90
107
386
718
734
696
716
468
997
620
905
424
690
815
750
693
634
996
470
957
348
974
586
459
908
164
701
857
343
484
393
364
968
273
672
450
21
268
761
614
433
742
764
713
244
392
119
506
235
461
830
873
224
690
545
115
521
926
809
570
995
858
126
513
228
542
455
417
143
301
672
366
236
856
524
605
211
872
216
517
46
195
622
881
654
520
141
279
728
557
929
94
458
192
618
574
616
252
486
702
936
701
363
934
789
464
637
368
166
939
904
648
711
293
524
801
236
245
859
708
401
177
689
586
372
578
907
45
238
950
988
958
387
513
580
344
831
688
92
190
882
773
114
789
652
281
383
166
667
817
338
372
393
778
302
760
13
777
562
211
556
593
130
215
950
946
261
199
712
181
970
548
153
669
825
628
64
899
933
91
196
742
378
421
613
617
566
609
212
819
331
54
126
881
633
289
643
898
839
706
21
184
453
486
847
790
220
723
952
674
697
114
843
472
15
814
216
709
602
334
380
652
986
893
849
916
422
271
36
537
984
165
61
228
71
12
289
891
574
823
397
842
657
538
122
218
211
654
866
819
73
934
297
505
327
369
197
560
637
931
368
949
688
415
690
533
53
616
401
3
526
325
136
779
936
537
994
449
771
631
705
768
404
216
465
50
868
555
901
702
814
729
255
643
455
448
155
242
848
589
166
594
253
864
294
747
799
517
569
789
374
748
788
6
226
600
545
472
950
640
664
498
715
699
188
796
71
493
324
489
383
752
601
183
466
112
515
540
922
717
251
351
986
112
328
67
940
249
418
855
903
682
292
208
924
668
878
553
676
497
677
307
193
80
406
621
147
606
539
114
85
5
549
233
389
314
511
603
371
122
856
822
76
469
586
700
461
394
258
798
233
962
864
425
41
944
159
906
706
707
920
334
709
304
771
898
133
59
818
611
157
276
182
554
640
855
232
724
494
705
161
752
348
741
881
123
141
124
193
445
156
604
897
664
201
522
113
771
698
688
567
402
575
647
641
957
780
310
785
186
713
434
413
1
546
168
985
967
423
649
758
9
866
374
456
552
378
518
354
119
742
460
26
806
138
758
178
701
100
923
342
830
339
8
732
721
192
896
118
33
537
145
349
50
929
559
536
201
192
90
579
262
956
667
443
253
409
607
862
788
990
285
868
499
307
927
669
858
642
734
360
481
400
321
581
598
112
976
876
579
223
976
510
11
344
80
874
672
564
479
313
585
35
330
43
253
277
849
742
3
889
677
559
457
729
98
861
636
86
845
142
432
730
284
566
14
774
857
155
227
54
997
294
164
422
775
447
71
278
329
321
263
234
874
690
545
418
53
282
246
219
238
587
719
337
880
854
751
764
30
478
419
694
516
948
891
383
396
36
953
651
791
358
756
524
879
199
856
593
21
596
722
576
908
9
815
410
575
826
541
920
696
307
248
851
902
568
717
925
798
162
22
18
328
595
428
880
831
196
458
682
998
158
743
434
755
842
785
508
133
482
808
570
494
34
954
484
111
904
621
311
481
930
794
859
574
705
249
314
581
935
579
379
369
858
922
538
564
814
96
60
783
210
793
317
353
452
523
295
641
943
769
926
574
147
202
68
364
884
859
51
594
472
927
197
903
430
201
636
111
416
920
296
809
562
528
271
138
478
506
123
183
954
672
637
166
652
805
223
657
855
175
680
954
46
466
312
283
596
414
923
251
886
185
225
24
474
118
12
618
930
929
885
378
737
868
640
799
291
32
251
624
978
978
255
241
241
342
763
97
217
988
542
65
582
871
296
770
448
613
692
535
793
604
726
926
289
302
218
178
826
512
992
564
163
299
273
907
929
983
783
132
354
915
402
942
388
821
795
865
572
869
352
677
339
715
831
374
253
329
951
938
124
586
271
704
996
977
901
284
599
388
840
464
830
560
182
877
203
784
538
468
506
353
605
956
161
315
226
448
468
898
655
601
33
844
9
767
645
697
945
410
920
512
266
185
30
888
847
778
534
953
172
468
790
484
433
771
981
314
544
682
751
454
816
701
732
240
432
985
552
414
233
505
839
129
547
993
87
421
927
273
468
448
913
514
726
187
810
548
412
237
786
331
154
264
658
467
696
565
452
789
457
861
226
121
721
667
629
662
937
439
685
560
387
272
214
304
540
303
974
546
430
883
574
316
627
901
352
575
470
80
298
521
968
138
816
607
222
793
792
60
558
149
610
972
552
227
943
882
50
354
927
394
590
906
360
573
288
910
493
820
315
54
192
857
142
164
591
250
456
607
83
746
510
915
987
281
274
602
763
401
957
470
526
116
153
904
931
63
778
243
319
311
301
972
744
504
956
753
830
389
635
694
427
443
272
181
883
674
918
79
300
685
147
93
862
845
528
76
704
238
233
529
471
213
288
771
446
538
172
484
325
520
772
375
766
264
43
83
844
972
21
257
145
700
943
634
164
208
110
898
975
880
49
592
156
106
224
214
156
500
735
345
503
434
753
779
913
772
327
599
802
446
232
732
217
975
385
771
269
653
608
238
429
273
508
444
472
180
219
660
40
829
927
345
237
675
753
710
946
165
720
392
881
510
96
530
649
317
376
181
721
452
945
502
891
497
916
230
925
310
308
734
553
666
559
973
519
886
495
541
222
674
824
105
932
216
357
918
178
978
795
155
803
39
938
588
883
425
453
740
759
524
784
637
857
986
838
215
951
122
11
762
821
834
958
47
628
841
569
675
141
997
52
947
514
153
930
515
728
971
90
94
434
755
782
698
890
188
247
946
378
142
967
56
967
33
334
969
81
891
960
43
856
777
599
761
472
837
123
705
57
324
487
980
32
917
329
67
53
260
157
440
594
622
298
999
31
996
979
482
818
960
434
836
12
48
238
656
156
21
226
53
65
542
890
54
655
987
25
51
703
268
917
820
735
520
449
234
479
600
730
476
858
641
886
96
889
650
968
984
679
673
911
32
35
104
376
53
732
244
345
44
972
928
778
551
44
613
102
491
598
5
177
555
291
750
195
424
655
795
164
5
19
40
372
31
356
886
786
632
144
397
501
236
256
686
504
929
862
336
52
277
549
477
386
675
496
356
741
284
908
952
397
937
81
340
26
932
557
748
195
158
827
470
347
202
503
941
300
604
247
266
561
320
743
887
455
541
653
696
534
1
145
503
723
192
999
564
156
915
661
571
372
114
141
894
449
80
130
184
172
555
57
138
38
643
391
77
194
193
884
485
279
860
215
195
13
325
746
156
203
938
786
384
942
675
893
448
180
848
438
376
411
469
525
978
944
8
465
80
801
922
371
962
32
177
293
512
899
946
882
125
333
974
981
233
769
672
195
363
750
942
897
345
754
509
74
809
336
236
250
5
859
667
354
280
568
823
353
766
383
381
549
234
966
314
43
436
487
292
210
272
813
102
330
858
26
26
209
522
103
483
176
663
696
878
265
666
621
702
665
945
320
428
980
369
394
664
379
441
466
637
322
45
26
978
191
757
337
495
254
543
615
830
664
899
206
885
537
88
49
377
815
785
627
265
951
386
122
960
465
361
646
768
57
465
161
132
637
718
687
507
329
126
448
122
331
490
763
81
164
508
128
291
392
90
822
537
417
761
27
805
636
377
31
893
896
847
774
199
739
74
248
819
401
541
48
690
337
505
934
462
622
41
797
956
234
355
376
966
643
623
714
876
691
882
871
952
95
555
225
484
715
564
342
90
261
308
890
851
42
132
201
912
826
564
183
595
580
75
659
542
471
807
556
116
360
371
128
518
670
96
596
781
281
451
746
58
698
707
696
925
464
525
925
512
423
802
51
128
700
276
373
20
896
683
13
908
9
227
730
889
181
373
181
946
536
419
632
376
817
125
896
872
379
733
78
945
882
45
692
557
321
999
817
394
723
576
885
597
438
838
50
472
977
806
745
92
344
979
975
4
171
674
310
575
379
500
641
163
606
67
27
964
534
174
568
181
555
787
224
959
534
35
938
979
76
425
895
572
988
985
602
902
69
689
386
646
690
243
15
223
935
722
990
371
812
86
937
804
238
564
537
556
755
17
469
137
736
331
500
954
605
69
175
620
465
124
895
845
787
922
491
313
773
2
24
812
44
567
167
989
487
91
334
425
449
46
148
52
220
250
909
360
742
60
617
866
547
371
906
689
190
93
17
316
74
224
783
754
992
657
93
170
164
510
467
514
734
750
172
419
976
843
626
537
13
131
571
713
384
158
265
673
660
478
800
395
75
18
352
226
262
393
60
563
158
740
196
232
592
103
132
797
200
487
713
346
466
480
304
942
653
71
371
835
392
420
509
686
710
73
440
717
399
946
158
584
784
63
380
272
935
339
121
282
26
468
474
173
765
454
928
594
714
410
572
192
22
224
171
738
231
510
522
520
662
415
399
254
330
129
561
403
101
32
7
314
949
90
810
923
945
336
921
256
144
846
3
989
374
965
562
561
892
642
42
426
817
600
619
610
70
221
843
636
892
525
494
682
403
258
242
932
413
248
792
894
589
266
377
816
412
410
879
364
567
1
511
458
990
581
497
349
470
201
854
725
493
285
363
618
352
321
586
116
724
629
148
644
849
147
837
551
224
802
198
660
341
479
69
892
15
36
692
821
761
892
462
213
393
67
401
304
903
758
465
92
823
764
640
937
853
866
609
843
744
945
125
668
3
194
385
15
217
471
604
316
628
765
354
831
168
934
252
783
746
533
648
466
338
106
837
577
838
132
39
148
427
849
77
816
768
794
210
199
682
387
87
432
155
149
463
58
410
809
770
919
615
825
98
211
297
659
330
897
357
807
176
86
432
457
889
779
688
537
63
374
724
53
102
359
446
217
312
190
642
779
167
29
361
120
532
601
752
866
520
109
464
313
842
874
211
2
999
697
259
684
370
872
746
397
195
563
724
738
764
81
348
141
255
578
641
148
724
313
925
288
28
822
18
954
909
412
211
227
148
444
217
614
930
958
410
294
282
964
925
968
877
14
102
440
760
323
58
264
234
64
278
687
771
971
656
548
855
792
487
783
353
497
590
320
864
734
211
297
169
347
865
759
388
957
411
15
720
578
195
587
354
946
993
85
167
529
842
958
302
861
439
490
478
142
615
380
423
781
575
27
113
761
96
887
199
519
299
814
561
642
828
278
597
899
429
407
504
506
154
335
891
252
994
307
907
375
281
246
342
31
591
938
3
168
474
593
850
107
885
647
230
28
398
660
34
162
892
578
713
208
876
917
628
241
135
861
766
788
979
823
239
54
472
530
52
889
275
430
426
835
556
397
620
507
105
863
853
335
274
746
482
702
533
135
155
674
310
761
33
613
826
62
127
62
409
177
556
867
609
144
886
463
153
877
651
479
297
122
137
272
8
432
515
233
341
536
521
338
376
377
579
514
397
812
10
495
271
559
98
927
308
986
726
130
860
20
549
655
483
675
378
189
625
761
606
395
547
894
721
872
656
218
491
232
564
372
67
341
868
157
209
738
24
209
964
21
706
386
373
322
986
865
855
701
999
391
888
636
207
614
948
377
837
225
272
90
495
494
565
488
953
209
787
326
467
640
165
416
797
585
689
161
521
399
886
790
363
790
233
174
483
430
134
255
209
832
900
799
937
874
526
212
820
884
369
777
79
529
235
359
226
473
839
621
924
787
855
439
339
481
726
705
262
391
5
523
75
533
118
634
740
366
479
922
60
478
341
637
31
109
712
834
555
873
948
11
591
512
330
422
977
462
460
456
148
820
950
430
879
845
703
545
412
600
619
859
993
916
562
447
447
218
408
230
768
892
150
388
443
994
931
563
203
696
657
279
905
23
774
239
527
910
757
186
406
168
423
955
254
89
17
675
950
882
975
759
54
231
688
256
671
562
986
885
914
141
342
716
942
341
953
971
143
324
919
536
461
223
824
601
470
195
134
354
977
257
612
321
720
898
225
675
335
519
568
965
923
871
272
266
825
707
13
913
135
46
532
626
962
439
298
831
406
87
785
476
428
633
908
657
528
22
995
45
117
279
636
623
755
954
612
590
951
559
776
763
182
221
219
931
724
986
358
282
600
393
269
248
733
92
537
291
962
614
738
803
712
968
796
856
409
909
870
9
827
707
880
847
311
23
295
207
415
976
932
541
664
713
444
723
10
389
890
664
418
321
627
337
821
972
52
214
425
363
523
815
116
350
454
892
512
422
937
710
796
330
876
985
681
197
140
998
524
73
846
21
19
207
590
506
80
544
27
338
971
82
782
53
454
118
426
314
260
551
212
588
452
180
867
88
445
642
655
624
832
53
689
352
516
503
796
908
759
947
813
968
396
599
739
715
548
823
531
564
770
825
738
973
861
259
569
839
340
502
61
438
888
402
506
918
393
430
536
951
321
517
555
312
738
243
192
852
441
152
540
621
111
92
853
7
314
715
491
257
933
957
569
257
887
375
81
993
94
820
323
118
288
580
243
254
271
427
235
619
67
716
399
188
962
440
328
796
548
499
604
677
939
280
18
364
948
298
425
364
162
199
759
620
829
422
334
531
849
600
736
887
480
871
190
218
559
381
295
448
48
285
445
595
216
645
179
8
562
879
305
973
3
871
458
868
957
778
358
540
106
796
946
948
763
717
197
68
90
800
804
567
3
977
316
876
753
165
405
184
243
327
968
970
296
762
884
608
414
321
261
780
23
754
342
251
339
497
832
498
449
112
918
762
75
738
971
26
556
581
116
792
374
175
298
779
828
976
652
1
833
588
653
768
540
24
544
248
635
66
538
256
333
906
735
132
409
207
896
558
790
859
53
832
206
468
407
848
457
563
423
362
844
831
665
860
458
150
223
51
194
723
390
490
44
860
460
468
439
166
371
622
81
95
210
973
535
820
563
72
617
695
791
72
643
176
411
502
241
875
674
259
984
845
364
68
469
562
789
346
9
939
410
292
193
800
282
750
621
691
325
637
586
151
433
498
932
319
847
867
449
958
227
564
491
112
638
235
731
143
505
972
32
218
64
678
286
500
879
842
893
661
880
550
550
38
673
833
412
865
136
151
715
922
896
50
712
846
800
82
163
48
20
479
187
352
606
369
88
755
213
433
440
6
974
788
78
677
15
454
438
804
822
865
8
355
258
109
322
14
965
440
699
797
679
846
642
402
363
198
432
305
745
657
653
702
711
710
948
108
972
36
832
346
643
358
225
154
471
832
95
497
47
75
789
773
733
642
326
128
147
676
314
816
23
134
60
166
212
305
644
548
161
214
41
930
607
353
155
321
621
488
930
531
104
934
258
671
868
880
969
69
384
820
961
297
722
16
324
509
299
60
942
167
188
546
336
833
34
859
166
380
487
5
506
659
745
782
712
88
876
389
298
332
336
575
164
341
253
744
208
592
30
645
22
562
546
764
343
557
599
425
637
10
714
589
581
379
314
302
551
940
303
236
632
910
761
610
831
613
383
995
580
289
651
574
351
841
983
944
114
980
439
156
489
452
751
289
618
746
993
784
27
950
194
268
289
793
14
112
801
935
933
730
175
604
844
349
358
141
239
740
396
370
189
570
501
148
747
181
160
473
992
85
619
598
968
629
96
383
286
557
828
871
144
178
48
708
981
884
608
403
930
477
508
254
388
657
762
623
766
141
46
832
952
328
942
849
111
576
635
215
253
974
855
681
911
525
227
12
523
793
167
862
573
757
543
515
577
366
210
312
867
473
617
145
511
995
919
815
235
199
597
405
250
393
150
955
622
826
343
863
430
751
100
973
973
183
260
196
785
428
273
745
366
324
348
780
358
710
170
915
606
411
776
324
196
761
613
180
607
587
893
750
23
347
881
117
373
644
172
329
736
723
31
807
926
852
40
925
46
369
598
912
656
428
258
19
974
775
777
213
569
80
588
198
534
522
722
19
442
231
407
714
539
841
179
882
381
968
398
343
721
687
135
239
989
980
94
595
89
863
142
597
866
958
759
656
136
832
273
404
130
21
484
814
961
883
374
814
249
376
637
7
378
434
491
882
945
350
209
554
428
127
930
578
90
810
848
580
83
523
746
549
695
993
214
701
204
321
277
106
607
279
347
713
226
135
220
432
468
877
711
786
623
719
975
3
91
905
725
152
36
793
732
725
629
89
312
384
221
790
678
625
73
104
946
150
780
217
353
954
590
417
112
206
812
960
925
975
18
211
610
298
596
126
71
814
547
622
84
138
823
836
211
678
199
86
714
520
773
826
223
874
553
770
561
619
682
526
913
669
163
336
366
10
180
380
30
947
34
133
602
159
133
216
131
754
206
433
8
726
247
406
203
191
988
735
745
825
564
451
132
22
708
415
974
488
470
201
498
818
57
766
486
641
225
65
741
338
639
807
413
249
519
187
423
756
134
175
22
444
635
204
384
582
1
581
450
718
241
643
285
5
934
189
669
480
919
561
966
924
994
408
186
756
38
883
502
522
991
218
354
295
180
54
184
853
383
904
641
644
614
23
97
995
523
409
314
330
518
943
836
572
209
97
450
227
18
627
544
117
79
928
727
23
290
989
824
881
6
816
97
16
920
322
310
971
312
191
234
629
570
172
5
49
381
781
87
83
604
956
835
756
361
524
566
686
296
74
706
533
584
433
325
701
846
821
652
886
787
478
915
827
393
914
547
906
924
679
641
508
903
742
277
50
980
340
654
397
756
624
676
238
484
701
45
138
847
303
202
560
130
200
296
126
41
9
364
446
977
660
762
617
432
198
629
842
156
275
720
507
167
256
131
163
802
678
343
691
870
409
59
621
477
82
379
704
446
151
10
972
976
209
419
97
862
59
805
287
73
202
981
572
582
695
393
874
69
134
324
362
665
673
575
568
601
141
140
351
819
925
397
5
266
747
531
958
836
35
301
743
873
57
619
668
428
486
39
782
689
504
635
313
827
647
308
303
633
850
495
721
919
455
468
148
805
976
307
835
164
434
39
35
832
581
489
609
54
907
141
115
103
357
661
315
290
85
178
618
440
228
325
985
539
580
823
418
588
472
863
451
179
204
618
255
466
600
480
247
159
699
249
726
710
380
619
563
793
153
857
721
799
688
395
936
110
53
496
253
757
71
21
582
45
690
935
898
738
407
848
689
604
930
460
740
978
599
276
159
960
261
625
436
614
143
651
491
808
682
145
414
105
228
490
88
678
667
682
20
444
720
824
386
304
168
117
868
229
654
958
511
777
338
292
496
446
585
968
902
39
445
90
57
262
435
585
377
441
373
63
312
916
256
714
241
437
239
132
446
26
782
262
154
724
634
637
766
935
993
641
94
699
780
981
999
630
768
125
869
583
739
428
855
592
646
594
521
624
52
60
208
453
522
876
256
184
936
333
627
798
818
442
448
731
968
613
137
275
715
610
668
114
263
863
287
355
407
561
78
41
116
143
883
934
434
641
177
904
725
816
694
436
497
71
764
298
979
124
624
34
457
247
908
442
391
94
191
659
589
901
776
375
255
587
683
676
558
513
298
327
436
233
550
899
915
233
617
192
99
989
375
283
937
45
583
868
234
442
543
341
450
518
315
823
40
319
181
909
388
89
739
466
826
297
597
224
697
10
526
158
476
999
560
600
526
494
438
210
5
814
442
117
970
957
877
917
918
726
860
596
52
707
803
10
250
908
456
640
447
359
172
225
915
386
864
451
957
714
298
545
881
971
905
574
647
623
496
869
420
679
306
970
150
929
106
768
196
551
351
617
39
798
762
645
642
218
201
584
93
426
960
205
428
315
715
81
802
230
363
627
413
587
220
768
54
201
75
985
280
96
256
407
363
681
507
84
209
260
931
430
422
911
776
993
719
102
543
834
215
25
966
965
189
724
205
451
578
994
592
441
143
216
305
997
171
553
841
747
808
632
872
542
298
932
205
501
811
227
49
952
658
241
771
255
129
290
219
639
477
56
505
214
668
491
288
206
607
778
823
167
260
795
27
582
153
425
667
256
519
703
640
352
946
640
782
902
445
51
868
880
335
203
271
753
127
659
873
807
645
999
894
33
403
882
692
863
214
189
103
704
623
962
120
773
415
154
268
29
708
385
761
557
910
943
832
58
525
274
456
493
551
860
611
520
809
608
948
64
947
919
688
257
947
165
257
372
83
498
338
973
392
845
99
260
238
338
122
460
51
635
338
940
733
609
154
763
352
600
963
807
205
204
82
789
697
504
609
746
686
460
975
28
935
482
102
705
761
351
282
472
486
489
14
313
581
747
524
338
11
494
20
482
534
530
768
189
764
310
562
734
728
376
774
590
659
311
5
251
508
448
3
1
319
492
321
716
190
769
208
949
980
271
735
192
440
493
494
406
714
912
941
451
789
548
743
111
714
424
653
271
742
273
829
563
492
20
164
43
210
52
998
994
103
612
753
457
641
582
150
167
817
599
537
596
506
551
212
770
748
211
2
766
117
936
208
707
441
173
700
421
330
451
196
662
913
946
348
177
794
287
470
133
274
486
454
144
736
234
57
940
808
393
294
998
50
233
878
167
405
46
16
468
882
729
837
366
403
874
682
559
204
36
976
462
741
869
492
630
483
65
971
208
117
759
613
936
158
198
612
681
69
182
771
748
271
2
250
545
649
89
740
861
552
497
737
773
417
832
258
181
741
249
684
341
75
808
352
124
116
900
209
206
263
2
491
22
264
228
192
739
620
946
980
394
324
110
655
619
22
840
520
325
939
432
940
819
498
430
674
462
650
127
429
749
879
534
599
551
6
715
509
190
641
519
561
794
268
290
18
964
153
732
102
276
381
883
267
831
61
671
524
833
553
729
90
493
517
232
515
789
511
105
614
307
331
331
684
420
870
146
552
209
413
709
309
917
25
154
368
996
268
767
490
334
192
675
636
911
429
68
278
37
775
228
454
49
119
795
945
51
200
846
960
915
120
316
421
844
421
173
469
364
863
518
521
743
615
280
116
656
695
772
990
803
868
515
433
186
256
260
798
230
208
318
797
422
807
574
214
875
255
792
491
257
599
913
173
257
706
710
433
838
679
290
356
427
855
158
48
605
882
236
588
161
374
239
156
545
721
100
936
41
67
240
401
903
282
733
205
954
343
177
479
546
827
959
550
918
962
371
566
649
527
609
992
20
204
330
883
360
758
628
536
606
773
393
772
440
888
453
145
122
953
94
262
706
756
43
334
414
688
237
582
350
534
287
514
457
247
382
699
952
850
844
197
714
640
872
772
434
187
111
31
510
226
444
696
434
347
287
263
162
996
469
671
521
46
186
73
486
878
316
193
507
753
193
272
109
896
548
67
884
270
899
227
578
207
73
125
90
591
81
110
960
119
538
956
382
173
676
669
454
799
286
556
871
917
523
757
33
173
587
537
799
220
379
891
97
242
94
314
973
62
982
895
797
206
233
388
216
237
889
936
221
878
612
85
983
343
356
661
683
315
92
917
4
544
311
740
740
646
859
140
80
362
696
393
817
391
758
665
685
136
541
796
283
651
317
921
608
294
908
753
886
432
630
658
969
66
892
254
895
492
647
570
377
750
856
858
182
220
268
593
585
690
975
548
774
296
634
352
228
389
133
446
737
107
254
647
732
39
424
751
499
505
769
194
488
971
419
533
795
458
739
389
27
315
169
196
457
83
883
673
431
540
27
507
360
202
832
271
497
209
127
144
795
516
95
80
920
782
60
803
877
102
557
769
650
744
420
423
937
58
191
649
155
751
320
958
478
263
834
287
139
148
37
586
331
596
593
511
221
89
275
675
23
81
796
330
982
257
857
615
782
410
334
439
19
477
988
45
196
136
601
657
947
773
664
729
66
971
438
54
151
909
202
848
783
515
627
74
955
990
976
222
406
219
505
729
814
597
567
854
607
549
315
86
488
617
727
249
416
67
265
12
818
803
465
872
208
485
655
503
850
914
90
206
159
380
252
729
269
935
915
468
404
584
447
602
594
117
361
166
788
378
657
888
725
964
403
603
754
632
521
329
941
65
5
692
459
110
926
108
366
998
980
481
152
797
608
235
357
862
279
91
124
490
715
472
257
201
480
195
976
648
975
637
414
586
526
340
579
754
144
485
191
253
800
790
398
177
737
928
357
169
247
891
353
431
205
452
349
533
435
258
629
731
131
718
23
344
68
565
271
269
655
602
719
794
900
870
690
925
75
81
464
551
838
808
401
84
284
983
381
74
990
47
320
885
855
459
123
82
767
54
110
172
658
88
513
645
173
559
530
334
762
423
459
354
794
78
893
323
317
939
60
85
185
197
278
608
283
834
939
441
748
608
159
21
971
293
893
750
296
756
911
725
453
47
312
568
588
965
91
777
565
800
765
828
994
25
987
461
809
904
363
339
620
89
585
155
264
439
383
502
184
143
27
561
28
335
631
138
885
710
21
317
743
162
876
948
842
331
26
946
306
433
940
391
394
573
106
365
461
158
304
150
582
589
593
422
773
205
800
659
394
849
576
100
884
46
595
458
213
637
312
933
413
436
197
751
203
636
168
455
230
267
676
727
406
870
734
154
568
454
176
638
530
367
552
456
857
841
507
348
977
647
152
824
845
370
737
147
393
842
220
138
38
345
430
128
173
848
693
14
311
442
889
759
461
673
403
46
883
740
893
362
129
819
478
582
115
852
881
36
134
588
760
726
234
39
601
185
937
425
283
9
148
493
38
535
758
393
363
173
966
691
263
653
948
858
9
218
867
847
13
321
966
657
880
722
681
164
525
423
73
219
109
459
458
885
214
635
782
942
824
722
489
709
70
442
326
108
777
375
31
383
317
90
412
961
43
490
613
315
854
595
867
940
100
748
583
804
195
64
644
373
436
925
24
291
832
257
588
438
397
574
386
151
393
690
901
19
47
496
842
724
23
468
89
229
855
548
610
321
859
521
912
714
730
657
947
392
67
122
130
785
901
176
917
280
209
717
548
410
847
565
758
699
221
920
351
968
837
794
436
284
647
268
579
876
661
671
420
735
742
509
952
924
366
57
822
846
550
808
20
138
1
200
473
294
763
214
493
810
307
979
555
273
686
845
139
634
596
42
619
538
297
812
667
338
613
833
333
164
99
504
418
29
774
298
283
447
794
285
113
448
179
610
428
763
954
679
239
521
918
189
251
509
190
482
841
188
533
136
681
930
880
329
712
802
562
526
498
388
563
692
839
312
928
171
359
687
385
903
383
933
595
812
246
909
254
908
839
292
457
96
914
659
603
183
568
849
898
625
202
429
182
850
957
226
350
938
580
19
123
154
803
629
752
748
336
68
84
802
549
653
687
207
931
468
778
180
708
746
603
510
789
759
701
954
751
744
854
20
560
315
328
820
169
303
292
285
907
854
847
500
766
96
77
549
741
975
918
490
448
170
231
834
416
613
364
45
927
797
997
591
214
64
243
234
326
866
38
628
176
493
273
853
899
104
744
693
682
153
213
776
825
365
571
391
85
494
405
556
938
248
358
110
857
256
287
702
853
843
224
875
937
290
315
955
896
377
934
312
868
671
362
774
584
221
765
849
492
852
150
831
462
482
690
928
135
163
996
643
817
42
840
839
929
338
838
536
51
616
494
708
559
93
687
268
885
583
526
637
491
437
211
2
693
392
413
456
600
386
821
733
381
292
495
827
830
523
844
246
382
230
798
876
358
442
273
370
794
422
43
551
637
360
153
380
830
839
146
538
925
382
935
664
795
760
327
268
598
859
438
363
739
280
255
261
638
335
643
252
119
44
662
179
343
270
97
22
139
116
996
990
377
307
321
999
294
135
82
598
115
6
771
934
983
680
812
358
105
891
741
496
197
893
420
881
720
756
321
525
663
306
129
483
863
447
986
433
958
255
966
504
254
45
138
114
272
727
195
663
458
739
916
247
374
501
794
483
886
440
280
538
813
556
934
808
876
289
72
537
694
380
399
850
924
237
243
153
756
307
609
993
561
658
68
924
390
881
109
363
653
503
546
519
974
429
690
697
110
329
237
982
656
658
968
78
340
66
323
137
258
641
726
580
830
287
976
155
488
11
419
995
181
708
883
191
834
879
875
496
547
545
43
427
70
627
337
903
689
989
584
325
559
971
105
12
776
965
689
688
453
535
209
100
910
242
802
947
775
777
244
460
190
826
590
713
599
300
511
203
949
74
466
499
426
94
436
209
604
871
415
868
191
188
43
12
336
942
517
828
824
389
128
912
745
125
135
732
382
391
412
477
455
486
738
380
70
710
674
817
805
593
344
903
363
376
270
3
783
579
378
657
783
682
379
560
945
554
753
301
958
703
827
213
460
937
414
705
449
663
941
625
268
699
23
232
46
225
549
370
854
133
948
802
14
755
694
772
108
179
434
516
957
373
858
103
765
131
444
425
961
564
553
121
638
752
389
84
660
147
515
720
5
383
447
825
754
26
200
704
244
642
598
271
230
425
668
895
841
920
466
914
781
124
408
291
580
828
165
261
367
610
113
960
663
714
512
574
926
33
348
740
931
740
181
320
966
283
890
213
85
493
242
739
681
600
939
880
974
156
246
926
860
938
337
633
529
637
607
515
913
95
968
809
573
725
982
42
942
89
324
297
937
951
177
873
369
373
280
63
774
631
599
770
786
421
880
992
403
548
790
330
676
376
300
989
525
433
167
955
617
898
937
886
832
949
988
908
762
463
265
157
358
544
741
282
496
198
23
152
845
990
638
395
298
993
621
562
652
187
349
936
207
324
445
876
693
712
937
837
433
971
231
939
283
634
972
132
635
18
494
327
410
15
110
627
260
543
589
839
328
426
257
575
115
329
949
34
99
864
589
783
260
186
719
874
759
698
112
663
22
490
927
635
693
22
527
192
214
817
616
151
124
99
509
8
714
655
825
954
684
938
33
770
429
710
67
224
296
236
868
562
431
925
817
838
498
622
882
94
801
757
820
281
248
439
660
162
676
711
160
104
873
158
978
84
457
157
206
982
954
303
896
978
949
55
719
198
282
671
509
93
773
732
153
926
119
751
523
990
51
905
547
584
76
764
689
274
946
734
381
341
416
899
139
499
861
841
332
193
719
462
880
6
203
68
331
141
5
53
965
705
634
216
932
49
756
312
902
186
366
446
251
547
290
168
676
874
594
654
66
277
420
330
271
588
26
541
381
8
433
548
269
894
769
676
707
201
966
90
742
549
939
146
827
273
212
333
716
36
392
457
547
350
986
688
286
305
944
345
24
215
931
895
752
817
177
357
778
614
460
476
907
504
911
516
338
274
503
998
377
693
825
346
616
976
2
919
908
81
390
403
256
622
67
528
618
44
394
10
97
854
554
103
575
915
549
43
438
470
351
12
801
946
968
331
390
586
279
775
816
258
449
698
224
58
221
286
438
384
898
294
880
494
902
522
139
723
770
700
427
958
481
438
729
379
601
310
653
735
139
33
764
618
193
838
406
856
878
517
695
264
605
55
572
58
132
308
45
447
192
666
815
579
349
858
776
11
968
845
457
911
632
702
245
866
529
263
301
64
116
282
844
253
6
163
353
426
866
672
248
294
265
207
544
472
217
186
270
334
63
395
887
34
61
784
632
903
809
705
528
868
7
981
331
909
822
563
573
186
506
351
145
297
598
163
646
425
159
773
649
344
992
967
2
720
395
811
192
222
531
450
616
161
144
379
287
284
876
634
650
654
612
85
828
711
251
591
435
898
138
208
744
37
57
184
876
40
980
610
515
11
371
352
654
56
734
984
153
220
875
362
549
525
124
994
731
908
140
290
470
804
376
294
84
324
705
580
104
960
502
248
304
266
119
639
284
261
430
772
977
267
438
216
23
776
659
220
913
62
453
967
899
691
141
711
635
77
269
331
350
155
880
193
717
627
59
283
407
484
711
471
479
367
312
204
366
160
272
308
664
486
666
43
507
534
348
613
125
407
5
207
991
99
422
823
386
245
499
395
717
376
813
429
350
982
489
533
379
937
345
475
805
961
666
864
488
837
686
183
279
446
158
999
480
505
479
380
944
489
817
121
661
876
590
289
673
238
692
525
45
815
234
188
63
530
401
31
432
558
335
548
559
317
116
271
218
813
949
845
503
110
588
889
120
224
814
928
371
378
191
251
146
162
138
464
213
970
936
950
104
449
947
387
154
269
561
344
761
320
72
859
289
847
22
935
228
344
68
838
715
473
659
55
367
85
403
398
180
651
59
248
877
998
741
55
162
201
736
851
662
470
168
52
306
331
961
299
140
202
237
868
902
99
235
631
789
893
20
70
865
164
165
110
261
824
982
290
106
966
773
27
608
217
176
246
305
608
748
36
123
105
258
977
415
191
345
778
764
111
266
269
182
666
985
499
306
58
790
482
349
672
194
174
428
211
260
686
923
988
326
181
145
983
946
761
905
187
695
71
479
205
526
994
700
505
844
941
231
676
940
248
817
266
687
451
911
84
549
204
930
658
854
775
784
85
124
198
720
225
594
119
363
719
4
144
147
199
474
923
366
319
456
247
49
78
363
878
297
496
850
821
637
491
141
820
350
750
211
615
381
647
222
6
83
821
885
99
263
543
304
712
610
625
838
611
203
608
726
706
722
245
901
225
374
772
481
871
579
184
794
396
987
859
543
719
98
450
165
228
193
265
616
753
192
138
211
13
653
529
617
742
25
504
893
136
745
996
632
310
340
14
520
80
749
908
724
751
83
119
514
752
443
499
514
457
629
149
33
237
561
469
219
50
566
53
372
484
965
407
974
101
818
855
887
179
745
537
5
283
413
460
929
534
16
865
299
525
990
436
507
597
964
396
748
871
795
470
514
696
537
241
785
675
145
413
934
588
611
335
711
92
144
749
823
102
540
685
34
701
753
846
494
529
900
377
137
423
107
17
384
275
24
308
746
173
674
254
389
602
930
711
914
655
724
416
453
215
572
647
331
111
437
812
943
690
747
256
775
768
277
512
481
595
951
437
68
836
4
650
427
286
296
431
770
42
931
838
805
485
923
922
850
460
685
274
838
211
364
56
425
419
479
621
326
419
231
320
703
288
348
617
212
922
220
46
815
7
43
902
758
908
451
290
844
355
661
21
909
678
599
856
472
947
225
9
806
674
105
352
811
612
135
517
137
306
710
928
240
640
458
832
169
462
298
517
967
189
777
971
757
210
410
26
689
492
146
264
697
212
239
141
901
691
91
147
774
934
154
538
644
733
781
270
220
766
688
10
650
708
41
618
896
134
594
602
203
110
828
645
161
447
231
29
401
318
930
478
371
151
742
34
36
239
328
24
429
141
805
922
803
136
614
988
171
621
245
767
97
489
944
665
107
508
378
198
503
752
868
902
836
211
639
499
966
8
582
657
806
571
174
62
304
905
841
25
832
242
857
780
74
164
382
882
207
78
927
527
861
131
521
676
272
903
87
593
497
116
23
164
39
587
961
526
316
882
361
201
667
353
365
261
895
89
829
673
829
756
292
888
80
55
796
675
50
497
789
401
819
248
528
716
219
693
741
486
202
855
566
325
716
727
860
509
765
261
780
184
74
414
764
740
823
135
84
983
790
286
476
818
93
960
381
419
824
649
42
202
347
343
471
973
191
966
173
353
195
288
910
788
716
606
327
406
484
787
892
85
609
757
696
915
379
747
233
755
346
442
684
117
220
578
837
731
942
791
550
857
961
730
789
503
376
688
102
487
634
975
935
37
756
956
593
589
647
556
594
443
734
417
8
753
604
794
569
139
768
595
463
692
238
36
123
878
968
193
539
691
645
746
121
370
506
647
361
263
985
249
84
386
198
107
123
545
723
36
899
581
119
963
718
39
512
243
799
720
833
714
620
454
17
902
797
988
296
638
247
956
434
306
153
520
512
78
495
131
912
578
156
932
294
958
573
681
28
83
857
263
848
640
430
272
628
630
369
295
310
135
249
85
789
942
148
812
811
198
527
435
748
668
807
255
558
687
161
59
330
116
960
214
780
983
109
793
876
881
892
881
708
200
821
778
330
71
144
351
810
760
870
830
555
422
515
180
833
175
713
940
469
310
965
194
175
35
305
805
834
354
936
929
306
645
726
549
846
30
924
488
544
809
248
569
245
130
659
358
469
928
960
701
169
951
412
398
234
628
603
296
766
338
517
457
824
940
524
909
696
966
334
804
250
225
397
660
63
397
948
45
375
946
337
905
394
235
761
354
233
328
315
218
426
629
721
206
293
791
745
305
606
750
662
503
595
157
452
943
555
752
336
837
680
558
920
820
2
612
63
590
180
170
676
368
651
116
378
620
503
191
367
271
652
644
439
625
284
834
311
238
782
817
799
481
992
478
538
867
709
901
204
681
728
156
125
436
75
295
851
479
778
831
440
364
386
66
186
36
120
296
537
168
301
825
807
362
371
196
376
174
578
510
911
602
987
686
542
496
519
4
551
988
982
831
459
951
377
436
95
926
293
502
748
413
365
37
380
902
348
762
66
878
919
678
901
269
919
838
377
699
523
689
517
116
744
548
185
470
367
856
985
934
101
449
881
76
761
498
238
951
306
639
149
757
937
672
70
305
930
191
32
539
60
395
404
603
985
632
669
816
851
910
536
492
777
131
778
471
797
825
507
421
600
426
394
883
541
760
179
73
479
879
539
177
824
446
875
705
46
278
91
130
829
422
100
396
104
656
979
807
894
599
508
106
683
610
938
634
2
520
63
226
454
596
338
971
371
359
668
332
256
73
426
519
734
378
592
179
326
997
779
884
780
371
179
880
372
434
493
214
507
242
703
525
215
865
675
233
84
128
26
744
988
648
552
821
174
988
371
306
19
760
308
5
740
179
445
83
418
457
600
936
866
454
824
14
370
900
305
868
702
359
95
199
971
36
896
133
819
358
707
383
63
187
196
747
934
698
784
37
421
592
815
627
527
89
878
534
823
538
451
273
684
503
604
660
665
109
34
705
283
312
264
61
750
217
874
679
259
77
80
671
116
268
448
110
543
468
671
882
157
362
310
282
906
434
699
560
583
535
83
825
665
80
754
109
329
755
876
311
215
200
276
746
459
780
157
417
55
494
117
197
437
151
548
920
3
981
154
317
517
315
96
723
994
254
6
37
513
339
781
788
592
361
668
957
86
563
822
126
277
283
505
90
419
886
388
515
531
833
107
347
601
560
793
899
104
553
752
205
774
120
903
716
712
329
604
77
482
591
835
440
160
28
40
235
810
6
304
109
866
491
506
680
232
434
187
33
567
768
853
533
810
617
352
158
380
788
377
91
282
311
33
939
998
667
188
573
520
559
90
99
249
644
339
284
614
223
484
279
142
572
510
714
738
302
629
542
676
882
855
22
628
214
826
555
459
567
681
565
247
614
512
9
679
755
284
167
279
69
543
157
304
99
949
710
801
319
202
696
39
646
897
638
704
68
470
36
817
784
824
48
542
919
33
527
60
502
35
982
19
462
264
608
339
698
717
530
264
117
753
141
365
984
527
600
716
874
305
611
285
249
350
494
244
496
615
385
67
422
650
300
284
219
678
576
382
290
300
6
351
940
771
700
31
683
682
557
392
432
810
186
197
424
697
769
113
769
364
843
84
333
463
842
466
454
857
146
307
950
218
427
575
299
261
345
478
649
464
560
813
58
992
634
611
465
103
860
521
908
464
613
925
456
921
19
477
929
234
576
826
536
251
441
214
384
611
897
163
353
292
463
305
803
30
26
340
828
231
2
351
997
625
398
487
605
502
119
377
243
867
549
416
887
734
277
807
552
421
228
854
205
697
169
617
1
308
123
426
896
679
648
698
233
226
829
911
852
953
609
882
492
521
920
485
743
48
418
70
753
219
787
408
3
148
147
300
456
780
487
297
379
692
481
564
219
850
183
662
904
365
954
598
812
346
362
684
776
684
874
953
890
53
673
678
891
241
695
86
79
530
456
72
467
312
503
800
40
357
266
892
864
756
166
388
264
190
595
657
785
462
523
772
906
533
407
326
19
803
673
978
156
98
583
375
909
883
131
500
843
561
645
420
418
981
89
134
887
286
414
701
645
39
300
617
7
683
165
933
905
177
781
236
684
288
737
767
173
790
478
380
60
96
814
224
817
104
354
925
445
273
438
733
389
971
333
117
797
966
369
226
718
197
595
666
779
409
736
131
244
322
960
98
807
34
642
550
224
76
799
902
330
240
489
633
738
49
847
712
954
620
969
207
422
252
662
862
501
148
444
409
367
224
682
124
312
341
925
355
330
783
893
722
167
466
896
479
707
961
927
731
562
24
176
623
352
754
675
556
372
779
49
77
631
391
535
107
557
366
321
397
124
492
383
172
727
248
41
956
355
184
155
539
220
713
847
344
48
60
771
558
666
370
983
550
734
816
91
775
930
790
921
342
641
530
608
70
640
5
895
105
713
719
201
189
624
510
856
918
544
192
59
498
594
763
731
754
509
833
438
911
157
265
26
565
262
813
898
689
106
777
703
44
164
666
844
946
169
794
925
224
959
173
232
739
731
424
747
877
799
854
561
807
567
984
947
449
693
636
926
811
612
168
812
767
488
16
334
927
919
785
585
714
907
214
951
984
34
287
833
838
66
21
890
251
217
895
477
180
719
396
253
533
868
114
612
792
360
465
251
716
90
819
958
14
269
846
899
353
34
963
415
407
802
89
746
591
277
561
551
593
539
155
209
524
532
52
846
794
601
159
625
569
37
118
749
246
63
876
981
370
996
124
147
755
980
846
730
779
368
22
516
798
913
658
177
934
610
434
482
218
1
106
752
874
339
846
371
685
339
500
528
401
579
182
596
416
8
454
543
686
321
67
426
579
643
826
655
379
940
814
635
628
395
764
369
890
372
272
417
135
475
46
441
867
494
116
219
732
62
761
926
157
891
796
896
934
679
173
232
512
191
992
745
525
865
899
6
815
812
706
44
735
37
409
211
276
626
559
86
528
608
922
317
179
887
478
737
599
868
434
211
200
41
904
943
483
300
916
2
595
110
404
920
355
717
191
120
482
585
621
309
121
87
704
904
269
675
566
637
387
162
407
947
378
495
844
695
133
466
727
975
709
557
491
418
204
3
961
461
696
358
256
14
248
126
91
113
337
1
675
808
734
279
615
433
702
457
542
860
873
496
987
16
857
645
599
563
596
286
700
266
713
105
940
29
906
394
700
253
404
732
359
133
791
919
242
430
942
58
715
747
461
102
588
201
371
240
156
602
527
528
516
51
300
409
95
629
339
586
527
309
757
290
457
141
138
854
225
937
404
169
620
539
570
952
805
612
517
740
658
666
238
98
726
876
216
309
832
383
825
612
92
357
530
407
990
172
645
448
64
516
16
218
198
358
907
977
480
347
604
483
113
598
928
861
71
659
564
580
924
828
23
842
113
791
77
264
9
164
961
634
966
70
677
142
651
20
899
368
968
239
828
485
778
343
500
493
429
669
336
332
608
65
523
235
494
174
106
407
281
643
969
317
386
970
516
44
921
786
211
51
759
196
611
686
1
537
64
770
291
584
835
339
827
630
27
902
546
442
647
477
914
493
88
325
269
511
100
808
826
457
571
642
459
286
572
412
453
836
234
957
110
336
116
697
808
630
490
755
943
614
497
480
139
733
137
267
109
287
417
489
437
255
943
834
13
194
880
541
58
614
449
710
209
690
368
579
377
390
517
639
22
344
864
213
960
92
503
726
149
306
304
167
419
745
521
854
392
281
685
615
750
948
698
330
165
787
272
449
366
558
889
718
769
778
468
93
390
731
874
920
690
155
393
751
311
283
291
464
170
513
187
97
705
901
888
74
646
535
49
174
820
54
360
591
417
585
397
641
277
428
464
661
407
764
925
596
556
946
20
882
496
808
280
852
371
793
14
868
889
395
447
855
682
700
101
636
794
801
335
725
885
649
187
741
49
526
689
941
976
293
517
699
516
167
677
13
774
508
221
623
572
529
751
882
981
609
978
706
664
289
801
755
611
294
996
846
621
539
804
844
104
73
891
596
877
747
340
516
24
88
862
287
580
712
153
357
897
304
759
439
547
982
277
688
491
762
88
222
170
830
391
236
703
377
519
500
637
156
6
234
270
462
683
577
426
515
175
899
141
639
949
318
779
365
297
122
795
204
106
116
660
118
346
193
696
627
583
204
193
653
720
742
299
526
170
86
300
700
262
975
587
188
81
531
881
74
456
339
80
398
705
433
50
890
574
152
117
490
880
799
932
971
707
488
919
207
19
254
195
212
821
95
941
130
528
472
38
815
312
623
171
244
124
794
948
287
693
409
951
19
968
810
820
463
44
616
480
593
611
675
55
203
144
867
576
610
492
920
362
102
114
301
178
258
628
688
847
913
540
633
514
610
302
176
243
12
275
478
87
911
992
445
205
637
568
968
101
257
218
338
794
772
47
850
904
668
632
563
835
355
769
567
54
978
161
445
901
967
625
565
335
14
833
451
110
669
97
541
689
660
588
591
696
202
838
741
563
451
272
575
380
712
643
731
143
425
392
226
476
124
67
133
631
653
4
781
939
596
741
235
572
91
873
176
767
179
871
851
140
420
881
450
696
51
185
623
370
102
308
684
278
870
65
565
593
456
959
43
199
57
802
967
710
37
4
290
838
468
964
963
554
540
86
57
242
616
436
581
468
380
411
837
288
57
957
701
26
308
583
311
219
828
653
84
618
914
740
660
48
895
785
902
137
345
130
738
785
9
323
976
20
379
575
818
646
964
679
653
79
302
264
530
884
653
745
726
886
3
438
328
876
775
533
573
595
508
700
943
927
219
916
17
985
606
292
840
253
835
437
654
236
87
581
745
631
255
18
483
600
403
851
782
570
995
101
245
845
2
223
138
264
735
726
860
386
247
545
279
362
904
473
52
566
784
93
789
194
788
941
340
490
218
344
524
367
134
447
989
505
48
994
252
612
299
390
500
361
721
359
385
710
739
121
695
929
800
217
785
902
312
51
58
61
883
648
47
392
203
493
252
800
555
774
315
909
222
439
267
395
593
428
472
429
557
629
751
97
648
594
567
917
661
87
194
996
937
191
728
651
344
109
159
229
108
585
155
964
806
786
708
361
950
391
310
883
578
629
504
254
896
950
743
608
926
335
140
468
581
319
971
31
711
615
51
485
270
244
322
972
474
786
291
862
886
206
967
270
777
310
419
309
687
475
754
394
365
550
303
772
445
687
384
487
814
677
650
335
340
825
614
334
307
532
779
111
659
880
722
720
367
869
691
271
899
663
343
236
860
657
120
719
940
549
527
787
402
803
49
209
555
633
929
951
696
85
2
156
695
644
734
485
828
582
406
576
995
113
587
152
334
414
474
683
706
894
393
758
6
991
708
856
831
513
165
734
939
740
575
815
661
188
541
217
923
634
891
359
143
950
792
289
216
897
874
142
159
247
245
802
691
244
151
703
935
878
654
315
418
671
636
255
538
772
490
147
873
258
760
73
3
35
615
55
200
419
640
934
638
24
576
693
495
773
125
418
37
838
281
45
980
576
940
472
315
537
751
444
407
728
269
900
487
173
799
656
628
97
504
517
238
719
676
394
96
943
760
765
648
73
111
35
977
715
92
426
95
144
740
662
668
197
527
910
755
675
206
322
973
468
789
940
335
763
807
261
900
546
376
371
777
985
796
334
617
234
923
772
81
374
562
484
356
841
848
41
192
765
639
421
737
438
791
180
283
171
700
214
907
831
526
548
767
369
884
682
401
194
293
521
752
434
242
600
906
306
584
493
915
766
69
135
906
955
633
340
195
616
52
447
533
709
864
250
847
14
716
987
956
167
640
998
473
119
668
304
197
192
274
977
586
207
299
141
762
391
641
812
735
545
488
784
142
846
987
43
569
991
752
892
589
596
537
749
127
70
662
788
287
330
144
3
343
74
860
327
411
723
487
457
372
904
252
412
678
855
856
627
131
626
735
205
440
381
388
990
670
550
15
692
729
853
525
406
402
485
442
69
985
661
632
845
504
296
520
685
345
126
71
271
213
36
657
661
595
938
563
962
686
870
656
861
709
795
727
519
379
846
10
193
414
788
641
469
994
889
700
145
860
703
645
545
479
744
480
694
196
864
811
463
922
480
383
115
6
771
137
709
568
2
307
499
116
877
857
425
394
188
667
705
239
418
102
983
225
111
382
965
315
34
323
514
35
547
270
933
406
527
464
224
753
990
576
859
396
147
430
601
886
56
300
8
198
106
224
505
378
399
889
894
389
172
394
535
678
792
464
568
607
923
19
867
724
443
952
248
842
243
587
79
681
780
79
260
733
316
317
928
323
765
556
7
637
569
834
581
596
41
181
604
683
861
994
963
37
433
284
754
154
975
662
136
812
811
214
608
94
135
802
363
476
535
246
842
368
12
230
155
609
371
652
801
62
982
395
819
786
115
224
300
32
562
775
348
103
420
195
825
356
226
488
462
239
817
129
149
616
153
596
26
203
129
146
783
324
861
74
830
417
394
822
978
910
503
332
913
760
898
739
947
817
405
799
383
882
190
562
244
854
247
204
634
519
198
97
902
417
991
24
242
347
364
409
961
404
510
551
736
486
215
389
718
413
649
209
798
330
762
901
134
299
829
975
170
190
188
460
713
406
429
497
768
874
497
601
453
995
837
978
373
638
826
758
639
858
486
221
870
989
298
573
654
91
889
942
517
389
239
772
216
51
838
330
58
717
620
843
916
48
755
803
492
783
529
496
473
72
337
312
704
967
589
723
108
856
843
678
985
555
84
65
756
66
762
322
800
496
700
921
238
642
305
822
234
495
81
870
561
394
470
445
52
927
68
249
461
115
222
202
874
942
858
362
964
691
47
427
22
207
695
976
372
415
74
62
662
767
490
613
775
972
117
591
85
638
13
828
997
514
861
685
274
499
48
296
784
943
858
543
449
653
849
355
698
494
74
637
854
7
586
693
625
609
426
902
825
267
277
326
678
218
429
507
345
10
702
872
368
778
278
719
909
946
165
122
124
761
893
590
564
375
974
991
927
169
61
665
73
145
470
517
666
532
865
231
225
342
10
688
792
201
270
76
728
866
784
679
445
304
778
64
374
686
761
304
243
438
580
177
949
37
800
223
308
760
54
377
82
933
897
781
751
205
798
363
105
898
263
61
385
382
220
769
367
406
144
979
770
561
987
787
762
833
739
755
401
48
768
968
813
407
597
512
406
997
313
169
888
398
199
344
175
519
792
568
817
31
856
901
617
74
607
520
945
111
19
918
466
44
962
58
131
295
248
977
784
708
363
369
94
974
92
373
363
644
612
244
42
172
937
370
192
866
351
739
800
78
566
296
978
394
703
844
436
141
214
880
271
814
783
110
668
487
808
643
981
234
157
302
498
775
876
295
106
592
866
264
943
508
178
706
143
67
391
699
271
248
936
222
430
732
972
228
388
828
702
704
59
708
757
566
921
264
797
204
518
409
739
844
275
949
936
763
636
77
967
601
97
109
372
734
298
934
871
765
802
649
906
277
889
162
205
236
750
612
785
878
269
187
182
862
508
92
947
481
796
210
591
311
861
101
608
950
336
24
268
986
392
33
401
868
502
462
954
114
744
700
13
24
292
89
333
909
926
510
227
206
987
391
969
592
58
596
415
789
553
255
899
727
344
799
486
237
786
314
360
47
138
833
736
96
198
567
20
773
768
699
25
826
797
62
998
2
64
809
811
906
47
166
561
490
801
285
680
492
603
96
124
613
151
180
69
155
655
873
395
490
576
642
22
854
230
74
930
282
800
484
174
977
502
453
999
972
273
246
295
912
887
527
170
672
575
412
675
617
993
844
346
190
414
321
330
404
144
707
261
727
355
398
692
119
922
147
111
697
181
97
881
410
578
483
602
50
473
349
279
818
398
314
289
955
139
983
563
181
123
595
828
566
985
568
557
490
834
52
750
429
301
978
436
896
962
936
612
930
719
281
931
795
428
442
329
42
109
737
980
938
583
929
575
585
269
316
424
11
926
112
215
421
599
849
517
420
877
393
992
202
372
633
462
842
663
34
138
543
239
516
382
98
71
811
846
372
404
850
628
647
513
601
5
607
66
510
196
579
924
908
164
716
744
779
567
949
468
732
922
236
179
881
771
410
730
118
351
788
4
146
17
27
764
346
688
770
629
855
776
154
837
559
618
331
353
665
354
292
244
896
903
671
928
392
468
631
830
594
876
948
160
408
575
779
891
137
951
399
91
796
321
613
955
769
398
620
263
441
58
66
763
59
544
108
242
346
99
372
877
58
940
36
978
828
993
430
983
839
439
216
713
954
202
448
575
291
715
160
993
848
369
390
536
810
185
102
863
468
537
546
38
579
521
34
855
286
634
128
775
968
636
424
2
841
352
809
857
97
532
950
630
939
379
30
688
551
499
168
644
892
566
516
302
892
178
135
434
169
592
290
657
588
384
26
213
945
388
694
459
376
244
767
935
587
915
99
201
492
345
305
786
466
484
883
403
120
122
109
664
218
375
689
505
243
293
43
555
353
817
743
164
804
709
268
648
798
581
715
977
80
933
942
823
287
503
192
105
501
622
93
823
279
31
241
1
555
263
693
294
873
544
847
674
602
141
982
756
216
235
604
539
406
132
585
285
432
865
218
739
102
938
55
731
724
919
884
774
469
267
94
536
888
422
104
535
86
268
221
146
521
435
888
266
18
554
417
147
446
956
568
689
45
953
192
935
489
117
949
683
257
208
288
948
142
69
650
984
29
50
199
165
645
72
218
666
50
788
713
171
502
738
328
513
698
404
491
934
230
169
47
968
319
538
889
313
148
940
125
949
903
433
119
397
757
404
45
973
735
525
886
700
404
779
182
518
880
775
250
737
578
716
754
860
3
231
845
108
182
904
519
110
664
764
268
69
619
931
756
294
360
518
199
705
282
346
565
540
356
371
433
372
690
387
372
188
678
259
394
527
559
936
791
831
6
776
37
639
511
113
898
948
20
955
377
60
517
50
578
657
665
306
751
811
472
147
419
277
393
81
391
361
537
229
735
423
726
368
699
505
309
925
29
243
473
484
353
734
10
312
670
628
680
736
861
253
186
980
359
859
358
760
247
431
722
538
412
790
221
954
333
149
351
73
349
739
278
508
339
987
793
685
267
82
410
762
680
800
368
483
238
746
9
840
148
549
679
597
521
934
73
563
514
56
978
521
278
608
388
123
975
677
642
372
66
672
493
166
22
959
857
611
422
737
716
587
141
510
924
799
61
680
987
404
914
231
171
211
103
888
484
73
412
246
508
561
105
637
775
475
56
513
576
561
78
462
141
776
339
392
381
767
683
589
62
295
689
239
457
834
501
283
63
133
476
784
199
177
230
156
482
503
735
449
744
547
105
427
326
453
90
395
871
711
507
716
389
823
184
213
871
866
181
940
973
773
450
443
86
293
263
963
546
184
909
878
33
235
844
514
191
263
912
4
745
107
411
351
626
759
395
375
992
18
284
616
323
794
475
971
97
661
341
33
190
126
848
688
802
629
684
155
979
670
23
609
953
177
196
867
363
100
817
326
898
888
970
529
900
293
555
238
759
873
417
529
921
880
813
619
258
722
549
996
75
241
396
323
995
675
662
147
599
608
608
997
844
16
135
302
155
320
787
509
75
447
396
106
253
493
687
74
363
577
609
640
550
821
251
657
492
648
533
226
631
409
639
152
265
419
685
906
745
512
464
938
934
40
921
628
845
290
71
502
987
588
783
23
998
968
447
23
764
477
809
507
786
562
878
665
807
245
841
833
808
780
329
851
113
671
705
511
899
622
812
203
577
32
238
43
626
616
153
296
972
662
143
268
702
956
152
373
162
256
820
600
448
238
694
207
260
931
909
328
263
936
124
142
665
607
930
755
325
835
40
192
92
545
861
146
638
61
150
156
519
333
350
643
801
212
754
340
337
31
782
694
707
825
34
36
538
2
603
96
27
397
49
326
217
629
509
903
376
548
569
200
781
753
808
930
587
481
340
453
852
590
418
294
54
345
484
267
512
825
607
637
457
55
130
123
285
24
427
173
703
851
963
788
462
582
913
953
17
103
449
58
661
151
243
436
978
754
272
871
146
242
391
550
941
932
743
727
624
686
645
563
54
168
749
1
627
630
832
471
432
531
250
409
377
550
975
306
811
693
144
530
752
556
27
461
460
413
847
529
839
186
329
331
457
885
4
494
401
242
809
349
922
801
439
615
992
981
174
391
957
437
916
931
542
116
811
498
141
288
541
214
783
303
631
247
202
919
952
491
546
481
904
569
883
795
608
950
117
412
469
479
240
456
572
403
270
398
788
342
75
506
354
113
701
596
565
619
170
193
414
73
30
682
845
476
532
347
48
746
507
860
381
728
819
63
973
327
731
229
976
803
131
610
417
41
128
791
867
287
230
988
781
924
998
396
449
557
611
96
870
922
350
43
835
214
125
625
294
639
623
239
888
940
216
610
942
419
266
804
349
740
480
761
516
518
80
457
729
423
613
416
716
635
358
55
453
89
775
203
916
502
498
228
664
991
101
840
709
389
454
30
292
806
747
131
443
589
526
317
135
668
895
870
27
208
523
254
582
162
157
854
644
64
888
846
243
252
98
525
418
240
747
341
969
583
125
909
887
228
611
864
563
459
69
249
606
627
202
457
468
847
258
548
232
600
386
228
917
900
887
192
492
1
899
895
920
554
901
443
83
613
366
354
550
292
292
185
995
640
240
616
50
641
57
571
981
199
109
370
198
896
991
987
341
420
373
562
560
174
328
52
725
759
374
855
481
903
998
940
309
201
233
278
660
272
142
851
943
328
913
721
446
532
245
187
621
378
14
130
919
729
625
822
312
189
890
290
267
202
90
79
201
169
61
996
663
713
327
69
279
522
618
232
260
607
606
194
515
187
234
104
890
868
22
579
575
411
966
472
382
851
584
742
239
835
520
277
471
248
523
908
51
944
851
397
112
394
562
705
582
697
775
80
968
986
189
333
148
482
421
253
747
855
687
427
938
876
992
425
87
330
722
267
664
326
53
945
17
624
468
182
848
262
890
684
76
504
773
253
647
188
129
989
826
270
161
196
257
424
459
235
402
138
618
252
975
509
416
643
933
243
316
523
14
240
405
485
965
4
351
434
103
740
778
898
201
732
440
394
165
856
688
592
166
233
780
711
643
638
709
566
89
131
319
404
871
605
975
587
865
675
231
254
73
25
133
662
359
719
52
243
70
22
479
77
555
723
358
780
460
693
842
327
295
784
346
972
421
374
27
595
756
852
528
489
626
435
520
142
101
119
352
923
587
466
497
67
652
242
849
149
248
195
128
172
833
903
959
288
678
160
241
985
693
456
487
217
494
989
451
120
204
217
680
341
342
918
740
828
288
280
321
179
525
878
348
561
725
357
655
723
475
232
463
941
877
367
231
131
979
280
573
662
791
729
944
32
515
786
830
914
163
131
1
399
839
62
460
814
108
925
492
137
335
728
645
972
753
739
464
975
687
609
849
8
707
658
388
796
933
317
47
938
527
740
560
344
231
64
102
815
906
417
24
55
788
436
328
64
85
972
278
776
323
855
227
554
282
992
692
182
674
664
880
791
879
553
610
594
168
301
741
689
637
648
69
271
586
795
220
271
331
325
712
961
39
270
616
671
513
6
62
238
372
920
142
243
536
232
175
235
825
734
895
783
231
588
139
674
786
956
967
487
773
421
851
350
952
918
753
609
936
938
81
162
239
504
318
717
506
825
734
355
620
984
446
597
429
928
731
450
132
941
885
557
38
574
465
950
70
792
291
618
479
566
298
886
653
733
544
727
271
421
168
961
222
613
867
788
975
255
920
24
188
303
478
995
54
524
124
664
39
368
648
714
535
117
875
54
686
559
943
696
384
5
180
710
773
924
336
425
707
676
975
815
872
267
431
176
88
303
832
130
609
879
688
903
773
454
426
105
738
813
102
416
311
224
640
183
123
768
222
130
189
699
957
362
392
833
842
269
686
700
966
384
726
814
87
504
316
277
937
320
498
231
687
893
574
559
504
648
627
248
54
320
82
703
941
909
922
326
511
939
611
158
419
38
847
718
689
497
138
136
867
845
830
901
632
957
13
65
787
832
329
195
641
439
646
646
302
24
873
178
582
989
766
997
708
341
811
649
46
855
870
8
511
492
381
208
489
181
72
983
896
857
538
678
611
417
516
980
392
202
417
665
623
959
553
877
80
833
193
292
146
364
19
932
962
322
683
150
58
439
157
122
952
889
281
724
451
89
387
291
824
831
257
844
439
205
384
551
939
503
129
656
987
780
837
533
839
606
715
289
734
367
922
953
45
295
713
734
679
828
426
991
447
901
467
315
107
174
493
758
937
133
211
555
310
501
134
173
53
748
885
844
373
98
557
458
909
304
800
144
492
650
871
111
77
138
209
86
313
523
426
666
114
957
352
601
156
367
643
543
162
540
681
931
943
582
618
349
344
10
405
802
374
349
267
288
261
100
478
173
292
48
859
530
322
220
731
415
746
956
302
542
661
257
982
951
968
940
168
495
519
860
742
304
118
623
292
764
691
65
341
56
889
470
251
114
680
152
609
724
850
204
603
388
707
862
142
117
367
315
319
321
932
982
654
432
306
556
412
699
927
966
724
681
616
247
653
192
6
868
271
817
331
443
644
315
257
354
596
256
482
176
398
376
745
20
123
906
815
819
807
125
740
909
797
883
479
921
772
461
210
949
111
498
45
502
989
489
338
339
176
951
959
156
218
751
569
348
936
596
124
746
377
187
62
147
78
422
646
761
836
335
582
136
47
532
65
899
332
244
31
634
568
476
643
855
165
584
692
46
315
132
985
177
338
463
573
923
437
897
424
567
842
577
503
840
370
824
110
686
686
670
17
692
565
489
179
900
544
206
982
493
730
601
446
704
349
405
798
583
959
142
463
434
819
463
791
991
972
802
486
340
474
7
359
644
116
294
611
848
285
672
380
231
915
930
837
242
131
799
492
964
26
526
726
545
208
582
872
102
698
188
928
741
720
642
20
724
242
802
589
56
794
950
299
287
761
232
519
888
625
549
860
174
311
521
315
947
280
814
437
533
422
509
150
98
744
639
511
274
911
114
1
329
210
437
171
76
228
440
784
976
64
983
477
149
327
755
431
200
328
73
444
428
365
56
633
285
800
202
543
123
720
245
977
512
549
531
963
874
350
239
720
839
31
461
470
439
33
1
770
989
208
312
946
839
669
573
964
154
803
885
275
26
896
661
256
818
6
965
600
796
791
556
849
89
353
605
398
903
586
195
253
800
432
554
914
408
299
139
842
976
567
809
72
464
963
694
943
369
205
651
433
68
401
974
198
652
463
858
487
65
176
61
568
608
633
475
594
343
747
847
520
867
123
623
229
981
485
385
125
658
661
29
699
934
762
185
399
458
356
263
945
441
652
777
801
507
242
463
830
489
101
601
622
358
132
565
944
777
745
217
167
78
733
828
404
147
362
634
845
449
77
137
986
484
901
80
216
345
822
722
739
22
554
636
557
61
407
341
802
197
240
622
712
140
96
868
707
823
374
654
146
608
617
382
413
964
614
138
456
53
350
599
954
24
477
145
523
98
271
343
739
21
831
649
209
455
424
847
389
34
372
393
971
168
577
132
404
172
224
593
446
270
885
750
847
640
667
689
662
950
345
609
552
31
915
126
776
968
174
958
540
767
748
422
680
957
628
787
447
346
741
351
874
678
896
470
135
82
802
568
787
735
186
438
688
763
840
940
253
451
355
435
998
265
53
679
521
464
70
889
13
880
243
317
210
993
735
874
135
446
990
695
167
605
171
805
581
311
733
917
117
688
534
995
990
306
353
609
625
217
948
670
12
912
556
907
493
868
228
695
28
966
806
807
460
660
269
394
95
248
98
211
730
153
773
324
346
247
327
904
641
126
249
917
498
321
684
255
49
263
313
712
83
39
889
150
882
727
535
331
37
958
514
377
120
737
940
858
140
232
562
246
542
324
54
902
718
888
310
140
975
15
345
832
935
385
128
692
263
623
442
619
712
995
867
683
611
871
798
760
380
825
115
816
700
67
171
759
985
987
432
993
417
395
355
23
614
682
442
734
609
248
595
516
790
943
534
547
456
370
291
846
91
550
759
150
899
528
132
868
215
369
706
276
191
449
202
317
641
845
69
929
430
65
151
133
230
598
27
757
533
623
304
615
697
586
902
867
636
206
123
86
550
573
519
241
542
320
325
341
741
218
906
610
302
362
417
27
399
627
919
301
501
375
336
591
66
92
579
605
546
334
681
435
723
982
379
856
546
909
590
910
273
685
16
315
717
693
314
335
170
876
469
9
286
821
585
176
238
927
176
450
741
720
795
408
536
471
887
319
982
560
481
489
37
10
29
815
359
21
874
372
777
244
436
670
865
673
150
901
398
203
618
618
734
140
169
553
890
608
778
247
805
994
353
609
395
979
971
276
793
769
817
217
54
803
672
498
284
125
542
863
321
986
920
779
941
862
755
897
841
475
925
750
242
627
567
783
890
827
275
886
701
873
108
629
386
402
565
930
467
671
269
766
67
914
926
818
75
573
667
532
224
75
435
319
843
68
974
426
237
889
607
457
849
656
163
447
878
292
394
540
298
825
430
170
206
159
684
327
701
748
709
318
160
743
662
627
439
789
785
319
427
139
694
578
65
811
916
410
752
479
940
782
179
127
235
399
644
265
113
685
383
647
725
488
181
289
297
107
993
535
9
89
506
76
113
159
131
852
106
394
243
274
575
222
808
926
139
33
508
264
983
174
677
101
935
780
413
207
397
775
515
810
417
218
471
851
277
104
15
76
268
792
160
718
442
110
73
504
680
255
150
264
599
730
552
834
411
406
141
333
746
924
455
331
879
433
857
358
751
956
650
36
19
432
995
191
15
959
658
825
707
909
526
143
625
251
212
686
665
636
440
870
962
682
330
344
337
828
838
10
253
715
752
724
604
115
246
167
735
361
819
452
747
315
625
836
398
313
705
629
222
171
692
115
516
779
73
337
102
651
854
186
121
649
573
992
157
802
538
511
6
45
950
304
816
988
124
648
57
494
945
24
123
210
788
82
23
638
209
825
42
908
65
85
507
634
331
99
741
632
679
596
775
195
624
177
221
388
298
527
655
425
280
608
705
830
64
911
860
492
970
519
594
712
470
97
979
866
797
183
657
26
906
425
814
350
249
928
585
612
860
635
340
681
171
616
628
457
379
676
570
419
238
249
662
160
3
63
725
527
197
354
591
115
870
630
518
855
793
356
582
135
327
249
631
335
180
912
542
853
468
523
488
121
612
238
787
657
762
655
347
186
204
58
415
507
45
226
811
540
98
772
663
23
94
436
93
989
618
327
980
90
521
871
59
673
865
470
502
632
842
861
94
139
9
397
931
269
834
125
291
953
102
2
756
696
860
466
28
177
145
798
40
435
674
258
664
332
999
741
641
574
723
179
698
237
679
524
14
697
504
824
156
493
36
27
988
519
116
363
813
400
443
326
487
44
821
658
464
751
732
599
270
93
483
717
231
922
303
519
17
336
452
330
672
321
643
546
400
648
270
145
217
636
928
241
132
398
691
654
416
21
61
263
964
905
555
63
11
319
795
66
217
596
346
477
948
113
653
167
401
275
259
816
482
587
382
633
165
243
585
833
231
648
104
995
276
190
366
767
766
580
536
81
852
205
928
621
290
451
293
20
744
525
254
141
762
244
780
377
523
921
898
767
734
962
834
568
493
350
202
758
746
885
400
820
739
178
964
278
659
761
344
713
949
566
90
706
395
963
234
33
409
989
245
844
682
768
347
889
370
361
128
939
250
534
273
858
125
433
401
584
279
503
718
761
578
185
818
169
873
129
173
529
117
169
350
757
641
556
139
971
831
75
907
298
633
404
464
416
293
231
581
961
562
649
753
905
271
483
267
497
950
179
17
242
188
599
823
81
184
515
217
569
295
430
752
205
596
420
128
175
721
402
875
642
547
212
966
467
416
444
486
159
289
642
21
653
58
665
110
35
581
383
232
777
14
12
666
133
896
548
310
850
355
93
775
549
303
374
695
976
632
356
664
740
29
59
280
653
410
100
147
930
311
94
593
339
170
98
629
535
545
834
570
867
134
636
804
197
866
472
350
683
970
133
403
226
718
492
748
955
732
14
723
797
402
380
540
262
499
437
379
206
745
160
431
797
785
796
606
393
254
84
786
937
749
463
960
178
690
368
620
678
349
674
803
532
112
773
466
754
97
543
697
430
93
145
938
810
701
605
440
921
885
356
701
648
227
785
48
938
419
362
571
132
817
701
856
72
357
899
686
12
331
852
297
711
386
357
844
605
525
150
476
86
927
698
792
993
972
155
305
326
725
527
335
734
971
566
613
392
289
867
454
802
919
429
591
34
59
989
263
869
941
443
414
270
885
486
204
119
909
862
99
202
595
360
287
803
517
563
739
819
744
453
316
657
695
674
166
499
108
758
935
983
892
436
385
282
114
66
849
486
362
494
483
426
768
253
208
560
142
787
517
496
250
443
125
489
127
756
574
211
320
705
11
151
927
116
310
159
974
5
690
452
713
254
458
251
969
889
889
443
467
605
357
320
242
439
733
449
311
896
155
357
491
638
167
657
483
333
499
653
942
49
586
138
97
65
782
996
985
874
519
237
867
132
743
714
349
691
908
488
382
861
848
78
849
334
960
76
87
800
767
637
391
236
500
419
20
219
224
177
657
737
463
437
378
918
489
359
894
452
309
792
425
12
272
82
200
508
289
763
105
707
909
185
107
882
846
631
632
325
694
130
467
731
830
645
398
412
700
931
844
602
181
635
492
974
213
379
964
418
220
512
930
460
73
949
827
279
330
495
72
858
727
570
757
180
325
693
181
626
684
788
807
357
918
502
526
275
692
132
670
467
667
214
106
183
199
7
658
881
817
119
82
206
860
986
874
611
877
313
650
519
199
338
733
431
705
574
541
570
424
552
586
198
825
604
191
513
465
575
980
319
36
300
808
565
706
602
497
932
628
915
398
379
482
152
269
329
481
674
478
624
465
88
457
265
532
884
380
256
795
362
146
302
332
332
484
898
529
168
725
103
77
609
942
508
155
207
716
674
336
862
33
790
98
357
853
947
842
544
34
822
222
242
138
266
769
96
47
151
667
370
799
313
949
375
548
856
145
949
111
325
169
706
920
933
329
356
205
975
479
536
57
985
135
902
881
835
471
677
738
60
161
565
7
965
63
720
841
722
808
996
802
893
433
708
654
515
322
205
936
414
890
72
672
131
314
814
178
47
494
712
386
468
211
51
165
603
700
954
870
609
514
483
167
482
734
163
552
427
249
366
514
267
740
325
170
90
893
875
652
249
542
795
229
97
611
334
683
383
543
51
815
367
334
328
900
408
904
190
397
151
262
750
797
128
199
119
728
885
881
76
710
824
302
622
68
719
254
71
871
400
480
170
884
199
551
147
932
412
425
761
186
703
479
502
987
791
998
101
897
492
606
797
502
467
340
990
66
712
261
181
154
833
319
997
670
92
866
598
577
53
187
316
461
120
890
8
346
800
635
276
721
154
173
379
794
683
668
418
858
561
82
220
152
244
608
352
384
481
831
895
925
400
523
845
306
290
336
383
576
333
644
265
78
984
460
999
660
939
204
987
424
449
740
17
970
966
165
218
511
539
623
864
968
739
350
321
631
327
74
504
347
286
841
525
916
816
142
167
783
608
692
445
278
844
472
477
660
507
874
339
126
119
871
38
710
779
297
339
635
140
369
333
866
699
640
139
607
215
100
155
824
997
434
902
847
178
587
125
268
873
661
124
452
734
379
229
414
804
814
138
520
803
532
644
240
359
578
579
205
334
870
445
408
720
514
129
685
968
191
532
193
172
71
762
478
246
880
132
321
412
724
803
400
961
635
21
465
789
663
488
600
8
920
934
4
216
716
732
221
250
543
446
614
283
944
348
733
769
167
994
478
447
258
792
610
67
46
446
85
493
663
895
306
702
932
185
252
137
759
262
530
148
911
71
868
278
189
118
18
288
288
695
623
669
10
154
750
128
325
936
171
270
648
727
587
648
140
911
350
759
97
596
11
904
464
330
535
187
924
332
878
928
429
797
206
967
272
636
692
779
435
124
811
823
92
260
500
185
484
220
138
278
767
258
191
691
685
719
205
679
618
563
203
993
58
243
841
851
522
619
376
504
219
571
325
972
785
188
812
205
830
351
703
704
194
601
161
171
606
514
283
553
432
13
161
871
921
818
765
849
419
649
662
864
844
634
59
197
932
219
906
497
907
1
849
267
859
499
799
457
82
670
245
9
337
823
72
207
410
453
52
966
423
962
786
182
688
839
860
559
542
964
239
387
607
785
646
432
164
894
13
422
19
308
768
748
404
654
527
22
563
852
787
480
168
940
75
944
214
668
578
21
638
241
914
118
432
858
401
552
177
639
43
516
441
629
947
115
195
38
777
35
312
838
995
690
178
758
220
667
710
701
218
496
316
991
783
778
393
651
317
546
253
975
844
923
809
271
39
539
992
960
749
177
890
544
708
800
245
225
939
673
638
734
841
476
422
547
200
449
845
170
721
544
721
232
781
337
994
73
881
906
720
681
674
750
951
42
605
771
283
983
533
169
711
643
907
519
134
369
502
262
71
589
693
823
239
206
455
659
763
372
805
173
343
34
953
957
61
92
524
380
942
429
167
861
636
553
832
79
324
263
203
625
571
620
835
131
987
850
511
746
586
946
9
911
178
361
825
678
690
950
458
42
845
122
320
642
423
832
187
685
374
377
335
501
169
181
601
723
198
822
970
210
581
777
793
995
421
255
683
276
727
155
388
374
804
162
780
449
301
193
707
156
663
825
372
210
612
508
742
997
759
103
480
867
979
249
461
68
328
324
222
169
149
911
958
219
988
960
696
8
400
152
423
6
116
814
546
755
405
584
384
912
513
685
516
624
675
521
394
556
701
712
122
976
971
539
7
752
867
154
221
651
811
735
598
608
680
475
752
166
702
705
662
743
940
309
656
463
396
334
544
468
566
141
307
687
31
446
34
576
808
794
888
252
364
732
102
777
88
908
943
200
768
229
853
995
51
378
36
662
883
543
357
533
609
752
86
670
429
910
577
234
441
177
357
908
817
410
380
209
208
878
375
488
390
344
699
337
288
311
637
652
410
372
692
265
438
355
643
611
646
431
348
178
331
709
759
592
871
945
178
640
998
827
455
6
168
869
144
265
54
748
383
118
273
925
824
70
484
93
470
463
767
768
562
776
530
198
157
680
585
107
465
342
134
997
653
582
916
687
97
569
211
379
558
898
49
231
905
406
885
690
109
779
475
714
873
231
266
678
475
970
712
463
680
946
283
41
983
275
272
242
153
796
996
901
252
389
210
664
728
300
292
751
794
894
998
686
866
420
125
423
317
239
213
126
856
748
698
612
615
8
247
630
134
644
538
313
783
574
462
484
21
602
950
175
678
960
668
785
947
597
174
564
151
848
925
914
583
870
45
504
690
598
49
720
54
662
618
151
357
686
903
293
957
640
403
714
288
38
448
895
80
913
664
18
833
682
480
285
719
623
729
912
529
958
794
422
553
231
122
17
343
518
428
262
693
881
606
510
446
211
627
546
423
150
424
777
933
32
886
371
182
333
431
734
956
990
764
999
846
980
161
57
916
431
552
562
485
402
324
952
76
970
838
508
996
184
490
380
534
18
488
522
344
751
835
11
87
694
305
703
117
607
664
466
51
570
630
991
597
862
292
532
707
934
295
212
494
923
737
773
500
385
465
828
492
638
713
165
596
542
475
790
98
621
835
469
306
373
458
427
553
499
782
672
725
956
815
410
457
623
516
164
957
531
203
732
142
835
973
412
856
465
395
56
387
501
434
86
99
825
905
122
465
310
220
2
602
793
104
535
823
303
708
973
26
312
833
566
419
104
327
471
399
47
570
89
104
727
285
225
522
729
311
631
717
395
698
647
311
202
131
348
732
439
588
553
756
422
30
75
668
868
667
995
499
435
722
419
739
132
897
874
508
878
13
95
991
78
256
630
614
186
255
218
972
978
739
960
458
18
332
681
698
211
557
654
62
316
133
283
673
279
907
180
304
256
840
853
426
493
561
679
167
399
461
482
614
450
23
520
695
761
960
722
799
216
177
298
322
359
33
676
944
972
957
335
278
76
913
717
139
886
534
964
456
652
515
299
750
75
41
612
294
613
587
911
319
186
380
88
80
542
531
68
461
885
734
194
441
126
204
539
536
306
381
809
228
995
267
147
701
877
548
248
319
421
383
332
386
47
17
93
695
826
638
596
356
467
504
570
918
322
858
624
871
502
76
988
232
778
683
323
919
233
387
202
994
284
749
41
503
403
808
395
109
111
843
709
668
784
454
761
492
696
229
380
20
923
376
816
345
395
101
608
363
694
174
462
440
436
601
72
717
464
68
515
513
463
516
760
658
367
320
447
324
922
830
223
5
7
183
72
907
932
695
109
303
201
32
415
937
381
270
233
184
382
44
29
628
713
866
556
407
615
159
978
75
653
284
441
863
950
458
433
253
529
165
784
768
959
213
313
431
102
823
277
97
88
264
941
878
802
595
291
141
626
665
292
774
717
34
649
916
591
551
986
923
836
979
654
218
259
260
669
501
553
125
306
792
881
881
986
389
342
562
62
356
168
293
626
864
873
11
52
925
563
397
840
551
837
354
261
109
610
724
619
543
925
790
587
502
359
500
892
835
48
261
574
30
489
630
755
544
353
789
345
249
209
743
937
156
285
755
954
528
621
878
779
618
942
518
430
378
705
125
505
373
119
216
878
303
823
811
62
208
598
716
755
820
380
371
335
183
852
432
218
604
545
364
215
170
481
956
87
970
200
378
839
229
285
971
130
992
864
634
333
473
693
747
930
904
123
958
238
572
184
248
525
274
907
900
828
754
2
709
822
867
725
91
9
220
877
526
536
409
241
342
318
219
99
744
911
798
434
310
47
522
718
514
787
951
853
566
322
384
143
375
991
156
812
466
748
602
738
710
28
596
423
828
332
842
929
307
175
164
989
30
321
691
662
300
149
211
304
57
367
312
205
153
266
865
351
163
407
632
995
309
60
723
283
450
100
889
183
945
23
547
391
159
394
113
55
300
493
512
318
537
299
682
344
715
392
271
563
466
491
767
899
542
168
681
970
598
409
213
201
259
29
359
35
820
921
47
758
153
811
52
669
894
315
458
11
378
380
567
59
828
327
716
454
256
647
848
990
713
143
457
890
281
312
59
509
939
648
523
794
345
512
410
655
440
99
6
228
709
670
592
218
841
154
372
931
312
904
779
174
74
56
45
11
354
161
388
583
256
949
71
730
856
773
713
316
917
62
15
157
642
620
282
43
550
239
49
128
939
127
197
35
869
350
721
290
468
399
301
279
710
422
971
759
600
862
362
69
440
56
15
251
890
622
531
453
774
2
460
116
113
261
643
130
753
36
861
506
53
424
848
518
760
736
447
220
649
522
443
687
876
980
687
883
113
945
145
247
819
269
515
466
939
186
167
450
778
842
6
564
2
856
17
17
207
496
490
155
175
312
803
252
559
772
239
132
573
759
17
807
891
614
687
784
909
383
579
575
570
996
441
806
516
879
686
21
964
671
677
616
456
990
72
508
465
263
907
167
946
35
876
19
825
199
672
388
170
233
107
824
917
915
584
178
870
996
736
679
87
218
168
902
83
400
352
901
542
179
319
646
476
413
628
535
121
423
980
318
207
299
851
732
564
852
699
541
406
893
638
468
527
228
81
729
866
974
936
426
846
771
845
990
913
461
349
504
287
49
58
448
16
418
472
787
367
436
338
231
700
811
495
648
541
851
119
248
333
899
669
146
486
555
472
436
453
861
818
103
504
195
254
357
836
191
452
110
756
293
362
430
636
706
725
36
276
198
449
63
343
102
172
387
380
912
961
461
946
36
335
505
618
235
726
505
557
139
812
351
399
10
492
41
537
239
509
780
830
436
161
256
413
756
760
403
24
866
976
923
229
991
163
720
957
856
812
402
979
220
478
137
385
98
663
333
610
132
850
142
404
181
631
510
875
79
93
861
475
324
482
691
162
888
122
408
846
771
83
681
426
108
801
611
958
24
870
315
93
428
793
891
17
835
520
49
361
652
844
878
763
951
927
655
737
786
974
496
975
256
486
838
50
169
716
296
379
20
551
851
209
778
768
47
531
590
674
327
369
74
48
194
927
204
917
475
181
147
873
173
50
374
340
837
941
954
842
847
120
224
670
341
102
993
670
985
183
880
124
147
112
648
128
902
209
292
910
846
252
241
116
232
147
379
802
834
439
931
105
576
748
827
208
145
403
706
93
933
533
931
292
300
24
726
61
401
247
437
629
650
44
996
596
878
109
438
194
723
191
835
547
252
775
547
399
285
440
982
499
502
199
977
313
320
949
815
209
421
318
401
588
2
303
455
532
752
231
330
37
964
513
370
742
697
385
41
525
476
328
775
961
264
937
127
451
67
683
276
928
294
230
773
405
790
248
546
948
321
15
647
54
111
946
534
988
829
235
615
935
908
291
732
94
543
440
325
64
176
5
466
69
955
401
743
735
739
965
952
450
838
92
205
462
681
721
850
317
403
138
621
832
69
340
21
3
497
680
861
350
923
482
773
316
549
578
99
710
204
799
250
863
282
165
98
817
86
270
412
821
590
8
660
38
383
633
1
615
380
740
238
60
104
602
527
357
319
888
913
103
623
140
113
604
888
757
550
903
243
204
916
228
268
41
760
915
822
735
933
915
578
483
330
464
561
190
760
679
638
740
498
198
357
310
199
450
894
56
149
625
83
97
373
177
823
11
792
64
842
612
534
583
954
997
525
140
810
649
44
699
997
870
266
502
705
719
870
958
842
311
21
766
586
309
832
481
111
153
641
550
398
697
837
26
207
914
243
359
784
59
640
246
13
450
627
213
831
870
472
104
141
834
221
532
591
768
997
646
166
45
30
657
8
494
302
301
34
240
296
791
476
512
174
783
670
775
753
137
681
620
650
240
681
537
410
564
476
306
435
438
917
596
194
740
30
983
238
519
149
327
179
591
574
680
627
629
660
438
861
816
15
860
965
545
395
789
975
471
84
737
825
727
805
858
873
880
318
433
754
687
537
235
987
355
441
59
665
1
910
781
903
38
444
619
423
57
631
648
346
240
8
767
435
411
502
452
786
716
807
747
311
228
683
175
279
780
873
611
105
336
124
974
561
303
834
787
283
187
435
817
249
670
88
514
679
770
800
577
852
989
272
949
194
163
470
676
354
270
340
643
184
21
544
10
117
34
207
132
577
715
169
600
282
989
499
640
140
170
495
509
980
296
758
115
64
175
781
398
832
159
433
13
846
792
633
228
126
78
398
646
563
668
1
138
820
672
668
204
664
829
536
185
775
831
663
887
263
429
945
942
253
808
299
419
282
156
753
489
357
271
515
63
772
848
945
312
296
620
294
392
507
577
734
3
622
248
238
16
129
746
965
697
132
455
394
754
369
582
856
664
919
179
847
393
315
474
413
926
885
351
592
643
135
554
436
675
75
296
796
35
918
737
361
611
306
818
930
317
455
191
942
714
764
630
472
329
730
341
688
149
835
311
130
777
154
322
562
578
20
719
680
74
785
822
746
182
817
237
88
497
543
96
472
694
409
877
879
505
82
107
945
733
608
647
199
607
608
583
457
983
256
353
297
736
511
869
928
942
883
291
511
494
254
191
606
739
839
435
369
277
443
57
496
912
773
946
465
139
623
139
574
235
779
105
242
191
799
735
184
540
949
936
622
791
596
452
480
418
42
460
768
173
214
181
540
200
856
384
962
565
404
790
319
745
716
276
714
149
949
415
940
105
252
829
327
506
435
704
317
322
466
48
97
164
370
402
21
599
564
42
334
415
773
618
136
159
618
876
75
321
738
331
469
626
519
664
920
385
853
34
765
153
68
640
100
357
693
156
375
315
255
115
585
907
82
525
332
633
693
168
888
558
629
996
584
135
578
471
644
706
481
636
746
531
276
182
348
133
519
779
466
462
502
760
66
623
746
561
544
994
333
287
691
685
145
208
523
72
57
964
778
222
511
668
834
619
368
54
632
900
177
199
115
913
702
426
57
869
930
960
388
18
926
650
374
194
944
62
386
69
658
277
76
555
2
244
950
833
926
447
256
692
929
644
817
134
173
777
983
718
152
653
141
96
576
760
296
861
295
640
674
307
668
563
242
900
124
559
912
458
476
223
943
484
705
695
89
283
832
241
22
167
79
667
917
6
136
979
978
241
948
89
538
286
772
948
25
366
402
916
11
613
865
525
243
928
709
657
391
880
672
14
30
55
618
507
229
1
646
237
764
144
581
671
509
387
684
657
711
756
671
722
880
915
231
408
302
553
425
989
296
479
589
98
569
935
60
484
667
266
720
25
720
166
153
866
33
194
17
856
244
53
945
634
210
949
133
114
824
211
206
675
575
657
941
285
554
484
103
573
327
201
989
445
37
646
3
714
763
364
376
108
537
569
746
244
534
955
887
619
803
946
660
457
61
45
449
63
225
867
313
548
92
443
529
43
63
500
597
564
947
418
350
461
835
98
139
7
911
698
751
598
596
484
770
380
541
533
385
991
197
939
490
896
51
827
17
94
40
703
181
34
359
324
672
385
597
200
622
962
906
443
152
526
117
714
951
607
672
149
502
529
116
606
367
8
927
454
410
8
81
45
966
208
517
718
240
273
811
386
783
342
911
422
86
754
787
964
780
337
875
409
422
890
201
652
918
753
957
664
457
143
789
614
882
861
476
943
10
398
475
679
796
287
365
161
618
693
520
612
220
963
674
73
132
672
623
76
8
864
799
487
316
148
928
641
552
297
540
224
278
844
954
382
861
197
613
135
525
40
34
226
233
345
445
493
469
716
483
210
239
400
936
145
598
988
364
649
358
724
609
322
153
297
335
376
10
293
212
935
59
488
550
967
831
574
254
970
702
435
173
835
814
330
985
877
907
809
783
873
832
964
776
801
431
712
73
936
11
70
484
176
505
547
152
750
849
969
314
25
734
393
946
922
552
774
508
822
312
457
468
200
510
338
104
95
711
749
537
119
501
318
960
633
951
996
330
267
179
235
29
938
496
759
140
439
19
853
249
656
205
251
624
554
601
285
666
168
444
58
39
101
432
195
523
416
433
313
971
556
445
241
643
77
429
530
704
750
198
664
76
857
500
880
914
251
693
407
33
667
330
162
823
122
196
927
506
301
236
724
7
705
882
693
212
963
607
548
125
72
580
915
969
779
981
181
600
552
281
272
722
26
281
305
227
283
417
522
881
501
24
403
514
474
658
371
975
807
668
950
643
146
282
961
87
414
192
45
141
15
328
953
20
964
2
980
424
577
467
929
547
86
666
624
48
177
401
496
122
610
206
792
884
331
628
576
744
320
219
812
91
373
382
866
174
70
384
550
472
677
946
399
341
738
404
558
479
658
913
909
13
696
923
530
809
535
70
689
336
425
237
105
358
654
838
174
703
800
451
978
793
851
24
444
663
806
452
146
926
71
97
86
407
309
800
394
450
851
58
638
1
694
214
47
441
842
41
686
900
230
854
679
208
935
116
162
672
479
866
3
83
923
762
266
328
151
698
49
854
444
724
852
743
812
977
100
637
976
4
821
766
766
246
697
216
418
878
471
194
638
722
970
984
55
556
77
931
948
718
290
145
991
832
456
506
3
936
396
957
17
524
696
476
46
237
317
678
66
51
910
273
227
855
216
722
753
867
688
256
901
168
689
258
713
677
774
934
790
191
213
482
483
514
177
115
27
495
939
818
239
398
865
898
808
18
917
136
616
733
752
136
248
140
57
848
835
438
762
369
462
383
888
874
837
429
790
713
679
102
696
259
927
870
18
503
303
790
450
696
759
639
318
57
439
78
234
344
457
328
279
588
732
571
356
856
510
990
61
379
228
204
457
515
37
493
208
378
122
553
546
45
987
67
609
823
65
831
436
760
196
447
256
351
822
108
527
357
514
162
993
312
730
72
469
556
182
803
21
945
869
856
222
904
782
234
601
665
962
533
791
678
555
301
184
780
947
106
692
928
966
851
863
960
560
235
315
916
598
54
641
262
811
491
890
339
225
352
569
589
507
862
394
980
370
315
757
429
887
688
608
76
112
92
979
19
992
261
344
548
919
685
68
908
892
530
867
65
411
844
556
596
537
103
422
105
457
882
590
245
477
885
29
909
446
565
150
720
511
871
346
964
8
21
669
821
794
486
89
840
448
692
19
43
133
12
539
9
669
875
561
111
671
100
71
34
656
158
463
327
380
147
553
539
499
591
588
516
433
601
310
971
793
749
797
784
866
986
777
434
27
142
52
636
311
236
294
908
950
636
166
636
23
761
461
301
140
480
544
541
423
23
575
69
565
590
317
921
303
286
168
670
381
30
301
239
96
916
228
263
298
680
566
797
435
674
949
32
289
496
645
387
443
236
11
5
566
982
72
721
918
372
605
665
468
496
255
992
461
223
206
223
252
281
243
743
457
777
633
891
640
285
632
807
641
780
228
146
19
296
672
113
845
507
345
926
75
900
329
939
419
956
571
67
290
422
135
162
993
268
548
788
350
180
81
634
740
798
25
687
269
110
973
166
550
93
378
744
936
317
668
556
448
694
473
684
714
566
517
219
646
66
152
751
748
884
763
666
427
710
186
276
876
642
671
309
982
406
516
197
45
391
225
676
600
991
340
656
707
397
919
174
282
805
42
203
957
223
417
666
330
711
318
226
131
392
679
806
23
164
701
309
50
320
175
255
840
476
152
756
544
108
958
31
791
13
994
71
600
468
352
760
988
850
867
333
73
999
546
208
313
533
633
544
695
611
125
961
631
786
362
482
72
661
122
222
753
288
435
119
397
608
207
555
812
941
321
199
452
841
183
841
929
943
444
11
475
415
335
181
887
34
440
813
106
869
688
328
728
646
580
785
565
427
811
704
327
78
732
754
290
925
509
790
604
521
552
129
217
112
747
338
952
254
231
364
169
394
449
942
253
992
470
806
262
397
277
502
133
739
684
397
683
580
890
962
524
649
209
585
318
560
111
617
899
242
832
311
197
447
535
932
629
790
501
298
455
703
528
208
244
50
995
478
428
350
654
372
364
269
839
519
186
864
624
692
882
853
907
20
564
966
306
685
205
751
768
893
80
593
507
821
122
2
341
268
564
633
190
549
587
461
946
928
607
16
747
765
166
808
415
602
795
509
643
278
744
311
274
676
582
761
293
771
762
19
398
185
523
356
128
250
664
358
432
104
20
378
78
189
4
3
728
271
178
904
26
612
358
64
524
254
359
513
966
826
168
176
166
589
618
563
242
809
680
165
938
438
77
540
259
366
233
85
672
579
34
23
593
857
993
786
826
460
832
874
890
151
392
606
936
843
212
489
570
441
760
918
590
13
966
588
535
817
804
158
22
275
841
388
793
145
583
309
595
832
736
782
977
806
275
788
47
471
603
415
155
743
514
232
818
115
433
580
890
406
251
9
655
674
852
616
310
5
812
792
261
902
893
738
704
978
940
783
738
179
542
65
215
389
4
278
760
609
569
678
711
3
418
190
581
727
128
304
954
658
478
42
658
811
155
252
850
776
528
840
174
650
841
712
864
187
794
266
670
574
856
700
435
135
81
258
485
704
157
976
851
637
829
81
700
500
406
403
235
751
428
984
82
728
504
62
161
705
326
395
933
861
633
380
802
778
607
524
731
896
767
146
619
551
989
537
821
761
13
364
781
392
32
919
147
872
619
707
630
19
97
779
378
762
44
989
4
449
279
922
893
881
671
338
984
282
365
530
738
967
241
400
693
961
614
541
830
714
233
929
159
899
894
713
800
988
768
856
508
999
533
372
483
90
471
899
721
693
934
864
507
89
968
662
777
697
86
417
148
502
160
290
216
349
763
993
986
958
538
996
514
508
23
739
434
869
916
603
490
714
820
137
779
369
423
71
930
232
935
103
902
352
709
6
839
244
156
134
327
477
912
763
155
938
350
998
66
230
229
908
780
483
926
433
682
23
510
847
926
692
64
755
24
436
95
163
799
18
899
191
714
782
277
13
802
57
981
841
19
424
6
701
4
27
323
420
425
276
323
816
734
308
208
635
414
158
740
719
844
187
199
49
330
39
194
997
207
913
631
626
41
668
828
502
687
362
751
996
114
674
737
524
694
83
456
406
575
642
599
644
317
263
997
831
226
956
371
965
832
325
213
512
644
697
775
66
480
706
947
53
406
743
606
170
450
675
354
248
582
788
423
565
315
987
309
778
671
996
277
730
991
786
164
788
461
226
879
997
307
390
926
869
694
547
238
573
656
827
382
550
603
124
383
45
902
648
198
657
389
997
395
483
429
217
61
620
580
818
708
224
796
357
940
192
861
554
870
767
749
735
122
843
615
727
128
867
403
119
886
813
28
222
609
310
995
444
440
477
486
618
993
838
120
158
754
247
184
191
184
349
778
430
907
653
875
551
868
702
90
194
217
462
931
895
197
574
747
630
197
417
114
393
282
132
742
284
724
457
972
881
684
212
935
538
35
597
315
955
435
444
576
737
388
293
401
531
906
224
961
180
499
553
993
766
235
385
148
776
911
591
827
412
729
208
509
5
527
394
860
599
260
792
196
753
841
377
6
989
730
211
377
500
495
793
383
131
219
169
304
650
450
538
44
843
616
165
8
180
783
396
5
513
364
363
920
706
358
241
924
857
379
159
46
701
215
327
916
936
825
378
786
358
91
210
150
721
748
352
138
677
369
825
207
335
206
863
137
132
873
676
773
978
244
446
271
291
493
342
629
289
248
72
354
405
610
647
423
154
214
199
958
7
103
248
488
554
952
711
496
351
191
785
64
150
605
808
114
644
938
858
228
407
722
848
429
298
471
801
724
559
441
982
918
674
717
766
875
995
957
717
339
782
846
279
99
463
8
205
800
801
533
778
215
356
970
551
284
255
819
191
83
151
986
937
909
209
866
389
432
838
933
118
686
222
519
446
560
444
750
965
290
267
2
922
26
662
767
562
703
167
483
620
177
767
635
189
796
909
369
890
596
618
772
961
868
415
92
993
837
525
991
839
505
853
900
815
150
64
911
248
441
305
686
266
356
313
941
919
586
330
650
651
76
859
370
671
495
40
55
610
570
774
725
178
175
643
115
323
866
819
39
732
997
122
449
292
932
506
605
555
474
173
407
507
875
341
764
645
484
229
320
111
10
302
677
666
579
508
92
713
199
618
53
766
292
917
653
954
410
78
739
989
434
499
136
398
368
219
303
834
879
469
839
638
500
928
723
696
444
783
713
424
415
892
357
856
120
640
216
957
687
809
235
406
489
331
676
510
166
279
299
361
206
257
833
729
778
415
267
363
195
957
510
627
365
316
575
542
142
280
279
727
4
345
148
70
234
434
149
169
253
213
530
166
484
352
219
158
59
628
78
704
373
852
763
729
300
608
41
174
756
134
368
885
1
572
358
860
110
764
495
345
267
99
111
981
428
345
143
14
97
417
483
514
203
574
354
151
582
419
770
626
393
974
413
119
845
645
165
912
994
359
49
295
134
733
437
275
741
781
302
954
465
28
78
339
650
853
683
426
218
207
278
690
993
868
952
293
685
991
137
782
180
231
19
738
369
189
381
469
138
80
409
800
117
815
162
365
896
74
469
991
961
739
695
787
81
358
301
265
781
144
589
750
645
519
775
235
10
339
970
461
473
214
289
138
797
477
574
179
707
587
396
611
523
145
821
440
535
232
657
11
888
116
688
993
490
659
155
598
40
926
356
557
104
8
518
748
451
558
990
604
784
123
557
194
748
978
228
501
698
335
699
778
682
959
573
357
525
295
648
138
322
976
139
780
232
838
508
515
626
73
989
977
241
54
227
765
559
495
246
512
432
654
899
704
228
578
875
144
434
162
223
156
909
852
282
808
984
777
961
909
471
712
874
625
346
721
537
629
733
807
798
31
50
136
706
667
77
434
553
654
963
364
82
465
850
833
68
389
771
419
781
781
533
336
41
719
780
275
359
506
41
246
411
626
363
193
106
773
146
614
731
550
225
307
946
107
630
409
775
513
653
149
857
315
27
17
497
713
96
986
887
802
76
47
614
717
953
455
103
657
727
294
243
157
687
232
557
226
390
934
90
372
499
846
852
892
389
96
600
346
696
392
678
160
727
929
475
178
693
229
154
175
306
119
785
360
905
701
628
795
459
271
324
161
897
516
303
229
194
721
329
857
855
756
961
335
616
84
430
757
756
380
532
161
780
914
66
381
61
493
986
687
468
805
886
426
69
518
262
212
626
246
984
972
900
296
320
549
157
450
743
822
271
870
39
80
738
163
380
983
450
922
169
700
734
641
390
50
869
536
267
99
822
219
132
510
395
560
261
485
594
516
224
610
749
165
417
598
766
807
687
906
138
279
761
703
78
285
238
259
906
270
680
621
184
645
1
53
738
529
685
178
901
895
389
933
698
558
950
570
225
791
284
63
848
360
960
544
457
428
432
111
323
2
578
325
836
603
427
105
165
364
859
238
123
510
5
242
889
828
6
520
334
667
35
115
986
617
773
824
684
456
596
311
97
574
855
900
317
65
98
96
132
846
406
860
932
46
940
339
356
719
654
629
423
912
777
655
967
463
338
220
830
603
420
708
768
549
141
548
654
105
924
824
730
909
389
488
262
175
183
940
676
434
468
965
802
966
888
185
797
200
933
853
727
877
266
529
427
697
92
383
905
392
684
251
794
830
898
514
524
289
393
793
281
397
543
396
135
454
906
801
661
955
751
455
172
71
98
853
643
860
61
565
83
799
36
285
750
217
171
971
69
375
661
508
806
141
573
330
335
870
394
972
791
291
722
949
641
230
80
724
732
46
870
664
229
828
710
481
362
259
646
917
284
934
733
287
295
244
648
32
497
768
518
773
466
89
774
791
78
86
643
521
138
447
240
24
504
997
280
978
430
93
967
77
225
477
689
856
557
436
655
398
581
49
227
964
527
98
198
141
55
919
403
277
615
126
780
836
695
710
782
298
963
669
602
404
800
442
549
989
399
917
234
641
431
246
939
89
220
275
496
407
799
139
924
511
689
690
461
99
696
852
162
847
654
358
434
911
447
823
164
85
549
209
741
138
685
762
846
370
187
692
617
420
214
376
498
824
745
92
714
111
981
450
293
546
755
387
986
73
811
28
642
397
111
411
857
591
398
786
826
927
844
92
912
5
236
742
634
279
859
609
167
356
109
54
104
100
915
196
383
298
775
773
558
159
50
221
309
802
518
907
427
959
265
787
267
890
537
289
311
14
752
708
214
202
861
286
289
58
307
758
675
202
404
528
152
71
533
754
954
16
433
831
760
952
183
207
91
322
787
214
562
627
884
370
545
67
560
356
298
764
932
251
496
759
233
225
555
737
635
196
357
783
334
296
580
921
948
262
20
654
196
966
271
94
197
48
317
35
982
85
511
177
456
191
84
182
336
2
720
957
652
353
686
591
856
779
293
589
789
624
119
298
336
643
568
965
980
402
563
185
907
521
755
550
684
181
327
144
212
398
586
946
542
63
3
842
281
679
237
417
754
727
245
359
966
213
840
812
622
119
202
933
439
535
50
132
598
136
906
676
453
150
378
392
38
172
756
273
641
726
684
301
166
146
430
180
276
397
584
472
340
514
522
94
197
653
508
7
14
870
245
145
773
560
964
605
350
853
321
794
456
567
172
895
434
900
767
294
105
869
855
202
552
435
337
938
627
284
195
385
664
750
260
771
481
539
528
606
181
824
830
422
76
789
16
772
343
626
659
296
885
215
901
145
16
44
593
338
224
26
978
67
659
935
130
706
308
400
415
894
372
162
113
281
40
433
126
762
420
565
596
2
624
898
500
450
848
116
755
438
946
191
383
156
846
764
763
140
660
309
464
942
212
764
923
724
103
621
105
582
917
830
918
658
429
977
442
760
436
680
858
193
645
976
948
182
779
956
435
276
670
985
103
111
101
654
789
860
974
776
348
228
11
174
521
117
272
724
726
869
323
4
704
979
451
272
298
236
816
742
944
146
187
829
911
931
728
807
558
775
188
582
785
660
333
631
183
471
456
832
910
55
230
565
952
666
282
123
660
829
357
554
44
233
831
202
41
181
262
589
388
464
167
951
681
740
218
44
647
820
90
826
780
984
831
889
915
621
877
246
650
605
148
729
419
634
538
553
829
131
590
2
209
866
444
446
888
279
884
213
449
238
475
839
739
530
774
60
401
941
287
420
304
17
939
783
316
437
532
48
203
665
215
517
231
88
618
913
540
386
2
636
737
664
796
412
130
309
989
889
859
479
152
887
844
170
698
192
927
661
130
452
747
836
10
783
23
958
609
652
911
860
519
16
940
650
683
639
221
527
653
8
448
643
188
723
514
327
673
61
390
426
985
879
257
550
889
900
655
13
390
172
699
338
977
999
960
137
947
195
487
59
971
401
8
122
4
105
648
287
270
695
286
548
262
486
874
639
758
391
761
782
984
208
137
481
308
111
665
189
763
377
380
479
574
331
454
585
871
135
546
784
253
369
742
694
886
152
76
491
125
322
378
557
433
704
75
764
264
527
813
892
439
459
524
893
316
807
973
931
32
290
767
624
844
976
530
616
465
442
595
157
36
174
65
441
999
822
46
870
256
690
321
345
321
653
346
793
844
849
379
80
178
144
460
834
555
753
713
457
174
459
299
822
931
657
857
266
395
83
893
493
762
104
676
342
969
422
304
191
630
737
771
616
64
516
978
891
714
230
886
246
110
588
696
796
392
499
413
663
795
81
398
762
955
885
318
75
468
118
865
133
450
522
827
437
688
683
758
416
678
966
551
165
197
647
384
174
407
879
950
470
9
640
395
550
339
9
660
178
198
904
423
596
365
753
796
588
761
260
108
708
740
997
985
829
529
234
566
309
502
144
668
589
168
395
125
809
127
277
99
680
24
580
218
774
543
955
800
443
851
796
413
148
771
242
730
12
655
566
22
106
443
352
676
55
236
834
428
969
629
986
461
485
162
428
685
160
779
211
286
573
433
124
457
706
730
520
817
926
665
114
155
560
255
992
238
671
904
164
538
709
527
831
813
864
335
928
986
343
556
570
233
444
281
448
673
319
894
969
325
716
17
502
304
516
832
901
230
169
191
14
256
616
672
576
47
601
310
592
372
801
534
474
370
96
880
710
280
806
320
918
777
934
838
822
693
26
528
298
33
434
699
817
153
542
314
616
772
704
402
72
10
302
598
523
182
542
132
208
635
122
621
423
849
273
237
321
777
849
883
21
74
12
560
937
103
717
322
828
781
265
938
575
405
249
908
475
337
316
641
151
894
320
663
911
812
276
968
880
306
993
839
922
820
381
997
998
742
660
420
465
221
304
427
371
184
47
19
600
364
761
984
461
209
733
127
754
349
649
126
827
748
442
522
788
425
17
754
24
251
910
732
676
896
177
929
591
892
292
727
766
258
368
516
544
10
379
713
88
255
244
649
94
535
593
716
778
781
638
945
168
292
994
350
454
29
308
565
33
803
536
861
57
921
360
570
380
926
977
779
47
303
667
769
8
261
639
142
304
460
151
809
255
347
560
474
263
19
62
515
701
813
681
284
718
382
593
173
175
23
337
852
803
859
899
864
625
226
342
193
390
167
262
572
652
727
607
710
361
885
307
362
864
463
78
233
622
383
51
626
668
467
966
281
124
299
6
395
448
696
848
38
676
869
126
534
552
109
632
991
775
882
811
290
716
974
988
341
781
666
243
243
175
716
524
923
201
981
449
354
721
213
263
665
37
270
685
995
337
543
681
513
750
59
851
785
655
677
565
149
310
664
613
781
453
606
862
960
345
203
334
571
659
278
271
562
620
147
253
446
290
992
5
239
984
729
492
117
865
738
268
524
416
301
44
57
599
481
212
431
408
725
651
135
210
110
854
473
788
289
166
509
425
119
858
318
660
375
796
724
114
745
95
606
935
810
155
359
234
214
963
140
934
821
38
565
342
870
29
874
875
20
328
577
573
759
99
298
442
726
396
225
684
488
318
662
630
45
200
399
955
495
239
574
326
26
574
603
82
294
975
790
346
922
848
94
417
518
33
176
711
857
916
508
818
738
456
447
504
375
934
298
671
629
919
380
781
754
252
547
185
496
217
149
751
605
878
762
640
224
245
113
12
24
688
99
579
730
756
587
570
128
100
706
359
677
120
716
3
468
313
663
266
485
990
216
641
767
756
213
860
693
807
280
130
822
286
647
941
821
800
51
998
665
977
58
397
510
789
74
486
162
759
172
911
582
846
526
33
472
457
812
973
543
726
876
320
819
576
537
392
472
774
182
667
262
665
601
508
933
819
131
977
683
726
698
934
635
369
548
975
760
615
470
364
988
77
455
938
101
737
577
933
253
682
14
388
578
504
649
916
246
18
100
653
327
834
291
816
29
942
685
451
29
562
632
857
305
817
679
185
211
663
408
196
242
197
725
2
713
311
356
132
719
631
730
742
516
816
38
155
786
638
909
158
53
127
905
690
51
157
83
761
825
464
706
582
610
903
411
130
109
290
104
718
587
553
731
397
832
889
341
488
780
524
399
572
754
250
143
116
291
35
951
556
229
594
306
256
924
148
132
612
406
907
46
496
534
192
571
500
396
508
858
161
815
594
981
301
66
134
828
361
761
296
838
75
339
547
490
992
247
476
473
684
758
728
83
872
479
902
39
562
678
643
720
783
176
790
741
634
613
6
190
790
320
771
851
110
69
971
158
987
701
579
253
919
36
175
402
88
511
109
822
163
96
266
682
118
575
56
898
548
806
855
379
242
286
682
365
987
876
972
803
507
745
52
860
100
391
800
747
2
388
653
124
505
183
28
695
54
89
734
535
14
74
610
181
846
200
11
634
353
809
415
211
538
306
316
418
45
405
582
727
775
308
896
160
153
732
874
60
258
987
312
898
143
438
790
434
135
870
15
900
380
166
395
192
973
443
585
200
867
610
650
648
506
8
759
705
177
450
28
114
325
951
376
366
498
516
68
100
515
882
283
174
391
682
347
609
913
704
186
710
147
675
193
648
337
663
392
136
678
85
257
685
843
900
575
429
790
29
693
457
375
485
684
985
328
476
258
824
660
151
792
473
264
318
967
650
759
728
29
835
124
932
422
431
625
597
331
490
107
918
819
884
11
728
335
661
991
207
321
860
406
568
475
528
293
783
421
525
933
924
669
62
999
858
334
443
64
253
360
730
145
767
717
741
332
907
462
535
982
306
659
552
408
168
430
556
457
893
139
842
177
805
557
182
249
757
885
153
395
892
597
738
847
590
716
638
850
733
196
385
322
886
543
627
266
118
654
831
429
778
985
170
115
518
554
340
211
535
493
575
23
310
141
90
708
920
705
817
452
791
705
723
698
753
520
291
263
929
916
132
103
54
723
617
907
428
624
330
37
377
427
315
241
621
363
12
745
453
918
345
413
837
380
637
73
262
472
361
997
263
77
281
619
361
473
968
586
523
183
281
297
375
780
76
365
391
483
78
390
509
545
810
12
571
719
265
674
87
545
646
955
263
333
773
300
147
696
879
149
395
426
223
270
638
49
38
58
304
273
681
778
395
971
488
718
266
270
48
642
208
295
499
978
537
326
35
43
7
776
219
695
603
929
995
84
322
541
373
523
681
208
371
814
863
867
561
291
844
56
35
876
648
238
940
100
926
245
733
312
14
994
52
528
55
986
176
466
975
405
396
725
896
525
960
1
924
685
115
670
764
743
199
950
741
342
47
365
988
895
157
78
807
62
509
687
156
842
760
876
691
95
316
439
659
309
979
123
278
940
176
241
130
63
548
270
796
101
786
712
939
810
477
81
248
319
917
835
16
274
844
82
924
238
978
669
428
759
292
433
363
924
88
49
720
916
947
744
513
240
890
56
57
49
936
880
618
236
191
340
391
144
108
5
96
95
317
892
85
878
841
37
808
354
350
16
723
429
360
332
371
173
322
776
383
788
26
876
301
99
52
193
568
951
42
219
817
84
952
626
599
56
660
635
398
853
247
703
699
921
158
189
875
859
969
218
822
331
621
307
69
440
591
986
826
649
469
857
312
131
199
640
477
734
732
316
513
686
379
529
541
323
178
380
941
863
318
709
982
823
397
486
462
645
557
160
465
674
809
748
385
390
391
568
722
517
712
141
127
653
705
136
952
92
766
746
263
211
46
962
332
759
874
489
734
713
178
831
178
573
851
838
877
630
145
152
931
609
657
424
152
177
582
329
118
262
533
371
879
810
896
254
629
847
417
626
516
901
833
10
340
880
962
553
802
866
259
323
947
614
814
653
554
621
811
155
177
545
371
473
181
807
951
367
677
598
210
31
213
519
636
31
775
648
85
271
215
30
527
252
3
210
423
265
996
243
699
8
36
263
449
970
531
361
829
532
929
595
876
205
657
228
111
429
978
784
878
906
537
541
940
148
18
120
470
970
384
687
371
434
898
202
994
949
70
665
500
415
818
552
342
619
153
323
594
775
100
994
286
212
365
793
471
495
323
302
952
411
890
859
148
242
225
442
306
455
234
161
359
314
285
463
88
984
200
322
994
695
525
695
871
390
401
160
70
106
731
500
627
768
713
89
524
959
404
100
394
711
18
139
541
938
635
972
927
901
705
486
296
2
307
258
885
196
987
758
841
65
373
201
724
733
533
591
600
197
939
129
580
101
927
284
678
386
154
932
754
428
233
168
400
245
205
625
461
456
203
328
971
645
258
330
338
816
415
807
406
45
373
731
962
577
906
195
75
23
580
499
42
56
5
413
832
205
801
480
529
907
130
145
993
611
157
934
842
597
945
861
971
346
527
709
56
501
206
822
338
10
551
438
875
703
287
915
641
844
497
134
16
934
279
498
915
228
737
351
420
971
353
477
78
718
528
695
529
296
358
331
998
978
142
520
357
691
269
290
325
241
294
997
101
812
846
37
68
29
794
828
764
855
403
367
656
75
361
158
176
591
386
345
487
166
135
38
793
759
141
224
958
447
27
180
677
356
376
265
872
491
628
500
501
529
567
144
576
775
863
283
330
112
115
734
855
949
510
935
677
808
244
308
888
570
869
317
829
223
690
301
698
97
285
684
962
885
843
957
599
991
462
18
896
858
894
847
332
293
325
728
845
441
588
64
247
320
612
931
660
250
314
353
85
562
584
234
826
431
771
969
106
552
337
685
347
226
412
30
676
22
984
537
898
961
456
257
509
221
437
642
273
912
298
349
678
109
932
334
274
661
22
901
521
355
623
293
105
902
716
21
907
583
255
639
266
777
454
124
107
327
724
605
993
129
696
193
255
987
8
239
293
79
755
16
1
83
16
544
339
163
153
606
505
416
735
690
658
658
83
900
655
809
228
947
936
416
908
392
659
430
38
117
895
478
727
829
827
240
638
183
761
910
784
943
175
119
101
577
394
6
535
597
904
107
583
484
851
808
80
585
175
623
884
908
126
36
711
27
688
905
863
418
20
900
139
745
25
284
772
818
315
331
998
653
895
441
212
788
895
244
977
19
160
54
8
138
26
876
818
139
407
75
888
488
143
117
577
5
967
838
459
567
36
261
270
844
625
231
14
685
824
923
132
445
927
844
258
965
893
2
719
149
466
633
411
241
442
510
511
778
863
208
820
57
785
411
982
898
784
164
513
794
862
134
315
483
943
444
560
298
858
611
112
966
120
310
102
403
850
30
402
115
719
235
821
616
104
75
659
517
861
359
182
730
488
924
286
333
319
927
297
997
949
214
920
253
97
853
937
475
309
580
49
755
761
398
76
628
312
698
380
869
784
44
436
499
430
382
479
195
24
768
84
922
732
405
165
506
314
568
520
250
137
185
208
282
311
426
968
91
849
658
21
620
548
428
213
906
778
421
823
715
375
743
451
541
497
127
24
357
233
570
314
744
179
130
732
600
835
155
189
4
413
388
346
366
748
464
375
304
192
259
727
892
745
805
875
394
733
667
785
184
403
612
857
280
344
277
441
418
696
613
71
624
233
820
302
986
397
85
793
33
752
719
166
974
842
422
999
374
255
338
866
169
370
5
600
801
531
66
23
471
23
956
608
578
188
104
660
924
503
889
996
648
874
752
432
684
447
883
437
922
278
68
164
359
746
902
255
228
221
501
455
332
63
322
11
795
112
587
786
738
761
75
870
365
341
219
295
617
573
915
354
648
629
101
194
954
793
250
832
285
849
432
704
2
434
665
586
552
741
637
573
860
97
698
161
204
197
798
18
528
608
637
655
306
147
807
702
962
129
56
2
861
754
501
889
330
370
869
931
675
632
742
876
935
342
494
552
930
939
990
758
995
232
305
677
212
776
399
854
627
963
623
424
685
636
711
106
595
809
831
833
328
866
343
895
865
761
720
963
653
256
772
23
139
298
6
630
450
824
677
553
971
15
305
712
10
319
191
300
630
389
956
121
109
157
430
130
888
410
812
451
57
435
202
372
191
600
285
387
630
81
656
770
132
278
861
314
562
631
886
546
570
420
333
265
299
651
914
981
868
875
742
41
13
226
496
536
812
933
521
409
35
803
669
550
732
186
989
830
296
117
567
258
524
266
881
637
103
937
73
539
686
303
519
754
339
616
758
905
781
325
501
629
110
477
512
767
750
783
532
113
662
85
686
751
309
485
516
747
345
859
434
875
860
982
723
731
284
914
211
117
428
84
49
970
616
938
148
47
753
115
886
320
406
960
876
601
617
768
446
854
100
12
560
922
891
625
768
127
754
781
483
836
572
415
684
579
37
716
135
370
337
470
993
231
973
114
470
899
106
122
114
516
468
357
18
416
523
127
79
990
170
21
292
971
631
50
747
990
276
298
565
900
633
77
517
629
18
330
948
777
156
869
22
633
667
966
368
215
398
268
56
909
638
145
200
316
179
22
599
923
367
479
624
807
557
214
883
392
840
388
399
194
179
301
835
301
999
658
305
665
682
533
593
8
242
655
263
489
877
201
450
996
730
25
411
676
246
214
76
454
84
976
375
10
869
862
731
337
309
898
317
520
717
934
242
833
886
616
566
901
950
394
515
639
938
403
463
154
889
159
56
785
583
851
582
706
159
583
138
380
923
925
180
978
884
929
279
796
783
578
790
629
648
174
503
689
462
735
72
467
399
578
448
151
843
531
937
866
352
536
675
303
478
187
978
25
215
536
755
9
124
667
371
312
368
426
138
409
348
893
244
423
512
671
980
346
478
29
135
353
992
413
444
247
902
487
152
462
196
479
474
925
979
63
344
731
207
136
782
417
393
529
519
459
292
253
791
806
206
632
546
186
402
403
17
710
224
124
410
881
275
676
213
869
419
319
444
449
328
249
139
343
247
717
959
463
894
984
955
650
696
345
256
563
932
288
524
577
47
633
508
84
726
901
143
717
317
649
40
973
809
343
479
957
494
204
939
684
443
553
816
239
169
759
186
929
420
649
936
131
795
866
402
694
740
56
616
345
575
243
147
245
944
981
841
354
865
299
70
728
349
839
134
494
817
269
915
966
716
214
297
667
713
909
179
942
940
785
217
439
588
595
110
201
406
571
295
187
918
832
64
122
580
209
782
955
733
907
877
472
140
649
629
361
945
480
532
36
803
899
413
81
82
631
140
754
730
933
89
246
974
728
49
884
150
175
88
504
127
224
209
33
907
745
299
939
965
748
255
926
40
259
384
20
419
983
41
948
70
29
225
800
819
632
498
412
600
745
212
771
392
29
908
579
690
380
173
337
333
201
788
982
678
162
206
715
345
30
465
167
134
139
435
99
999
409
213
276
248
886
339
221
537
484
534
12
351
804
329
39
811
704
616
868
241
242
122
658
426
782
67
571
280
46
637
253
593
810
580
281
167
896
90
446
861
568
446
194
627
195
365
541
700
427
355
430
523
566
857
757
287
555
850
465
819
768
940
492
846
281
418
540
224
49
871
914
615
171
8
672
795
928
31
231
418
526
870
853
690
207
730
28
952
822
994
612
47
624
626
94
627
954
347
347
776
825
317
652
555
441
815
352
559
186
962
359
525
619
47
294
897
88
801
640
551
391
587
401
54
260
868
990
545
913
46
841
581
684
455
593
209
219
298
249
392
378
468
767
860
635
87
427
577
332
197
540
153
707
796
386
238
915
598
296
572
825
807
645
140
122
778
841
165
454
85
678
789
553
249
173
922
819
541
418
173
442
413
213
717
506
688
873
888
69
355
294
620
3
677
566
570
822
628
739
857
246
263
124
248
518
751
600
459
623
463
418
375
180
123
131
412
595
928
634
433
905
953
96
99
791
58
786
876
682
602
100
192
802
561
927
180
290
964
199
754
88
414
265
606
937
918
440
880
546
155
975
894
993
306
952
293
167
25
457
461
964
724
777
22
363
227
573
619
196
951
123
631
730
879
346
491
688
490
162
872
617
905
330
528
627
206
199
497
608
634
13
265
508
738
789
364
637
243
243
710
346
821
684
595
32
345
164
114
960
461
604
677
862
584
843
60
394
250
395
157
29
77
11
561
938
857
123
992
91
981
854
445
247
451
527
796
221
735
496
283
43
85
536
148
31
335
402
923
895
730
969
387
848
86
682
269
810
124
656
174
222
172
24
978
607
159
431
412
57
47
838
659
753
113
115
943
540
863
531
604
456
199
97
360
12
467
597
161
768
258
985
98
80
323
61
870
61
558
540
871
904
990
867
848
892
311
633
736
970
739
729
947
593
53
718
23
75
664
966
141
562
270
643
799
62
740
580
431
52
245
882
982
324
660
699
465
332
249
467
701
833
860
190
30
529
39
505
28
604
39
796
397
591
400
309
635
348
69
787
153
731
203
684
726
856
747
624
933
353
253
690
825
197
266
307
701
80
614
270
23
236
553
826
13
449
486
391
924
351
65
118
264
462
315
970
631
177
464
174
781
415
572
674
352
349
970
200
326
93
607
555
733
798
764
916
178
376
671
278
370
357
699
582
289
136
426
364
881
295
676
525
616
441
489
608
663
878
475
664
478
286
65
831
743
509
384
466
697
398
792
256
505
186
803
425
715
989
385
216
922
606
318
31
417
82
938
293
310
156
253
300
900
8
799
85
292
868
838
779
751
959
667
484
503
421
21
431
637
64
893
674
494
259
741
872
967
35
415
662
571
91
157
541
146
493
355
497
386
719
134
847
152
605
465
963
939
834
528
996
62
508
655
246
263
579
805
641
267
926
117
258
453
177
209
660
803
126
338
11
66
523
45
918
930
47
522
888
794
778
933
134
506
419
600
64
435
911
279
566
687
713
231
460
602
876
394
975
396
804
160
813
496
518
930
538
463
737
315
217
58
917
847
488
993
983
751
35
576
146
226
892
847
772
323
353
293
585
317
55
652
547
492
990
618
120
637
988
488
63
600
698
596
63
509
770
866
742
466
619
125
360
399
251
579
268
966
724
195
578
245
878
421
261
564
510
425
857
870
873
347
762
546
514
545
527
297
785
264
553
486
550
119
697
929
292
149
242
411
351
154
912
794
910
817
722
278
335
498
998
345
10
872
592
273
363
814
884
705
53
971
182
461
642
92
695
759
723
332
272
362
184
446
519
720
434
968
635
697
823
249
961
287
265
208
477
678
526
424
566
478
264
536
359
379
971
452
152
819
123
962
555
4
226
636
162
563
353
872
838
395
180
188
881
803
10
894
196
434
614
17
233
299
765
794
99
647
87
141
749
982
816
816
575
860
694
957
62
628
47
914
326
654
586
172
299
77
655
556
369
77
256
717
205
106
730
256
239
432
538
515
477
213
124
856
578
363
612
22
110
52
833
567
388
700
691
578
713
593
495
22
991
530
771
672
726
99
611
469
131
439
719
630
91
531
437
113
531
729
594
935
464
634
447
317
244
689
330
505
415
152
542
645
936
516
523
946
442
451
130
479
752
144
890
670
333
203
477
857
263
578
47
984
999
560
558
358
84
454
428
38
769
106
55
978
896
75
694
574
9
491
671
80
599
115
183
321
743
776
984
41
212
473
242
836
106
558
646
376
958
165
862
988
24
93
709
646
89
912
774
259
509
903
848
772
907
966
385
884
377
237
615
308
469
387
825
297
864
218
873
339
428
318
615
843
628
683
57
507
406
537
232
830
3
726
532
309
624
470
929
139
174
762
999
721
550
555
519
637
267
412
782
870
40
436
830
192
288
5
145
225
910
877
478
840
5
784
306
742
855
517
673
394
289
735
166
666
319
893
294
73
164
420
241
993
754
362
791
567
896
341
21
619
325
704
228
296
284
159
717
765
250
776
781
750
739
388
581
305
270
165
872
395
711
72
61
491
637
485
87
643
992
739
846
515
496
54
70
585
507
869
382
161
177
528
823
387
638
490
255
366
780
487
297
731
468
626
907
253
644
737
658
799
73
74
773
511
930
267
254
685
319
996
797
401
783
712
218
184
249
673
852
147
230
720
862
505
442
116
47
870
146
816
940
769
211
582
88
104
754
312
457
371
237
569
47
784
689
895
948
756
409
724
5
970
885
511
569
352
211
268
69
814
221
384
539
503
56
28
190
201
624
115
429
937
216
481
910
661
673
79
815
547
167
291
461
422
812
969
884
700
13
736
892
487
244
642
151
852
31
544
728
662
706
747
132
294
296
68
755
404
601
908
678
133
452
522
648
929
922
118
691
86
144
490
189
888
223
941
693
573
331
59
630
129
350
154
840
420
159
168
126
745
215
481
100
104
58
759
35
722
994
221
929
912
853
642
518
217
558
244
72
355
374
182
73
542
279
549
782
299
681
228
771
755
992
945
870
662
391
85
830
463
907
971
578
111
129
717
276
708
635
624
861
915
96
771
371
34
409
557
825
508
976
736
41
767
450
175
920
907
771
856
826
473
413
608
447
402
603
962
414
561
274
75
663
58
366
855
659
222
575
837
254
833
260
322
486
172
931
811
660
953
796
368
936
779
798
389
502
487
324
968
430
446
143
264
235
901
74
982
402
594
515
699
333
934
602
992
214
92
123
276
471
792
302
460
764
905
139
883
260
977
353
173
897
606
407
807
691
995
88
585
98
948
410
67
438
98
36
2
178
806
175
411
365
48
498
638
145
683
500
329
763
190
722
424
241
343
802
726
527
794
301
218
4
538
178
522
383
236
22
667
870
137
706
454
802
942
807
849
109
769
663
8
496
758
821
908
226
985
825
96
295
309
475
383
505
957
407
827
870
975
256
909
661
832
458
626
484
269
622
299
535
952
618
757
131
294
722
245
716
270
296
397
410
926
372
561
662
323
949
845
535
980
979
133
514
754
347
663
301
196
424
957
364
527
560
343
691
717
252
211
236
163
112
600
680
858
500
735
460
897
964
162
319
777
763
555
973
486
243
377
946
59
944
520
846
339
34
882
367
30
870
944
71
738
610
373
868
379
453
656
255
612
203
403
232
263
638
587
763
5
369
205
475
875
265
177
218
591
754
342
825
617
369
431
27
21
91
581
167
391
687
594
34
587
122
335
855
541
289
583
700
447
119
362
660
666
470
196
474
433
155
278
624
112
831
638
244
772
377
212
172
58
420
372
318
774
172
887
753
929
321
677
302
171
641
378
498
7
770
361
550
894
107
734
237
410
969
921
756
484
92
84
164
78
412
642
27
746
45
885
494
582
442
544
113
478
975
454
470
453
140
237
2
17
661
277
950
686
136
907
805
250
131
270
838
237
513
225
759
998
352
751
961
884
866
968
453
562
621
759
435
516
452
304
344
854
83
148
417
135
692
341
611
137
81
244
452
173
706
875
964
750
694
471
102
388
276
118
151
692
824
388
65
376
473
289
798
827
925
984
155
366
807
625
307
11
141
824
803
623
517
281
856
746
794
684
821
981
203
956
578
964
996
724
310
304
277
235
664
792
446
624
247
722
721
599
943
70
164
91
248
451
314
527
176
544
532
319
582
789
467
816
624
969
406
190
369
84
315
4
733
905
161
12
177
892
34
135
26
195
741
752
818
112
708
128
651
470
548
766
771
958
653
874
325
629
1
278
317
531
231
859
754
160
357
343
291
302
351
284
510
398
293
387
49
715
998
512
262
279
538
899
535
548
233
775
253
286
686
548
892
756
818
494
964
881
997
658
754
366
836
349
120
265
257
374
665
266
826
610
631
488
17
38
992
332
325
206
927
582
91
5
616
803
392
753
580
798
422
168
717
341
758
896
442
190
780
271
292
858
110
986
460
77
916
405
740
780
502
633
556
791
730
173
276
832
733
316
872
503
793
866
844
659
892
291
730
121
596
803
552
54
914
69
472
104
545
539
886
987
14
800
297
789
611
925
610
585
621
610
456
464
398
788
66
244
143
800
184
626
675
620
184
699
82
502
877
662
700
172
287
194
430
885
490
993
570
55
48
966
680
145
499
986
347
88
655
126
4
229
961
744
356
260
313
393
616
598
708
109
49
947
885
449
323
262
34
513
299
72
673
88
753
217
945
530
121
198
352
993
846
751
659
471
211
542
838
171
572
97
377
972
347
938
918
733
259
51
663
85
55
143
826
931
556
873
991
139
314
782
273
419
246
714
263
297
289
414
239
780
424
863
941
203
695
701
741
814
299
213
271
71
534
268
938
704
925
727
915
337
551
700
856
789
823
958
726
633
676
621
444
845
811
883
661
192
201
624
237
854
133
177
839
101
511
203
885
978
775
558
372
561
499
901
230
723
7
152
379
736
975
109
139
677
768
426
259
650
606
747
503
301
491
62
205
375
860
755
278
621
73
748
857
119
250
883
347
909
654
937
186
50
245
500
879
25
39
163
333
86
944
235
372
29
55
71
71
437
697
854
863
251
873
758
663
227
251
20
428
885
80
349
996
668
561
453
56
990
183
180
336
698
423
193
676
838
376
828
64
179
813
909
213
799
75
935
177
487
836
652
773
19
734
447
7
595
239
704
467
601
16
80
255
518
519
165
827
680
82
825
850
423
956
249
73
170
137
198
594
626
277
569
155
530
407
317
963
976
187
81
599
672
361
462
164
734
654
695
280
909
108
496
405
11
801
351
63
486
375
836
459
41
110
841
325
447
925
725
112
202
201
851
494
1
226
179
62
494
85
339
515
442
917
684
519
780
164
144
728
56
255
478
601
350
621
559
562
520
138
717
808
929
583
79
708
257
3
405
785
623
289
569
401
37
321
18
124
426
322
545
284
781
996
56
947
723
250
145
379
667
616
542
356
368
530
585
858
839
975
262
778
758
359
106
767
685
77
565
29
604
435
136
198
593
434
27
933
528
131
985
8
858
26
118
7
747
213
34
506
736
160
285
451
61
767
525
423
891
288
263
647
684
116
775
233
480
344
763
933
503
652
330
708
990
255
919
733
241
99
20
472
44
59
293
444
150
685
138
826
909
604
43
240
868
338
323
742
250
884
526
403
450
100
4
85
830
576
460
806
847
791
182
792
269
790
603
626
823
331
83
795
207
937
25
899
609
90
840
652
931
178
483
357
572
617
23
944
55
209
614
573
225
331
978
118
422
250
971
78
735
697
918
919
802
731
197
512
75
105
475
740
736
808
874
669
309
825
221
651
767
659
571
615
717
509
570
875
958
907
477
359
118
762
917
235
259
564
555
840
420
511
869
950
733
873
837
417
457
310
809
597
30
320
311
76
126
304
202
293
162
321
553
168
628
116
622
973
891
639
410
744
271
380
232
257
790
621
881
843
672
153
418
649
99
880
330
798
452
841
110
955
362
262
679
99
957
702
323
618
252
863
525
818
899
65
326
650
89
54
286
505
423
359
621
9
903
904
69
747
786
824
522
50
530
455
382
9
700
133
300
88
298
263
592
808
628
600
749
34
554
679
709
398
556
604
533
4
641
671
196
53
633
575
832
428
342
476
288
445
682
318
950
955
754
198
207
160
766
812
381
303
156
36
194
107
115
124
494
925
921
379
367
30
937
247
455
723
430
165
466
152
313
305
352
236
729
754
644
358
397
373
238
828
290
893
897
598
382
726
313
218
981
363
523
304
951
920
19
508
743
484
729
602
347
229
990
851
683
957
378
361
480
136
528
548
141
538
739
44
349
857
342
704
851
249
170
949
781
48
285
808
736
136
615
913
644
635
482
62
903
47
914
424
349
952
738
846
834
974
163
413
182
974
159
885
142
25
751
99
59
41
70
635
673
569
624
344
520
615
904
506
56
678
141
302
942
917
356
898
510
324
116
806
885
871
627
761
977
729
771
619
884
384
3
863
977
279
751
779
328
394
327
220
71
656
357
503
833
856
943
225
669
852
588
735
924
264
750
801
941
863
367
790
843
286
622
671
676
278
325
663
167
576
570
117
997
896
736
229
514
125
928
121
786
547
950
32
796
268
938
713
529
950
837
465
28
536
376
784
35
685
827
556
531
280
59
93
282
472
738
29
527
521
287
817
934
246
4
296
335
590
875
408
339
611
135
216
738
106
89
461
520
951
194
828
297
373
590
507
489
858
750
325
529
910
187
8
663
21
530
781
532
80
450
445
810
419
217
919
146
842
354
177
383
277
508
575
327
458
520
562
656
497
807
477
840
551
878
429
425
127
552
718
575
308
929
440
502
749
19
878
157
670
362
647
504
574
942
253
402
611
681
206
500
968
126
36
273
972
605
260
540
787
495
19
290
635
601
76
348
69
74
578
439
642
406
986
136
161
972
266
609
626
28
813
446
347
218
607
182
894
168
529
145
759
338
369
175
343
357
869
972
866
905
334
538
103
766
857
562
140
899
112
999
339
651
914
760
681
573
943
417
994
893
454
901
544
433
680
305
38
811
793
804
104
294
742
720
694
275
343
580
361
45
43
994
56
529
806
108
424
609
493
770
414
452
978
973
452
432
994
669
86
553
525
328
107
308
896
45
908
194
67
407
230
363
57
949
850
459
845
15
627
572
881
428
318
23
390
651
316
769
269
262
281
673
494
807
520
715
887
747
633
761
200
230
542
87
540
51
395
29
123
992
586
979
43
513
672
97
11
84
917
245
729
140
925
804
126
557
868
250
429
136
571
99
382
866
373
651
886
231
483
339
257
287
646
276
675
301
631
981
135
424
704
804
829
388
32
60
305
738
961
983
183
146
599
986
421
488
598
176
141
22
211
779
601
579
988
442
493
649
129
825
925
887
115
6
431
767
269
993
834
313
346
149
270
500
157
111
688
660
855
188
702
455
840
114
213
925
204
251
400
590
567
656
609
137
58
296
31
593
556
653
220
605
342
827
675
63
510
102
422
877
754
833
793
941
123
471
47
2
793
506
564
18
594
245
746
690
539
134
442
861
81
95
104
202
967
98
114
14
438
151
416
103
828
522
836
733
862
667
14
587
249
29
800
50
90
202
12
97
82
984
523
377
659
561
797
659
729
592
973
26
357
34
563
642
91
462
189
72
408
13
828
872
120
854
612
53
294
54
112
766
87
17
932
454
627
40
443
267
725
177
5
270
693
988
231
216
465
158
959
628
14
939
689
69
157
650
257
805
949
745
365
675
480
208
938
341
101
110
16
51
20
921
347
232
9
558
180
131
624
396
587
137
95
484
752
148
328
863
297
977
782
638
318
980
812
329
790
485
50
890
115
355
143
908
608
92
592
458
61
598
471
126
181
553
158
229
581
995
455
791
13
238
812
39
269
382
604
367
419
679
768
694
82
734
282
232
993
186
875
661
555
870
802
698
506
657
457
764
822
583
748
794
31
258
877
877
542
105
640
227
488
226
39
382
830
777
45
447
272
925
235
396
120
794
237
143
435
115
532
612
924
839
544
835
930
973
663
823
856
404
689
889
545
649
174
330
831
421
867
728
612
10
493
896
349
353
674
237
22
734
442
428
572
29
303
648
681
203
451
857
114
222
590
867
236
345
850
471
620
907
311
14
247
804
999
915
347
647
487
578
299
427
801
123
961
262
317
517
347
525
648
629
970
11
614
391
420
625
660
4
502
204
616
115
424
429
182
768
29
387
302
35
716
872
558
686
420
468
906
974
28
334
125
95
259
682
44
236
190
608
496
722
986
483
77
96
811
687
698
533
80
549
488
959
224
614
913
98
453
927
971
951
718
686
975
169
79
521
855
742
385
946
579
420
891
580
48
233
796
462
875
733
769
373
894
479
846
166
871
645
768
945
782
262
637
544
4
301
507
908
18
291
831
956
148
134
970
68
68
644
566
680
302
991
53
239
182
346
791
497
323
913
649
211
973
440
164
317
783
348
577
746
726
888
444
584
901
813
225
761
509
778
98
228
79
89
643
791
209
399
362
657
510
11
586
105
641
621
983
708
970
653
285
720
68
819
954
414
547
468
337
369
121
31
988
544
815
422
132
884
797
373
109
384
985
919
237
715
303
340
943
280
829
517
790
855
494
378
160
259
135
230
244
740
62
993
537
480
23
42
289
219
490
100
911
598
545
900
735
148
583
239
112
207
525
58
540
603
240
133
51
437
262
872
749
567
129
368
323
992
382
757
693
261
52
724
790
730
606
193
311
593
643
12
676
895
118
37
216
5
453
933
240
889
991
851
956
618
350
344
469
177
577
742
766
826
545
850
156
800
267
809
996
48
821
457
794
251
196
853
450
93
152
319
539
448
517
803
270
200
767
173
381
263
724
134
16
900
246
850
350
268
881
415
737
643
937
193
68
534
58
706
422
496
893
377
25
259
204
318
309
742
580
956
33
95
429
733
323
687
441
894
5
346
503
182
211
736
581
895
511
325
735
736
143
62
750
885
369
347
110
757
696
928
541
608
687
925
383
643
215
204
869
381
93
164
702
76
992
712
166
288
677
309
806
984
7
844
813
971
344
544
364
976
578
684
198
76
805
895
495
286
354
938
680
307
455
355
643
979
359
674
893
657
182
821
81
388
123
556
602
842
112
411
299
671
839
893
802
409
966
626
271
97
217
879
934
739
628
499
529
651
201
834
613
670
651
707
794
757
604
809
953
249
293
653
175
943
640
10
468
562
553
235
14
732
403
796
441
303
887
342
760
623
28
950
641
278
798
629
20
133
99
45
805
157
673
23
804
563
704
990
99
618
32
967
99
966
820
880
267
854
266
492
870
263
49
330
222
342
12
897
146
11
989
335
463
508
430
856
59
381
992
877
598
896
243
142
592
60
852
675
457
917
363
165
867
607
175
543
108
344
801
462
552
807
845
88
628
696
505
590
537
964
821
885
862
388
893
974
20
906
738
162
490
337
440
228
648
824
468
855
334
886
748
715
580
530
326
790
51
155
514
895
555
263
139
493
97
477
303
479
714
201
523
202
606
639
972
215
368
618
440
804
229
649
257
650
216
106
306
333
63
104
923
865
393
842
607
227
199
947
132
172
522
988
142
134
364
547
110
941
558
111
423
433
714
709
667
906
7
488
277
990
172
970
417
610
277
657
808
763
33
745
17
420
486
268
282
240
507
123
287
668
996
364
774
951
680
491
151
684
175
701
221
710
670
142
999
552
572
531
856
706
739
346
908
813
94
3
946
447
428
428
399
883
202
608
993
807
196
466
930
785
506
125
589
331
525
306
749
345
269
729
667
976
266
580
929
650
456
961
857
677
545
704
256
747
303
337
509
62
148
193
356
107
601
72
200
615
757
578
289
788
254
601
179
698
760
422
617
621
679
343
352
235
608
253
241
802
868
842
29
188
797
687
197
76
374
561
376
195
380
314
893
878
672
70
424
943
526
558
986
880
720
887
383
804
841
122
498
348
830
398
747
914
549
101
990
566
405
103
325
200
47
422
242
365
450
474
562
539
829
298
276
311
855
149
468
909
305
392
235
252
63
28
365
981
567
978
329
572
79
858
538
424
234
787
834
298
646
18
355
367
559
959
519
533
123
436
60
401
633
82
261
13
867
73
137
19
58
260
797
471
145
990
461
970
759
852
77
69
314
170
263
287
37
867
693
104
509
832
859
131
919
928
938
996
597
526
556
161
650
816
240
387
221
884
223
568
499
548
773
270
360
990
87
464
819
974
975
1
379
34
509
226
400
666
551
217
53
464
374
234
297
916
419
498
930
876
67
153
645
125
604
961
59
590
771
929
841
475
178
622
550
556
782
616
307
14
987
554
333
6
516
35
175
539
973
443
571
589
533
943
907
823
355
254
429
548
168
809
895
622
375
578
286
751
683
741
135
802
192
916
888
513
819
640
609
570
787
519
617
328
358
253
941
235
715
727
201
528
188
759
846
178
659
711
631
937
748
423
856
233
309
769
397
617
55
395
4
715
644
859
761
648
193
567
265
122
637
52
37
956
540
606
615
433
71
711
854
109
9
672
821
364
663
384
20
589
855
325
181
320
723
486
883
328
997
199
984
93
447
510
301
697
387
900
692
703
154
964
547
343
541
895
706
972
38
397
984
808
547
676
266
312
871
716
233
54
723
287
435
871
727
762
661
499
371
125
977
763
691
317
435
890
778
837
779
827
780
910
290
601
214
176
545
771
244
988
826
670
667
639
979
866
530
675
616
779
234
207
602
913
420
222
117
231
241
375
534
34
937
405
273
812
996
834
658
551
217
890
255
382
298
308
97
53
337
568
361
103
222
999
594
573
309
377
182
992
59
314
530
869
455
793
732
262
366
167
869
696
18
66
562
344
952
220
615
112
126
65
894
673
15
431
812
937
811
700
504
620
652
665
492
903
361
386
927
505
575
834
686
170
698
664
86
157
438
250
621
89
761
70
866
993
419
857
854
24
980
794
450
666
663
250
44
352
573
658
983
566
293
111
537
291
379
725
975
350
346
655
499
562
80
415
859
583
799
498
485
504
532
903
524
780
384
21
506
449
621
734
584
780
267
56
796
650
533
576
615
694
881
505
678
325
295
888
587
248
390
460
553
75
174
480
35
389
586
756
906
359
219
526
729
611
72
719
295
24
619
209
51
223
883
790
622
27
226
199
485
496
433
259
59
161
182
509
606
786
22
407
65
776
669
257
476
356
775
67
254
576
593
563
628
181
410
330
192
384
858
8
164
387
271
411
925
959
467
569
430
563
114
508
3
213
145
274
553
626
314
267
252
160
945
909
902
870
630
878
750
851
318
223
928
15
244
677
506
259
332
516
888
207
636
690
462
86
561
416
36
136
776
565
70
592
755
4
442
362
509
56
330
589
819
578
245
890
579
988
968
468
768
295
294
797
379
46
523
255
447
817
310
215
843
614
76
752
153
337
259
240
236
145
750
277
187
299
388
59
446
571
506
572
447
568
368
481
271
272
214
710
481
187
914
692
745
116
746
205
503
492
738
243
730
729
232
624
545
18
611
80
658
465
809
876
311
737
767
275
247
594
481
881
124
548
758
50
230
58
531
72
553
183
555
953
833
264
842
718
336
744
936
254
661
134
53
17
377
39
381
9
348
471
958
909
11
856
119
182
970
183
394
487
486
539
526
475
909
856
43
48
894
50
939
502
658
228
220
989
495
741
672
192
677
522
723
83
225
645
942
976
145
661
747
154
350
449
767
122
608
578
108
521
995
333
115
299
532
456
252
783
637
129
686
229
511
202
810
964
816
444
251
264
913
66
903
234
302
786
153
209
460
99
382
917
634
151
197
345
408
424
550
768
394
160
340
16
974
518
643
148
639
803
306
164
327
843
608
929
430
880
997
746
304
43
323
539
747
769
594
360
6
466
556
392
893
482
870
754
726
887
260
783
144
5
570
657
792
218
590
791
543
267
914
528
427
804
465
352
836
801
269
205
923
283
143
173
248
914
271
845
973
853
204
542
621
214
603
299
472
665
746
529
179
803
816
739
551
28
964
90
17
518
917
925
619
55
859
860
862
398
410
878
947
745
818
689
64
373
906
214
202
167
880
171
55
740
27
121
467
404
622
220
949
182
828
455
936
278
923
566
354
743
437
75
256
868
582
433
984
127
675
178
121
751
887
850
638
746
870
879
28
738
393
458
775
191
928
766
917
364
753
785
450
341
859
458
729
805
915
186
159
593
137
340
728
444
99
199
294
977
816
190
408
45
538
615
350
978
299
66
940
815
516
621
374
890
728
780
892
429
121
832
831
684
721
435
602
53
730
332
92
730
472
940
547
563
378
405
802
244
109
751
507
850
246
343
78
515
966
838
715
318
307
864
856
984
359
723
324
104
14
297
249
967
973
211
343
575
74
810
513
324
978
648
321
370
326
980
439
378
357
87
87
892
616
774
423
608
84
563
204
655
82
698
231
811
503
539
876
36
999
502
442
156
325
392
339
658
543
487
659
378
284
945
747
926
211
356
351
199
787
735
492
511
607
858
242
281
418
510
867
786
104
403
379
854
645
930
567
225
435
765
65
597
903
825
371
137
950
304
601
147
188
678
249
264
11
930
549
467
150
59
240
34
620
872
275
881
566
892
281
280
789
127
764
22
671
895
607
781
487
106
330
114
908
720
598
426
154
116
844
715
382
100
75
377
525
31
976
32
551
489
570
59
23
321
357
62
913
228
593
115
323
767
980
45
728
126
125
899
275
848
727
451
49
566
897
690
53
387
496
640
918
576
230
998
536
272
92
588
363
537
512
926
522
729
392
615
120
31
649
400
905
78
756
703
762
119
10
457
423
667
9
527
731
952
197
746
537
981
509
456
35
537
537
738
336
800
929
319
174
283
570
22
738
97
735
841
819
527
237
417
262
634
165
695
528
985
195
570
533
646
78
138
522
193
365
368
540
19
367
961
190
691
283
140
98
987
788
635
218
356
926
11
745
92
194
400
372
841
210
350
605
360
786
528
206
432
500
546
731
367
301
801
160
275
227
571
352
25
598
541
197
560
352
178
719
68
392
430
998
964
996
699
808
18
356
830
905
755
934
665
487
243
903
851
55
126
850
470
865
623
49
348
244
669
153
46
8
609
809
139
41
70
547
766
371
602
992
143
919
396
666
597
91
932
54
954
656
501
123
594
217
921
565
375
916
649
456
140
864
310
823
297
945
796
625
418
695
137
481
453
133
708
551
469
956
451
257
311
616
199
389
507
486
215
921
119
505
172
850
721
147
852
279
609
573
370
651
294
308
636
259
520
21
670
461
509
371
96
419
465
392
145
524
665
921
317
810
731
874
507
912
523
287
759
307
281
429
941
896
587
800
962
4
979
940
869
486
816
754
413
747
409
753
385
330
2
329
613
688
256
559
920
420
800
723
735
234
262
363
181
80
429
200
831
665
429
142
544
725
53
830
994
976
462
759
503
770
901
429
306
951
815
254
640
28
880
543
203
256
205
636
225
453
574
333
318
210
922
720
901
860
784
888
636
426
565
944
958
42
221
965
332
832
58
229
264
176
559
803
785
885
939
289
520
416
606
541
402
129
442
294
847
181
528
445
167
927
618
215
463
935
585
162
36
240
304
393
396
346
69
143
650
119
935
16
921
496
368
220
820
24
542
829
599
926
118
152
304
612
62
337
557
345
340
849
301
778
253
281
113
213
146
57
60
299
643
728
245
513
524
671
559
399
394
439
394
755
562
109
122
153
89
783
284
732
585
305
778
87
714
143
244
87
107
607
878
486
770
301
284
389
906
791
88
391
778
158
951
901
456
546
216
144
160
960
124
362
772
328
713
339
950
159
798
381
427
472
293
787
561
907
984
262
825
732
246
298
695
892
954
428
354
877
631
169
927
100
927
146
483
516
714
442
587
944
439
748
992
707
963
306
865
165
340
548
561
954
318
427
714
826
667
879
374
286
984
73
528
629
454
327
545
147
304
45
194
543
674
880
294
498
305
988
929
648
562
190
538
83
608
972
782
500
432
657
849
834
69
301
960
367
221
363
253
636
761
719
860
295
355
19
280
437
134
217
521
678
950
725
724
795
535
445
22
481
545
45
715
646
196
359
474
374
920
927
278
941
736
293
887
842
329
243
727
590
693
345
367
216
136
172
883
343
577
165
831
775
342
771
92
716
5
215
100
995
544
906
517
207
938
579
942
658
838
881
467
292
717
432
788
201
678
499
510
25
476
132
797
755
96
503
600
964
201
171
838
115
143
732
46
786
827
160
277
556
229
226
505
695
698
539
58
909
982
891
39
505
704
76
520
413
109
761
112
436
979
977
457
667
44
353
149
985
386
2
373
518
223
953
795
250
626
102
58
556
445
690
982
310
133
333
410
68
212
633
678
67
49
841
577
252
769
838
652
346
390
73
524
980
518
520
283
750
280
270
786
7
704
556
991
289
995
147
534
710
942
82
773
753
324
307
470
382
377
544
481
788
450
711
166
372
167
2
792
612
51
659
788
941
846
671
362
493
849
289
256
622
304
941
403
309
299
771
656
212
51
901
374
735
789
998
557
993
390
619
123
994
355
922
660
283
293
831
906
653
944
977
532
89
288
859
484
509
308
856
73
396
345
580
562
150
286
53
153
848
114
369
103
231
166
262
267
382
281
121
17
467
864
4
268
74
369
286
448
930
514
48
685
534
546
726
649
775
360
511
997
241
679
59
539
576
874
302
922
27
592
103
228
188
840
605
531
342
313
489
780
999
605
223
334
67
683
569
684
440
612
492
22
770
123
776
788
806
464
692
199
68
364
421
338
412
820
498
694
940
195
308
463
871
730
997
635
457
724
473
892
306
617
482
415
100
81
458
65
64
817
725
877
621
290
712
636
184
884
921
247
186
875
743
245
304
30
150
40
125
141
332
82
990
799
892
450
881
7
239
331
363
433
630
124
470
431
842
582
19
362
451
573
803
227
707
431
873
237
111
71
931
418
940
923
486
643
886
821
398
262
755
178
646
591
884
752
245
620
775
873
188
568
22
763
690
759
279
764
93
461
577
644
896
168
400
944
493
707
637
826
544
21
184
756
607
274
926
212
343
954
186
254
462
237
883
364
396
177
234
727
365
123
728
936
685
111
282
478
192
939
260
538
982
949
329
167
384
266
157
416
832
67
421
138
276
323
183
659
285
37
548
316
473
910
462
422
292
248
71
496
992
449
21
404
695
647
272
512
908
716
979
131
21
817
895
298
701
591
661
363
927
622
194
156
391
943
66
72
488
906
874
136
195
660
424
383
47
18
443
628
52
670
750
568
57
418
296
656
16
164
721
701
587
708
568
370
256
865
13
752
582
200
25
2
841
843
936
360
394
512
252
683
149
33
311
258
872
625
99
973
648
409
57
324
186
173
549
487
93
54
128
181
6
690
46
852
646
748
726
213
482
935
263
504
912
39
553
555
397
311
498
631
766
40
105
173
144
701
816
668
295
449
268
340
384
71
678
458
986
459
611
124
898
886
492
712
147
552
411
148
620
994
90
781
556
497
414
966
586
873
709
945
932
59
917
33
667
922
120
841
360
96
568
937
699
375
732
880
547
392
27
591
290
669
49
301
360
487
783
887
657
712
871
114
750
666
191
840
968
460
45
225
433
570
787
524
426
152
82
182
764
533
419
194
846
118
656
264
10
617
672
181
139
232
185
648
224
455
188
34
184
892
912
88
348
801
158
719
881
525
875
208
405
602
124
124
293
678
267
632
11
927
830
351
787
863
86
201
386
139
301
971
964
48
997
871
620
332
846
45
960
936
382
485
742
464
775
536
109
61
355
546
188
555
24
256
63
561
300
484
716
956
334
742
224
903
243
357
604
253
503
961
832
222
672
75
546
346
609
323
89
549
93
326
784
754
783
410
25
742
809
59
32
362
329
4
602
639
261
838
222
418
932
856
557
394
714
966
882
948
710
716
952
976
396
167
864
9
958
470
121
833
333
862
443
444
929
470
892
669
472
906
86
770
102
670
617
237
768
390
41
817
527
76
32
93
107
56
966
162
140
594
680
791
718
388
86
70
413
113
464
244
74
214
477
803
631
183
874
725
550
627
240
568
429
304
306
257
830
350
338
874
503
730
529
877
227
294
53
714
585
547
823
656
926
797
743
314
599
229
462
924
181
242
612
512
355
112
362
415
82
829
239
63
774
590
740
343
685
600
577
337
130
161
141
3
803
583
642
632
560
992
658
602
888
414
693
262
119
17
522
115
931
638
632
755
308
761
882
336
57
401
628
998
652
125
794
21
101
610
708
772
469
730
854
90
172
637
174
360
897
478
225
668
78
462
405
492
529
386
694
43
701
307
575
159
364
659
950
763
620
673
162
508
308
750
646
202
783
543
583
671
587
522
439
578
177
960
920
190
720
302
491
715
915
666
71
163
155
696
725
512
686
411
740
224
317
716
360
328
816
204
709
986
802
24
455
179
867
997
982
403
739
760
44
319
182
446
592
642
679
483
47
88
817
72
984
177
781
215
261
460
601
593
374
517
592
505
913
892
211
891
295
158
713
322
773
925
368
422
43
870
124
717
648
333
158
622
169
731
39
279
398
653
736
522
802
147
387
527
726
676
533
700
431
787
188
888
374
495
298
59
808
360
173
391
337
883
944
41
359
970
337
183
854
931
494
642
422
191
520
627
539
841
696
367
338
424
287
860
145
269
248
673
433
979
471
38
480
346
186
918
202
346
168
755
340
350
846
500
294
546
467
183
975
670
520
967
664
806
53
912
597
84
895
91
723
663
749
874
461
457
162
77
6
601
426
193
674
941
27
987
578
787
567
599
802
65
698
763
459
503
374
674
293
273
322
119
451
77
33
676
601
971
39
836
384
391
178
375
245
328
294
722
779
65
335
810
516
297
288
658
965
986
416
957
83
488
783
732
279
308
742
597
908
351
387
606
748
730
216
412
887
323
519
132
210
651
895
229
938
511
602
155
788
375
711
614
556
81
754
896
607
446
96
937
585
696
813
429
678
728
62
786
81
876
770
643
468
284
748
431
592
555
794
767
706
588
808
534
640
772
51
667
976
319
804
442
227
581
547
513
837
467
550
210
450
816
74
912
604
69
147
272
333
323
304
53
651
328
232
997
888
279
788
905
677
395
809
762
72
329
416
886
737
236
593
126
5
584
318
889
514
895
930
572
625
779
335
653
16
751
790
899
350
549
624
558
678
644
532
55
7
311
840
276
652
261
535
98
729
178
49
67
10
342
483
992
349
217
281
898
60
157
747
321
538
517
536
188
611
35
448
360
53
264
883
204
56
655
919
365
244
238
923
837
702
723
889
9
66
631
210
462
364
633
994
849
564
520
737
136
725
347
486
695
730
689
15
746
458
280
937
694
298
915
655
822
233
909
618
815
628
527
123
979
825
986
995
419
269
34
639
536
917
783
640
897
751
229
107
14
709
143
551
786
694
516
164
449
978
173
617
655
901
922
508
198
225
507
869
744
693
595
478
424
641
402
776
514
276
757
71
5
803
604
107
485
976
336
286
309
822
547
441
96
417
984
634
995
275
442
672
245
359
362
320
114
664
127
145
292
740
650
173
221
102
612
851
297
816
23
222
888
222
560
922
147
155
383
8
657
768
780
239
834
85
826
645
441
284
992
821
849
191
993
569
172
374
220
993
804
133
337
180
253
220
784
24
798
440
174
959
282
120
488
524
959
411
339
136
276
967
411
13
823
202
373
697
228
991
750
772
934
389
203
525
431
601
986
614
301
803
847
1
111
33
540
729
703
469
610
761
36
84
718
837
721
324
356
52
846
87
795
807
689
401
26
892
917
963
94
358
425
724
835
472
120
410
902
790
661
644
994
759
381
989
737
850
670
366
803
108
245
934
768
214
8
40
311
710
8
647
812
739
376
252
336
312
249
247
717
311
422
565
390
203
93
37
426
700
664
175
223
552
160
986
113
490
955
621
464
81
99
192
782
14
831
255
383
130
654
425
601
424
648
492
685
680
545
565
121
971
614
611
47
833
425
261
580
390
139
845
356
628
782
637
212
230
782
377
371
838
653
297
47
239
573
799
903
668
301
433
945
391
500
492
466
488
146
949
589
571
675
993
990
808
69
973
641
12
280
455
897
168
194
283
319
317
565
808
260
626
357
911
90
705
900
965
128
290
171
724
85
833
787
799
164
659
306
239
170
600
158
891
388
845
536
777
197
218
174
149
923
338
690
963
214
763
904
285
908
104
846
352
840
556
371
64
381
394
119
660
12
326
638
660
468
465
524
244
170
123
768
910
117
22
800
747
144
824
585
401
755
21
330
66
754
805
52
831
475
472
397
802
99
513
138
597
699
30
495
748
239
660
116
785
336
935
235
818
755
623
920
556
808
718
905
990
996
572
906
662
414
692
769
697
726
965
811
603
884
204
49
114
329
836
162
95
905
545
730
818
571
233
77
851
551
840
994
381
608
148
601
127
124
833
335
546
891
418
59
371
125
632
934
551
575
807
228
971
556
810
86
451
842
89
92
182
615
918
146
886
971
431
994
737
603
921
989
496
502
616
203
487
486
359
693
938
299
525
277
744
612
23
825
797
62
151
284
36
741
154
930
973
273
173
400
694
637
198
948
653
817
732
470
940
607
598
964
484
395
153
883
91
641
402
274
948
606
197
675
453
637
954
754
349
685
230
215
313
959
999
302
101
576
623
927
880
552
885
191
463
186
800
641
588
271
840
332
871
899
451
88
440
522
496
17
863
977
122
256
378
384
651
524
395
851
782
514
19
474
393
397
721
7
212
267
837
313
167
79
844
898
344
414
509
911
861
579
81
607
64
903
431
629
812
80
534
276
247
737
488
327
313
397
507
55
367
433
311
230
179
550
810
44
411
479
41
238
16
483
989
204
434
412
410
489
965
92
194
133
732
561
67
430
590
518
586
946
907
454
544
429
268
850
428
514
93
388
219
334
39
297
261
763
747
285
892
901
986
18
90
276
239
178
497
618
484
381
453
893
893
94
330
561
938
561
935
583
984
896
397
577
872
860
94
436
300
303
683
305
625
684
960
890
365
269
190
90
354
809
30
711
934
325
440
944
966
699
825
186
350
309
917
90
621
512
403
379
85
61
318
182
698
149
268
209
134
440
196
670
372
845
230
175
866
685
642
548
420
150
469
601
477
497
955
316
767
870
269
853
865
810
6
293
491
848
14
786
57
232
810
526
503
156
813
504
80
742
223
936
869
855
958
934
591
717
704
201
194
952
441
263
171
343
805
561
839
936
683
19
671
856
491
189
339
943
98
322
684
451
236
26
647
333
983
10
852
72
701
773
145
812
592
105
790
547
355
160
351
252
665
144
59
205
265
14
365
770
596
648
620
382
517
743
716
416
616
838
360
795
709
768
235
909
873
859
264
386
398
791
588
937
971
432
786
93
966
443
69
970
644
82
476
54
154
762
296
849
389
374
931
517
800
555
542
896
909
149
331
406
749
978
373
804
61
682
411
85
957
624
450
173
770
390
151
628
293
182
756
112
564
415
997
24
859
71
138
417
889
889
184
817
113
662
221
666
709
671
992
472
352
211
892
764
924
759
747
411
404
914
604
727
393
220
842
335
981
349
944
990
544
993
196
68
441
632
61
108
169
485
919
621
190
284
759
353
522
233
99
101
323
726
13
975
285
456
424
892
820
885
684
360
727
2
927
359
16
824
324
292
699
640
242
918
995
983
538
110
461
489
813
749
250
843
667
818
981
220
783
985
209
168
287
284
801
559
894
188
356
401
338
697
908
807
402
683
485
94
979
302
917
315
432
332
73
935
111
883
335
110
377
795
42
339
84
531
353
958
118
437
89
351
753
60
151
116
840
443
442
984
333
887
241
481
68
893
735
955
212
866
448
11
853
246
24
543
656
570
723
870
330
527
976
543
213
567
561
372
181
957
95
667
441
350
777
490
555
561
272
191
795
398
747
252
988
78
497
508
37
608
460
271
720
571
655
806
911
697
268
500
333
363
774
255
771
780
570
503
469
533
987
95
298
532
75
931
780
725
554
135
70
54
336
573
497
823
947
869
695
970
579
857
293
771
858
433
624
493
480
208
508
994
39
503
620
365
972
188
497
724
27
187
143
133
431
279
28
202
757
948
833
700
808
498
954
131
802
527
674
642
307
287
246
347
627
76
15
832
952
133
851
760
373
971
944
393
714
161
340
579
405
423
735
531
375
808
186
541
548
489
562
446
513
854
417
739
941
796
506
356
265
195
249
624
98
74
327
837
554
562
417
642
187
96
237
884
552
714
971
818
890
474
285
463
570
405
247
519
554
205
452
917
654
984
314
211
174
112
434
302
481
348
986
986
73
920
259
418
617
533
188
227
824
687
465
791
910
786
54
692
826
808
283
349
111
499
987
202
782
27
710
440
280
670
338
542
487
298
390
649
146
829
901
22
18
225
93
967
520
523
300
388
58
742
475
673
65
638
875
574
933
58
635
591
823
747
947
155
350
923
304
612
396
404
546
997
906
262
331
886
406
20
682
259
726
322
382
538
196
664
477
849
423
816
716
89
194
311
198
270
277
938
618
596
220
688
992
653
196
477
766
802
307
989
168
913
375
377
864
502
366
410
959
685
446
454
190
579
688
457
804
596
64
62
609
468
402
86
40
39
329
729
342
718
898
674
543
433
649
802
714
817
447
696
904
867
979
933
151
765
498
414
965
738
673
171
739
245
381
699
512
289
338
825
173
637
68
241
787
771
910
756
930
886
743
987
149
367
157
741
489
468
935
274
541
915
763
603
45
727
935
298
53
949
290
425
479
622
524
268
799
738
147
379
855
741
483
79
995
686
22
372
89
639
211
44
353
64
285
258
873
465
197
60
835
612
704
980
596
318
508
527
843
888
942
750
322
557
419
799
432
684
608
358
706
564
210
414
738
247
73
415
337
266
395
335
542
88
543
243
38
503
483
677
179
495
528
200
696
461
721
796
645
486
825
189
856
838
354
272
403
290
242
350
246
93
190
577
494
607
209
235
14
176
761
929
202
930
180
211
36
10
717
278
525
276
770
851
441
207
478
703
733
271
839
747
261
134
432
87
305
950
706
90
253
487
782
469
724
896
987
926
659
143
236
393
573
964
824
969
323
338
137
287
130
505
501
742
336
14
669
68
498
94
906
86
304
628
26
39
494
301
128
544
220
552
45
591
35
447
175
296
309
463
764
966
813
419
960
747
985
41
134
710
228
919
428
566
236
151
90
945
938
786
476
22
211
593
68
577
460
910
707
889
839
373
758
36
329
939
272
884
668
278
53
454
168
417
317
300
125
479
355
883
358
230
358
523
986
742
756
221
351
383
287
76
333
244
871
854
161
392
237
296
879
205
277
660
734
23
854
794
276
767
453
981
555
823
532
610
16
236
49
587
184
51
534
285
991
977
121
923
546
463
140
732
243
60
5
154
952
697
789
964
887
961
945
584
930
306
520
509
712
261
839
924
343
649
113
829
671
991
669
756
901
931
249
813
628
720
739
496
819
378
657
319
447
85
699
222
105
949
355
685
457
612
211
285
623
215
390
593
946
175
483
961
28
33
64
956
713
133
956
210
567
25
689
334
604
521
477
259
949
890
724
721
636
984
299
290
720
963
190
413
331
146
549
644
895
696
291
415
21
743
508
972
993
145
119
433
922
877
680
103
738
131
644
57
451
761
325
44
733
774
237
749
942
543
879
421
475
46
439
907
230
63
238
207
382
752
727
492
866
866
367
843
284
87
674
200
502
493
194
134
372
248
681
247
506
758
30
450
265
697
957
877
439
773
873
675
893
437
674
699
35
832
178
866
407
394
466
855
868
680
919
982
851
305
535
982
381
990
700
623
722
277
227
169
909
490
404
510
214
999
306
65
819
495
100
539
71
814
840
113
293
174
581
585
777
974
27
135
238
890
295
902
737
51
976
757
606
9
957
917
989
955
642
869
374
855
164
357
205
995
911
567
151
587
331
548
695
642
392
934
463
270
273
323
705
404
328
769
518
343
933
63
857
922
124
337
532
711
211
922
811
670
929
242
979
727
751
150
719
428
62
963
616
23
454
719
683
319
165
970
527
395
838
862
63
849
709
229
464
994
17
983
432
469
124
793
341
32
344
977
652
178
50
90
281
969
446
834
468
404
654
214
547
240
395
417
831
68
180
130
18
523
685
725
412
78
532
148
899
660
379
651
974
188
319
350
345
748
581
93
404
875
760
61
340
802
437
192
74
706
962
273
852
215
959
130
492
325
678
203
438
298
935
807
26
3
240
359
921
46
73
83
486
87
726
143
762
625
385
609
641
340
74
193
698
106
799
760
229
189
857
21
71
378
655
106
940
952
35
338
563
78
271
29
634
879
786
765
488
816
367
866
940
69
562
98
225
742
110
919
203
479
131
732
188
52
13
109
432
620
203
809
591
47
47
563
69
45
559
819
319
35
272
412
822
990
81
2
816
557
880
199
843
115
135
84
947
539
840
582
866
678
333
868
614
558
276
893
23
999
30
180
184
291
600
169
208
719
909
198
971
11
293
875
739
5
966
476
911
962
615
529
205
976
952
641
701
404
797
265
715
187
979
816
528
701
15
553
515
966
876
228
629
643
610
855
386
458
129
610
591
800
981
61
384
500
975
207
338
959
468
803
921
645
483
785
32
476
348
39
989
413
961
945
86
388
900
562
366
97
255
243
276
187
673
914
205
919
432
28
726
808
215
555
498
73
306
983
161
825
824
909
111
90
621
178
839
36
974
996
599
413
841
242
704
225
528
735
972
568
580
113
44
320
313
182
199
406
448
14
82
916
402
541
273
345
133
186
565
495
76
170
944
436
428
313
966
973
850
273
544
571
12
592
246
711
866
791
777
440
979
433
588
961
915
683
12
301
968
359
93
343
170
478
493
411
168
608
891
1
215
226
555
175
469
510
904
809
295
561
479
341
409
126
515
642
581
983
521
745
301
666
5
491
181
202
402
534
100
834
544
258
899
777
226
754
878
414
492
405
778
203
6
408
880
751
933
44
962
850
829
185
88
146
699
548
221
64
993
267
109
371
710
460
18
222
442
632
900
761
764
167
491
116
966
99
661
597
611
429
269
358
572
249
6
359
171
754
78
677
533
814
420
225
297
408
492
545
391
658
310
302
144
201
87
663
693
972
180
601
887
624
453
565
998
751
799
462
455
658
52
688
554
223
228
949
747
267
819
558
606
117
206
953
119
966
214
371
162
343
666
199
574
476
790
909
362
855
226
546
609
31
90
732
607
622
747
920
973
137
915
427
154
621
994
771
418
499
446
33
537
429
300
113
992
853
114
79
433
318
588
891
41
273
949
575
27
474
346
497
220
293
397
25
427
239
46
953
481
20
492
862
409
194
9
180
731
976
740
754
509
669
488
655
549
25
387
880
671
420
744
944
154
949
813
244
32
275
686
753
807
161
597
413
826
726
483
846
264
769
844
50
733
592
988
550
804
742
476
403
852
165
282
62
275
548
708
460
381
765
149
457
291
987
946
348
73
75
829
822
542
540
616
901
575
694
211
562
961
263
439
290
798
284
900
643
878
535
139
279
18
23
466
499
621
388
758
746
645
640
478
730
913
653
860
312
549
380
486
580
337
147
499
118
326
858
658
8
87
304
469
537
936
550
805
519
75
117
281
188
935
464
916
321
784
709
377
145
423
588
94
499
49
558
942
870
524
348
174
762
729
751
660
342
171
941
793
363
848
342
238
433
100
299
644
872
231
178
333
616
482
513
584
498
211
970
488
379
608
934
995
727
943
518
458
185
804
575
150
843
916
14
296
81
351
661
399
750
913
70
640
346
15
557
280
216
167
162
132
201
453
414
755
914
347
511
490
581
840
460
68
656
28
490
700
468
217
504
148
549
572
738
466
538
294
649
713
386
238
242
18
643
443
949
391
503
259
382
734
840
172
817
909
453
2
984
318
525
857
812
999
663
15
582
628
714
948
217
620
697
798
104
344
599
443
425
213
78
99
198
210
835
769
307
378
754
829
13
537
310
331
188
529
426
243
354
628
861
322
676
554
42
762
37
43
68
474
311
11
576
772
240
426
660
603
164
894
707
204
874
885
935
680
310
366
610
575
917
356
89
797
351
756
423
643
168
73
732
265
311
281
518
3
960
538
91
762
869
823
79
460
920
658
448
790
619
362
452
670
433
493
556
954
921
779
421
484
4
17
435
91
162
443
893
593
367
933
720
772
275
848
706
95
277
629
876
693
309
632
25
805
621
63
832
817
724
564
81
181
118
607
758
852
388
988
298
478
764
854
423
685
641
680
395
584
787
462
677
293
902
727
175
371
992
629
470
100
611
76
868
803
853
540
654
668
90
853
706
289
331
399
928
455
210
339
165
940
667
248
31
263
886
787
278
390
433
388
859
758
518
199
866
689
985
620
832
102
27
727
495
933
755
388
961
504
799
720
162
654
465
530
432
363
46
606
916
66
262
265
235
702
994
948
771
132
532
240
469
589
507
63
914
939
752
97
508
498
825
774
591
712
226
206
293
987
766
504
643
380
703
766
840
761
492
793
939
807
617
830
971
559
251
572
147
403
616
493
611
949
98
418
240
488
673
522
476
789
655
783
365
29
596
90
886
740
223
153
447
959
158
701
881
995
802
32
462
653
59
890
372
274
892
694
282
285
527
353
89
969
317
150
152
833
465
942
963
162
686
407
181
464
46
651
792
397
537
244
685
642
61
822
730
764
412
92
136
901
807
601
214
870
64
477
642
8
549
48
531
859
68
300
967
652
710
908
228
241
902
884
748
283
667
447
908
494
419
388
422
374
807
63
355
86
193
310
400
569
10
784
848
489
713
825
574
761
855
79
54
504
863
895
998
922
852
930
203
617
568
148
588
161
626
158
53
6
945
881
459
400
509
659
232
118
37
259
569
841
872
148
638
341
334
917
510
912
64
432
233
262
108
782
1
861
197
687
862
556
773
568
816
974
619
654
995
205
663
881
886
593
362
362
745
421
509
247
827
709
647
141
942
513
649
197
293
726
659
370
921
349
397
13
69
304
331
664
721
680
922
305
249
183
545
639
900
746
37
579
353
949
860
154
908
632
625
303
325
422
361
269
546
294
959
537
197
349
294
441
91
844
526
148
786
343
892
760
967
10
297
547
690
80
18
971
489
243
105
436
678
28
340
299
319
653
759
955
223
9
443
552
452
596
489
508
424
713
367
566
740
865
336
316
126
814
579
466
276
987
49
953
245
857
762
63
505
227
828
133
583
936
538
959
567
745
95
94
591
510
548
776
875
538
695
813
692
24
174
505
75
294
679
235
959
489
307
594
833
426
3
198
884
235
983
804
328
376
749
380
719
485
874
766
440
272
79
707
163
949
371
482
53
324
59
289
258
303
1
78
438
500
261
166
507
350
891
641
554
891
486
317
275
793
785
590
419
913
795
688
410
600
432
884
55
521
145
561
176
694
546
26
376
671
942
220
225
709
259
90
380
437
153
272
463
55
208
259
538
469
869
345
507
312
667
837
69
376
111
986
206
331
465
859
345
461
940
603
851
566
365
710
654
706
308
972
448
161
421
1
314
885
23
707
824
202
518
64
4
105
152
848
599
273
884
50
972
293
926
3
114
604
408
972
104
160
690
801
5
694
390
908
954
110
673
320
309
757
35
143
942
877
599
746
414
516
112
382
821
258
1
155
234
419
887
709
477
50
604
665
511
716
59
310
715
244
894
489
599
565
741
215
258
783
60
236
6
662
558
587
48
309
979
746
694
235
674
535
223
964
842
259
154
370
631
227
819
290
31
171
622
623
782
257
517
785
897
450
360
651
703
815
491
17
617
203
736
312
615
481
569
359
267
635
723
482
62
888
152
833
417
716
632
388
964
425
527
723
230
908
337
224
176
571
261
28
767
137
752
429
490
507
674
549
602
264
357
147
534
35
724
10
298
527
235
987
183
104
52
193
675
14
82
707
144
345
183
695
375
695
714
924
136
722
344
909
42
84
785
701
69
381
190
196
185
328
925
649
337
273
844
664
85
560
754
476
425
967
405
257
81
661
771
838
320
800
873
576
184
325
946
100
318
351
124
294
823
886
523
816
419
534
358
103
851
51
839
576
968
867
485
75
678
528
620
407
610
352
875
384
455
350
466
13
327
745
346
734
436
460
653
538
445
589
837
547
304
668
987
269
960
297
607
316
840
871
421
790
730
716
684
472
12
139
362
70
69
346
776
106
705
105
141
508
214
946
630
90
690
74
104
941
365
606
424
158
743
150
173
455
324
556
4
719
775
182
527
306
228
768
478
958
892
881
564
855
157
99
103
894
241
332
100
657
613
743
107
405
714
204
326
918
174
321
781
149
102
421
732
33
419
324
862
922
595
146
50
484
43
568
1
644
48
278
215
992
457
346
106
33
75
123
592
24
443
559
784
571
100
415
754
736
366
70
476
917
470
178
63
468
693
623
362
147
203
682
871
895
107
789
692
755
315
700
957
296
732
838
479
36
361
478
384
627
814
265
278
977
802
297
523
280
284
638
340
451
760
445
820
760
688
889
465
311
723
998
421
666
112
180
185
631
698
27
108
216
240
735
333
938
404
894
93
809
267
413
471
676
361
506
535
287
18
719
348
471
14
74
904
815
843
611
865
623
113
891
581
258
531
125
212
26
113
882
357
793
797
655
44
310
527
744
306
606
645
897
613
979
679
636
202
166
831
517
95
792
29
470
697
375
831
214
146
236
295
510
175
136
362
554
673
359
30
594
288
99
306
260
977
215
278
602
579
894
922
46
194
596
787
564
764
328
958
668
478
314
599
70
311
136
723
477
617
125
962
843
137
237
229
996
487
769
492
482
98
230
635
252
314
249
316
579
349
798
789
346
400
361
116
974
500
236
948
842
492
800
985
454
931
80
909
957
367
791
77
995
835
477
571
249
678
348
756
63
819
144
129
818
335
617
443
775
121
254
496
252
820
649
989
297
244
181
320
235
339
359
212
558
722
794
510
923
789
867
297
153
479
885
23
349
672
167
120
315
636
135
836
113
295
824
175
187
487
275
5
497
28
522
724
461
931
571
97
540
107
519
985
254
957
343
772
935
626
641
625
77
62
5
598
205
523
100
263
897
620
324
437
515
862
800
125
957
162
562
417
101
71
579
209
117
149
582
156
951
52
240
560
846
650
927
435
23
923
520
938
832
308
199
920
782
83
470
391
158
218
815
773
65
225
524
7
483
796
481
56
940
943
311
845
380
764
590
865
935
365
103
34
642
624
584
793
872
658
426
34
678
192
998
734
237
466
496
622
126
921
952
227
442
464
997
889
997
353
541
19
493
605
456
792
116
781
132
440
640
731
134
824
371
448
377
749
944
577
609
913
268
968
739
14
412
876
592
178
626
695
795
520
118
407
541
74
735
206
618
456
335
57
981
395
788
129
855
994
87
249
944
421
743
627
751
524
865
443
381
240
189
954
813
945
935
614
707
964
907
304
14
739
959
153
579
212
986
345
226
284
21
598
91
378
750
375
776
490
656
17
209
293
825
378
267
380
243
37
460
175
421
891
88
783
235
206
462
590
49
539
538
521
217
97
220
591
863
435
196
560
837
217
308
890
96
721
913
581
886
199
968
950
884
52
862
130
510
308
144
545
913
186
442
117
479
688
76
729
159
675
516
807
841
899
337
205
583
197
688
514
292
880
704
849
570
587
636
166
234
90
82
556
292
650
647
652
775
192
412
408
645
185
423
211
682
162
110
985
714
658
546
314
619
629
253
33
482
592
547
892
52
909
495
69
594
960
516
191
252
685
430
392
785
281
868
108
458
493
167
409
477
650
451
576
543
767
937
662
398
614
171
183
644
519
356
735
689
354
617
722
645
919
733
30
228
155
528
339
761
145
575
988
426
138
415
402
458
918
526
826
23
853
792
637
515
248
747
266
925
133
418
105
876
444
763
557
916
422
349
389
240
598
901
254
40
182
756
506
105
954
277
771
828
790
699
792
128
96
515
980
407
263
414
628
726
470
113
981
375
857
485
37
570
137
587
424
952
538
598
333
491
241
162
971
856
647
277
86
744
971
430
821
907
369
981
976
185
274
528
569
70
774
132
247
469
241
201
691
203
276
839
589
498
182
489
167
101
442
772
79
194
27
237
403
428
664
130
202
156
610
240
678
11
29
264
716
109
914
502
615
447
585
882
469
132
840
323
725
879
815
875
742
502
449
375
43
538
729
819
805
112
998
536
592
36
161
579
469
918
772
58
187
940
157
631
609
144
768
271
587
341
404
322
341
735
497
177
561
653
222
179
380
95
696
504
448
50
291
433
970
262
854
807
108
757
689
802
346
817
766
898
769
458
233
465
707
677
195
857
539
984
18
815
696
593
677
92
245
652
184
559
853
335
300
325
487
597
215
583
46
695
831
744
887
323
410
922
862
231
797
771
854
433
894
986
245
39
111
515
81
597
557
693
634
208
45
435
158
907
978
111
462
612
812
844
153
274
928
374
184
755
230
14
854
412
704
421
441
314
81
448
486
699
502
449
138
138
110
679
279
974
764
954
253
687
309
243
620
50
834
971
111
737
332
325
368
544
838
222
504
624
994
844
827
530
624
762
110
364
707
15
164
250
96
209
990
275
760
168
104
461
800
391
480
109
338
749
368
177
81
593
299
888
176
655
980
920
128
722
63
546
133
257
342
819
808
860
642
123
335
94
783
671
119
43
823
603
365
718
193
875
395
932
283
114
715
275
74
440
229
71
147
39
105
557
329
543
49
660
301
477
107
246
842
987
810
628
769
134
831
377
556
410
530
188
152
201
974
229
104
533
787
202
893
265
946
745
567
562
713
280
554
704
417
716
769
149
91
296
304
88
505
940
609
852
514
737
509
917
405
129
569
820
556
768
690
904
353
578
42
65
62
208
420
552
822
851
992
813
419
4
110
678
924
17
28
846
593
42
750
209
237
650
157
585
710
734
148
649
26
864
796
512
255
239
27
297
521
57
30
662
744
695
498
402
19
891
895
539
740
844
312
311
827
832
828
412
52
834
842
89
704
344
788
555
207
598
424
686
990
730
325
536
12
89
464
541
152
755
567
819
838
609
908
182
552
485
685
423
410
614
246
687
215
941
958
401
907
943
195
421
467
210
549
11
519
775
300
739
368
288
260
297
267
23
250
95
435
606
3
722
912
2
276
376
485
637
322
70
130
64
634
208
560
147
352
628
60
898
663
777
186
946
55
123
355
949
421
192
691
863
965
301
941
472
508
465
933
173
526
881
454
230
609
304
653
52
736
120
670
621
35
537
943
226
537
966
946
154
22
535
217
130
379
267
98
334
267
88
639
886
695
887
373
781
323
955
338
750
469
303
214
301
521
70
828
428
358
715
935
542
519
780
151
990
664
325
850
342
207
320
784
648
481
784
926
148
165
163
902
581
629
196
684
718
322
916
608
309
438
669
976
552
153
98
368
915
736
382
117
998
105
995
544
150
518
566
819
737
144
681
264
196
812
355
912
323
96
432
669
748
716
542
904
537
343
233
496
384
416
12
411
783
46
904
476
634
652
534
200
756
97
870
166
757
406
781
739
797
185
46
819
305
713
368
282
563
91
8
806
286
71
436
322
132
270
481
150
907
878
279
671
562
233
912
651
846
376
147
131
562
493
698
199
371
193
107
70
677
623
913
543
645
727
914
686
661
549
35
487
925
631
831
919
906
375
258
72
800
717
436
188
944
876
244
792
373
237
950
939
164
411
472
285
965
735
26
834
318
227
990
297
342
659
205
931
662
778
293
996
934
35
269
960
188
726
599
768
483
122
314
424
598
95
324
515
160
547
954
171
349
424
754
574
726
139
845
285
671
313
131
594
944
954
5
130
143
512
97
239
137
258
351
196
913
567
699
247
336
690
771
115
824
123
648
511
281
695
234
50
880
314
98
170
991
719
479
643
91
195
373
647
450
715
34
92
73
558
660
160
440
599
949
981
542
16
770
822
307
493
849
447
278
48
359
823
160
181
205
194
88
56
156
141
318
124
664
109
89
556
439
722
35
75
610
281
364
117
628
975
949
657
337
597
346
925
370
403
356
210
931
892
353
467
72
384
443
808
663
418
352
661
733
750
55
127
413
204
438
78
460
44
552
230
245
431
719
559
795
393
754
262
753
879
625
546
369
568
3
226
838
555
453
211
624
289
923
586
542
219
512
167
965
278
750
887
340
124
223
641
665
884
14
271
663
90
908
854
126
509
757
845
202
212
240
904
591
341
606
955
507
133
17
576
880
588
297
475
129
738
206
246
346
361
560
953
542
182
548
534
381
70
461
34
462
667
964
753
39
845
296
999
517
267
135
532
867
437
391
76
793
433
725
387
303
512
500
840
651
286
363
409
793
73
575
437
672
982
115
213
623
543
436
284
442
207
728
79
226
28
87
105
791
472
740
947
345
74
731
950
168
125
102
752
483
886
206
445
691
697
860
885
323
178
452
250
997
442
945
96
783
421
614
623
200
258
618
321
332
628
93
598
252
165
46
499
442
684
800
555
2
283
388
529
168
202
781
613
21
490
949
903
129
636
167
746
510
478
553
225
269
884
113
63
605
263
634
159
133
953
808
314
641
390
94
500
33
86
456
998
477
6
301
842
678
189
469
615
997
299
989
963
132
575
287
117
171
326
923
904
568
622
480
67
682
636
262
739
543
667
714
424
22
554
748
263
584
271
384
416
793
19
162
834
964
844
183
66
103
976
330
707
163
551
431
854
525
234
161
43
926
730
73
331
585
565
942
577
827
25
532
899
941
507
112
549
461
646
103
837
454
196
636
566
337
8
262
470
124
894
737
351
111
342
490
63
946
830
250
399
902
605
239
79
445
431
765
655
440
882
393
879
131
323
588
730
94
507
993
577
304
472
454
933
287
182
788
600
18
49
603
631
397
703
934
849
957
558
122
906
243
606
31
241
501
858
220
788
753
759
968
439
836
672
96
431
152
306
791
263
642
165
638
391
279
762
483
427
388
739
773
535
386
88
335
697
441
213
432
429
962
1
846
259
81
164
794
724
608
504
698
652
767
858
265
78
968
640
962
739
376
792
400
15
985
433
54
749
337
399
989
938
873
362
301
641
318
379
311
116
968
758
819
884
42
122
768
527
823
258
728
801
251
693
54
170
601
832
273
647
110
46
388
209
514
759
778
406
558
623
759
589
329
846
771
618
972
515
973
864
665
527
925
80
670
188
688
180
308
131
41
486
106
663
6
922
370
611
370
282
343
363
968
200
498
139
472
404
922
436
197
86
858
409
981
583
120
308
539
327
72
599
98
428
583
273
484
666
840
848
248
362
146
691
521
303
558
725
581
532
716
284
258
871
933
954
627
697
681
423
803
63
72
44
210
744
265
541
617
225
655
806
563
75
189
834
940
167
887
679
26
394
726
8
610
788
341
226
494
629
645
787
984
418
45
186
290
103
482
777
39
17
109
357
876
909
720
183
683
99
15
461
809
3
397
410
336
65
433
422
403
39
48
988
580
868
821
146
30
4
545
837
685
111
641
10
286
370
131
701
69
159
543
395
614
185
977
982
22
635
849
225
669
60
375
999
968
120
776
9
88
575
154
679
554
177
775
699
361
388
124
965
934
732
354
245
496
653
374
395
890
839
125
395
154
320
169
625
735
642
41
166
593
123
613
494
6
863
840
438
410
279
621
633
511
884
291
937
706
131
504
316
746
382
118
249
451
758
526
235
8
150
963
719
347
958
372
812
120
859
240
632
813
936
985
612
219
491
883
270
29
232
919
605
138
725
419
212
5
364
44
247
338
605
430
260
316
901
286
552
512
479
817
846
891
871
503
810
397
506
31
959
875
256
206
776
231
358
581
622
539
161
807
755
816
992
295
208
506
725
297
317
205
331
757
550
414
73
714
267
223
609
815
499
334
84
371
82
399
654
30
957
320
664
13
352
671
63
31
898
576
295
304
671
210
713
754
544
499
656
362
159
644
314
400
929
346
308
421
733
622
214
808
852
696
339
996
541
318
406
878
352
43
816
691
927
306
144
290
621
329
827
582
743
292
871
314
6
264
84
7
364
641
298
277
362
487
452
974
870
716
214
226
94
777
11
117
827
623
473
624
202
19
800
404
794
631
65
561
825
26
990
277
235
399
515
711
744
540
330
440
854
170
419
904
116
602
489
965
281
755
486
383
791
459
804
346
840
893
482
730
423
890
150
845
726
936
990
694
263
300
372
288
293
33
770
33
599
896
289
193
142
99
280
71
539
607
486
776
595
170
870
851
58
599
18
963
21
574
178
179
611
795
703
981
383
198
90
758
688
772
746
944
605
290
588
324
610
79
306
119
450
214
100
94
430
521
231
694
16
806
13
25
718
110
581
347
396
299
687
341
517
728
88
822
423
926
246
767
11
693
353
941
268
60
729
398
696
610
552
862
967
396
742
882
760
721
226
495
709
242
928
312
391
965
601
722
127
277
670
503
275
463
683
322
454
71
757
659
381
183
651
785
747
824
373
122
985
206
63
701
700
751
58
769
765
42
551
302
459
7
271
419
940
49
588
504
713
421
428
689
964
567
114
526
591
143
565
566
592
480
736
920
214
968
803
523
406
914
557
413
520
455
201
375
911
232
845
699
237
869
409
565
777
374
737
134
637
532
179
622
477
984
710
978
270
351
205
971
245
65
99
798
863
16
169
509
367
739
614
359
298
865
330
723
72
172
143
840
231
669
886
873
735
934
935
536
745
222
105
561
27
873
454
172
770
610
701
762
205
228
767
897
917
819
324
611
654
986
907
99
208
365
740
576
179
225
64
929
80
633
764
145
635
54
333
425
412
158
953
461
471
381
636
3
902
989
956
916
610
325
881
758
314
6
353
662
133
878
993
545
547
772
682
572
464
622
262
864
487
899
199
497
34
446
628
827
728
737
673
189
269
147
319
755
752
7
831
629
700
670
292
534
165
408
914
698
699
65
539
281
727
93
429
711
127
385
724
867
378
526
933
396
205
804
277
400
453
927
819
458
791
632
164
816
608
665
332
626
532
929
128
664
199
393
461
176
717
608
629
367
282
963
252
174
736
895
329
360
132
514
246
772
245
82
489
96
928
612
103
461
53
99
336
449
398
269
198
812
344
101
682
845
299
453
176
827
381
989
81
712
336
971
495
18
684
356
420
118
903
366
247
106
505
168
314
184
628
803
775
467
698
516
17
31
832
400
473
791
905
661
715
939
532
390
126
82
604
318
764
43
849
80
909
977
853
577
340
132
139
992
200
577
215
613
15
819
954
464
186
284
882
628
212
242
650
308
573
115
42
233
580
310
39
733
618
618
607
40
177
255
60
342
653
912
462
138
724
919
376
306
127
140
132
481
160
221
868
668
328
546
4
226
90
905
413
889
539
481
994
396
213
915
287
930
225
541
975
299
779
513
583
654
739
735
106
440
179
558
574
398
750
938
711
631
251
834
253
748
500
572
599
244
924
980
94
212
852
202
256
619
246
569
888
815
962
350
486
354
799
972
711
980
907
596
645
274
204
655
679
390
289
227
799
208
913
340
729
758
641
894
587
977
302
954
153
182
51
896
669
901
348
898
948
528
860
618
336
328
335
820
8
197
522
866
331
19
770
681
901
622
620
728
713
905
385
734
679
952
444
464
224
307
986
778
42
391
279
271
347
295
5
402
423
821
886
390
455
436
624
135
411
369
995
48
282
620
186
43
143
127
939
383
884
871
597
701
211
744
824
940
739
499
334
606
618
219
305
891
20
994
279
244
329
309
53
854
312
939
496
422
206
236
129
221
356
621
517
552
225
185
180
711
611
684
395
912
36
389
430
63
315
294
24
148
847
696
55
575
818
743
390
272
248
403
735
503
371
114
251
996
701
753
667
834
815
568
632
644
914
141
818
922
510
433
108
911
213
980
373
659
567
941
733
482
795
908
464
209
949
891
541
921
139
433
362
561
627
189
333
280
64
410
661
677
924
468
762
814
295
823
291
391
740
591
430
760
20
185
39
907
104
424
695
23
600
897
783
77
72
546
284
24
647
94
596
157
280
56
558
328
146
650
913
126
601
150
181
547
4
601
542
442
151
426
176
640
715
639
78
27
684
685
742
749
539
267
743
647
995
273
480
963
627
711
761
454
511
569
421
450
716
236
74
471
5
842
873
222
917
955
442
641
978
531
644
461
907
164
587
334
406
534
552
731
122
578
814
439
664
722
130
147
218
628
311
448
612
272
745
697
394
522
729
40
830
838
985
97
68
300
546
347
981
87
44
182
684
342
349
427
28
434
557
196
826
296
423
351
220
196
849
636
419
890
940
884
805
512
900
283
592
718
372
365
176
782
165
132
584
129
764
270
922
319
670
959
965
533
213
535
416
635
876
871
451
910
927
92
146
160
377
172
442
66
834
309
62
193
21
44
131
292
766
91
431
579
713
101
221
981
919
272
299
366
867
956
841
501
913
266
855
73
985
425
752
592
828
856
484
361
897
772
513
170
404
125
868
785
440
872
197
827
871
165
240
105
872
76
199
877
468
561
279
754
189
59
306
342
338
839
751
856
616
859
85
147
759
130
961
742
89
56
61
42
69
28
201
821
185
648
720
752
658
606
893
336
493
758
980
346
818
527
447
601
121
340
211
12
81
94
346
743
115
457
789
412
501
238
686
161
857
485
158
690
120
998
199
11
966
748
654
1
150
616
923
562
608
459
920
729
817
189
740
92
303
976
638
201
816
481
835
256
73
819
489
334
369
757
482
123
142
201
46
332
439
345
594
499
533
228
803
43
318
956
344
668
744
67
388
143
361
997
194
485
913
398
927
330
127
590
193
851
976
798
588
617
144
408
652
957
383
139
668
589
678
793
938
116
475
820
589
303
370
340
761
144
7
560
419
41
418
264
372
943
36
951
66
519
369
727
524
336
414
431
759
222
330
605
807
121
460
811
854
307
1
889
482
637
37
444
610
584
989
611
540
119
767
724
553
726
727
419
747
747
296
254
888
939
580
540
813
401
752
299
581
606
409
66
943
146
470
428
483
924
118
940
347
803
890
640
455
606
52
81
393
42
65
107
11
746
1
543
57
497
631
210
831
690
31
934
710
701
780
408
257
300
936
822
630
356
906
86
49
939
85
208
350
672
906
539
541
303
56
197
145
926
371
985
294
907
110
657
773
956
930
753
825
644
824
94
106
242
477
654
840
915
495
117
412
423
860
160
783
491
393
408
646
583
263
330
928
950
529
722
247
250
313
92
10
332
382
705
847
813
434
299
825
401
357
230
432
255
573
870
48
949
873
282
563
523
108
242
382
494
166
155
713
754
407
590
603
403
108
81
41
155
312
970
58
94
582
245
227
33
897
673
377
658
674
297
377
31
528
486
224
141
324
353
647
279
586
72
993
766
627
30
147
493
830
893
638
902
225
470
941
862
16
349
597
492
777
56
80
111
214
573
874
621
856
900
830
958
323
778
508
510
251
460
406
868
527
884
828
781
659
474
805
59
545
362
125
975
756
156
501
531
992
883
553
55
156
525
636
929
63
679