1000 100000
6
668
502
922
655
558
880
308
199
498
853
836
93
949
472
98
888
734
145
890
660
150
931
727
331
373
986
534
37
538
208
715
850
28
44
439
583
876
291
855
95
206
632
452
602
883
828
82
687
473
363
832
291
201
890
400
133
159
670
161
374
558
253
718
650
97
421
858
73
433
711
394
474
459
697
786
842
650
251
337
623
260
320
40
291
422
486
938
130
567
158
297
786
277
268
504
110
517
310
116
603
256
298
463
513
628
461
372
307
703
835
405
160
722
739
237
182
860
821
285
569
32
606
199
930
327
173
985
236
252
675
43
923
523
484
270
999
852
128
22
639
338
288
866
105
261
661
839
130
670
512
289
795
914
372
760
400
413
345
630
166
177
68
369
805
171
240
851
797
362
207
529
863
422
104
692
941
852
103
777
499
998
791
726
574
724
10
663
330
786
633
544
68
762
578
683
813
988
33
86
628
479
912
476
190
378
997
510
180
138
986
850
894
489
925
811
817
362
295
827
47
600
699
898
178
323
965
768
588
407
611
795
786
691
954
994
725
50
492
183
346
65
582
10
441
320
410
862
322
529
726
32
859
192
576
485
810
885
770
879
495
553
691
196
870
676
552
652
153
495
206
777
608
889
170
864
95
284
181
880
355
752
130
197
307
585
132
253
414
491
169
45
475
209
502
710
856
495
204
211
890
747
57
24
665
87
565
736
169
558
806
754
742
618
973
440
456
954
911
638
717
440
435
728
414
696
368
982
532
496
897
79
612
322
437
995
559
608
64
52
517
508
776
501
303
979
932
343
302
582
944
60
852
316
475
999
344
659
490
379
142
160
857
903
398
876
631
985
872
568
295
87
216
754
274
493
267
804
112
62
738
174
735
456
487
572
727
919
748
465
641
950
418
46
939
584
729
325
673
469
203
267
344
395
31
95
830
231
344
982
760
417
892
808
241
188
333
991
933
672
638
355
409
132
947
682
895
927
592
139
292
316
230
973
195
589
694
884
885
906
118
848
644
48
183
858
370
335
301
289
576
177
454
115
922
878
799
260
954
797
170
817
515
218
681
1000
377
335
949
611
566
328
116
718
312
639
39
538
4
121
438
305
772
410
754
235
802
501
706
97
763
181
591
465
129
507
120
330
724
686
412
987
231
299
573
11
230
21
604
262
596
544
590
316
987
936
431
971
214
545
196
527
482
36
559
130
874
471
720
113
688
44
343
206
972
282
690
609
380
869
561
445
709
639
462
4
447
510
951
292
119
890
170
952
315
198
846
312
407
821
88
415
925
409
856
602
748
336
621
963
659
59
890
952
759
726
296
477
463
635
14
263
636
192
830
947
65
16
654
271
363
909
972
104
203
505
999
3
81
485
433
890
266
887
454
885
591
47
332
746
944
480
414
832
11
56
370
216
388
934
424
44
25
137
985
538
691
935
2
562
562
166
55
439
918
641
803
499
922
291
352
954
911
495
377
874
986
30
696
215
192
286
183
572
518
868
150
889
121
95
145
43
466
515
474
702
312
683
535
615
929
535
179
99
325
9
837
881
239
867
110
69
47
59
411
19
196
515
412
504
396
397
995
805
641
630
71
970
397
961
750
696
721
622
467
355
617
503
788
504
310
835
238
546
705
807
830
716
860
352
951
589
590
892
211
772
616
330
892
116
985
418
870
68
356
565
326
112
949
553
111
784
482
952
534
704
836
989
839
989
193
144
348
968
533
75
304
634
16
347
267
655
658
45
290
608
195
14
860
876
332
663
862
206
668
652
384
356
773
892
968
681
589
88
167
272
2
284
655
43
618
664
578
383
226
814
635
591
107
928
445
481
428
749
474
663
935
605
146
401
421
775
185
157
85
796
238
143
839
470
328
108
588
474
78
299
514
402
882
105
425
812
265
956
411
553
37
67
716
481
368
645
301
927
573
7
359
833
546
259
618
397
828
243
763
226
471
870
1000
962
992
273
798
423
810
364
955
545
348
646
818
647
136
323
845
17
675
380
348
490
227
559
107
368
50
931
899
869
771
332
693
459
521
272
82
660
249
572
819
389
477
39
699
103
941
508
939
377
903
967
713
534
456
160
175
638
898
861
462
881
984
902
888
479
994
12
819
76
150
499
171
160
172
152
707
557
932
368
718
507
420
521
220
294
204
543
238
703
390
446
536
748
86
277
174
511
678
786
174
325
611
391
817
936
180
808
458
252
819
346
663
319
369
132
441
871
11
106
918
484
451
93
81
853
120
391
290
239
892
219
239
308
89
81
434
789
834
699
712
357
296
699
500
829
183
365
188
281
449
749
189
313
959
76
676
577
142
556
137
773
70
305
588
917
763
244
114
319
118
831
241
122
809
875
440
500
220
714
878
560
930
681
899
511
663
971
4
526
452
10
430
271
1
429
380
550
51
730
636
407
678
285
575
85
190
526
927
967
49
636
229
173
526
64
781
951
471
513
329
870
122
214
417
850
977
906
322
408
856
30
730
192
567
927
69
629
461
919
849
975
388
449
939
607
578
928
157
916
982
525
484
250
692
265
267
101
176
764
327
48
636
839
894
292
625
505
386
388
742
457
562
208
67
468
935
915
8
762
345
306
271
492
58
59
704
507
383
6
117
894
259
730
523
256
479
270
814
513
227
909
471
459
726
579
586
204
271
56
30
612
370
404
898
16
715
830
919
17
553
98
767
36
816
709
220
12
659
914
927
487
96
653
180
19
507
434
217
784
722
645
366
693
434
409
395
344
383
58
377
148
214
447
812
733
900
947
881
376
941
701
557
355
275
854
301
834
148
427
470
86
359
25
937
206
659
853
349
319
540
758
270
790
35
435
603
29
277
764
895
988
389
615
562
21
326
133
773
76
231
312
312
646
997
743
787
874
932
561
308
227
746
638
562
375
480
345
993
648
778
300
107
250
776
245
285
261
218
476
615
303
857
602
886
253
178
82
659
324
936
558
639
480
244
144
408
274
707
438
382
99
48
835
552
740
573
994
926
129
291
214
694
491
613
397
634
82
493
726
353
612
692
149
55
116
183
250
796
304
524
238
97
165
852
138
977
221
273
513
548
882
4
209
584
510
112
536
36
218
296
871
793
92
321
630
578
951
143
381
476
192
43
78
210
996
173
272
162
889
707
477
318
815
188
947
360
305
654
944
598
594
25
719
910
640
879
231
223
773
779
560
58
220
90
432
38
691
728
655
487
732
5
622
198
295
387
590
804
3
147
943
839
38
599
76
163
179
526
413
667
875
863
56
664
482
57
865
387
592
541
23
689
980
194
953
161
303
913
476
449
114
493
387
606
252
694
418
196
65
985
764
352
280
367
449
105
402
531
662
530
911
443
12
798
816
396
858
46
68
493
922
534
10
976
225
535
68
749
862
833
900
631
615
116
178
767
475
391
765
518
966
422
299
455
259
970
456
407
79
826
699
961
759
207
11
320
816
314
142
326
272
918
656
563
108
884
57
694
641
702
937
855
803
379
207
423
924
215
342
279
962
283
59
962
645
334
362
531
88
154
892
189
644
840
82
56
226
222
383
123
848
566
950
61
855
648
845
930
375
884
210
119
728
202
686
685
605
166
676
368
5
889
116
742
215
473
321
319
191
690
767
296
966
91
605
914
718
97
754
783
438
537
951
461
859
251
447
181
757
111
543
917
682
184
213
793
801
809
151
384
274
274
707
878
517
352
659
790
491
511
70
878
224
854
906
595
805
784
719
413
385
11
754
838
236
28
497
576
545
328
816
966
975
789
956
585
177
977
660
135
673
3
256
737
786
722
416
408
249
707
196
6
630
907
428
913
747
498
857
847
24
592
29
47
13
150
653
883
956
225
36
854
942
981
351
380
223
812
718
866
174
449
714
235
353
485
294
143
362
787
411
668
794
974
208
206
875
210
669
576
362
448
889
36
661
384
915
249
832
447
808
59
877
310
592
628
486
536
231
842
848
279
376
66
96
228
840
760
825
705
685
232
255
203
284
300
45
38
495
722
903
354
981
687
669
624
652
169
852
597
127
847
127
713
627
356
761
948
756
584
265
685
765
473
906
286
47
550
776
31
543
344
507
270
546
781
196
684
404
714
490
215
883
686
293
118
264
879
348
71
573
418
3
808
142
632
63
229
438
865
712
855
821
462
817
40
721
165
379
549
186
480
338
899
902
465
388
325
145
270
611
688
608
117
332
983
449
480
827
403
778
682
708
812
346
529
813
625
824
486
238
657
690
752
797
757
941
997
54
429
174
3
657
671
952
54
856
91
96
736
431
178
560
432
981
915
85
970
546
17
965
454
212
181
775
833
973
318
577
763
133
327
926
162
396
712
144
204
615
228
390
563
695
369
560
230
33
964
595
842
210
300
817
556
461
148
927
4
444
185
25
324
332
399
91
623
387
218
48
691
887
407
495
85
934
368
535
669
397
708
348
692
524
188
654
97
770
967
871
338
465
990
606
801
419
901
299
112
850
376
942
685
116
658
728
255
133
308
712
847
829
187
2
707
473
695
849
883
424
677
36
992
716
530
257
893
728
959
327
572
322
216
410
333
477
255
408
254
205
182
527
412
278
654
423
94
1
769
679
349
317
330
340
51
120
532
842
105
314
345
576
750
192
259
327
125
21
322
70
169
686
928
87
934
302
657
19
711
351
508
498
83
798
839
367
749
977
631
847
274
225
602
162
482
298
548
842
752
689
393
755
751
445
40
588
125
197
234
84
117
893
873
142
97
231
556
985
2
585
609
9
290
823
426
165
476
17
839
177
761
40
159
63
788
973
467
832
63
579
553
722
346
206
498
668
205
186
723
924
97
881
777
353
389
401
404
78
700
515
183
124
124
349
459
167
223
516
612
174
943
279
855
986
555
915
208
606
55
615
456
956
233
810
823
564
73
312
601
706
211
891
10
442
640
842
762
679
116
119
885
726
272
844
22
757
300
836
604
390
559
681
859
481
697
700
843
457
699
278
351
565
753
5
99
976
922
307
344
435
353
43
565
886
38
198
188
284
955
158
377
537
792
777
306
700
796
462
361
691
252
928
334
22
741
10
210
557
927
970
576
253
744
651
865
482
272
477
331
934
122
895
558
316
285
493
937
43
491
450
72
308
399
687
349
60
2
502
19
778
88
399
394
28
976
782
809
619
673
417
890
850
775
557
750
458
572
770
415
277
908
296
808
486
506
692
54
294
761
73
754
715
662
658
346
423
63
328
424
923
511
677
981
606
189
235
840
755
349
751
997
483
821
95
5
524
485
171
275
13
405
791
804
687
46
155
884
526
635
116
63
149
575
687
125
198
154
572
454
383
770
170
137
6
541
697
976
227
557
739
444
425
526
27
691
269
275
357
553
112
626
701
373
399
641
172
593
224
375
473
30
761
753
5
770
79
335
327
108
650
974
554
535
448
475
302
931
922
623
958
414
707
469
530
629
912
225
766
776
399
955
591
328
896
213
957
2
865
250
114
973
977
783
41
180
923
879
807
965
800
23
559
628
209
431
328
303
576
114
499
812
555
605
430
332
569
998
456
358
696
686
683
152
140
669
765
705
15
439
111
393
659
213
150
255
895
431
276
996
629
414
549
835
219
354
674
792
746
325
627
610
204
777
231
47
647
587
724
140
514
790
437
689
786
668
912
520
690
573
389
238
280
666
571
721
35
112
142
356
581
516
31
886
278
641
6
127
453
78
94
318
657
604
795
768
636
234
142
954
746
380
217
654
796
270
650
151
543
578
959
896
218
260
74
806
304
580
762
512
333
71
916
944
763
600
780
571
93
861
482
858
570
948
460
830
176
827
346
380
925
582
481
35
984
835
816
211
852
661
799
849
303
964
690
452
472
806
217
491
684
344
936
491
408
106
286
636
375
134
273
114
472
409
631
843
466
729
991
223
810
492
879
535
470
159
101
335
946
381
596
77
756
381
28
350
884
357
598
98
967
244
458
810
343
866
383
386
481
971
200
457
880
29
369
338
367
554
956
261
287
435
22
207
695
223
761
19
744
794
231
791
51
710
805
356
420
984
548
165
751
645
61
266
949
117
101
264
979
507
556
94
801
902
174
405
286
409
753
343
242
506
979
245
885
268
739
597
278
867
848
613
194
945
895
544
622
602
565
960
197
690
893
965
180
175
350
736
411
347
8
943
344
687
768
778
141
675
343
838
100
514
18
849
779
49
936
374
607
196
143
216
834
484
266
725
254
159
456
658
995
18
425
917
48
774
624
363
338
976
164
996
1
854
569
826
25
463
713
436
331
482
407
150
450
556
260
117
794
223
772
219
125
1
931
573
87
423
494
412
828
992
661
900
543
797
784
158
312
586
236
605
112
714
363
223
817
431
603
948
339
672
549
694
137
494
997
384
593
694
265
279
77
13
495
746
551
893
584
490
126
650
274
771
740
274
504
988
186
632
385
168
919
56
792
657
23
83
581
278
520
59
263
417
963
556
793
152
282
40
779
252
653
415
712
880
468
122
761
642
13
129
158
131
125
988
146
645
954
956
256
979
970
282
90
361
522
251
250
802
412
305
706
110
699
234
141
261
718
276
869
240
279
644
161
277
446
566
689
867
888
290
55
916
154
75
396
292
869
61
560
11
87
911
406
449
96
78
333
391
729
334
823
85
981
248
475
448
481
486
826
373
131
859
904
501
841
260
665
804
477
988
752
343
18
646
558
22
879
805
700
345
661
477
965
475
214
599
775
745
696
966
287
517
781
73
300
870
324
111
272
731
269
907
329
132
784
112
802
708
828
565
822
474
554
762
113
741
290
815
509
267
540
900
213
1
139
300
247
533
764
741
857
927
649
74
928
119
779
943
643
515
309
651
127
763
78
308
331
339
769
992
963
101
271
424
323
155
838
578
844
102
979
425
116
942
756
394
719
262
630
423
379
858
834
591
724
404
829
636
290
795
94
118
120
410
72
338
675
952
132
722
460
856
66
998
482
805
572
597
423
510
62
614
162
727
51
243
756
189
704
358
558
936
676
71
970
635
570
490
541
451
294
769
15
475
621
538
293
173
758
9
596
169
142
546
465
426
893
31
435
677
842
435
586
564
434
274
360
922
727
559
678
142
147
278
620
879
276
429
504
3
984
535
529
766
619
399
638
227
855
791
480
754
172
455
347
174
570
306
77
770
946
127
191
27
28
511
54
210
566
123
128
38
176
330
170
567
251
738
646
658
568
258
201
242
319
334
194
346
732
408
193
919
686
407
519
872
712
10
38
620
851
794
784
525
466
518
928
268
71
587
582
639
682
478
929
582
286
752
608
474
469
929
983
912
174
457
246
303
33
978
163
757
652
807
879
499
848
988
504
659
768
198
891
126
797
658
369
582
180
509
682
605
521
153
366
54
318
906
352
475
400
822
85
882
476
73
618
782
884
518
673
195
569
100
699
162
78
222
665
828
856
918
315
860
32
129
540
304
616
500
970
712
404
363
472
290
526
175
469
949
139
103
88
219
150
495
139
640
540
664
137
687
938
491
696
424
708
990
831
574
804
755
309
806
3
535
587
595
108
452
970
891
893
299
63
657
944
888
788
323
248
924
574
518
606
169
270
51
745
944
524
123
144
782
660
784
225
233
307
705
573
922
858
986
572
779
797
919
655
482
338
601
783
788
638
894
331
889
664
449
785
948
708
553
522
9
114
396
741
707
752
626
7
402
775
528
298
684
58
660
634
963
802
724
619
29
73
855
178
85
562
953
997
583
508
440
580
628
720
658
201
252
35
74
601
450
396
620
944
270
232
564
185
46
840
995
887
127
195
371
839
561
351
522
676
335
190
44
526
434
56
570
590
465
689
826
191
346
19
541
234
503
4
785
243
870
390
177
894
126
608
193
144
595
300
853
800
44
389
126
343
123
734
420
709
328
894
767
791
525
241
315
606
493
574
16
677
408
440
373
561
915
954
407
212
671
174
545
209
94
1000
303
609
789
92
838
88
644
992
478
416
750
953
392
78
682
960
467
482
832
171
532
338
781
153
109
828
714
828
283
423
977
827
375
313
304
624
200
520
387
168
71
555
997
801
520
104
399
331
86
943
370
858
400
90
465
959
625
114
202
190
674
769
705
826
551
140
837
834
240
217
125
404
281
592
319
560
255
113
288
132
903
642
932
851
848
877
77
878
300
839
940
730
837
422
495
452
72
952
129
252
746
737
235
658
526
516
824
449
528
771
605
895
944
248
261
731
820
413
460
154
64
916
624
520
137
690
559
900
543
677
549
105
53
504
575
908
603
526
45
869
723
789
487
384
672
673
337
339
200
371
458
902
640
351
298
243
922
150
11
883
890
987
646
963
874
666
391
121
822
236
836
172
827
899
923
697
983
775
700
259
706
796
279
580
60
573
917
27
802
770
551
563
916
769
734
152
476
258
875
642
236
389
382
156
543
664
69
428
263
597
453
627
911
100
832
892
264
28
386
839
626
239
260
132
401
174
587
266
183
688
832
973
262
400
68
471
834
549
274
748
203
866
187
569
751
164
291
907
460
613
406
592
121
653
123
496
785
352
358
352
262
847
676
111
355
348
897
1
130
513
229
301
524
489
403
519
392
246
392
940
891
197
201
966
892
259
400
328
956
879
166
987
325
298
147
702
59
952
551
743
302
119
329
981
507
791
638
729
783
456
186
271
328
615
68
513
701
276
299
976
662
565
518
28
353
937
228
688
479
402
585
877
664
59
940
15
400
177
517
243
667
22
413
94
723
223
839
377
940
946
541
83
900
784
180
727
319
258
351
515
449
413
783
802
231
527
280
653
69
722
713
817
305
990
57
605
764
876
701
849
565
927
337
636
266
546
554
698
520
580
674
627
605
101
606
591
132
194
157
285
537
485
375
832
652
204
981
825
428
494
288
802
466
283
160
698
66
865
459
942
677
767
396
246
782
244
28
168
168
702
358
522
751
879
577
942
243
788
431
311
81
772
339
138
639
363
852
784
805
592
971
22
70
525
179
826
710
20
504
723
574
441
377
611
80
377
169
791
555
463
688
650
193
982
561
686
408
127
11
899
895
176
49
513
139
21
164
971
202
5
948
150
801
677
407
66
529
174
624
647
753
117
297
696
952
81
37
68
153
966
444
804
867
401
943
678
622
376
485
385
142
434
789
117
273
559
727
727
180
536
920
214
702
286
171
128
791
514
758
195
142
432
95
811
943
354
273
835
438
863
265
982
707
380
901
874
202
921
145
324
597
140
20
178
919
74
342
266
17
704
920
355
538
762
90
634
772
991
705
50
401
749
244
15
321
661
414
655
105
927
261
422
501
111
860
851
348
723
559
633
862
140
878
389
112
805
970
434
256
651
814
327
715
254
721
530
487
235
947
969
512
924
364
487
350
859
121
917
174
304
319
141
485
964
480
66
451
700
956
656
979
232
41
956
180
384
874
130
678
230
478
686
839
351
771
282
220
157
865
62
741
4
694
598
878
95
149
324
614
716
780
426
967
697
57
427
119
963
64
969
563
933
233
4
528
135
239
128
799
487
865
475
428
775
110
436
926
683
247
681
13
109
941
251
355
702
337
595
508
798
747
329
856
337
102
483
700
739
934
853
435
806
246
345
951
737
903
654
286
250
991
808
653
787
462
64
315
270
50
685
854
367
86
143
48
271
343
126
124
991
56
361
851
21
848
953
540
830
866
814
912
117
271
942
720
66
776
841
206
722
241
679
174
44
175
982
758
390
47
97
482
855
253
949
470
751
497
792
474
316
97
866
117
436
762
79
560
230
93
751
734
311
124
302
950
367
557
130
147
559
426
50
146
878
440
581
327
595
313
356
716
659
125
627
760
347
732
850
143
580
745
899
6
760
592
436
37
610
380
221
63
962
850
701
359
439
599
254
61
597
103
605
157
186
140
283
701
681
734
436
251
783
4
801
756
829
473
592
888
569
462
894
25
850
41
86
513
738
332
879
575
843
290
354
677
272
284
746
644
351
340
784
809
234
630
447
440
953
878
685
508
94
725
410
265
196
899
660
926
576
391
744
459
510
647
44
142
978
451
625
499
752
264
468
643
771
810
556
58
817
711
641
276
407
749
63
544
832
37
856
586
332
918
120
543
870
264
807
172
566
592
5
303
379
502
662
327
27
360
395
340
663
114
891
313
844
355
909
195
546
750
341
689
486
665
816
942
920
904
372
184
176
193
775
81
218
653
946
936
463
26
753
776
759
649
339
98
282
699
345
883
237
155
112
409
375
533
646
812
959
946
52
848
518
845
175
249
474
665
873
771
89
190
756
305
162
661
556
351
256
167
821
867
701
674
365
194
942
98
202
319
353
121
981
404
102
610
837
829
988
133
658
369
603
394
651
691
699
385
868
38
693
621
502
455
804
914
987
620
587
231
304
754
387
609
650
542
393
689
111
180
190
941
149
349
107
494
828
916
520
706
491
861
361
196
984
52
952
113
867
323
701
795
565
820
650
363
84
41
846
657
998
471
576
200
489
568
985
818
859
317
123
814
975
531
418
680
729
751
35
331
233
523
368
218
813
178
817
358
657
953
620
906
453
536
946
356
867
304
440
787
341
626
241
42
610
713
892
556
706
193
174
647
660
638
438
545
216
497
970
935
217
275
612
283
989
903
619
126
829
943
109
978
400
11
879
360
744
955
347
594
770
693
207
45
609
333
774
215
899
896
30
841
988
388
920
211
745
738
678
367
709
278
473
928
686
308
42
551
140
861
247
707
824
786
120
867
842
909
60
370
631
216
285
903
815
760
1
414
946
518
565
861
173
27
708
52
408
718
755
392
30
393
295
989
400
483
713
899
263
421
762
766
568
349
695
935
83
951
578
525
94
21
9
946
976
175
721
666
522
610
456
131
707
857
47
341
328
398
65
987
778
700
363
314
726
650
467
72
832
525
190
334
992
79
805
246
548
513
957
767
47
74
381
637
340
488
254
821
8
56
364
12
432
706
743
514
39
49
245
873
982
100
928
842
723
735
589
68
869
436
389
169
470
223
562
72
227
85
963
542
367
131
374
9
919
312
201
691
72
961
878
840
633
815
819
363
769
591
546
954
384
885
164
699
567
710
28
905
6
694
449
297
890
612
989
722
219
250
789
790
180
4
398
465
584
855
347
369
58
527
992
267
818
433
106
708
296
986
741
11
461
741
332
165
86
370
114
590
354
498
700
407
855
664
559
257
261
611
721
287
723
779
88
808
221
176
969
299
708
498
35
31
214
967
564
204
265
455
773
729
594
165
127
300
979
663
829
22
629
782
684
690
543
234
202
972
925
268
74
633
941
655
901
939
330
389
242
450
650
534
460
995
381
645
640
167
844
565
168
6
477
860
519
136
261
570
3
142
786
942
628
564
508
461
903
140
315
411
831
139
953
834
182
931
296
813
642
470
560
782
475
898
76
868
497
994
398
146
93
328
568
795
338
333
73
484
101
49
627
809
458
36
591
680
283
200
541
566
859
244
472
895
882
815
354
31
231
273
795
731
765
598
815
984
232
502
232
353
509
240
651
53
338
137
241
778
416
118
26
779
493
978
98
129
44
609
896
884
594
683
251
380
343
105
373
195
991
775
280
395
489
645
733
730
762
762
916
270
903
276
854
34
787
377
629
745
985
409
700
166
622
248
326
730
789
915
197
744
301
339
270
910
857
105
806
945
324
4
870
591
627
8
28
533
37
56
764
474
313
990
899
817
496
898
31
531
818
970
144
841
966
232
979
301
359
138
826
329
375
349
117
721
772
637
204
438
59
584
970
611
524
781
530
337
413
282
867
708
819
525
241
937
268
143
147
367
862
590
848
660
839
533
966
34
238
141
14
642
439
185
35
736
25
667
403
649
949
21
837
52
132
733
652
493
414
957
157
385
386
494
765
899
339
166
182
115
167
220
556
845
222
102
504
803
735
441
161
813
193
319
970
779
624
411
226
873
414
299
593
565
494
600
594
914
251
871
468
109
244
826
50
74
229
202
289
282
300
116
995
798
356
562
341
624
769
49
551
436
563
480
412
873
302
239
87
933
773
722
357
57
67
195
351
180
576
811
930
747
976
64
389
293
452
225
988
823
918
189
453
858
397
166
415
186
28
829
679
734
963
974
18
668
308
622
849
167
225
441
401
109
494
356
341
68
780
336
785
716
549
236
784
861
337
36
263
358
468
985
593
832
928
841
366
185
314
47
836
781
384
909
227
899
934
789
274
518
374
416
322
45
457
950
591
941
88
555
240
557
355
817
131
459
542
989
884
66
642
893
263
166
430
787
654
36
890
428
781
231
399
403
177
122
268
400
171
313
403
341
32
920
674
634
919
764
550
471
496
995
751
359
361
895
414
628
174
814
138
901
218
738
910
731
551
841
267
660
426
416
311
235
218
881
86
191
555
873
962
382
760
826
721
315
911
699
360
199
81
854
698
9
613
878
547
873
808
728
709
280
264
830
51
492
443
896
650
171
169
908
201
318
919
741
859
20
805
769
560
549
343
717
997
334
937
573
839
995
938
431
137
196
976
342
776
402
519
657
91
243
315
279
209
28
514
231
360
179
252
662
11
907
377
808
36
473
88
96
37
163
418
850
495
968
421
193
928
228
867
438
935
999
258
302
251
702
435
237
585
262
103
432
696
189
234
176
350
399
361
692
281
679
52
593
324
861
860
369
943
306
899
519
250
91
580
320
500
267
893
240
628
841
846
487
156
208
252
163
948
160
342
717
267
587
553
723
58
116
237
880
504
219
146
272
124
841
476
337
758
877
141
841
362
519
328
851
82
382
27
781
477
529
332
680
768
785
165
496
673
791
479
736
427
738
436
261
994
860
834
761
130
995
285
399
881
866
141
996
824
657
229
376
644
238
781
934
865
446
697
239
544
502
812
223
694
963
82
133
841
365
538
115
449
858
300
340
940
716
849
769
304
430
925
492
812
671
479
980
265
332
288
724
451
329
890
599
143
114
488
298
671
851
262
423
779
331
391
688
322
359
836
820
993
454
682
559
946
771
506
931
656
257
791
201
92
524
85
469
159
492
478
544
359
997
8
320
162
26
359
483
474
259
382
31
907
656
374
206
915
588
939
707
343
295
286
778
986
911
617
308
66
647
516
395
953
909
340
631
655
206
750
650
904
111
419
220
402
556
724
225
970
754
15
941
765
296
917
764
533
693
815
892
750
975
238
730
192
964
163
276
512
389
404
361
351
469
596
572
793
392
911
695
350
978
209
331
598
394
552
433
46
731
386
885
612
664
744
334
622
520
50
720
869
803
195
355
753
113
241
370
103
385
181
19
33
57
58
580
230
745
726
447
730
118
449
677
651
506
851
266
74
849
118
530
742
711
278
890
388
380
634
119
571
382
410
807
421
876
710
953
422
258
250
470
815
853
699
81
563
406
914
624
501
683
620
947
423
441
741
911
909
482
819
881
908
945
587
511
335
875
190
996
105
30
995
891
832
349
676
126
162
433
606
951
861
208
639
787
170
547
381
73
156
781
253
487
190
537
157
359
774
629
431
497
466
969
869
976
776
209
911
522
339
530
214
944
414
946
889
217
557
925
30
585
520
55
356
137
968
11
62
933
53
500
387
112
23
728
443
719
704
117
494
828
58
459
42
680
540
137
901
763
419
392
626
162
666
271
904
897
702
548
140
676
713
572
448
250
955
348
827
130
32
111
373
743
11
628
731
67
31
147
666
394
645
665
195
227
61
817
160
43
910
171
795
951
134
639
163
478
835
112
995
508
269
630
272
879
357
97
279
853
362
167
667
675
773
604
196
734
781
374
912
443
78
884
913
166
71
450
232
3
971
41
943
248
402
717
316
112
616
790
16
196
926
234
721
372
503
217
223
903
595
905
321
65
417
723
729
963
347
195
904
472
292
483
709
414
538
607
500
453
176
25
194
681
689
562
159
658
226
551
760
29
129
210
681
757
337
710
34
421
98
662
429
482
685
609
241
713
632
561
637
39
23
653
60
191
992
573
108
492
526
487
498
403
40
305
820
389
348
107
926
559
668
99
580
853
265
810
611
604
830
383
408
604
588
762
516
271
236
93
629
796
597
711
344
814
327
644
380
172
765
389
352
240
394
991
176
196
837
427
147
360
948
702
377
574
693
855
363
311
802
392
828
511
996
245
627
247
761
453
357
209
636
351
503
678
174
781
673
295
469
16
423
96
349
931
502
214
224
394
209
673
397
223
63
225
970
296
873
703
788
737
229
639
601
328
585
694
179
134
633
745
908
314
939
363
187
640
636
105
438
193
987
675
842
152
943
260
991
676
775
172
731
685
689
27
23
646
701
362
101
38
89
489
302
396
358
291
794
809
870
11
507
645
622
424
353
478
396
841
354
631
10
79
262
516
742
756
292
63
116
250
385
929
269
808
641
723
474
216
82
5
20
49
561
395
407
801
910
944
459
206
718
578
717
911
657
419
404
490
544
610
469
331
840
65
142
565
195
829
217
907
99
870
370
509
364
977
536
294
244
308
315
489
178
353
625
609
710
683
385
266
577
677
119
738
164
434
910
649
270
986
126
934
322
563
329
133
568
32
686
369
539
994
284
51
965
857
572
113
769
710
132
885
427
547
210
940
817
652
221
346
161
463
556
292
451
108
613
343
302
872
931
856
536
690
763
580
734
174
796
640
312
38
472
460
736
201
572
45
603
925
367
718
919
41
684
118
861
930
204
6
674
926
977
343
891
836
306
83
367
292
374
970
467
954
540
119
873
718
396
678
220
15
605
58
390
141
233
26
899
405
340
246
892
747
555
330
885
421
164
32
599
855
162
777
833
544
663
648
268
91
732
19
449
203
378
565
454
658
608
423
952
213
688
677
244
45
393
972
4
344
87
907
317
103
478
910
397
601
126
107
507
496
117
418
312
801
3
957
534
683
601
756
315
134
912
985
406
972
238
623
315
193
645
747
51
256
66
372
905
369
711
599
295
269
370
684
142
424
484
458
956
518
550
427
197
137
930
291
732
714
61
692
590
894
519
33
318
286
854
286
986
369
51
955
495
838
135
196
267
516
632
987
214
580
924
911
704
171
238
685
468
223
199
673
635
853
654
247
669
309
941
701
63
395
53
379
957
627
377
525
678
861
336
141
975
494
134
436
934
376
543
530
77
735
89
783
271
124
255
15
5
875
644
609
955
648
344
385
544
304
280
476
524
313
673
700
637
729
767
728
660
725
162
955
191
713
1000
253
535
880
622
705
392
539
808
807
84
795
236
428
708
515
282
866
326
954
328
511
691
1000
651
885
654
160
635
820
631
816
720
906
879
263
515
303
745
826
175
849
952
705
232
283
357
990
998
812
79
813
130
147
984
150
282
228
884
524
835
869
738
767
421
659
236
913
617
557
739
850
570
567
904
967
760
680
234
547
683
355
439
279
181
612
536
971
56
947
423
944
772
208
613
486
925
101
482
650
517
376
880
616
347
902
873
570
160
19
861
318
222
861
537
291
342
887
240
385
879
461
107
560
416
335
456
810
535
461
687
915
422
707
958
229
695
400
760
823
524
771
227
541
634
227
237
857
833
930
907
673
569
175
979
965
120
537
753
548
194
763
518
755
494
627
762
653
739
969
799
321
473
350
856
35
583
232
828
815
78
18
934
641
519
35
528
7
647
97
119
487
57
924
98
144
714
475
603
967
775
178
780
449
900
713
738
65
183
118
157
323
2
798
997
102
308
855
160
398
621
706
10
605
303
258
245
408
384
306
976
415
555
300
389
291
635
834
203
633
776
793
478
633
295
735
361
387
767
952
508
953
528
262
379
407
662
291
31
625
61
138
949
721
652
372
749
550
18
993
691
685
265
48
987
571
193
744
777
958
348
1000
438
744
504
111
660
906
803
450
491
545
817
367
729
818
335
111
648
384
382
842
204
299
196
448
58
32
449
268
916
934
791
111
897
881
137
493
945
453
860
997
729
440
67
485
236
510
885
944
336
118
923
387
160
977
764
918
177
151
351
183
741
81
379
766
419
256
656
6
439
57
391
942
246
472
258
813
951
845
654
476
954
943
706
830
637
763
912
595
595
649
863
760
956
276
682
508
835
303
145
217
803
740
616
98
696
485
637
805
239
600
290
844
707
59
449
330
473
604
78
662
366
779
207
509
900
255
662
402
349
309
667
148
500
330
952
670
154
775
399
724
128
687
561
308
740
954
446
221
997
56
234
580
814
427
539
425
564
742
577
535
220
277
34
357
687
292
64
386
98
388
844
394
780
834
835
686
133
462
369
102
820
446
849
173
674
480
618
111
635
546
386
605
964
983
540
426
717
131
477
110
902
169
507
955
887
641
686
415
838
618
831
276
691
226
805
10
471
405
233
898
858
919
190
955
494
284
944
363
884
167
100
332
275
386
692
715
758
393
220
457
807
870
166
215
542
736
137
284
889
417
849
534
400
578
856
854
219
19
483
755
821
465
161
300
77
606
779
358
874
596
172
398
353
997
288
69
325
279
398
812
555
712
84
352
245
581
845
391
766
712
84
544
418
231
235
231
228
624
296
921
675
963
128
773
264
958
515
708
654
428
74
730
297
895
988
546
959
598
880
248
918
353
130
955
218
674
634
520
173
111
257
224
155
71
573
70
107
63
581
664
788
771
995
416
481
886
755
949
274
781
664
969
537
499
479
645
27
935
263
371
547
213
138
12
690
142
221
337
232
419
261
920
218
925
901
816
296
315
327
152
110
136
268
316
176
174
578
988
509
464
22
309
620
875
453
100
101
758
357
481
683
178
119
774
541
536
619
289
356
507
342
962
567
954
728
906
108
244
967
905
506
571
174
52
857
53
126
76
524
917
871
58
198
680
420
377
286
529
870
723
181
261
32
768
225
400
705
355
472
441
635
532
141
500
244
987
639
520
151
28
817
992
498
181
576
250
766
148
310
397
478
458
724
67
434
365
996
985
725
894
571
585
819
348
974
760
962
825
470
697
674
322
685
470
249
90
937
980
403
791
448
97
317
390
486
588
320
856
455
348
705
606
399
468
454
978
164
796
128
274
832
959
444
744
192
619
540
362
303
739
434
796
384
347
842
28
124
492
951
159
93
497
626
478
778
671
713
155
220
986
380
5
929
172
326
169
30
831
60
823
258
827
819
897
579
440
42
119
869
146
69
650
814
242
648
742
703
36
912
467
976
838
617
669
47
740
969
503
764
160
245
631
970
770
695
966
871
636
601
425
979
504
852
161
981
781
704
920
492
274
663
844
424
597
504
877
243
855
365
117
617
352
591
214
517
743
448
389
121
106
99
12
921
224
417
485
457
377
86
265
66
52
249
11
938
365
38
228
364
236
735
962
402
403
700
977
958
684
816
283
776
667
682
370
218
364
108
413
246
534
732
632
791
351
345
828
958
227
104
39
43
995
722
156
762
594
107
987
850
334
500
159
194
841
876
100
214
624
356
105
552
310
546
963
961
720
382
924
601
548
997
980
605
808
56
921
504
450
255
797
290
250
103
951
674
811
58
161
475
638
254
939
91
39
744
761
131
242
343
199
604
75
10
190
967
163
594
535
955
172
600
900
214
682
754
163
3
254
884
369
724
55
513
313
254
135
748
24
110
452
371
101
113
226
30
59
658
707
901
247
588
529
231
575
450
444
404
455
452
471
517
241
937
651
648
89
624
757
844
519
949
826
179
898
395
949
647
287
627
37
222
530
222
412
718
897
416
778
133
498
136
683
237
69
719
888
673
972
801
650
223
108
601
465
615
753
169
817
554
610
237
919
565
726
432
787
429
830
105
313
803
814
277
261
638
285
543
256
168
172
840
389
88
37
819
308
478
865
783
601
802
835
156
917
219
355
855
210
315
274
627
551
893
34
724
15
960
624
613
988
96
71
769
867
37
100
672
336
495
325
84
631
157
864
526
392
110
526
889
836
839
899
10
618
711
892
625
364
203
403
738
757
381
906
625
621
714
811
627
746
907
209
860
287
80
602
460
464
172
371
541
532
352
922
390
412
786
710
901
671
789
157
573
59
215
166
413
394
304
996
77
631
701
308
597
146
732
327
74
367
187
543
325
124
527
575
98
380
796
632
344
917
82
437
4
239
918
784
89
301
789
712
16
451
394
383
171
711
554
511
669
780
650
559
898
788
439
634
375
24
119
416
823
66
403
882
719
767
90
871
638
953
646
142
278
388
559
210
519
615
186
752
356
160
703
740
237
552
914
973
598
832
932
490
646
399
704
816
774
432
517
264
194
51
2
666
857
988
150
690
707
315
475
522
452
485
614
553
105
125
287
965
393
258
108
748
526
586
59
352
394
662
804
278
495
181
504
744
346
19
877
46
318
692
450
984
541
561
330
851
428
693
574
993
886
972
119
826
26
382
189
321
964
237
13
218
943
931
503
133
958
873
568
391
929
976
155
522
425
860
954
196
586
37
338
237
626
284
411
543
370
186
849
405
605
403
539
518
137
273
200
915
638
810
755
811
368
769
688
496
110
915
351
308
524
680
96
984
541
740
156
42
997
720
276
198
190
972
219
737
72
873
927
916
802
786
549
683
961
280
186
730
322
767
614
239
208
320
529
524
956
995
408
256
127
832
778
560
222
151
148
693
421
873
690
93
281
630
144
959
774
563
394
446
548
303
942
310
488
911
745
48
421
416
669
86
869
727
143
297
205
493
461
289
726
577
849
526
80
627
19
871
429
333
270
101
115
966
188
512
863
463
93
749
742
90
978
366
183
665
556
44
127
41
135
508
276
24
989
192
8
291
291
328
858
692
107
795
81
311
518
280
884
496
979
370
53
42
311
10
716
208
23
53
269
472
463
145
764
550
376
411
144
64
504
296
654
796
91
382
608
888
472
570
516
901
928
882
135
801
467
387
833
256
287
543
905
317
351
831
471
475
504
56
907
409
530
522
80
742
367
774
552
22
938
521
387
759
87
161
93
620
62
571
175
424
326
885
494
339
520
592
775
440
596
824
485
497
323
472
974
605
247
296
701
556
585
439
115
143
61
123
920
36
49
528
1
894
6
573
546
424
608
672
167
560
43
688
754
931
747
981
132
50
488
210
936
256
801
16
616
357
619
733
220
487
34
936
277
967
522
117
368
643
739
699
586
418
69
60
775
682
851
494
697
742
758
953
545
108
214
909
498
530
284
682
389
819
226
886
45
482
785
334
197
47
544
6
314
728
204
848
86
780
893
625
640
836
872
477
428
803
240
167
891
176
802
327
619
401
332
698
99
347
461
565
697
60
284
455
703
504
741
465
35
975
290
138
932
924
360
312
521
908
29
941
683
869
773
296
408
276
19
468
854
413
448
169
99
85
658
509
267
972
948
541
613
938
894
474
949
193
813
21
34
765
994
256
201
735
915
160
219
383
312
870
746
157
925
937
682
26
626
516
924
277
490
497
628
114
527
195
379
833
195
693
814
693
763
561
698
374
491
30
624
9
468
519
862
128
452
877
76
728
387
789
303
849
14
655
334
565
794
411
366
639
571
19
786
18
8
474
883
443
349
160
76
350
866
616
769
675
397
367
155
575
657
743
227
375
850
610
315
157
825
236
110
906
970
859
888
84
623
467
644
643
476
110
982
15
924
651
575
363
886
665
972
995
491
122
941
152
954
932
449
713
518
905
627
222
306
913
36
320
345
401
267
295
991
422
277
785
887
810
506
534
674
716
525
901
166
497
391
507
850
631
571
48
761
693
159
720
122
938
893
137
866
691
199
845
440
729
712
700
606
281
198
313
64
730
190
841
530
440
339
27
790
827
772
9
82
682
370
267
304
139
59
225
946
369
742
488
453
905
458
318
939
70
404
794
113
528
77
608
155
870
416
585
961
218
222
135
953
932
329
388
151
671
983
915
403
960
515
58
530
246
799
209
765
730
82
15
80
140
705
778
831
41
802
482
17
467
349
231
94
421
783
143
491
181
37
60
473
677
933
421
441
395
881
193
182
401
468
752
788
568
155
270
368
56
329
831
785
182
477
553
694
247
290
862
553
574
93
674
200
518
123
999
696
341
474
529
344
943
520
830
73
271
73
88
827
781
100
433
908
140
796
588
558
83
513
85
907
748
159
216
627
67
686
894
399
474
934
234
204
542
475
38
135
880
693
295
166
499
3
654
517
536
588
599
791
205
302
817
158
930
764
38
579
357
406
657
622
376
578
385
654
464
900
521
261
910
261
860
924
541
685
91
74
819
258
285
862
973
943
253
327
605
337
416
734
497
77
197
514
425
254
375
134
870
904
781
360
51
959
543
293
699
122
480
911
662
599
731
12
106
637
570
481
444
758
943
150
278
454
234
487
179
90
425
342
528
601
937
510
641
589
899
451
261
565
791
1
859
988
236
557
636
774
94
382
308
964
933
978
894
279
208
266
962
787
381
493
71
800
554
646
897
215
438
544
746
612
692
35
446
229
913
446
53
126
226
199
394
325
489
421
418
409
208
885
153
290
948
80
694
2
427
697
515
438
281
70
336
371
612
251
127
171
872
11
786
715
231
932
433
776
102
776
49
856
696
85
945
771
996
163
45
85
297
227
420
645
142
835
726
772
722
200
414
396
654
692
766
972
27
948
85
549
847
544
951
508
444
836
838
753
780
340
691
817
745
293
150
317
786
904
697
779
195
428
670
701
963
433
497
840
260
71
736
921
206
912
801
612
327
29
250
650
685
621
373
387
717
841
157
755
821
837
365
903
816
392
651
315
200
580
960
46
755
48
934
506
136
128
600
850
812
127
271
208
883
300
381
284
507
115
146
554
738
556
997
880
367
74
899
446
64
327
396
990
115
148
442
63
821
743
189
620
623
507
274
494
123
516
65
363
311
254
340
342
84
291
456
104
204
650
516
427
963
670
653
631
978
306
182
1000
493
26
230
367
63
645
789
300
826
691
320
81
578
367
744
754
242
395
572
874
975
893
277
550
359
879
563
922
495
2
201
685
468
119
437
93
70
934
296
526
733
466
353
106
109
144
842
970
898
610
876
28
832
432
88
402
853
544
433
238
285
912
912
945
729
99
486
501
462
160
456
547
829
234
727
862
528
757
913
348
821
906
132
409
496
957
764
253
396
322
95
423
177
509
168
8
348
354
52
632
999
142
419
534
678
220
456
414
787
762
963
60
5
473
991
790
776
87
442
751
856
165
809
539
702
819
482
844
63
994
292
826
618
346
130
716
663
612
58
174
218
489
811
565
202
934
253
84
251
275
227
774
983
354
667
314
920
807
490
464
372
352
511
671
200
512
697
729
587
877
571
624
697
699
202
806
694
255
983
296
836
728
122
437
945
832
309
969
914
181
787
955
411
905
359
422
444
609
923
959
632
554
841
519
214
790
701
618
136
804
966
232
158
905
712
789
474
442
57
777
934
379
200
980
48
780
773
870
996
369
548
290
525
923
385
252
708
383
94
776
762
403
71
365
549
566
603
426
714
726
843
994
541
240
947
767
896
200
711
168
734
153
777
8
110
295
455
762
315
467
581
301
512
949
417
382
320
453
838
352
829
885
731
864
9
711
475
899
616
676
151
931
65
629
636
596
522
749
226
674
895
990
230
150
483
992
423
979
262
398
714
65
214
295
156
171
32
509
630
760
266
582
974
647
189
13
939
678
991
68
65
396
782
993
574
892
1
738
79
211
561
985
833
52
672
699
954
960
717
630
345
594
358
830
290
81
35
435
758
423
812
614
471
741
671
685
521
961
90
971
608
73
54
60
799
145
556
675
163
643
936
2
649
118
172
106
889
955
59
7
102
325
656
851
593
640
354
153
126
324
544
536
980
800
301
468
92
13
334
758
523
644
444
469
379
588
448
639
468
940
802
287
590
480
356
2
698
816
406
205
150
988
118
51
634
172
656
164
333
69
924
428
721
516
117
2
845
58
724
100
277
52
17
290
351
201
502
221
397
539
55
849
281
33
859
362
952
852
209
319
342
688
56
620
630
453
102
1
324
437
182
559
503
619
114
587
133
337
220
317
99
332
864
398
14
242
904
466
789
16
254
973
417
981
505
805
481
995
733
176
846
795
914
753
370
417
59
225
481
50
614
156
85
422
697
540
334
589
512
353
653
57
470
930
903
42
246
629
773
384
832
887
207
21
673
583
958
158
466
343
814
332
258
979
899
956
287
839
755
900
571
303
970
877
187
146
588
444
462
567
299
199
854
185
258
58
369
867
914
827
18
226
450
149
350
282
643
109
654
839
313
472
454
820
395
432
765
887
588
37
256
434
628
128
332
396
529
360
133
369
986
805
957
203
680
531
408
723
834
995
430
677
314
446
336
845
346
454
354
866
946
572
539
740
515
303
386
385
484
109
588
13
485
790
575
392
285
472
571
261
906
252
886
498
935
840
142
127
466
775
124
922
839
422
135
812
754
250
635
700
477
579
889
676
421
57
113
958
669
544
150
817
588
47
433
877
100
885
462
67
887
631
975
627
660
199
411
136
937
730
115
126
693
175
155
675
293
337
69
815
774
592
339
149
659
723
105
741
785
754
383
184
894
604
857
103
374
629
592
158
845
337
277
422
795
766
117
40
278
430
710
689
408
763
897
131
32
336
767
344
842
618
583
85
390
151
608
443
561
889
799
743
929
214
14
316
545
558
956
523
589
950
955
69
826
964
19
688
555
898
590
175
629
794
599
312
40
732
757
271
40
199
72
217
561
203
806
545
228
224
251
343
502
791
726
932
739
850
137
706
921
265
680
320
83
228
26
574
384
112
915
778
147
669
444
211
835
549
342
696
746
662
628
62
368
245
471
602
147
940
740
324
825
861
877
684
120
326
667
678
806
494
381
412
599
531
8
754
430
719
968
226
934
353
760
925
288
800
989
741
341
603
652
318
618
596
375
838
25
879
969
677
849
766
974
727
136
863
572
739
240
982
321
331
661
314
571
55
741
610
563
231
303
655
636
237
447
573
254
551
28
778
296
413
659
817
89
517
136
923
626
215
192
319
27
99
189
957
388
632
645
858
178
630
281
767
398
486
956
865
987
321
38
809
250
241
522
753
657
874
966
383
617
368
659
283
728
232
455
41
249
790
664
961
488
301
673
438
718
352
392
53
303
559
489
698
618
401
866
752
68
621
600
760
577
574
536
215
129
502
466
340
1
143
658
938
741
888
490
756
638
849
602
585
222
621
222
963
879
202
38
290
764
951
95
306
19
285
838
80
30
410
128
528
485
663
135
607
196
115
450
392
350
1000
421
703
228
642
373
198
689
748
694
424
934
493
817
755
645
935
755
640
45
71
109
233
769
677
652
982
450
613
274
37
940
626
88
385
375
205
255
62
492
82
945
458
840
792
200
842
137
395
458
440
74
600
170
518
5
799
647
340
802
440
944
637
143
464
504
792
562
968
700
145
973
86
544
245
141
202
606
135
301
558
144
645
506
498
21
932
987
504
329
406
861
899
313
63
24
201
201
676
15
656
220
206
824
202
584
443
100
364
899
654
11
655
528
659
369
971
469
517
269
182
949
85
368
134
535
354
18
53
846
600
750
212
853
718
837
414
689
165
402
829
133
420
299
507
564
692
977
176
112
605
676
878
458
509
409
837
304
459
683
997
218
331
495
983
90
81
554
299
281
752
805
188
886
781
764
848
945
979
497
685
68
617
248
790
287
74
56
754
133
519
355
782
415
368
684
73
941
332
733
824
69
604
990
21
547
360
184
122
312
826
427
381
437
667
647
193
810
436
701
497
907
738
295
470
682
846
148
528
49
87
714
948
478
641
302
863
325
518
54
679
152
945
981
345
445
548
678
362
666
670
87
954
663
65
506
331
939
738
105
38
63
907
726
960
353
931
832
691
496
790
622
358
697
930
881
832
892
788
634
267
821
146
519
803
453
333
279
88
53
841
43
354
203
870
876
493
441
749
652
443
18
366
315
285
655
339
109
623
337
960
404
399
91
855
522
425
929
716
83
565
569
427
475
770
163
548
336
121
4
64
418
192
188
945
521
632
376
253
24
938
611
856
119
979
508
611
592
205
77
340
638
216
421
946
729
273
340
563
700
979
537
390
458
277
792
71
428
288
956
12
780
58
445
144
692
800
37
229
306
150
816
818
406
332
33
869
458
89
2
796
638
662
831
416
495
725
749
548
578
677
910
59
221
856
201
724
563
686
503
664
760
196
376
27
747
386
6
499
609
368
604
427
658
47
956
468
306
771
125
294
503
644
117
419
580
589
312
312
522
722
69
84
457
845
124
2
863
20
944
190
562
952
37
924
435
947
180
203
591
189
812
346
338
479
117
362
286
511
897
30
754
275
581
684
904
155
651
97
395
510
609
815
880
905
241
748
540
56
10
574
1
329
959
438
939
811
761
388
401
926
190
655
209
292
25
239
623
428
866
139
657
514
199
206
446
182
45
73
579
91
671
196
395
8
197
55
567
425
4
935
959
955
261
471
302
533
371
590
12
808
883
214
79
18
20
22
263
9
474
369
176
730
594
737
388
477
183
730
453
610
85
158
514
814
430
35
762
591
477
299
729
181
737
486
245
43
438
527
853
52
388
885
351
33
416
591
506
410
191
297
799
795
259
603
677
571
507
6
37
947
847
132
189
236
877
916
817
71
979
127
427
839
571
155
181
28
287
159
694
645
67
367
982
289
931
62
554
799
247
343
192
488
327
204
894
59
437
903
782
369
618
876
65
3
18
995
647
598
940
359
863
52
267
651
244
755
632
959
558
536
146
513
748
300
278
500
502
219
950
442
244
878
980
641
918
537
48
339
345
967
756
912
563
377
383
711
716
968
483
834
193
915
547
821
676
69
918
307
4
589
398
932
795
181
713
81
80
715
996
219
456
611
327
598
316
707
409
765
407
62
605
733
40
618
444
405
527
883
938
434
104
80
313
517
708
325
813
479
334
510
803
390
381
257
945
1
397
251
787
560
207
668
122
368
92
857
521
116
490
953
212
798
507
30
387
896
197
29
469
924
636
646
572
389
850
807
900
210
526
600
549
373
372
825
182
223
403
147
981
767
344
893
425
612
967
438
590
441
593
978
677
24
202
987
580
250
686
714
292
625
325
772
297
261
782
416
182
729
918
236
339
969
166
56
324
875
444
543
697
199
844
536
644
138
733
673
437
260
616
443
999
933
730
803
221
426
238
529
738
289
338
559
226
77
248
331
401
373
582
31
335
124
334
17
15
2
540
703
373
853
692
633
236
192
512
211
268
125
815
566
479
225
294
493
6
54
525
251
3
916
390
311
369
772
302
843
539
791
506
176
277
485
40
989
864
282
389
710
230
627
304
764
66
527
259
734
339
254
134
190
132
180
504
941
824
318
180
266
485
899
846
60
678
202
812
743
942
427
457
979
607
565
282
557
196
354
273
505
256
41
33
468
374
328
43
529
991
831
255
897
973
449
471
568
234
509
89
435
403
208
494
180
448
429
788
843
432
105
208
178
136
687
768
835
793
328
490
536
321
919
622
709
420
2
751
931
946
622
268
641
639
285
531
796
131
796
445
402
581
455
6
596
172
399
583
366
527
105
107
295
793
730
507
565
461
133
534
954
839
959
90
108
456
771
915
446
774
792
195
762
550
459
179
336
273
608
818
735
754
945
620
137
917
684
165
871
86
318
541
385
576
880
163
690
368
441
194
787
696
720
782
733
810
841
478
391
954
224
299
670
667
275
346
194
952
640
432
567
328
139
831
497
515
546
957
660
939
948
952
862
244
841
322
515
751
688
742
81
167
875
983
893
857
418
695
895
50
17
605
595
505
40
50
200
258
767
657
629
511
145
7
61
798
291
267
211
489
796
105
308
758
489
110
548
589
998
657
479
202
178
933
152
410
720
483
770
641
492
560
579
911
259
800
441
29
925
455
705
865
69
632
183
11
641
986
803
391
893
994
560
28
555
814
691
275
294
33
557
700
440
783
548
48
158
570
805
844
25
44
875
513
822
475
948
546
148
42
870
917
813
720
281
155
354
294
494
838
783
949
189
492
752
935
9
616
681
122
874
804
586
266
321
235
205
346
525
788
93
674
909
228
22
80
510
240
846
423
719
52
526
928
844
755
484
657
686
177
752
598
553
345
110
422
375
615
319
513
970
567
869
544
539
492
867
739
825
713
741
896
132
81
881
754
707
469
879
571
12
38
495
845
605
184
759
339
47
408
369
273
921
455
379
893
992
968
887
183
495
590
337
442
811
61
125
207
775
305
8
158
131
779
602
989
770
119
173
970
982
784
546
569
337
746
251
799
233
755
198
786
161
725
160
132
28
665
514
468
118
906
189
801
826
640
858
12
580
5
361
101
302
576
753
778
912
419
561
631
968
363
624
942
623
334
183
451
214
209
930
925
429
498
720
271
993
488
286
186
19
828
941
455
381
833
29
122
320
467
230
483
997
687
369
390
789
290
294
754
427
558
294
286
306
237
212
857
980
146
36
321
750
627
857
588
791
827
153
357
545
304
743
656
94
1
350
932
145
572
216
299
215
534
153
864
20
414
628
779
774
957
437
534
98
686
104
119
500
866
650
451
671
601
517
549
247
768
440
523
291
584
434
838
378
630
717
995
515
170
843
401
91
626
119
675
739
823
485
44
531
83
600
149
567
146
735
94
148
593
921
807
656
15
723
88
132
105
503
537
638
334
391
431
499
84
723
883
106
91
805
105
398
585
427
393
269
376
787
507
825
224
926
227
645
282
828
264
329
553
485
163
536
697
198
485
20
19
565
482
349
497
760
40
806
261
97
494
331
362
128
439
365
406
326
510
171
892
915
990
684
491
912
589
43
898
310
726
454
973
434
924
566
710
607
330
80
53
479
580
186
32
775
962
352
513
913
455
844
214
595
472
489
311
713
160
469
56
778
774
180
887
663
337
217
518
429
101
272
857
890
186
512
650
672
519
539
853
737
521
260
400
649
587
335
101
821
879
898
507
990
716
821
639
518
869
553
71
161
312
636
147
163
205
521
413
728
825
409
724
414
500
351
741
991
745
518
439
661
726
134
516
640
968
458
967
349
322
679
526
486
138
362
617
372
237
877
933
822
84
398
485
736
699
651
860
423
874
246
758
246
738
369
262
81
479
281
975
308
837
541
308
313
758
813
584
446
641
22
182
427
279
785
210
969
467
574
996
706
855
965
568
484
678
940
496
122
960
72
327
458
451
42
611
492
439
408
696
842
344
85
698
522
609
393
316
652
928
276
246
674
168
245
822
851
515
403
523
704
721
554
577
504
7
642
746
523
872
503
372
817
592
938
813
331
367
506
211
798
342
777
131
918
453
826
264
106
377
398
962
288
524
612
619
226
697
466
656
656
426
674
339
444
12
962
69
710
112
749
405
547
514
731
805
883
606
32
421
978
118
70
766
184
64
857
856
851
278
739
764
111
161
164
501
925
594
906
783
566
946
758
140
994
647
27
549
446
100
797
950
39
134
271
239
533
967
658
411
806
132
680
166
881
367
131
18
68
674
326
577
537
649
149
779
781
134
425
394
469
970
417
739
669
716
826
582
687
795
751
171
817
73
345
38
486
559
892
421
853
836
868
587
697
992
391
3
333
427
187
254
516
253
618
141
102
574
90
106
912
423
591
793
576
32
616
408
34
167
568
822
153
996
902
62
967
556
613
258
48
305
894
211
439
170
16
645
52
726
134
705
268
868
778
214
429
717
310
386
579
36
312
641
362
711
893
11
692
789
123
676
254
332
576
663
375
534
548
665
70
1000
948
959
819
490
331
963
605
310
727
217
41
696
902
229
339
922
89
737
805
487
669
623
309
974
727
854
221
999
873
513
460
169
934
896
767
711
160
29
736
139
395
278
86
837
618
821
568
806
194
104
215
445
929
723
363
409
858
344
617
631
746
552
300
152
724
320
870
266
185
496
647
634
759
795
822
983
240
142
169
966
392
336
274
484
709
683
882
4
472
30
330
517
127
770
523
469
607
820
817
722
227
110
706
697
288
99
592
250
245
750
667
509
736
297
962
976
713
853
239
15
222
921
120
434
802
547
691
549
409
283
331
4
307
16
970
30
41
177
417
679
22
952
847
973
447
481
33
739
245
125
413
593
375
489
250
279
675
50
694
746
554
413
911
394
984
325
579
72
420
719
736
299
665
972
977
722
878
284
642
699
93
40
816
317
541
116
451
560
993
902
256
580
144
527
679
12
388
25
58
504
1000
573
155
595
487
390
312
606
224
46
86
429
731
834
508
913
525
933
566
626
228
301
129
93
768
729
773
708
340
578
127
125
165
954
949
609
56
736
355
743
806
734
621
456
224
24
555
793
688
459
967
717
672
265
748
512
560
812
607
411
44
474
649
53
9
332
737
80
641
140
921
220
553
566
834
795
559
883
800
623
869
326
927
66
641
710
582
35
276
516
492
883
377
531
628
121
190
623
354
607
982
409
904
743
895
990
540
778
696
328
855
922
383
600
811
528
982
12
180
773
584
338
997
112
128
523
435
421
738
197
324
329
450
677
882
744
710
116
345
469
308
785
391
684
467
846
257
550
362
247
456
386
61
357
321
908
481
469
30
523
654
746
400
299
536
954
837
844
968
87
181
221
689
107
627
53
150
739
604
565
927
770
403
506
935
588
371
546
435
17
885
252
526
516
843
513
655
535
86
929
892
299
643
209
535
342
345
597
492
475
179
37
513
322
154
784
725
691
798
384
756
200
871
108
564
817
178
222
251
710
125
456
763
392
133
372
655
201
153
153
107
9
790
776
499
818
177
905
721
657
907
160
250
507
976
212
872
948
930
245
237
883
713
113
70
474
132
859
557
242
612
201
590
385
992
126
398
545
605
930
157
279
588
549
925
313
339
636
96
121
68
273
136
454
728
759
524
572
437
97
746
777
551
578
112
926
490
305
830
570
461
171
421
935
639
271
211
198
270
813
55
439
889
926
221
115
928
109
376
590
905
418
939
795
409
871
882
550
436
140
560
776
923
254
766
570
294
747
211
44
382
284
121
349
800
285
455
54
828
462
267
242
63
194
553
261
129
611
650
367
755
40
838
403
56
474
893
882
914
693
71
202
989
290
587
688
886
190
538
575
198
221
901
395
333
152
572
935
380
825
121
636
414
660
601
352
189
879
591
987
949
196
102
435
73
940
581
896
201
435
9
277
34
728
523
146
940
15
59
643
996
384
875
237
538
3
224
305
632
433
576
586
501
928
284
67
817
637
794
20
698
869
874
245
102
132
132
554
163
304
919
482
219
869
768
856
79
415
375
338
601
78
270
484
711
728
999
439
300
418
189
595
620
759
897
161
130
344
818
463
819
546
922
775
226
101
453
623
990
330
937
285
489
45
159
683
113
717
361
835
636
856
418
323
887
192
461
731
466
934
33
816
43
123
679
958
74
906
519
436
345
249
924
778
653
392
466
755
607
898
605
80
289
756
693
375
14
529
450
624
205
944
623
746
323
374
691
109
840
672
346
101
777
197
907
51
58
64
38
200
234
550
88
229
210
808
435
673
343
135
525
222
110
213
709
490
50
717
437
643
681
318
409
390
592
791
620
416
723
233
209
910
939
792
911
257
33
948
788
845
465
402
737
747
397
969
492
479
357
666
41
388
906
976
773
883
739
847
843
470
950
790
356
775
285
35
100
300
561
847
758
935
521
422
886
805
817
759
832
690
479
880
626
211
977
841
811
710
846
345
137
258
805
311
791
42
534
891
767
653
296
587
372
397
160
314
405
536
277
733
864
553
899
311
119
575
711
425
451
841
790
17
303
228
891
100
794
623
666
315
134
395
673
748
160
80
946
126
295
86
540
532
748
630
507
850
867
797
113
649
627
534
9
803
378
936
84
505
546
9
841
170
149
142
734
127
449
785
27
421
470
156
37
428
155
16
19
418
742
232
741
875
703
106
670
619
4
883
807
154
896
243
46
233
309
942
221
140
294
358
202
941
607
654
254
560
188
608
22
253
365
515
119
513
137
878
677
278
189
833
564
405
435
665
862
943
653
365
939
573
123
558
853
870
948
581
89
820
821
10
172
399
323
243
61
967
192
18
631
174
935
761
394
778
104
859
114
915
119
359
296
812
446
692
474
263
472
259
672
551
392
74
472
802
155
939
720
213
435
841
908
53
566
969
597
963
723
232
314
615
676
72
914
654
120
402
518
818
868
723
234
844
824
95
49
120
566
402
973
878
407
268
486
503
813
574
436
173
740
491
525
88
635
842
368
539
339
824
77
705
130
746
177
238
836
456
855
106
155
180
804
997
534
890
275
793
914
788
875
965
436
852
740
680
739
196
268
908
254
3
197
78
61
719
626
856
429
4
431
219
141
499
674
268
958
653
831
747
996
876
36
395
174
542
72
610
90
31
229
215
120
429
806
173
700
807
915
877
24
589
518
305
139
924
754
919
43
228
612
320
566
45
823
648
862
596
236
354
851
90
309
440
480
679
805
465
561
924
849
455
695
910
546
703
312
276
299
40
334
345
568
980
638
378
192
703
483
712
84
246
967
567
442
313
439
36
898
282
547
574
296
291
732
240
291
765
938
257
300
113
481
873
984
801
551
161
258
747
283
625
381
85
942
351
915
990
458
425
604
170
846
48
746
849
401
958
552
498
211
688
928
630
179
678
718
235
962
516
124
98
573
958
525
10
31
111
789
72
204
96
739
254
196
396
792
751
939
501
719
758
315
670
725
679
363
289
612
963
511
956
38
843
199
440
655
79
670
454
736
313
800
727
944
127
391
499
431
618
604
671
947
970
74
399
719
824
490
207
298
355
486
729
155
984
382
667
811
855
884
730
2
474
496
826
567
272
456
560
804
643
113
884
231
387
682
830
44
992
313
493
317
834
37
470
571
554
770
657
75
220
848
31
263
384
497
768
335
65
646
277
554
856
852
230
416
252
201
169
4
830
569
330
931
216
472
102
193
137
251
411
224
702
748
70
454
407
59
832
891
771
146
710
482
601
392
28
335
90
814
274
727
650
847
526
60
930
924
85
815
19
254
87
814
770
346
198
228
806
418
829
462
101
886
537
260
178
681
929
744
228
562
364
482
491
113
413
278
483
206
239
343
935
654
69
68
321
736
376
212
56
445
106
22
167
458
463
641
945
313
966
750
213
130
237
367
325
783
806
299
448
345
285
35
817
199
354
580
991
191
314
681
430
246
596
57
45
126
795
574
782
718
724
523
960
343
56
607
747
616
992
864
292
418
679
520
488
347
855
219
124
307
349
414
688
633
104
371
446
24
918
283
750
449
998
190
581
24
420
824
896
206
448
572
368
76
982
478
518
580
181
389
821
547
25
969
508
883
317
994
699
374
928
573
354
743
874
708
466
238
885
376
858
903
693
697
803
588
1000
454
137
562
300
721
729
407
260
207
204
709
707
863
90
900
8
566
388
801
646
129
840
277
816
115
199
671
101
518
470
555
113
464
135
402
85
81
645
906
52
371
960
33
996
880
216
33
762
371
26
840
335
432
628
420
845
124
666
328
321
100
5
687
750
275
471
809
764
252
317
903
927
892
503
654
940
541
881
146
801
833
855
835
587
430
929
399
161
44
482
265
256
43
640
482
839
507
189
233
556
465
664
548
636
433
550
20
202
51
172
550
95
595
375
211
408
554
817
431
785
476
608
517
771
176
468
339
767
332
48
67
15
801
678
294
957
910
237
360
759
615
676
660
461
6
746
559
287
686
969
230
353
131
812
347
802
995
719
966
963
549
92
95
856
824
419
805
902
351
880
134
47
578
169
540
839
182
859
555
718
41
811
322
458
846
457
346
484
721
978
857
801
820
541
103
660
810
883
460
600
493
684
600
648
828
792
803
939
747
43
528
195
749
603
69
966
603
698
935
409
6
991
12
337
640
48
739
874
908
131
636
800
805
682
356
982
753
613
857
193
488
88
896
744
531
920
654
243
507
648
751
351
638
752
40
651
839
867
288
317
381
265
594
509
16
701
611
465
190
236
171
514
449
511
51
123
866
922
813
564
984
712
812
215
70
372
633
623
49
654
883
289
497
974
18
11
847
258
100
125
446
530
904
901
321
184
862
469
908
60
464
616
417
123
823
594
344
41
421
221
475
657
995
278
931
509
188
419
53
808
841
645
464
535
887
917
495
561
862
807
872
229
265
556
160
45
361
116
181
628
19
893
89
610
220
337
539
477
680
563
767
237
308
776
480
119
99
432
843
837
488
278
732
805
257
633
254
769
511
832
393
973
754
219
987
214
192
29
702
657
700
597
785
510
45
745
719
632
324
716
514
630
828
602
164
843
895
441
425
105
945
637
831
610
715
492
724
12
771
483
624
913
375
87
658
849
599
469
819
115
203
912
908
934
668
122
847
819
670
796
465
876
82
604
615
476
716
492
29
411
621
477
215
544
709
866
495
655
372
817
894
400
176
865
151
805
32
953
442
642
4
848
467
772
812
597
395
147
542
707
200
931
372
841
672
509
855
896
128
429
712
135
555
467
887
174
795
759
847
338
186
679
427
972
336
477
519
271
540
578
91
831
260
820
621
934
649
304
46
803
707
533
331
865
153
110
138
755
547
346
420
700
870
568
919
607
675
152
365
358
875
617
9
446
269
466
182
806
570
428
830
156
461
149
782
380
335
998
367
883
744
280
148
936
867
858
993
70
224
625
284
481
163
232
764
93
634
179
506
280
965
321
843
254
116
803
991
505
550
660
952
238
164
208
591
413
579
728
980
756
729
970
556
906
293
423
219
823
668
534
289
64
525
179
442
958
139
970
892
155
446
473
419
450
360
402
543
236
322
730
891
14
914
653
125
581
659
402
841
322
417
116
430
146
905
329
45
736
408
380
813
299
5
983
747
58
897
254
461
419
178
694
808
595
717
819
171
128
402
357
940
301
523
878
1000
265
50
73
123
143
875
874
136
856
775
541
217
892
954
231
58
180
516
533
938
586
802
240
271
920
835
859
694
608
689
351
530
6
209
738
354
85
482
194
51
660
311
927
496
488
58
971
187
77
486
286
678
367
793
600
32
195
318
947
713
80
310
229
869
779
840
821
641
192
92
140
227
429
883
948
96
681
28
509
141
193
948
343
102
859
377
894
780
795
517
221
968
951
720
239
967
626
294
221
850
752
89
296
663
455
786
872
534
619
484
864
449
269
86
97
150
804
916
882
11
565
257
945
583
638
369
19
730
615
106
842
324
818
876
300
840
794
647
338
117
812
629
990
883
182
675
27
72
967
490
51
330
318
892
252
991
873
504
158
596
133
195
672
816
954
739
659
363
908
176
168
213
977
448
324
986
534
240
537
320
172
693
375
144
93
439
531
250
46
90
673
40
500
212
528
676
298
287
85
855
312
755
924
552
693
469
604
120
408
226
16
350
277
682
437
378
75
622
173
481
829
581
179
454
733
48
207
371
476
27
378
177
193
584
792
769
917
477
544
392
336
603
979
562
447
222
109
931
145
908
629
896
24
310
182
781
6
746
107
217
651
31
164
778
681
418
249
14
793
189
291
230
481
182
161
180
612
701
579
956
787
644
418
808
278
262
876
995
151
747
981
919
607
516
582
426
180
908
559
735
565
435
90
390
312
513
423
16
329
814
685
872
94
993
145
538
7
140
149
951
882
546
537
805
41
549
833
64
769
567
471
508
980
359
612
679
273
283
7
81
860
944
525
821
405
870
396
513
343
763
954
237
660
52
569
109
717
721
39
988
936
456
393
987
371
385
38
500
522
450
704
318
448
469
224
882
578
827
623
93
518
351
558
207
181
618
82
611
231
25
547
3
182
256
556
857
406
419
311
781
950
289
816
886
55
223
286
79
645
321
154
221
874
35
592
6
952
885
917
559
522
974
534
526
394
369
802
89
825
256
977
976
2
946
671
781
523
406
191
44
45
128
49
21
715
333
503
391
188
692
248
581
9
2
905
658
629
960
636
438
339
895
227
997
253
625
787
985
557
877
110
850
637
898
56
831
160
70
182
145
773
45
709
637
68
861
697
494
651
661
909
100
890
594
888
243
100
977
684
234
759
847
48
612
513
782
774
777
643
372
404
496
740
741
265
714
763
241
723
893
193
16
250
731
695
614
802
736
589
269
337
832
252
919
622
401
571
93
504
933
909
816
506
537
254
180
697
772
756
540
571
371
468
922
624
973
591
227
167
989
780
240
302
328
398
353
973
337
555
352
506
779
603
629
809
807
891
598
59
385
405
608
276
234
469
432
579
73
846
802
687
357
519
169
223
63
114
465
128
528
823
380
96
299
611
214
754
242
978
680
504
911
917
485
146
107
290
553
392
92
180
853
111
636
969
617
645
586
904
213
591
222
295
965
748
895
566
378
611
546
309
525
939
973
692
358
362
80
850
124
150
388
665
713
128
498
175
126
452
383
731
839
319
63
312
96
690
645
987
649
541
690
654
3
80
708
317
14
428
363
617
21
186
619
924
29
683
879
988
210
102
434
478
445
244
3
665
421
406
582
660
858
897
448
15
693
497
511
404
249
989
514
185
422
257
743
522
904
92
978
356
800
286
936
712
103
784
952
952
583
8
800
476
514
636
850
779
117
701
574
447
554
453
90
765
963
209
281
794
870
996
263
702
268
993
388
87
436
795
656
165
741
933
401
296
943
144
871
740
128
598
632
173
679
211
206
16
422
197
575
898
4
411
719
56
842
622
567
352
406
212
178
743
403
523
997
123
854
692
603
587
203
563
190
871
995
586
138
755
376
834
405
406
603
602
723
356
593
342
821
343
508
833
481
132
630
412
44
673
150
151
912
405
601
925
49
380
661
291
87
849
12
10
378
185
690
86
515
397
353
138
404
362
76
425
578
898
688
129
627
433
619
566
671
349
665
32
395
924
910
300
312
52
308
900
247
531
235
20
717
503
864
731
316
605
138
19
733
56
411
354
801
794
517
403
345
209
341
357
733
533
59
112
650
309
170
153
453
139
606
464
289
523
734
506
913
378
25
537
383
408
481
667
935
321
361
85
531
436
97
975
868
987
236
175
30
387
964
5
543
78
989
726
837
763
776
15
45
142
883
991
939
105
451
881
808
351
267
8
18
639
819
590
156
854
290
606
760
304
886
618
649
520
953
805
791
233
730
409
693
639
276
642
979
988
38
202
681
920
341
349
959
959
452
917
620
753
466
114
230
999
794
249
100
56
202
147
631
231
90
213
922
927
182
526
680
190
263
72
630
126
258
402
598
779
63
670
996
950
926
957
482
447
865
629
712
418
195
164
677
740
710
57
397
676
25
436
875
325
515
121
598
108
773
883
391
331
421
96
218
906
689
90
888
611
729
765
79
162
410
46
63
16
943
614
846
69
897
427
795
763
873
244
636
349
714
707
724
354
963
10
938
121
482
821
172
591
865
560
661
194
203
430
583
983
335
146
323
838
482
902
940
527
804
33
613
930
28
932
823
255
353
130
624
239
337
97
700
455
340
790
270
530
138
413
125
528
750
55
914
933
930
694
310
862
389
580
846
124
57
747
846
597
396
990
477
726
807
452
210
614
87
245
825
784
144
335
708
705
4
424
836
386
294
698
402
624
757
111
408
116
199
996
741
174
725
505
28
985
152
340
851
423
992
394
210
192
585
679
790
11
294
839
561
946
354
39
392
446
75
79
358
893
989
103
614
807
911
696
411
925
567
64
433
822
392
627
429
302
394
82
682
630
224
488
784
294
997
8
19
404
591
556
577
130
186
171
582
198
289
827
299
997
253
286
152
337
719
708
191
995
46
110
614
504
240
119
785
589
758
93
598
522
140
739
365
385
256
131
174
516
568
796
614
890
809
188
133
222
952
965
141
403
314
384
375
414
304
80
574
280
585
747
822
874
741
114
388
95
30
675
401
860
481
304
847
509
288
611
268
642
803
955
481
267
883
378
449
983
43
841
594
543
756
864
810
302
447
128
368
973
596
268
398
554
97
735
676
732
584
875
405
742
299
338
995
353
590
38
752
212
438
41
95
502
290
553
171
390
967
915
36
844
320
623
650
254
412
99
591
676
72
661
380
123
5
21
714
641
772
444
514
202
102
712
622
334
715
493
435
735
983
956
680
408
500
327
972
629
700
668
181
666
663
72
366
99
122
352
935
861
8
870
92
42
316
603
288
545
922
663
922
776
85
668
82
516
670
464
922
427
362
282
219
314
919
530
534
711
179
737
287
247
299
389
450
197
615
734
779
28
458
514
254
821
310
844
854
356
220
274
188
101
162
72
281
105
481
614
276
919
907
34
408
925
348
475
994
878
105
817
163
452
859
115
692
712
645
883
3
578
969
92
217
947
381
336
580
486
764
933
101
638
9
529
480
306
746
590
514
73
403
662
984
179
112
883
972
811
449
381
963
411
7
357
262
418
935
756
43
656
331
818
32
788
348
953
209
324
438
95
538
348
961
998
615
578
496
316
661
519
206
272
561
911
45
84
649
287
9
862
320
424
731
878
842
992
616
387
707
339
704
617
481
92
678
770
584
156
811
810
354
6
722
744
222
764
235
589
279
672
622
173
785
291
611
788
919
772
397
920
205
123
332
269
462
395
728
663
461
501
19
67
109
773
420
399
210
151
598
702
65
719
547
533
588
9
149
438
307
426
631
534
243
896
795
963
184
618
497
987
94
56
228
264
694
205
379
946
982
637
250
824
465
670
240
217
277
861
65
130
56
595
840
407
244
171
594
601
984
936
832
536
994
706
790
412
875
93
776
134
113
50
598
717
9
990
997
109
717
597
674
401
678
622
28
734
787
916
512
400
487
797
136
921
854
427
164
641
716
661
832
369
571
398
512
261
672
29
847
307
586
751
988
710
163
334
661
526
807
54
433
55
223
153
268
297
987
542
333
221
512
484
52
826
74
973
752
464
50
719
466
519
757
455
48
156
753
336
8
247
662
259
425
249
303
890
571
107
240
723
309
854
317
56
358
117
726
463
535
778
730
917
268
942
946
895
461
76
684
51
39
947
621
770
334
343
731
786
831
47
468
3
877
146
955
758
827
468
516
535
586
929
62
365
950
869
608
215
928
6
155
913
420
995
750
217
938
153
117
375
448
931
138
258
153
795
562
556
51
391
1
915
621
944
967
189
54
884
419
800
616
154
697
684
408
692
848
777
829
306
990
876
491
94
426
583
899
84
797
894
79
383
703
903
42
661
651
959
43
660
526
310
881
139
530
659
981
827
823
704
770
217
431
423
234
451
855
764
678
544
885
787
114
879
647
961
989
109
111
810
588
845
722
10
448
719
914
424
627
514
769
248
950
816
46
742
386
375
97
723
207
917
740
843
247
136
685
893
979
723
177
665
167
462
915
168
910
757
128
62
891
529
188
853
814
887
876
937
401
291
589
545
219
145
958
404
839
120
245
216
684
314
534
987
631
520
960
233
712
334
910
449
840
167
546
397
725
905
904
938
192
492
654
65
215
390
688
188
285
162
946
169
15
165
121
424
546
282
465
445
226
681
229
917
146
663
978
430
151
835
708
322
127
729
394
145
77
756
110
170
108
792
654
309
710
981
381
918
673
943
372
227
15
196
121
855
422
666
464
682
457
200
530
885
691
355
990
747
988
60
3
264
290
499
4
600
246
693
552
102
931
338
55
9
957
925
771
465
908
221
226
484
367
835
982
299
903
761
686
61
519
731
994
882
676
255
686
605
885
389
196
650
332
91
278
168
693
146
417
661
507
961
358
771
470
660
723
117
309
752
989
784
778
82
785
816
264
64
740
166
375
335
131
58
825
648
990
296
483
80
183
834
738
943
878
616
561
943
245
323
868
921
205
253
683
585
483
305
757
717
308
354
684
763
990
662
858
259
942
174
800
532
231
51
72
469
389
31
286
225
175
371
257
799
84
458
651
281
88
271
547
394
215
777
761
363
631
953
193
320
565
222
530
292
549
480
406
460
323
96
754
761
975
619
385
87
453
323
570
290
98
102
209
903
330
295
286
657
670
637
136
564
397
283
733
346
914
684
127
429
477
282
266
841
300
988
753
954
716
125
822
697
681
730
956
829
164
122
339
788
782
708
154
748
201
377
450
357
295
847
288
376
723
73
160
125
929
600
55
973
901
220
661
90
436
366
959
16
759
976
5
28
723
352
952
156
452
322
330
701
572
103
589
189
261
183
201
968
446
488
520
684
651
96
846
697
303
763
380
753
489
173
950
573
843
901
934
16
133
44
423
317
858
624
976
114
560
754
588
889
823
277
398
358
524
164
344
659
858
15
818
102
983
933
359
977
464
26
944
241
985
303
758
607
859
943
133
239
749
218
373
832
978
492
854
931
359
291
872
12
6
192
66
330
834
481
319
264
867
244
540
340
710
636
579
979
66
620
880
445
145
682
401
626
478
997
699
660
686
381
143
50
892
876
388
521
647
860
533
804
567
856
514
55
347
953
590
408
770
994
396
542
377
105
777
883
241
618
398
888
727
286
896
270
711
962
961
918
286
393
807
347
142
211
302
507
509
128
988
170
972
213
933
576
603
592
438
783
957
253
851
808
5
785
796
978
148
375
792
908
69
873
142
608
546
471
55
134
195
8
675
460
375
547
46
272
894
661
54
236
136
308
161
280
887
500
822
497
959
639
942
903
435
579
986
980
309
683
847
332
821
998
825
783
127
541
885
809
897
559
447
868
983
962
985
516
402
319
14
427
908
956
706
730
515
703
413
774
973
317
549
239
612
416
262
134
747
351
975
551
828
25
129
982
60
147
129
750
812
95
665
661
902
169
713
791
519
639
236
204
221
788
939
460
362
356
848
62
820
781
16
611
986
660
846
155
173
821
799
711
434
446
288
295
788
194
143
316
523
49
61
613
785
366
391
429
596
296
373
184
102
975
140
561
184
379
198
898
45
354
855
229
412
492
787
315
862
294
1000
801
114
411
595
462
576
279
65
951
627
569
279
766
312
754
642
682
358
851
261
920
137
556
379
466
594
726
272
950
276
139
69
736
668
184
833
406
852
97
672
798
140
589
609
567
65
354
735
747
592
837
253
314
914
943
350
253
492
669
575
361
522
732
703
496
136
252
427
138
295
321
819
992
117
106
97
110
146
582
448
593
430
474
158
136
193
337
456
252
312
878
303
673
732
458
767
345
826
734
876
768
385
299
94
289
462
947
1
967
102
645
993
542
725
800
325
606
746
776
534
558
50
207
827
562
610
647
113
236
609
843
575
416
144
53
731
284
244
849
930
683
317
810
885
641
990
948
287
356
38
35
504
246
961
60
115
43
150
761
449
144
240
538
202
822
879
803
431
816
351
788
184
280
846
790
768
316
137
631
840
1000
702
862
391
132
908
181
908
94
270
227
9
714
303
32
171
186
855
544
709
179
507
891
249
949
431
713
622
991
586
629
75
549
146
717
363
926
131
286
812
376
401
443
286
477
259
434
490
912
306
220
888
429
206
576
762
88
68
560
174
299
27
718
776
756
909
129
588
939
356
546
299
268
379
58
345
846
442
382
859
249
966
666
179
500
124
241
587
859
311
106
346
556
9
855
585
78
930
95
149
672
122
782
565
702
394
80
275
58
738
856
545
65
120
161
695
208
209
71
411
380
668
236
378
715
731
736
339
27
457
527
700
729
1000
152
713
368
754
645
257
598
292
664
654
33
276
546
68
635
75
445
174
415
409
480
39
772
438
609
257
105
171
307
376
578
401
278
905
901
953
963
775
35
748
505
998
888
374
852
924
814
668
937
32
436
221
749
216
293
628
481
483
423
292
811
996
126
475
354
873
300
973
596
746
84
646
37
395
893
429
867
952
996
168
668
578
627
445
441
164
993
173
416
208
522
941
572
373
766
598
465
172
262
699
849
114
416
340
465
534
447
535
46
432
274
537
274
539
449
763
656
970
911
386
342
809
302
395
717
969
655
510
272
58
373
412
514
774
651
868
423
389
599
9
25
513
67
79
880
95
919
168
970
443
82
68
127
145
888
326
32
33
643
711
423
22
813
236
522
289
169
895
280
366
473
940
362
809
672
976
767
375
288
832
994
931
907
513
362
366
759
905
196
769
623
767
899
896
211
938
23
806
54
857
245
918
398
385
421
9
581
365
113
122
210
473
629
221
120
996
903
715
383
858
991
804
490
487
909
37
216
988
978
427
829
760
477
588
408
323
228
439
22
343
807
634
974
909
13
225
592
796
637
361
756
149
600
128
739
714
93
626
221
596
240
884
108
154
499
570
626
952
224
618
673
13
923
672
212
247
483
647
361
821
976
780
392
484
681
731
793
756
714
406
189
52
80
205
146
303
843
928
677
19
542
394
593
510
553
271
70
990
367
803
664
96
431
559
490
152
553
814
741
452
684
390
760
517
162
896
100
518
65
701
679
574
327
843
814
517
965
803
917
84
525
799
568
224
948
289
563
90
555
822
932
746
643
1
126
58
811
196
554
277
773
140
495
442
644
853
94
57
240
212
996
300
539
503
815
231
403
694
706
404
613
443
483
686
67
917
56
842
242
229
808
139
468
975
916
271
977
597
969
234
827
207
411
919
328
231
19
918
51
340
911
422
894
541
462
877
380
527
819
668
89
752
266
551
675
502
389
236
946
198
204
494
718
687
576
83
524
989
545
363
121
696
927
317
405
670
446
673
39
977
611
323
542
843
393
569
405
725
816
504
199
295
835
17
467
74
961
946
161
102
738
947
583
396
688
25
223
89
462
484
588
945
941
745
200
254
669
277
684
791
279
951
570
171
61
979
765
998
792
420
969
298
800
692
425
80
181
73
105
117
362
78
351
17
631
544
854
779
164
134
845
768
842
856
956
416
371
434
784
943
145
515
686
722
65
807
662
243
30
2
961
685
864
582
637
149
981
543
633
247
882
837
683
381
98
858
358
751
547
518
703
497
967
979
987
829
114
575
506
281
492
786
116
59
17
409
68
410
989
46
96
184
343
109
195
907
574
478
487
650
808
545
362
274
291
864
63
125
955
6
907
305
781
122
886
332
593
224
174
843
283
454
857
408
727
709
521
891
340
614
41
818
75
471
616
800
662
707
640
93
51
14
586
297
576
628
523
646
309
276
213
863
720
37
245
485
466
692
76
1000
934
194
118
561
653
174
851
970
241
752
889
204
83
927
698
329
85
905
190
69
175
27
919
162
721
583
575
473
818
466
588
935
337
541
246
92
142
949
907
102
175
501
241
445
294
255
749
566
714
367
760
749
776
932
44
896
939
321
141
519
962
448
579
151
800
214
341
625
235
335
119
406
636
67
369
567
382
813
842
135
117
252
1
17
694
271
16
140
164
105
692
941
823
324
976
318
495
989
385
765
651
260
930
302
877
341
715
609
828
78
138
111
238
411
554
409
1000
658
676
675
305
896
784
582
116
677
545
985
743
573
808
695
273
559
578
367
176
63
304
288
299
485
794
710
273
903
789
133
957
496
114
200
250
320
374
262
519
754
804
535
97
485
341
487
758
373
769
202
27
495
533
388
339
162
61
78
760
506
54
183
344
627
185
33
593
819
203
567
822
22
949
12
81
830
298
969
375
938
257
999
177
437
545
814
902
175
910
852
113
498
877
310
275
334
363
29
242
984
179
399
154
468
878
552
907
177
351
677
932
174
986
205
175
494
685
753
267
436
690
981
110
147
816
412
2
400
384
43
216
929
922
375
603
916
694
594
802
997
719
616
891
924
758
712
570
294
77
269
520
491
202
802
953
373
174
455
689
172
936
83
130
147
69
69
507
428
648
723
856
490
990
923
70
797
905
541
987
290
752
223
544
920
755
316
512
253
154
419
844
454
404
4
868
40
259
162
433
50
6
486
751
13
556
119
949
679
633
469
39
229
359
359
346
987
797
396
27
422
419
849
774
934
500
271
329
898
150
746
677
937
369
737
474
702
823
746
253
108
272
13
908
395
77
983
924
327
24
917
667
369
431
29
450
217
863
955
601
519
47
264
101
204
942
295
818
795
323
112
960
409
624
709
173
899
862
201
86
376
587
749
167
923
543
305
504
322
215
393
228
957
39
617
957
802
318
402
463
434
516
953
365
247
549
13
411
561
596
436
424
145
435
228
869
670
30
730
455
70
335
616
69
451
628
807
322
934
748
462
483
603
263
469
630
734
228
272
27
517
506
129
481
409
272
438
319
226
711
627
688
30
616
405
552
530
143
280
524
866
854
949
173
483
58
30
444
638
857
346
896
462
821
399
22
517
459
695
489
774
962
362
284
904
834
73
255
478
930
404
675
305
545
866
316
302
822
811
352
397
260
890
173
577
6
232
428
642
625
95
336
927
798
374
958
389
712
358
805
966
671
187
758
170
743
916
334
428
84
659
352
317
28
166
221
838
429
858
782
308
838
42
115
272
557
579
750
799
292
916
498
263
411
132
368
331
346
458
712
208
938
1
53
291
692
989
223
628
998
610
689
231
91
629
790
542
539
297
681
577
290
337
343
755
366
24
508
190
439
27
979
63
395
280
77
60
576
194
212
478
436
47
801
172
275
520
213
839
199
608
857
878
976
25
74
797
670
121
458
266
679
326
232
218
489
778
869
78
936
952
180
739
277
740
701
509
692
732
153
657
975
843
291
170
774
966
188
340
218
287
591
847
172
185
873
763
843
888
458
521
727
58
860
221
570
53
538
173
798
611
987
643
172
750
97
347
924
42
966
496
347
351
987
719
94
948
287
135
277
617
892
75
399
165
594
637
532
709
299
882
120
114
386
328
42
119
876
550
466
78
639
320
713
16
873
994
498
927
787
625
807
595
574
305
649
705
480
763
83
87
612
276
339
734
654
722
508
60
915
949
631
622
404
649
518
167
136
746
466
195
245
275
710
511
12
85
262
838
109
584
923
757
984
738
223
497
432
183
165
553
486
525
231
23
580
354
635
410
116
981
749
470
31
870
507
460
917
300
900
296
770
207
520
635
195
69
224
653
22
211
340
585
751
541
508
81
346
290
696
386
950
870
699
405
656
589
999
453
787
319
876
442
860
79
775
824
389
319
300
17
90
938
253
814
78
26
850
630
313
750
761
848
560
933
855
577
154
168
619
476
176
397
263
909
892
326
42
615
782
679
396
857
330
636
17
861
228
376
137
408
2
867
198
708
60
176
135
853
151
367
543
906
606
391
519
380
218
22
610
431
275
400
554
102
713
494
68
200
857
247
908
857
160
305
462
408
743
385
48
443
194
274
313
15
837
896
79
135
546
525
414
386
615
647
81
577
561
621
345
253
432
372
886
472
463
875
266
151
320
201
137
868
408
635
531
93
968
533
103
608
905
668
35
195
384
89
216
15
78
784
251
80
98
647
414
551
423
253
653
578
459
24
549
89
257
797
402
78
413
62
211
835
981
664
256
746
860
589
24
734
770
87
889
414
910
287
315
136
347
306
858
29
670
755
148
915
854
516
208
485
185
818
920
372
650
651
969
924
312
962
589
207
45
644
571
847
610
264
510
661
652
968
132
909
85
405
501
73
868
684
861
991
876
212
408
196
62
908
892
982
911
693
451
206
702
824
590
461
1
721
437
879
774
734
925
987
55
449
313
528
346
283
445
696
974
987
667
779
849
138
996
178
413
167
968
723
882
889
231
43
3
593
11
283
355
780
771
341
921
53
135
929
101
168
781
63
896
413
818
571
194
358
250
742
903
393
452
381
796
744
255
242
229
645
706
754
258
146
919
646
861
346
677
826
837
142
5
777
293
757
549
263
108
709
899
673
810
128
472
351
111
604
787
49
785
411
546
713
654
172
907
412
364
863
260
783
926
866
633
255
754
772
756
257
4
680
869
987
21
169
526
862
879
272
126
544
856
553
539
325
142
132
32
981
621
947
511
405
571
170
523
514
672
628
307
279
246
745
823
876
663
77
18
631
886
288
847
742
777
802
124
852
807
345
653
743
293
649
519
875
672
176
205
435
718
54
133
670
386
717
355
447
92
530
606
784
902
643
176
730
64
573
925
673
829
809
745
661
501
115
262
160
713
637
323
813
495
700
259
421
701
866
899
188
156
972
226
160
959
549
187
16
186
430
396
941
929
291
75
443
888
77
99
909
266
638
629
338
150
817
490
2
457
932
983
225
527
241
816
337
203
956
870
56
154
698
913
4
492
418
823
321
973
421
894
299
389
941
114
76
43
951
942
452
762
796
760
772
340
510
60
589
279
756
416
643
287
535
292
824
122
822
116
452
642
685
574
589
446
79
716
361
925
672
356
9
352
384
961
593
411
350
685
496
203
795
405
954
165
888
183
959
900
971
836
875
546
877
101
555
886
578
402
594
147
370
206
778
546
630
996
815
409
795
534
269
572
698
19
143
427
617
567
956
90
555
235
891
769
723
655
503
709
96
561
116
651
493
15
857
817
342
679
250
210
711
241
703
409
794
660
653
843
502
550
484
906
277
265
776
331
757
397
573
109
381
889
718
738
683
446
887
880
290
281
846
504
899
693
93
369
664
571
854
413
964
178
267
317
102
275
880
680
408
574
990
529
466
937
339
712
553
227
946
115
681
190
593
744
718
935
653
800
775
272
141
33
633
164
316
797
648
98
405
269
822
334
817
436
166
612
220
773
730
405
158
997
883
375
250
392
903
923
755
909
372
428
452
360
367
880
822
775
842
983
965
537
201
810
900
520
537
235
175
66
14
144
505
20
533
166
739
374
508
78
85
811
992
524
830
717
735
665
336
410
260
459
106
699
345
199
652
907
946
347
688
603
353
838
209
85
14
332
981
280
383
242
631
510
376
654
763
766
858
991
426
305
458
645
679
978
14
297
240
840
900
171
978
871
682
705
735
663
758
152
215
679
606
458
541
199
970
545
979
147
881
748
923
313
154
824
283
743
217
805
729
780
467
359
610
131
147
19
802
313
502
306
9
555
287
198
685
564
579
186
927
905
359
811
815
576
650
879
498
43
255
455
327
708
362
357
330
218
394
262
759
59
421
413
151
543
768
654
574
116
828
677
363
272
560
347
407
876
619
99
150
27
486
300
81
381
351
636
846
91
574
13
260
898
259
423
304
235
290
885
147
184
274
260
413
383
769
850
740
459
365
942
246
784
598
486
401
285
349
242
795
715
371
628
458
256
551
998
781
639
585
819
691
746
190
125
921
793
355
656
967
85
421
391
484
823
512
572
958
234
764
596
576
868
355
491
609
265
944
836
258
142
812
670
247
277
990
789
411
26
541
233
742
540
379
523
964
611
873
581
315
669
991
371
754
80
277
958
584
441
611
24
604
928
148
981
1000
391
444
644
443
453
379
768
407
559
870
330
288
915
360
506
734
530
294
388
684
961
300
583
735
91
902
383
596
586
556
978
778
56
257
99
895
459
562
171
553
633
119
662
177
11
724
126
998
76
749
505
542
867
190
224
31
554
832
319
917
884
610
719
41
74
11
872
383
214
656
552
562
624
187
759
597
596
347
538
518
230
407
67
722
784
852
745
95
583
487
477
915
846
847
790
607
37
518
194
423
181
638
551
80
964
381
259
464
366
588
52
890
673
770
170
181
377
700
429
453
150
223
569
235
996
484
777
678
293
861
892
27
510
827
664
61
846
164
250
264
29
544
839
425
30
959
916
293
481
331
924
849
806
348
505
657
382
798
801
756
464
783
224
229
600
999
200
748
526
2
868
437
763
883
95
123
851
724
778
825
944
977
281
822
449
488
419
165
655
281
388
499
896
601
137
62
763
460
858
88
432
495
46
941
923
303
6
430
615
162
642
584
815
920
761
434
655
701
67
211
866
600
967
317
567
173
191
671
853
146
259
728
257
794
747
241
869
817
812
241
232
903
896
425
544
847
443
355
76
192
789
806
420
50
90
350
690
992
478
332
423
6
13
440
442
57
754
735
599
888
888
678
737
551
239
332
213
183
193
309
230
149
76
683
189
331
315
219
930
946
991
61
833
874
932
553
780
278
337
916
373
662
245
140
723
57
928
421
956
874
248
512
362
198
872
570
43
484
566
498
316
954
183
394
335
919
763
526
158
778
880
598
307
806
354
707
534
26
630
434
871
558
959
569
283
286
319
423
713
267
687
716
218
883
1
787
577
655
176
403
730
892
965
697
269
691
498
738
164
719
636
14
213
829
735
252
132
555
249
331
950
648
996
31
777
509
823
132
471
181
436
996
337
93
185
575
498
658
796
919
657
301
376
237
58
952
781
461
975
839
486
92
721
621
659
719
234
159
570
691
268
358
345
942
169
315
627
901
954
646
993
37
156
978
609
288
597
25
433
815
594
817
344
937
414
334
37
262
589
603
626
666
228
128
31
672
259
83
200
301
112
655
321
946
440
232
951
614
436
342
632
494
185
280
918
524
499
873
107
769
290
52
648
286
701
271
7
854
953
211
443
986
928
158
24
338
319
935
388
17
899
580
750
662
870
779
767
605
44
475
142
991
228
336
95
346
19
935
916
514
246
991
603
45
123
545
989
533
125
946
736
533
831
965
402
722
844
41
947
844
530
928
845
164
169
603
350
441
657
48
411
387
220
365
929
652
470
655
625
979
952
309
955
928
340
42
977
696
878
511
893
286
883
899
982
681
566
859
698
753
160
847
999
38
149
525
197
412
184
196
682
610
229
921
956
220
210
687
805
479
566
53
684
791
119
244
903
770
224
628
643
317
157
48
602
846
57
966
819
118
636
431
316
599
52
873
275
409
524
671
994
227
32
150
178
712
720
875
28
803
501
837
464
448
111
52
939
875
791
908
135
836
17
357
959
245
43
239
387
119
987
960
993
994
421
459
796
170
630
212
757
496
849
221
244
807
378
904
396
525
266
136
622
195
275
509
901
439
596
227
473
312
325
8
493
485
430
679
664
800
413
274
660
521
438
570
864
449
364
644
214
716
674
623
860
473
420
594
263
681
816
552
980
88
527
36
556
201
869
117
671
789
458
973
472
198
572
977
104
619
528
922
939
497
226
522
959
576
381
666
374
415
449
258
164
69
960
504
230
771
50
394
786
681
277
242
264
173
471
89
155
536
641
452
69
961
667
442
800
442
857
239
49
677
355
63
362
30
629
312
358
43
543
433
782
233
345
35
833
648
94
781
975
15
516
587
216
933
675
215
144
904
147
600
339
310
983
188
376
680
989
733
113
648
73
649
299
752
587
261
117
18
433
938
149
466
792
853
1000
427
772
308
939
324
139
852
179
265
292
46
144
290
995
384
735
85
343
730
433
745
330
999
9
604
396
70
851
434
509
427
670
11
157
440
891
724
852
63
337
459
839
347
725
946
775
158
677
751
877
563
190
954
442
435
446
216
647
855
400
588
440
927
445
678
398
192
863
949
243
248
444
873
803
755
51
359
391
921
954
7
552
665
398
903
558
362
678
843
505
739
88
535
683
912
737
225
939
870
282
290
991
978
859
185
337
435
961
82
920
894
201
779
609
383
437
39
450
91
466
52
752
328
484
799
575
366
60
848
69
92
489
89
693
528
605
161
245
580
275
448
626
957
741
310
837
649
658
482
819
570
292
232
825
874
903
688
630
310
724
595
856
835
869
398
695
508
107
453
8
712
375
89
671
940
911
540
599
194
973
570
612
57
459
369
668
534
461
236
7
872
816
342
25
134
803
716
386
178
697
164
536
508
392
648
583
824
768
602
842
942
692
908
918
8
936
372
720
113
879
503
885
609
946
59
339
986
601
479
44
775
965
686
653
731
733
459
363
56
83
869
124
951
881
31
837
992
723
233
27
553
510
903
948
985
334
914
863
40
805
675
637
756
598
17
660
678
368
418
745
271
707
885
608
583
476
629
644
127
97
621
395
826
562
235
755
522
580
991
582
349
196
801
228
433
873
87
848
651
230
467
630
271
434
117
244
40
425
633
463
560
232
631
34
359
792
189
903
244
132
434
805
498
429
398
930
574
75
887
51
957
524
341
657
371
199
643
149
103
357
560
546
580
354
57
170
46
350
626
410
508
985
965
398
453
771
181
338
650
955
712
51
980
664
439
150
899
918
511
404
26
401
148
50
553
37
617
92
28
489
600
363
931
527
50
394
886
378
244
339
881
100
836
75
182
448
727
513
586
982
384
140
716
298
770
743
761
920
443
350
967
805
502
198
94
29
896
611
533
164
703
143
793
2
60
493
12
577
190
370
772
612
227
741
139
651
656
215
682
389
348
567
531
730
727
508
59
113
629
271
863
268
841
941
403
365
440
510
599
251
124
697
279
903
140
407
631
667
143
331
27
793
615
535
138
458
193
659
378
27
805
741
363
512
375
216
357
779
408
238
127
135
260
200
848
93
377
250
786
995
7
615
547
461
606
378
333
435
357
858
243
74
509
117
553
58
612
206
134
823
797
311
117
645
761
324
275
199
260
160
133
656
221
122
40
549
231
676
921
711
953
410
290
608
410
257
937
51
306
12
354
122
449
945
141
354
945
663
735
759
184
172
606
165
627
150
290
617
514
858
86
321
879
515
471
565
107
424
787
354
87
985
758
297
256
822
439
723
245
33
631
563
827
698
141
336
364
284
583
960
995
881
756
887
827
656
160
159
464
927
478
431
806
412
575
633
531
538
777
668
821
62
789
831
369
767
107
345
95
435
702
411
948
876
356
602
876
196
480
180
812
340
747
573
976
313
547
971
743
923
656
459
513
846
964
143
364
827
85
563
477
630
775
845
395
661
393
996
829
294
657
989
940
42
524
346
238
255
967
804
799
619
299
438
689
204
534
375
755
168
558
182
966
224
233
118
391
565
536
870
191
745
586
904
686
502
722
89
224
224
179
354
347
287
340
606
417
615
110
931
484
191
754
330
174
270
428
682
729
681
318
157
290
23
921
739
922
493
790
501
635
113
800
39
601
381
875
511
965
970
99
895
681
681
340
822
787
733
745
341
769
155
707
235
367
247
651
773
289
66
392
284
1
812
108
647
738
540
642
895
617
647
735
162
792
559
660
555
43
258
419
225
127
392
977
69
749
873
774
46
519
544
496
911
137
973
545
293
481
255
701
171
570
848
44
103
902
141
288
327
982
837
328
608
841
563
224
11
6
53
848
60
246
267
823
170
93
369
339
54
527
292
14
605
861
16
834
504
943
857
891
440
528
851
882
797
312
789
668
465
78
268
838
383
443
816
309
269
951
74
56
4
423
479
403
379
132
189
627
460
362
465
636
87
377
504
903
152
660
478
209
38
314
312
577
631
390
21
917
656
342
738
814
360
240
746
924
824
647
922
598
794
385
992
891
871
436
428
24
85
201
353
491
963
432
882
500
386
348
460
470
421
21
743
568
379
959
742
320
551
779
453
934
182
901
787
553
780
267
139
345
33
109
597
715
21
296
19
355
913
837
23
963
442
534
893
452
333
760
71
112
341
686
608
145
799
571
727
780
660
28
49
175
514
658
237
949
674
918
841
195
366
29
561
613
65
886
386
551
897
205
73
681
26
21
782
578
124
968
773
442
899
536
430
204
480
507
294
716
51
929
400
45
906
337
844
960
821
62
276
833
140
265
429
160
273
683
538
954
421
465
854
829
132
448
190
296
944
748
493
69
966
108
825
192
138
803
956
200
174
710
620
318
27
521
174
319
7
156
169
624
654
831
638
58
821
254
406
658
649
944
781
871
482
54
2
727
17
194
120
768
909
166
233
422
329
736
255
397
535
348
930
625
400
418
355
734
728
455
526
607
568
468
829
339
892
219
513
684
691
978
316
435
493
972
529
16
10
466
826
89
881
82
849
641
537
345
115
166
478
464
501
195
153
175
329
307
520
469
268
391
616
979
701
950
986
17
180
300
259
238
434
273
506
415
745
463
340
945
684
429
852
542
297
254
268
843
607
100
802
413
908
356
872
541
960
208
815
867
277
471
764
265
27
466
640
300
182
271
196
665
219
505
140
815
114
491
997
559
368
492
381
707
514
88
407
782
936
469
674
164
478
317
778
506
947
626
291
796
62
666
968
122
351
564
721
417
61
63
391
139
456
725
679
57
393
758
957
628
775
866
143
999
69
547
393
389
443
860
442
438
62
608
722
164
494
454
642
186
706
172
727
716
201
174
711
722
541
714
969
61
400
412
892
874
574
597
583
620
629
115
145
487
393
624
287
223
661
15
246
315
798
680
244
267
717
452
123
609
716
565
574
972
217
240
886
948
78
90
557
60
653
17
592
615
349
244
883
165
917
624
207
400
23
88
327
558
173
783
175
619
22
215
609
782
683
689
95
647
28
476
148
884
753
148
26
161
136
826
734
879
407
118
764
919
500
84
35
325
176
460
174
753
62
931
884
606
300
60
237
77
211
783
649
643
10
745
23
484
831
467
645
520
183
729
854
510
383
628
950
428
103
17
708
176
171
856
316
245
165
656
736
908
269
736
791
144
725
430
686
830
945
149
206
955
570
601
783
479
495
999
226
754
959
959
957
658
860
395
143
745
11
81
167
341
488
730
115
668
700
99
76
823
329
888
955
899
89
251
707
692
850
290
649
61
518
707
14
232
239
769
289
869
841
233
970
965
617
987
779
762
934
737
980
695
760
985
468
225
142
531
290
264
653
483
451
757
777
904
748
709
451
682
101
25
241
41
50
580
547
463
781
67
638
836
509
63
592
135
980
894
607
286
740
212
164
670
574
614
686
657
102
904
595
528
653
78
249
267
401
471
160
79
970
856
813
459
231
452
719
382
534
943
342
829
897
683
213
15
549
732
250
896
111
232
506
226
485
464
947
608
750
820
292
202
704
561
429
288
229
65
685
272
635
843
322
973
509
960
250
714
645
94
765
847
160
806
193
53
990
231
371
221
155
336
324
949
186
24
912
266
509
989
684
569
156
528
616
699
122
607
829
871
223
424
598
217
298
784
745
553
108
862
477
245
234
267
597
125
405
59
190
621
627
153
61
604
362
283
103
919
608
298
948
864
470
196
564
888
63
294
505
849
12
802
830
645
944
475
671
903
127
732
650
681
723
462
803
720
614
521
795
392
591
329
672
89
92
508
300
436
183
804
901
30
850
373
589
32
529
829
103
539
667
246
151
964
916
17
174
599
397
889
626
951
983
919
28
589
731
515
779
740
113
48
935
443
395
519
669
686
330
946
275
195
74
802
280
834
30
943
910
911
886
459
70
551
612
175
195
580
826
571
249
845
28
613
833
877
624
459
691
446
839
672
452
547
825
333
90
74
651
166
623
127
814
263
35
965
372
188
726
847
292
918
210
745
13
636
144
963
669
367
146
471
466
888
442
189
14
677
331
272
510
722
735
524
140
616
775
571
470
397
349
402
259
877
565
35
604
738
206
137
708
317
87
595
59
863
84
629
313
455
72
649
151
664
91
149
195
423
301
437
786
584
271
655
938
960
910
437
547
478
900
344
289
779
77
83
679
783
824
701
857
869
96
951
231
161
98
196
745
827
867
357
52
46
25
722
518
326
857
704
962
436
57
168
674
124
343
727
660
99
32
634
508
892
468
190
41
924
78
91
254
997
185
231
470
332
690
451
778
320
384
304
755
271
874
664
141
592
627
913
78
151
924
330
280
293
790
793
160
978
264
293
66
815
410
946
848
340
626
379
351
14
895
136
544
434
930
685
415
257
396
240
783
609
612
579
587
129
360
270
461
967
837
802
845
208
457
330
258
470
105
772
508
525
932
542
574
47
153
673
993
771
600
706
716
279
480
919
125
386
192
405
466
892
731
603
218
676
390
441
379
981
134
923
261
610
656
256
810
142
172
484
853
741
214
441
914
679
646
949
475
33
191
712
477
784
439
239
496
958
739
904
923
470
714
12
97
973
861
943
680
314
925
653
467
492
140
602
214
248
687
397
231
545
989
933
3
549
111
392
368
20
929
450
155
454
242
878
197
616
87
636
699
960
453
389
466
227
740
430
885
867
696
191
838
443
983
667
556
832
974
325
100
833
251
828
992
579
690
839
838
990
194
447
26
240
253
57
574
450
393
786
96
139
462
331
192
144
175
418
366
22
139
985
838
183
920
477
450
202
634
650
974
194
639
114
615
472
686
21
569
25
402
248
669
944
813
160
780
236
306
107
348
420
617
382
826
902
839
477
722
869
699
134
369
725
421
780
207
559
514
870
837
471
392
272
158
123
65
58
667
946
129
911
277
707
948
461
257
347
223
648
183
15
901
614
467
847
227
750
704
25
837
251
49
473
205
896
610
625
34
358
725
685
58
334
455
992
757
382
196
782
137
784
699
209
205
921
834
919
116
710
359
476
666
805
306
6
374
287
353
336
992
18
399
316
544
85
542
161
642
636
785
981
818
495
902
844
767
728
264
233
134
888
68
320
896
967
426
571
543
357
204
830
16
650
104
795
504
53
374
348
361
566
35
179
923
897
770
821
345
607
545
791
301
759
590
185
907
420
726
933
40
834
348
457
143
676
270
600
934
800
925
820
104
377
106
431
731
334
272
113
371
955
509
884
459
976
949
113
127
427
824
501
240
677
183
482
662
691
532
418
437
514
677
696
105
502
808
414
667
208
558
465
604
271
770
553
574
30
963
632
686
139
40
152
893
136
117
798
21
605
232
314
75
952
712
924
620
283
574
552
29
89
760
568
396
158
159
459
173
870
553
491
568
906
792
996
789
989
907
734
724
26
51
257
658
826
1
875
564
830
901
199
884
333
668
63
678
854
481
984
250
609
493
447
996
552
749
414
511
19
766
347
799
250
29
321
728
467
316
173
116
280
612
347
275
610
31
721
628
745
804
649
263
58
907
172
187
875
593
152
421
452
441
28
320
12
17
797
40
662
446
186
310
428
665
288
102
43
659
793
16
276
401
109
800
794
97
720
849
138
315
938
919
146
302
754
101
703
578
677
240
39
497
166
772
848
415
956
64
271
427
307
557
637
362
676
913
424
777
419
944
591
953
772
95
645
279
849
769
80
533
712
6
67
516
831
597
752
861
654
538
452
470
53
653
474
340
44
970
779
237
326
643
990
886
245
797
781
730
979
65
595
794
417
637
119
812
311
126
920
39
379
756
543
704
210
882
473
416
305
2
69
943
241
104
144
406
44
227
410
940
757
568
958
447
153
369
323
124
77
15
300
937
560
180
580
135
288
304
986
173
461
20
757
589
364
398
823
242
885
452
621
423
878
960
91
801
105
734
203
126
677
255
922
897
798
921
313
406
286
89
341
540
402
816
618
49
802
954
781
501
807
59
828
603
566
460
75
853
360
776
636
173
363
406
723
341
109
462
619
234
855
701
884
919
676
667
122
357
577
544
713
870
54
362
299
465
496
305
204
764
449
28
37
169
149
828
366
622
537
358
17
53
652
362
859
272
960
34
61
45
78
983
890
611
185
834
385
307
448
864
354
402
508
20
428
693
711
654
611
447
419
470
130
775
566
499
298
861
539
655
26
591
115
572
571
724
729
259
386
626
299
97
138
34
936
873
330
591
71
503
116
739
903
981
780
253
25
994
55
335
524
243
545
466
997
764
764
833
63
608
2
482
956
130
621
550
737
527
118
513
741
125
479
846
705
661
30
626
96
415
664
107
667
760
892
435
314
107
701
947
764
125
136
462
151
77
11
401
561
482
629
548
451
398
119
687
389
462
409
713
514
807
757
599
990
819
596
775
190
957
601
468
156
716
742
391
992
114
389
89
962
127
641
921
933
93
858
664
588
461
818
364
164
201
332
474
938
574
94
796
895
143
609
269
379
91
157
987
923
817
564
667
634
109
377
677
193
638
357
995
658
968
347
261
544
115
801
430
735
886
571
606
890
875
931
24
647
766
963
412
156
419
880
948
747
770
847
584
536
298
218
705
652
581
861
827
956
838
588
170
251
922
134
661
58
893
645
887
605
580
122
186
980
498
853
462
465
387
459
257
928
352
639
656
776
153
273
29
784
194
441
814
588
404
684
114
518
768
504
526
809
738
982
46
116
815
679
493
310
530
50
828
48
854
205
148
979
347
189
479
240
420
971
842
620
599
752
140
145
632
821
758
953
448
13
748
3
725
691
712
461
341
687
725
895
232
764
560
144
611
145
248
133
329
680
220
369
207
960
205
246
551
22
799
352
487
720
679
247
683
20
212
935
627
821
415
702
364
816
998
300
44
133
641
928
244
311
149
369
195
47
812
271
50
698
242
121
367
263
903
824
478
699
807
695
841
401
667
945
503
28
772
445
649
79
60
964
553
218
666
198
73
769
710
369
993
332
651
203
344
906
748
149
483
80
895
944
644
536
943
41
875
958
104
917
787
392
478
386
153
384
293
507
552
619
262
233
569
935
518
658
725
910
110
982
940
858
6
817
466
95
438
612
746
268
665
909
113
693
891
245
65
1
473
476
700
651
749
705
933
567
436
390
473
653
282
492
573
26
582
949
172
482
733
553
132
909
82
42
300
788
949
63
821
415
73
396
900
679
838
70
439
388
801
480
769
841
344
333
984
588
718
990
355
581
238
984
545
305
222
702
498
210
687
394
395
428
324
910
91
334
623
768
581
925
528
354
86
3
57
908
355
542
295
371
450
21
666
957
595
87
167
53
76
739
561
888
445
46
342
373
634
553
512
574
958
918
354
82
932
993
890
542
450
958
855
96
14
340
861
344
398
639
756
2
858
861
392
542
329
176
123
959
101
549
634
379
204
738
466
255
591
233
947
860
157
704
908
265
759
680
463
738
280
837
263
852
43
474
145
229
838
553
720
93
66
706
672
322
360
273
734
454
424
541
815
537
338
785
74
509
782
326
504
135
509
549
196
697
702
114
806
666
816
250
400
400
988
692
343
680
54
617
843
936
494
768
52
456
130
681
489
181
880
643
782
116
937
763
553
118
753
233
946
751
428
976
250
97
631
882
541
243
373
196
911
448
989
649
902
135
145
506
88
575
100
71
757
181
829
545
83
204
437
435
861
173
464
531
383
714
311
729
52
551
94
511
207
938
873
97
621
842
730
527
209
41
446
226
972
493
388
833
738
988
20
713
82
246
565
351
677
474
988
477
70
910
304
200
928
733
717
833
101
72
841
796
415
726
905
363
33
876
236
194
116
466
238
935
770
333
562
803
933
20
889
827
211
793
452
902
831
684
809
825
321
963
72
409
96
786
820
698
817
409
860
129
650
987
373
757
437
448
39
780
604
80
920
573
819
344
546
353
635
39
503
999
765
948
845
184
752
976
777
930
896
756
438
156
644
960
168
642
87
842
62
694
386
388
609
132
650
759
386
386
171
387
555
586
109
944
779
202
572
911
402
750
380
813
470
74
234
638
609
397
969
257
17
585
107
267
455
796
425
680
701
833
269
344
539
199
319
518
601
705
762
407
443
69
754
761
974
94
656
11
491
604
286
970
764
296
698
659
140
153
308
89
254
83
769
10
503
68
309
291
257
242
587
529
347
219
299
627
928
518
776
560
990
832
280
34
46
222
553
602
456
115
259
196
135
67
686
986
679
47
911
308
885
694
773
680
513
700
873
978
870
894
205
897
363
845
77
59
979
481
12
209
131
467
433
69
429
682
571
65
298
798
317
795
998
806
787
997
937
969
447
347
360
343
446
578
115
212
761
826
729
647
733
605
769
322
27
241
716
557
702
166
955
835
180
162
798
958
789
375
464
643
674
263
337
153
671
847
4
595
227
958
984
711
224
309
129
451
651
288
889
72
305
339
198
571
959
359
631
667
923
243
121
776
315
231
821
355
246
337
146
527
317
801
159
961
330
286
939
172
927
627
368
974
39
666
139
717
445
393
706
934
548
605
614
867
971
595
48
85
565
963
474
576
782
133
199
726
394
920
865
699
925
806
681
76
125
692
526
757
754
14
170
978
649
766
738
23
544
242
724
251
897
360
390
511
870
649
12
440
154
770
435
297
144
813
48
621
651
389
303
982
620
275
120
149
127
840
373
363
596
369
62
804
725
148
579
266
362
664
829
22
951
451
675
340
513
97
563
164
493
464
74
544
772
779
842
447
678
33
834
404
285
188
194
822
308
815
626
755
900
382
816
869
259
429
514
659
431
972
460
935
662
937
924
786
321
172
724
60
123
187
740
114
49
93
9
668
172
233
20
709
79
633
271
288
886
451
559
531
692
531
131
244
970
970
131
270
998
224
572
780
610
814
522
354
721
844
616
206
283
674
868
461
887
980
667
358
782
654
369
445
853
337
114
33
669
715
617
468
57
954
285
279
572
2
813
18
505
829
435
839
222
944
962
242
215
989
738
162
315
618
683
557
52
472
100
995
413
158
463
580
790
904
596
867
348
764
311
314
324
929
705
294
394
717
711
237
839
674
397
853
590
89
272
411
948
257
609
120
85
660
644
314
840
614
790
989
398
800
489
816
366
353
625
626
473
864
184
523
168
303
602
591
171
194
686
912
145
296
840
912
528
491
702
936
89
373
40
576
42
669
233
90
470
242
886
673
208
349
947
219
447
297
429
777
95
815
379
475
436
202
574
700
270
216
272
704
449
797
429
103
76
275
417
718
935
77
169
211
617
820
36
87
502
471
682
22
559
674
224
513
579
441
612
71
499
178
674
473
684
174
404
546
408
322
959
383
150
8
947
288
86
611
857
936
794
962
80
614
387
589
876
661
793
138
744
189
412
85
943
637
654
658
751
551
834
504
907
267
321
926
899
268
521
179
678
698
957
238
572
326
326
893
804
29
430
315
365
3
53
995
162
38
20
343
543
494
754
611
729
285
669
879
142
634
569
254
729
532
995
616
527
794
702
228
359
979
356
700
729
471
172
77
662
894
533
708
99
105
391
743
125
315
846
237
234
400
287
229
102
394
821
161
6
771
463
806
66
305
522
864
365
504
47
998
780
837
925
434
142
784
799
484
362
740
86
58
552
703
9
68
651
588
657
132
15
187
70
134
564
260
95
329
500
147
82
72
403
371
490
544
154
11
451
110
865
969
345
906
768
784
235
933
893
642
110
833
526
359
922
804
596
602
267
747
79
111
361
160
552
969
800
524
176
343
221
411
647
983
459
504
852
487
749
468
256
999
506
452
436
38
448
315
507
277
8
682
991
857
307
857
484
72
759
793
993
326
701
344
603
954
47
691
197
274
982
206
182
775
107
966
130
668
665
317
315
270
206
347
659
203
463
908
681
818
530
550
477
311
384
565
384
221
963
889
584
115
214
414
650
662
122
909
646
640
114
221
455
610
639
407
614
867
621
455
267
368
803
459
79
853
935
878
973
440
271
563
371
412
744
82
610
130
348
813
933
261
649
325
88
22
328
689
484
984
824
154
718
856
304
980
900
400
870
235
542
224
728
552
348
555
710
531
287
691
765
544
45
38
336
549
919
588
715
891
429
596
235
33
871
21
677
681
57
376
633
366
444
441
265
770
22
101
593
46
947
337
794
222
87
8
513
688
738
535
199
491
598
433
83
225
411
5
204
660
232
99
898
250
693
105
295
620
142
385
256
939
953
622
991
147
624
105
738
518
856
918
995
628
419
703
655
757
67
3
893
522
526
415
417
338
938
159
525
122
692
349
981
242
451
863
66
868
445
570
590
683
765
435
643
851
10
398
45
318
714
360
58
160
720
701
729
728
389
339
747
167
382
442
435
762
766
620
290
325
165
45
783
170
15
858
412
997
701
147
391
968
413
32
774
346
380
718
767
733
105
307
819
759
312
681
778
746
915
92
525
903
280
782
854
688
498
696
836
592
543
187
916
166
548
844
661
350
731
464
732
770
575
570
256
140
336
470
618
222
965
988
997
108
283
177
568
696
806
547
105
926
349
180
960
552
606
443
976
411
554
152
186
35
811
743
676
422
119
481
49
936
462
174
165
403
747
458
48
845
214
607
357
385
996
67
471
530
33
925
309
992
542
870
215
404
450
727
860
329
219
205
645
205
800
137
579
225
257
151
660
279
819
982
731
782
737
65
287
745
380
262
464
305
540
953
40
925
269
696
893
134
918
420
194
406
553
683
551
915
579
600
281
652
684
625
460
306
922
172
369
22
996
664
29
309
983
551
873
631
419
259
338
816
399
879
540
988
283
358
166
834
354
899
283
375
171
674
303
445
534
217
692
196
328
271
547
897
409
764
609
661
325
569
78
897
936
423
496
620
668
75
337
605
836
127
780
986
413
887
419
197
407
59
514
134
727
995
240
168
757
865
99
216
914
342
113
9
974
244
790
151
280
259
824
802
460
989
413
21
674
270
91
983
170
735
226
686
258
449
358
841
263
408
518
446
122
653
900
644
36
426
891
26
527
282
59
605
991
974
380
602
593
140
268
157
216
306
552
446
949
774
138
688
490
658
133
316
667
809
692
397
964
511
257
573
22
967
19
898
873
51
499
617
121
400
12
889
294
568
8
116
764
967
907
846
134
328
145
563
272
592
869
504
610
945
755
760
326
140
465
650
76
173
353
884
353
364
840
930
546
401
647
328
534
543
49
923
27
543
366
204
394
601
966
620
840
846
484
708
733
973
304
847
589
949
823
663
678
820
826
926
444
319
15
785
699
915
329
211
826
392
52
889
182
150
544
551
855
907
508
308
866
942
703
742
118
488
362
138
287
520
296
144
939
762
277
568
958
703
225
726
937
595
602
127
27
550
729
122
354
301
28
851
695
149
366
97
85
423
923
217
698
523
790
466
118
748
281
887
541
134
905
708
910
233
483
840
256
664
901
288
937
15
1000
668
482
905
811
120
396
952
868
482
866
773
605
123
645
507
378
875
784
520
102
607
18
736
811
303
693
571
827
138
454
810
142
5
12
136
55
566
889
893
789
74
79
204
360
635
422
508
122
523
878
124
487
258
244
801
146
911
833
438
660
253
433
454
179
574
848
917
996
332
880
233
696
267
423
975
789
542
383
450
937
885
307
14
648
601
761
22
486
846
37
376
6
459
779
914
90
869
270
619
447
3
619
365
207
25
769
417
955
472
626
300
967
372
962
587
857
276
82
572
59
566
477
291
280
372
926
426
1000
750
27
574
953
244
288
941
302
592
625
430
216
449
685
765
855
292
255
894
538
777
561
547
332
998
302
703
130
547
858
368
911
284
977
880
240
386
377
949
980
283
608
339
879
489
420
974
307
1000
40
858
908
235
607
566
198
189
777
129
197
784
144
396
189
986
417
25
681
362
298
276
13
801
538
810
426
565
634
403
949
120
189
602
403
133
541
746
404
791
323
953
888
773
693
581
694
251
864
125
744
509
996
797
523
923
225
113
915
779
836
48
186
691
87
35
168
142
736
119
382
443
840
684
913
932
743
695
68
139
777
735
420
416
390
623
49
142
45
219
972
295
965
556
953
657
15
792
804
199
39
732
10
260
738
741
280
205
483
827
945
216
957
439
894
215
51
968
477
439
679
365
248
827
746
668
627
601
242
94
15
685
806
803
761
205
430
250
514
796
288
78
156
408
536
398
266
470
778
187
264
953
268
132
813
197
335
651
66
252
668
498
735
296
118
400
44
66
187
948
618
594
46
142
72
784
387
450
893
585
440
569
490
877
951
625
633
670
793
655
874
217
94
552
441
522
816
987
797
398
16
930
457
364
1000
22
994
222
812
862
261
263
857
801
78
647
904
203
968
411
198
795
549
235
928
120
181
853
626
515
998
982
191
885
70
284
720
963
518
483
995
664
133
274
534
505
936
347
542
561
492
960
285
985
281
933
456
607
757
411
168
643
313
396
130
706
680
551
626
275
289
769
302
260
295
991
364
513
146
154
559
946
29
53
524
862
518
382
915
230
60
766
264
164
708
561
672
246
642
71
584
195
128
655
258
408
390
902
851
518
207
654
858
712
509
295
446
519
195
940
352
431
554
397
911
724
969
490
103
62
737
777
257
120
565
623
857
563
101
343
265
165
180
746
810
143
962
646
352
896
421
732
266
693
476
774
722
422
48
891
743
628
165
588
301
895
748
311
691
604
899
622
297
488
447
350
787
19
783
277
499
81
1000
207
988
181
620
631
593
45
978
297
76
519
943
440
980
667
700
135
691
722
255
483
335
579
741
92
956
456
20
106
392
53
701
547
183
503
918
560
202
754
620
325
178
618
670
125
103
25
233
224
705
178
714
538
403
344
517
114
499
661
194
806
164
819
342
977
622
909
556
608
230
849
489
592
797
700
801
964
794
563
79
149
717
750
680
220
401
380
141
780
474
850
224
284
134
794
662
295
712
70
164
288
831
741
198
255
387
846
438
116
620
210
387
703
433
877
648
138
672
225
651
256
557
707
814
559
987
301
922
359
720
316
513
465
117
288
505
901
750
469
789
360
247
329
160
225
174
900
608
669
130
525
86
776
68
283
601
907
549
271
791
806
794
119
89
815
599
256
385
995
285
901
403
152
290
657
826
183
233
726
669
599
462
749
706
736
63
437
23
242
985
123
276
294
549
214
673
111
804
10
381
532
383
328
564
104
504
678
161
52
534
627
849
573
553
113
737
991
413
897
221
847
148
551
228
166
785
53
964
339
905
36
70
973
194
901
219
766
52
456
9
241
195
189
872
678
288
756
120
971
592
341
468
91
561
416
839
67
650
205
295
645
645
331
854
930
388
477
954
328
367
491
919
154
67
21
72
291
536
444
194
87
540
330
544
496
507
272
150
743
130
417
406
187
257
824
289
28
53
143
458
692
238
154
289
208
281
766
177
664
657
547
925
561
63
462
813
678
564
644
284
222
284
492
452
411
618
560
859
149
984
602
547
815
956
124
85
833
171
145
524
971
687
159
869
106
72
645
775
131
804
891
91
74
7
68
313
213
218
813
821
459
649
644
942
742
972
450
292
498
83
57
336
302
806
528
775
499
95
552
832
930
85
824
336
348
457
24
229
404
512
363
820
760
157
186
697
684
982
594
716
411
578
347
768
235
368
413
261
124
75
698
691
775
739
981
739
130
918
904
862
877
111
343
93
911
176
87
775
355
733
331
42
814
585
739
232
60
166
982
7
493
469
979
384
462
700
827
790
710
712
727
946
450
488
637
757
971
168
25
593
871
576
956
785
842
191
258
763
836
32
243
68
24
576
675
984
273
962
415
896
422
562
41
622
479
185
150
840
202
536
333
534
980
36
944
499
322
562
518
619
894
26
550
550
976
470
999
829
962
738
801
476
772
106
888
258
359
420
447
195
399
100
518
701
691
510
554
328
899
612
370
35
137
262
203
754
766
993
196
917
285
909
924
910
746
604
472
414
571
629
481
506
392
148
631
844
887
842
26
2
433
110
357
459
524
396
562
884
855
813
354
174
703
10
849
444
789
781
388
115
445
724
834
417
394
389
879
258
824
642
91
182
724
976
420
78
532
61
790
57
969
910
620
309
22
290
393
75
338
222
379
832
391
977
37
644
925
893
654
714
524
714
497
407
274
67
114
296
576
595
825
48
696
204
973
1
99
508
934
132
510
289
682
66
928
535
836
218
920
953
107
963
291
368
550
804
343
832
231
162
962
490
134
937
422
257
207
88
272
314
247
616
175
408
987
509
161
89
342
327
318
943
908
180
881
128
749
81
389
907
378
311
800
342
526
527
808
533
179
936
862
659
830
424
155
948
382
697
679
238
666
823
486
598
511
374
667
787
438
100
827
743
283
123
639
479
158
208
373
781
992
292
280
813
853
796
847
964
271
994
571
607
506
962
741
278
607
758
353
55
845
9
579
897
228
413
203
411
921
940
170
888
116
19
642
425
482
970
285
827
761
701
751
248
378
295
59
149
966
674
304
223
542
467
665
729
501
540
185
472
431
778
441
210
753
104
879
466
733
45
439
594
926
36
695
940
719
517
968
66
164
927
366
732
83
783
705
121
141
819
523
845
434
488
975
919
788
107
411
499
81
352
743
598
942
92
385
870
641
391
238
307
896
781
961
753
864
929
370
372
11
218
61
735
306
649
262
553
438
721
733
371
660
567
368
975
579
521
188
978
653
44
871
806
56
357
702
106
687
314
506
569
10
616
974
627
821
888
64
543
845
625
675
662
90
173
295
80
928
677
287
228
386
597
43
475
263
362
18
226
437
692
434
248
928
440
191
141
432
461
333
699
726
504
945
414
165
373
388
658
176
701
140
323
882
957
878
805
76
774
495
831
582
365
898
912
479
494
729
967
505
876
867
693
228
982
822
881
806
822
232
603
275
670
854
904
489
799
143
518
837
29
279
415
37
26
861
762
790
722
381
942
461
407
121
701
912
363
725
126
575
925
241
280
906
557
342
742
876
977
578
957
485
241
852
614
539
450
144
713
64
544
115
68
624
290
796
799
225
100
112
761
583
296
856
285
752
483
790
589
246
592
425
369
745
355
145
741
274
418
629
891
830
393
621
29
820
594
467
871
350
366
100
89
211
652
60
896
759
108
866
671
677
29
263
722
893
960
510
148
12
466
875
702
370
579
641
262
757
605
632
168
482
872
616
948
435
248
254
917
410
530
364
597
972
398
148
378
178
107
388
759
32
329
135
498
542
639
553
119
492
703
806
897
508
825
822
332
385
749
743
985
695
355
639
248
799
769
198
806
110
196
168
847
384
807
768
816
34
617
639
667
71
611
885
908
730
583
422
275
514
443
762
709
405
616
637
473
897
452
355
269
678
16
25
232
210
772
895
980
404
784
625
884
411
794
658
799
799
149
617
111
106
385
100
494
402
831
232
513
907
783
369
140
806
927
294
519
822
683
180
106
313
403
756
746
733
866
978
767
535
350
973
654
803
478
638
86
772
904
114
135
784
28
832
995
658
589
188
977
242
778
606
492
673
445
684
642
846
797
138
63
31
693
932
687
830
487
251
80
570
925
420
676
42
31
376
924
905
206
650
463
356
892
837
206
81
778
281
153
205
789
862
963
28
440
281
30
820
184
73
881
303
977
216
479
303
61
139
967
910
719
530
8
889
99
209
750
223
949
431
283
51
28
801
348
856
414
632
772
29
999
128
904
801
107
67
730
213
462
536
385
382
527
905
733
435
335
258
722
679
55
538
165
638
213
783
156
702
656
834
793
762
870
305
202
105
341
980
44
152
660
520
175
705
755
95
178
225
744
336
339
334
331
561
845
633
142
500
316
92
842
482
179
372
438
452
766
774
860
558
93
253
8
422
324
652
344
939
964
281
374
192
557
601
209
40
496
486
614
561
195
144
222
51
738
943
190
620
614
276
355
70
79
838
463
174
118
827
215
607
933
298
441
424
742
222
568
104
276
163
725
782
29
164
599
551
31
47
242
180
170
203
417
618
126
754
767
940
617
769
925
684
532
798
263
605
964
367
942
971
186
572
524
648
718
792
621
303
711
772
552
139
85
917
477
238
152
196
633
784
652
928
569
926
891
533
433
853
835
888
700
523
214
212
230
340
134
643
716
21
197
57
351
53
912
847
160
538
156
637
431
281
321
16
763
11
835
55
777
428
776
385
908
229
784
470
869
271
441
235
721
482
858
747
923
147
611
404
926
996
813
988
284
252
182
70
362
932
498
588
160
93
906
775
59
751
310
2
601
246
192
116
950
450
138
5
133
566
536
819
777
451
595
513
543
561
122
238
253
903
224
846
339
439
320
517
309
892
476
464
354
835
888
118
291
905
322
798
701
417
205
439
713
205
498
762
632
654
157
449
70
403
663
379
61
721
792
336
515
247
988
913
7
863
75
816
396
523
34
588
874
775
52
512
634
937
996
792
730
67
500
762
369
892
364
594
602
206
378
711
77
365
25
855
522
849
377
864
726
681
869
362
217
148
128
819
533
371
351
205
508
636
770
510
438
903
890
412
586
92
64
397
200
522
449
497
744
182
392
166
614
521
432
958
541
181
964
778
201
225
420
869
911
866
775
72
269
137
509
36
410
829
469
495
444
39
788
661
678
587
639
825
616
610
500
765
517
528
153
241
773
102
28
977
580
474
657
921
308
898
117
582
121
294
583
86
526
201
498
682
829
729
169
28
778
980
100
761
248
301
622
24
406
405
566
677
655
638
199
308
990
998
877
958
452
549
415
407
502
809
257
48
364
316
756
163
690
453
386
68
948
784
511
822
399
949
909
255
172
983
104
875
903
299
650
252
317
705
764
843
440
448
111
124
278
877
790
621
289
851
28
603
78
253
497
939
860
456
211
236
410
668
414
391
603
450
590
783
781
914
301
36
207
417
56
281
530
78
958
183
406
610
705
857
860
306
490
826
469
127
155
977
790
884
946
110
853
443
187
154
312
794
272
380
583
147
580
547
86
990
366
425
62
607
757
986
242
778
595
58
262
504
41
682
97
59
389
61
458
739
399
435
995
736
531
613
529
793
160
325
467
135
591
55
460
389
28
772
381
62
110
341
309
995
938
862
902
646
170
975
664
994
990
268
958
148
290
278
753
546
755
90
163
212
664
878
398
409
734
300
64
687
527
812
206
862
832
610
794
313
793
789
944
260
68
229
819
912
227
321
180
791
443
655
48
237
49
418
587
765
822
539
683
658
237
378
670
219
205
16
725
266
213
401
778
266
134
752
317
739
543
322
883
60
490
744
984
679
28
531
404
592
181
634
587
981
695
532
239
916
769
111
561
281
555
996
472
830
467
903
778
806
755
378
570
810
537
516
714
415
541
677
239
97
163
929
346
480
949
5
977
480
395
820
812
190
846
169
90
326
10
212
112
12
873
893
741
993
748
280
22
933
454
639
609
745
969
263
91
552
370
689
796
365
682
233
609
606
415
448
57
391
648
231
836
380
871
838
879
684
410
939
352
514
391
965
85
928
879
571
147
435
621
951
11
663
346
862
52
441
903
579
628
98
60
322
141
707
960
398
916
638
415
373
286
542
837
111
827
301
796
110
958
326
974
924
514
907
899
786
273
581
322
612
68
142
536
538
512
234
517
938
219
679
460
176
852
857
26
614
871
378
658
782
69
984
216
686
701
657
91
19
397
795
857
81
311
256
756
99
639
499
752
521
21
666
165
645
574
773
466
51
352
751
8
393
159
348
8
965
579
264
693
550
6
310
587
504
813
427
776
398
724
24
576
771
704
513
712
418
419
447
992
176
365
659
490
172
290
593
975
29
869
882
428
228
315
862
45
690
43
799
308
133
660
733
995
697
191
71
212
155
937
623
907
856
631
706
238
443
871
431
99
470
706
179
275
355
540
648
932
245
672
341
483
247
28
162
974
261
467
5
689
770
365
810
111
781
954
836
854
865
522
12
478
70
155
685
215
464
978
759
116
898
533
855
708
663
728
193
421
662
812
120
391
365
421
908
288
206
346
735
779
987
956
332
359
642
8
758
726
201
223
767
258
898
490
262
858
460
817
105
366
147
662
693
48
681
706
55
35
11
561
108
221
772
850
356
353
431
709
439
778
954
539
898
359
325
802
746
776
116
587
271
386
343
264
462
878
845
691
64
709
314
767
441
172
489
966
356
582
370
888
790
994
892
600
753
368
950
579
295
653
648
129
827
121
722
756
307
507
324
759
95
106
482
260
64
269
724
787
299
875
362
139
972
160
181
174
474
55
354
838
426
41
938
380
478
996
36
501
372
872
429
867
699
186
657
476
716
888
828
795
992
491
368
491
894
887
576
621
785
847
50
47
414
165
830
780
848
966
18
876
208
984
822
907
61
127
642
510
527
498
201
388
960
542
418
144
90
146
846
553
183
822
513
300
169
38
380
490
110
244
495
645
928
216
334
405
265
760
258
606
347
295
823
239
343
373
642
785
715
640
534
120
533
647
129
572
369
98
55
49
724
831
33
848
585
37
318
565
570
253
967
512
60
325
905
623
931
348
572
257
227
668
719
563
284
715
739
151
687
84
507
51
17
37
551
236
745
628
801
515
555
342
9
195
335
184
550
381
513
44
433
162
514
904
794
426
301
247
766
220
768
606
540
262
216
284
881
262
599
386
753
989
456
697
561
826
854
374
904
740
107
189
28
21
498
448
421
910
156
199
425
466
693
278
944
578
600
472
123
941
879
807
300
895
881
427
122
142
654
901
807
720
340
682
86
478
367
852
49
997
299
107
460
310
936
761
599
419
2
64
626
7
83
834
418
938
767
372
281
246
846
136
176
206
266
454
13
104
867
784
114
347
295
332
130
11
626
746
998
372
459
521
701
966
672
96
189
959
937
626
386
128
294
969
512
230
799
401
592
452
985
510
696
469
551
654
348
826
37
762
154
620
572
901
364
622
50
602
695
690
852
684
414
857
788
20
962
389
90
44
845
722
902
877
519
755
576
186
586
783
481
825
513
531
198
294
407
572
443
362
344
496
639
223
893
69
603
80
497
410
635
864
394
219
775
649
990
836
71
925
437
123
396
458
863
703
51
513
262
727
54
928
260
417
160
858
694
688
317
644
957
696
49
213
977
701
305
964
362
874
699
372
450
408
580
459
990
279
934
398
478
407
439
445
363
937
689
801
269
883
54
405
764
185
839
868
678
415
938
925
260
74
130
669
761
657
795
800
563
815
987
82
41
798
964
336
171
91
910
247
634
819
215
601
944
666
966
782
955
667
644
67
569
199
175
824
841
270
71
221
411
141
774
1
830
855
580
892
692
72
107
762
657
990
516
150
974
14
56
535
472
351
208
98
698
651
251
570
413
961
939
291
39
601
82
159
344
762
461
27
716
499
645
615
393
79
250
273
366
986
770
610
831
972
806
598
144
242
638
345
220
333
259
658
954
363
362
389
166
589
391
309
398
419
97
861
272
959
489
111
924
83
984
606
548
778
233
6
899
869
464
282
66
778
511
880
794
479
179
285
764
971
698
54
296
887
374
871
860
504
953
856
544
308
124
88
779
107
148
677
864
856
776
212
585
892
816
649
175
432
827
305
167
847
745
420
883
509
207
9
415
300
438
638
548
376
247
469
578
626
771
602
837
493
995
43
88
561
404
273
86
56
150
349
304
712
741
211
585
998
506
635
144
956
829
686
500
932
4
925
58
318
972
378
808
489
247
357
378
727
31
667
193
222
141
800
865
911
415
337
216
54
238
952
508
88
7
452
64
737
400
272
45
400
598
671
296
388
4
513
375
163
436
767
831
368
135
402
57
794
850
387
731
835
627
578
989
479
6
308
110
771
706
553
742
814
570
770
647
472
341
858
99
172
886
716
555
874
297
158
928
450
362
280
991
517
156
878
929
515
355
19
286
896
204
970
737
758
457
981
747
357
542
574
919
227
118
63
417
111
675
432
252
425
580
597
99
118
652
18
90
301
924
730
808
403
290
388
63
365
161
756
357
821
443
417
382
149
608
935
689
831
149
19
885
379
768
858
556
375
82
151
133
742
954
117
592
667
447
787
175
935
850
906
270
187
367
594
54
851
36
629
408
721
748
805
48
340
146
663
194
715
894
972
98
376
555
630
196
605
450
698
783
719
504
8
18
973
120
730
527
543
699
296
364
628
287
929
443
734
625
412
931
564
457
831
925
370
764
101
403
224
369
99
364
523
606
71
811
511
901
988
814
666
886
258
573
792
967
193
835
812
746
981
182
763
575
432
468
749
177
226
148
239
820
716
457
449
334
779
116
327
631
946
911
749
619
83
137
69
539
767
101
833
247
290
481
985
995
418
400
903
741
780
439
127
696
954
213
36
124
266
468
334
142
858
821
281
281
580
652
517
493
715
835
542
894
19
322
801
256
212
921
170
731
76
955
972
77
781
288
710
307
710
384
424
156
837
952
691
793
248
628
462
867
626
282
912
868
204
551
690
661
607
178
543
215
658
461
246
1000
806
629
941
878
871
929
166
29
750
73
190
978
863
146
496
650
854
27
67
55
92
143
612
301
47
107
5
75
909
28
926
788
290
822
545
239
475
134
1000
584
136
539
369
240
88
156
768
655
474
735
631
654
535
248
24
264
719
149
893
907
514
695
247
245
13
648
142
915
709
794
838
917
918
21
483
853
410
177
878
637
740
391
886
289
445
570
151
330
280
727
344
718
522
664
423
14
77
835
919
647
19
441
230
144
937
847
231
93
514
214
610
143
451
82
553
40
773
225
283
99
924
45
382
401
392
669
36
759
219
728
709
985
373
848
839
629
399
75
128
412
243
857
519
2
297
270
712
407
629
8
585
956
972
703
648
230
596
612
546
257
969
995
518
922
888
181
930
468
461
620
541
486
593
836
210
584
234
827
79
173
174
143
324
379
698
786
303
251
494
672
500
339
666
70
301
910
430
748
939
18
86
140
928
155
979
563
252
236
35
933
697
698
201
918
624
647
898
744
478
601
790
167
313
994
597
128
749
147
429
940
389
151
105
637
639
985
573
92
187
512
647
40
678
51
161
278
201
333
391
521
443
861
467
96
395
977
191
561
440
799
47
535
904
547
543
198
253
701
793
503
76
821
46
568
713
275
147
162
943
589
115
115
283
223
256
741
897
694
421
90
149
109
890
569
863
999
859
884
407
412
161
718
117
304
526
788
363
876
447
658
741
576
569
380
220
995
878
340
112
73
453
217
720
259
501
787
561
695
287
325
288
848
612
274
158
191
791
574
469
183
927
913
26
476
276
122
684
901
286
635
559
754
978
136
79
857
939
190
670
436
741
590
989
442
237
732
174
960
207
70
600
98
453
717
825
849
414
120
219
982
154
10
191
577
268
524
534
921
813
288
625
609
439
702
10
904
369
702
330
621
486
481
152
226
802
863
632
933
603
673
413
189
809
631
264
184
578
626
568
660
638
886
35
170
573
935
797
47
806
402
54
75
121
835
766
533
740
510
824
653
495
145
111
773
538
690
108
506
923
78
710
866
343
691
610
648
337
362
997
658
342
340
490
684
25
150
772
436
257
392
688
59
332
545
478
736
164
89
512
392
183
957
942
578
76
734
874
738
166
996
715
372
968
306
69
32
156
736
506
530
34
7
978
581
328
753
690
793
33
587
370
535
709
131
97
535
846
317
770
934
475
444
66
16
130
951
564
710
468
617
585
344
93
784
883
97
977
683
659
880
752
249
847
559
979
172
114
560
422
835
44
997
118
504
649
635
846
24
576
678
727
386
341
515
752
883
268
788
298
217
142
556
629
135
760
738
471
349
734
6
965
333
356
925
143
84
619
312
434
740
61
834
731
348
588
236
458
893
864
901
334
918
970
954
500
144
68
915
350
331
40
299
47
944
653
19
820
82
225
408
145
765
152
384
936
205
589
563
520
774
607
152
371
145
983
913
973
749
563
974
467
935
254
438
203
603
363
280
602
771
632
159
9
465
745
873
336
896
168
942
751
873
402
119
331
744
790
794
853
116
220
464
444
361
841
372
451
64
866
589
773
181
585
236
13
995
323
483
977
194
824
65
270
622
298
776
325
429
221
781
443
736
995
481
117
458
851
865
73
968
975
714
22
123
337
38
992
347
249
138
701
675
139
456
96
605
193
39
171
529
53
246
575
774
683
394
670
617
233
960
800
595
139
762
1
641
19
275
160
122
802
487
360
696
250
475
793
320
626
238
900
293
351
938
499
33
985
530
563
927
198
40
712
16
371
523
461
804
563
607
221
817
220
116
413
742
789
608
788
598
231
657
826
77
380
979
476
82
980
201
653
552
722
776
888
741
535
309
440
588
711
954
467
348
197
93
907
330
170
21
322
710
495
463
437
560
864
364
306
617
228
580
622
117
737
615
216
530
458
357
488
634
104
345
987
234
619
732
209
293
617
567
520
452
17
502
39
346
168
676
636
457
685
798
104
31
155
147
653
552
751
576
644
360
548
258
609
604
734
894
192
517
88
455
715
866
398
825
281
604
530
877
582
656
44
107
497
646
144
480
563
298
463
749
528
429
448
784
947
589
561
26
759
288
410
243
572
873
980
660
929
973
691
300
96
590
864
160
4
435
272
600
686
223
158
661
605
35
568
227
11
166
414
678
214
842
990
636
470
737
958
869
359
866
382
854
802
454
590
275
824
467
653
278
840
238
845
103
74
369
391
936
388
787
699
770
407
120
344
16
6
100
674
479
231
317
521
592
126
79
618
83
175
742
247
975
994
405
450
832
51
168
690
482
479
537
152
374
448
173
694
115
176
123
184
377
859
799
379
608
770
720
186
372
581
968
350
470
988
683
30
358
940
542
579
242
126
139
522
901
550
702
339
730
754
524
938
317
289
199
185
618
244
757
793
172
330
705
858
821
146
848
519
3
764
253
316
791
26
742
812
439
277
281
216
433
382
46
927
914
206
5
628
858
67
795
416
885
966
892
843
66
560
484
293
441
208
38
739
822
435
857
107
49
973
127
99
737
409
348
618
575
740
252
747
985
940
172
844
178
65
928
162
146
853
682
824
119
281
965
617
800
773
491
392
591
800
240
829
910
686
183
237
741
909
676
543
397
889
972
822
941
909
130
271
257
871
202
112
946
38
627
412
248
577
720
658
105
757
498
133
548
214
651
865
220
505
199
185
298
932
918
108
644
761
543
386
328
236
701
238
929
644
732
21
718
139
713
764
32
24
842
917
715
655
363
856
832
624
546
170
522
241
413
217
338
416
877
225
331
499
331
89
265
183
342
224
936
129
618
73
420
415
125
6
769
128
670
953
39
134
804
501
930
858
13
598
700
178
692
417
763
965
591
56
433
372
732
70
595
236
456
130
730
300
642
108
63
241
285
624
629
699
723
584
718
361
270
101
999
374
973
710
464
235
287
103
327
227
130
510
1000
288
141
594
880
383
628
38
491
12
947
257
566
453
515
301
694
739
720
353
778
75
141
309
855
727
187
549
382
442
698
855
10
401
590
444
437
349
649
228
34
895
346
225
375
84
588
595
564
926
904
228
616
330
740
188
246
333
688
902
954
337
480
39
730
281
807
188
669
800
126
104
608
265
91
902
492
744
133
734
329
615
305
405
762
554
948
717
921
616
27
158
335
966
75
895
562
292
647
335
819
97
364
617
195
786
15
130
746
734
912
891
663
114
961
873
639
858
703
271
279
126
896
476
450
750
432
433
368
731
294
348
504
394
9
188
267
179
450
666
732
401
495
874
700
698
204
633
310
167
132
501
9
801
882
841
299
907
167
720
753
966
866
9
156
878
682
991
595
837
835
918
841
290
975
987
561
328
432
427
895
830
488
41
585
929
705
371
714
798
295
852
127
231
453
751
541
501
573
896
246
127
86
406
12
401
891
811
884
286
700
441
551
427
314
388
224
701
345
479
677
700
339
140
842
592
88
938
499
28
806
687
457
392
83
888
682
580
163
749
951
73
183
499
714
104
452
576
486
901
600
689
829
749
18
179
80
292
830
494
17
823
523
131
749
734
867
360
209
398
326
657
754
929
115
441
61
397
85
247
394
954
157
190
38
638
467
551
472
293
231
713
412
433
811
877
81
42
938
641
962
319
673
11
994
589
687
139
338
796
440
777
290
683
124
136
859
974
533
196
471
872
832
968
238
108
935
511
982
452
499
890
959
348
350
685
780
270
299
57
796
885
782
123
911
636
631
591
414
114
60
738
892
793
270
216
416
811
103
679
796
130
296
108
427
613
687
359
763
952
778
913
764
18
967
962
360
139
574
339
20
658
594
949
136
171
713
96
900
986
202
222
461
793
417
531
66
110
688
903
11
893
480
738
790
704
336
284
745
964
893
530
627
41
222
789
497
927
497
301
624
578
908
290
193
476
302
974
107
143
291
982
96
744
148
268
402
719
757
159
31
298
545
145
194
230
691
315
509
881
985
800
462
312
3
941
574
316
146
575
178
65
414
588
653
856
811
610
649
649
875
935
942
820
209
827
988
245
870
6
938
424
368
47
769
300
125
854
253
428
317
131
974
881
406
107
550
560
537
390
520
853
807
402
834
724
837
975
198
599
901
629
529
458
128
292
941
671
710
486
998
257
225
155
674
334
141
65
525
735
470
425
407
788
365
524
897
727
136
424
467
215
438
357
662
602
544
433
641
699
521
589
57
77
857
557
694
748
548
92
445
694
675
813
680
796
651
534
604
753
281
157
272
658
662
305
898
157
953
948
212
342
658
9
508
986
786
201
822
62
322
20
409
603
674
730
149
947
784
918
534
130
537
818
89
589
284
93
26
797
874
373
892
243
825
451
113
891
722
526
475
33
350
590
588
573
833
677
586
928
207
521
963
608
256
137
67
32
596
100
970
712
94
630
23
715
736
935
539
94
185
204
150
102
69
917
355
552
481
763
357
324
460
66
737
581
607
604
893
982
296
286
779
69
175
339
511
604
756
274
26
191
172
847
749
321
105
333
700
268
779
590
455
934
316
993
981
771
193
44
641
239
33
84
106
281
581
458
289
297
896
978
91
817
554
345
302
385
991
839
616
822
537
770
400
884
588
481
254
513
736
989
91
4
617
406
682
24
738
506
930
110
558
79
191
415
515
200
86
683
749
422
4
711
324
73
364
192
705
426
485
948
269
627
450
187
128
208
751
826
670
488
649
688
902
62
319
875
850
823
383
749
850
214
993
683
571
807
10
743
466
96
577
455
838
87
618
189
228
361
185
724
294
427
68
101
841
313
588
911
594
868
733
548
977
658
930
954
277
126
663
497
361
633
643
270
153
596
466
392
520
997
150
366
975
335
659
785
677
660
691
485
193
732
989
214
351
90
803
433
932
9
249
193
97
586
539
312
366
458
93
904
393
779
468
320
428
896
803
850
316
198
461
920
26
884
269
21
160
917
650
662
237
921
735
534
725
522
324
232
209
673
678
600
257
981
886
650
492
459
723
525
988
629
938
350
26
514
596
946
870
475
284
550
59
121
828
427
163
59
826
43
72
678
726
803
108
965
272
154
392
652
687
418
295
30
2
605
875
807
474
717
783
274
731
967
381
636
841
849
441
754
973
874
34
968
63
180
173
570
492
413
892
873
288
171
222
771
887
693
948
306
802
921
123
871
756
396
640
816
153
884
899
794
824
560
553
925
310
444
343
285
401
827
510
45
395
253
748
122
861
310
647
307
562
621
456
436
73
558
899
465
76
607
33
386
393
430
200
894
125
694
333
670
589
365
350
351
598
575
131
913
970
307
628
57
203
103
173
766
465
384
176
330
761
60
463
807
669
458
455
122
725
668
11
309
935
826
974
749
841
921
757
754
589
227
138
555
325
941
423
129
494
171
840
241
101
907
522
758
3
676
406
763
725
826
387
937
383
601
236
384
431
803
454
621
460
796
630
94
78
955
998
892
839
596
794
354
310
665
548
793
795
356
97
321
625
617
821
606
27
61
990
198
995
210
4
880
180
242
130
952
523
885
137
21
377
117
50
195
967
897
761
979
52
20
174
818
682
359
720
715
665
626
774
649
364
706
498
340
99
26
407
681
302
111
117
776
987
988
528
627
699
447
136
606
582
300
906
481
36
285
282
802
300
816
86
797
364
789
200
7
419
288
407
382
53
867
252
687
424
443
379
123
659
448
461
283
483
389
794
994
284
192
472
653
63
847
390
165
350
590
941
372
131
887
77
365
387
997
396
178
385
327
956
714
563
925
431
637
353
289
236
998
687
568
259
458
686
68
750
824
788
161
526
462
832
325
305
595
213
54
306
356
683
889
560
912
577
774
802
595
80
781
968
673
597
758
983
358
325
871
892
114
961
928
901
121
542
639
61
32
8
503
896
21
774
808
228
294
406
248
552
564
44
801
595
898
946
673
186
243
134
867
667
967
507
509
150
364
294
579
909
100
518
19
994
992
453
700
623
878
680
376
688
796
60
516
746
500
807
432
537
725
929
509
366
18
884
642
349
898
608
116
534
782
246
784
804
317
900
262
274
726
754
716
61
33
966
871
159
43
371
618
687
169
753
249
290
63
735
842
276
335
48
335
58
886
167
433
746
834
549
351
93
675
488
174
114
247
478
341
417
863
757
793
395
85
13
148
422
721
558
454
779
489
611
36
802
504
399
297
961
797
562
219
318
966
628
419
708
582
663
603
260
582
467
231
214
546
435
694
441
659
693
571
571
783
723
953
973
298
915
990
631
893
73
201
939
898
835
929
333
328
134
651
940
693
901
45
840
610
552
187
311
245
835
876
257
735
297
502
739
839
237
719
757
34
146
742
299
734
963
159
130
145
402
502
667
741
556
93
102
176
57
425
537
101
384
734
764
674
632
347
20
139
82
628
886
909
899
83
45
574
650
172
415
680
779
332
700
436
508
87
594
954
681
40
793
665
747
481
206
262
14
9
932
662
645
489
555
558
930
438
902
133
855
459
76
233
435
917
986
871
65
264
658
673
3
532
793
568
274
25
373
369
307
827
418
559
808
998
267
751
955
910
27
483
733
312
259
708
862
782
380
958
354
307
70
929
687
741
693
142
451
819
931
888
628
945
302
521
957
376
503
999
378
463
985
616
779
485
591
812
410
722
259
59
170
867
33
220
608
619
940
804
97
919
923
791
231
424
663
938
978
510
46
165
21
75
525
214
816
662
387
721
158
997
404
329
351
279
652
433
296
223
158
679
978
670
821
401
366
170
804
229
634
950
383
171
559
661
872
155
456
950
999
34
323
382
198
145
929
95
944
18
724
250
929
75
243
819
920
87
639
413
282
79
718
406
899
202
700
349
486
776
16
733
296
798
597
956
436
128
325
316
737
144
776
17
229
633
826
110
965
748
694
244
664
351
466
690
659
517
388
24
309
483
599
425
792
359
64
225
948
318
928
115
99
933
894
81
618
895
174
631
246
511
978
98
540
88
141
114
976
421
926
527
847
84
660
649
111
695
286
733
182
657
868
243
458
780
380
537
954
541
898
111
131
532
163
329
972
157
381
134
959
878
952
895
591
673
597
654
297
168
774
134
293
196
906
790
542
80
345
135
873
631
959
475
983
229
622
165
295
324
935
375
661
36
25
101
752
843
910
453
836
334
55
313
995
211
788
148
783
515
93
419
196
813
541
569
69
143
655
959
166
320
339
637
260
650
682
617
177
531
634
700
133
80
321
313
148
211
810
40
892
33
326
432
155
421
813
989
928
69
941
901
901
767
366
54
787
384
813
148
112
330
183
452
319
893
291
19
439
900
354
374
799
405
484
414
230
604
938
706
973
618
823
3
574
557
632
874
558
38
39
159
270
244
234
894
713
183
11
332
890
777
245
538
770
600
394
876
328
543
249
151
566
908
120
605
194
905
500
944
188
918
615
945
629
990
137
907
123
707
228
434
245
413
416
189
712
908
44
863
252
838
710
754
945
824
680
554
270
445
509
570
641
101
207
599
992
928
3
359
467
605
503
29
910
197
81
50
897
275
647
985
525
865
429
747
151
712
396
470
326
129
961
791
158
999
499
856
215
843
602
242
99
8
422
218
708
987
77
129
59
141
568
786
25
786
610
423
716
67
491
94
732
765
585
915
258
860
726
476
261
83
745
162
445
261
212
596
523
430
686
865
792
848
938
133
54
222
453
663
594
130
148
931
134
222
955
161
624
921
836
595
222
459
145
29
903
672
959
595
781
871
835
687
133
725
42
641
799
808
566
444
670
359
609
235
411
360
314
29
942
120
435
951
912
680
431
327
119
281
189
526
347
674
111
287
951
589
868
612
353
161
743
606
802
326
639
231
924
683
932
693
792
894
857
647
202
345
25
75
186
290
812
671
956
64
887
150
504
366
284
63
516
449
444
277
296
339
786
567
143
285
267
333
762
921
425
511
169
692
231
843
595
442
953
262
5
944
211
623
174
949
404
124
53
713
373
401
894
728
815
4
20
340
407
521
731
678
579
315
578
497
580
573
824
887
677
995
623
994
263
334
397
317
460
604
318
650
765
918
864
583
355
845
86
457
522
392
913
364
422
418
355
407
874
383
744
345
944
387
442
258
334
578
229
13
145
170
986
390
811
600
248
845
15
239
826
960
617
706
729
891
349
222
888
2
385
518
515
150
640
33
790
230
320
792
703
140
926
966
835
71
373
607
530
638
323
977
1
26
649
185
18
667
224
53
768
150
861
511
372
207
188
481
530
853
535
471
182
108
731
804
541
300
152
713
979
815
566
440
228
880
905
258
753
699
683
659
786
447
204
943
570
988
6
889
175
452
740
208
304
176
323
467
684
789
747
683
761
734
226
932
142
796
706
789
28
207
92
881
409
571
288
54
281
487
824
167
379
272
641
930
859
146
444
784
853
349
712
847
323
421
247
877
390
108
458
402
387
462
498
219
728
302
539
699
185
253
854
972
551
418
392
226
689
802
890
144
561
679
470
9
829
116
101
664
755
616
577
695
256
299
451
951
177
571
874
308
26
396
422
927
800
561
281
985
181
108
832
566
336
380
703
749
4
387
794
153
620
670
229
613
96
1
529
786
74
534
18
259
728
939
749
603
167
984
280
323
718
408
266
659
888
377
129
640
774
77
330
471
598
171
681
975
790
936
386
944
983
201
241
602
81
171
433
248
796
666
727
862
556
121
817
497
388
735
551
203
268
325
190
745
592
568
851
57
426
177
975
447
552
883
680
970
604
659
231
452
998
480
771
597
696
256
498
635
655
839
20
192
385
695
374
770
150
297
911
742
248
794
113
937
184
272
322
48
937
464
648
237
813
559
624
101
542
793
915
492
915
251
523
230
385
414
892
516
568
399
763
794
258
674
834
267
285
121
864
793
328
807
330
57
55
246
288
266
797
847
200
786
643
50
424
599
500
563
112
69
525
119
669
675
664
377
41
973
6
40
221
172
33
600
368
561
893
248
548
48
11
540
331
617
485
300
679
137
877
412
505
563
776
597
134
67
744
881
755
589
698
25
382
946
22
469
68
551
561
307
979
82
968
62
342
366
630
723
840
562
491
309
373
349
835
90
130
453
324
625
88
458
620
947
333
346
837
814
869
979
633
171
135
91
38
724
375
680
753
976
815
790
580
410
357
842
194
842
532
422
299
781
355
197
316
612
213
927
159
611
773
628
639
340
884
37
186
558
937
616
687
51
935
675
18
915
986
596
995
44
229
504
206
77
799
931
466
349
406
361
854
566
793
58
704
371
189
459
350
748
646
726
448
734
359
776
875
475
946
2
581
155
600
390
686
118
108
488
216
702
115
815
287
463
422
505
732
801
233
85
980
275
763
997
817
701
56
880
570
825
571
698
800
879
311
4
627
655
625
445
664
887
638
3
189
984
413
695
188
150
776
990
947
838
945
590
856
873
738
22
159
158
631
592
855
580
134
196
116
853
2
782
512
671
101
876
834
922
436
909
300
805
905
829
986
68
313
116
344
302
99
731
639
461
758
940
6
606
81
806
352
143
304
862
988
778
922
760
994
619
914
94
1000
226
613
177
988
308
27
951
531
107
977
367
518
578
452
198
223
233
644
896
92
481
754
148
269
712
114
723
847
521
435
259
18
192
873
722
920
447
696
576
665
563
301
52
718
298
276
75
210
104
209
734
263
95
861
391
222
339
40
807
859
199
589
539
608
764
424
620
114
519
924
395
301
928
106
569
873
289
951
979
263
185
900
794
637
502
747
502
949
998
555
768
435
272
33
706
405
624
100
95
507
181
306
233
22
382
586
481
991
795
851
699
50
247
987
724
409
927
348
495
500
850
467
122
785
175
686
61
852
153
621
713
14
534
248
123
856
787
515
193
391
878
890
70
838
123
258
165
457
965
810
615
641
782
358
81
632
144
721
751
121
717
418
86
713
326
282
971
57
752
851
939
163
587
733
191
960
215
900
222
875
565
366
640
89
256
694
265
578
216
718
913
736
718
377
635
487
487
615
688
711
183
393
659
617
468
916
25
268
616
922
373
323
110
252
106
244
595
477
619
298
698
223
311
273
560
237
591
625
295
697
4
462
557
91
470
840
775
330
307
623
475
743
85
81
840
844
855
132
385
534
818
375
399
131
269
449
850
127
212
975
508
671
18
836
36
477
898
380
383
356
453
514
401
907
845
241
454
735
354
756
993
804
955
366
327
236
562
927
914
221
611
98
682
154
125
444
154
781
797
471
258
557
403
909
536
49
383
933
549
530
919
286
421
72
917
870
396
684
418
954
797
252
719
317
337
165
654
4
511
662
754
220
972
412
555
472
911
722
804
273
159
963
850
936
315
121
615
244
510
6
119
665
632
654
740
739
555
571
368
646
975
490
721
13
312
604
523
928
750
738
395
17
305
131
542
871
316
229
879
19
926
361
898
127
669
406
969
266
15
657
971
953
413
146
119
149
143
114
772
489
261
333
686
88
809
347
555
94
253
223
940
983
962
207
681
199
651
843
366
341
12
416
157
632
900
643
857
555
299
437
56
724
734
508
185
615
615
791
726
76
484
805
245
990
447
727
3
475
472
306
714
296
399
305
308
909
258
430
906
614
567
943
485
139
879
521
718
776
236
99
580
389
98
892
580
928
937
4
976
795
816
318
771
97
20
74
212
285
367
227
105
514
371
160
226
587
690
413
656
588
127
125
161
204
269
259
240
273
150
231
514
546
721
120
903
585
605
555
918
993
669
612
701
727
740
816
920
707
233
808
314
855
715
993
349
601
876
929
356
444
958
632
74
671
222
294
630
368
760
161
795
807
171
255
882
291
134
63
307
824
44
236
961
379
739
537
261
28
621
614
903
452
692
727
683
790
633
890
71
578
247
255
898
712
987
817
157
729
357
897
53
301
245
940
435
74
443
205
84
109
779
929
880
973
41
433
908
89
935
360
821
511
748
292
697
51
27
508
442
564
97
517
940
625
248
707
629
57
394
693
640
228
417
955
414
851
132
750
712
61
711
337
948
47
96
239
789
241
870
783
542
628
338
52
436
48
564
103
936
727
717
562
88
551
308
523
764
669
283
545
664
317
154
849
228
225
402
937
634
135
832
143
28
47
495
351
593
536
969
302
984
551
6
85
604
206
986
427
459
817
821
241
125
649
57
911
187
800
998
89
142
882
348
75
619
268
627
435
92
959
482
695
348
960
766
687
881
908
679
210
563
353
936
196
67
403
330
628
409
255
979
696
349
84
499
618
397
754
135
936
56
505
760
72
146
445
802
143
390
204
712
245
729
201
341
825
305
144
2
821
45
546
30
952
820
117
364
930
526
684
21
984
691
554
484
274
895
906
504
210
691
794
76
328
377
29
975
514
59
26
370
542
652
808
547
796
308
342
251
982
324
806
628
979
850
242
127
892
349
336
168
400
152
56
175
815
947
265
729
817
870
238
714
997
249
917
916
697
718
775
511
38
248
585
750
733
676
746
169
442
173
908
71
299
647
758
911
958
740
226
193
60
560
504
152
875
609
959
802
157
541
716
929
870
867
63
298
589
473
983
606
102
811
290
884
552
81
857
565
82
373
610
94
395
50
564
857
815
286
954
552
319
426
41
409
171
946
915
248
432
564
524
718
333
824
661
386
17
925
187
699
566
995
689
42
106
518
313
599
608
493
215
7
593
766
38
981
63
533
731
933
491
370
735
413
243
92
289
114
77
849
716
938
339
655
812
677
583
698
935
323
426
926
340
259
166
917
849
153
440
175
781
810
325
307
197
286
986
4
756
206
839
109
53
193
749
804
821
867
914
334
601
133
604
879
891
135
627
191
866
284
1000
504
586
408
580
339
423
894
422
19
967
520
866
389
279
138
373
398
143
762
164
90
453
446
233
918
498
443
65
390
676
96
816
420
220
196
735
976
344
105
922
591
289
917
811
443
2
482
66
793
380
452
634
817
835
640
592
379
509
382
95
198
351
157
627
484
523
583
540
513
573
86
460
729
648
532
553
958
34
106
953
727
285
421
465
632
522
245
288
181
324
796
197
214
371
758
36
614
619
741
936
262
27
977
79
16
909
380
528
746
188
992
55
139
679
957
833
895
564
405
650
271
136
66
757
938
587
724
451
926
349
764
395
942
981
386
832
407
809
623
658
236
600
941
99
153
2
483
473
452
920
600
208
214
527
61
878
721
2
959
155
428
10
952
514
358
50
205
244
113
300
738
804
418
799
596
827
568
465
497
554
68
858
749
753
34
152
505
193
593
659
740
581
413
340
553
32
235
325
913
629
405
898
458
566
826
102
141
784
688
828
813
180
776
18
196
996
176
762
364
386
982
966
833
218
708
351
82
738
644
298
119
118
494
999
378
238
803
336
215
931
344
751
396
152
837
512
535
58
87
946
833
696
859
197
596
711
313
900
527
320
40
22
356
129
263
238
34
633
908
81
9
748
923
74
533
580
195
557
565
329
88
540
224
416
926
932
786
885
804
380
319
717
903
76
72
173
788
822
349
496
895
855
929
284
485
498
677
513
99
595
360
554
282
442
893
328
445
888
732
199
246
512
160
575
47
931
644
395
307
140
565
107
770
287
789
494
617
207
796
594
98
551
779
531
488
202
160
242
208
715
696
858
948
521
532
581
491
224
548
740
76
340
593
759
348
305
954
594
562
402
696
263
234
743
170
545
633
737
263
62
623
804
257
357
247
25
511
644
127
89
339
149
966
544
664
34
837
710
62
521
372
416
224
68
964
159
403
481
577
311
458
822
761
827
670
568
160
836
947
566
561
565
193
678
24
98
413
309
239
309
716
687
422
139
42
350
441
977
569
293
34
975
708
365
103
509
882
563
782
662
486
370
901
929
770
39
632
798
50
81
100
98
989
414
325
186
84
435
454
440
982
749
347
323
869
89
401
204
513
549
235
787
303
21
81
530
625
218
97
786
617
559
609
496
725
895
909
800
584
302
467
253
757
615
919
573
721
893
278
185
79
267
976
984
997
834
122
432
798
343
590
385
697
810
897
156
121
756
368
809
540
336
495
69
706
974
600
518
856
368
281
689
62
407
779
147
523
636
582
313
963
142
295
653
632
650
564
198
897
798
508
866
456
422
511
924
385
321
56
580
424
181
412
72
257
361
820
838
646
939
782
255
8
587
103
930
17
704
824
203
85
287
387
695
666
700
302
34
763
356
458
387
436
118
937
849
320
337
583
525
405
891
254
94
514
597
808
159
295
884
113
728
3
864
975
496
557
244
164
143
165
706
541
954
929
376
842
521
917
788
753
294
490
940
822
854
655
588
310
113
309
318
807
84
558
976
64
845
301
850
637
12
112
970
468
696
606
530
601
63
154
420
683
552
455
988
989
735
378
151
287
868
215
698
474
42
206
12
176
765
677
344
794
269
97
875
539
667
747
610
49
988
90
98
389
502
762
719
538
903
829
600
964
520
839
306
128
934
145
182
133
24
830
764
368
957
158
497
83
241
401
408
549
2
174
147
417
877
11
426
984
687
666
473
196
453
253
527
684
833
12
723
585
902
478
694
104
355
237
511
226
375
23
287
150
570
283
703
310
505
362
204
486
807
475
636
143
553
34
831
536
508
860
737
969
486
628
611
40
860
955
968
585
38
96
133
716
380
750
590
980
906
548
212
142
335
873
750
242
198
814
660
394
134
466
244
977
864
159
819
803
415
380
290
357
421
963
304
95
315
499
951
446
600
154
550
424
31
734
637
898
943
290
750
157
331
31
190
734
386
698
919
51
137
344
152
815
143
531
249
664
592
235
583
721
853
367
718
439
916
378
581
26
80
257
712
668
174
459
186
965
413
788
540
445
448
69
879
631
217
829
878
980
784
779
27
413
578
238
875
1
846
566
430
257
778
451
409
473
116
151
904
924
909
503
230
808
879
497
182
211
356
787
160
247
205
233
336
241
532
895
304
370
526
604
289
311
702
150
510
991
786
124
347
717
628
819
781
667
717
277
699
709
437
703
730
608
178
990
675
520
251
315
433
768
732
652
618
717
619
980
412
403
629
388
946
791
494
649
836
855
236
498
677
371
261
242
622
692
520
673
168
751
511
577
247
345
303
841
675
329
532
887
117
8
528
860
691
217
724
994
630
366
974
293
384
379
772
203
544
947
144
572
932
800
232
910
803
315
555
605
812
176
509
567
386
150
687
514
457
213
668
976
707
777
875
459
17
335
22
465
250
938
437
315
63
301
972
16
721
404
79
990
722
997
453
441
303
288
753
535
53
92
386
797
143
353
484
459
445
387
654
480
50
59
794
307
503
321
783
270
137
401
273
200
312
45
234
707
625
465
210
767
11
45
702
262
374
860
323
539
911
269
990
670
808
403
763
441
299
355
774
576
478
788
592
217
355
30
271
168
151
237
465
388
488
48
22
55
139
152
500
943
653
905
255
3
261
699
717
480
739
608
45
945
400
245
964
722
336
40
715
931
11
724
710
445
773
795
704
224
555
931
383
718
391
692
579
346
24
883
436
220
939
573
907
556
751
350
801
825
396
997
148
172
633
172
989
19
285
995
858
923
209
600
857
414
498
80
31
155
627
266
593
178
651
431
502
981
427
223
136
510
357
536
402
142
227
641
469
70
406
204
524
571
145
271
850
369
626
414
307
800
386
82
240
635
966
891
10
607
839
395
419
4
496
563
553
891
986
398
822
385
585
993
207
585
286
757
407
990
706
124
868
185
776
233
177
7
245
467
471
601
934
592
489
241
7
960
679
823
159
130
754
439
122
773
433
972
67
677
722
606
561
169
267
646
339
989
675
442
423
164
325
781
413
195
213
217
690
592
621
144
689
836
776
521
744
669
612
948
967
134
645
122
455
805
955
566
44
500
345
346
846
122
536
539
411
401
642
260
544
418
243
949
605
505
910
846
46
766
636
938
542
170
607
185
845
785
23
363
72
581
285
823
438
410
682
796
234
344
227
2
545
625
259
144
509
461
800
932
975
515
41
801
571
684
531
898
258
665
46
342
105
480
879
191
691
959
334
48
238
522
299
222
721
807
147
608
394
701
437
588
597
288
767
252
800
36
603
432
52
178
344
112
235
957
882
771
714
685
835
963
463
656
293
78
936
643
408
592
445
370
959
346
644
548
739
686
609
393
916
790
789
733
613
829
737
75
832
900
335
216
476
458
558
751
705
98
334
137
908
178
960
317
142
203
328
665
606
522
341
307
241
176
895
737
19
365
900
255
893
620
955
260
2
980
871
766
328
322
577
531
566
319
260
935
315
989
565
596
54
427
530
110
113
221
49
398
536
719
612
826
80
31
180
904
471
798
835
218
988
796
308
318
177
352
567
575
100
811
644
89
579
729
187
198
373
593
614
288
549
117
14
61
762
220
643
712
82
505
241
218
647
624
739
929
295
348
12
237
303
683
570
177
215
619
544
937
717
980
871
738
486
154
220
391
16
692
241
470
521
310
251
224
877
180
433
694
337
638
885
269
654
763
860
290
514
773
275
124
909
935
913
406
970
767
627
489
86
56
649
851
892
898
432
436
318
438
808
845
912
519
379
275
637
919
896
670
606
953
170
286
773
755
360
94
910
989
25
850
508
255
732
323
830
199
172
649
776
384
437
140
176
615
515
750
187
416
847
183
899
898
529
368
194
838
768
912
712
859
617
958
371
971
389
326
90
621
693
516
726
116
457
715
95
796
405
749
707
387
416
943
924
27
434
355
204
410
912
290
499
490
657
877
213
243
767
81
988
427
367
743
989
954
464
138
401
787
234
97
653
89
45
246
898
117
747
601
196
195
526
167
424
632
913
526
322
312
44
559
10
346
159
879
875
790
863
955
385
229
250
61
441
798
174
370
891
441
203
968
934
432
30
540
89
252
464
133
393
962
539
742
132
257
870
997
540
822
926
305
586
239
833
376
756
972
27
440
162
771
723
448
821
715
62
423
961
19
558
75
670
338
154
414
332
89
385
104
689
402
957
792
970
588
43
781
321
252
90
744
651
866
227
55
415
305
269
538
97
264
592
801
906
832
30
548
468
194
180
275
498
483
338
775
96
629
327
882
655
898
734
520
846
558
751
363
587
284
10
781
827
685
830
135
890
111
438
683
227
43
961
904
657
53
184
441
176
31
588
807
917
105
87
857
55
910
101
22
99
715
640
51
71
610
220
210
278
464
876
336
567
293
284
922
695
475
143
715
889
847
783
493
475
814
838
882
942
938
488
196
106
82
391
764
1000
506
493
592
110
972
483
37
382
655
157
185
87
185
658
417
600
953
685
682
298
76
815
413
749
443
604
996
432
723
292
276
184
801
497
469
780
943
155
970
293
700
884
815
795
169
989
975
854
73
338
357
19
680
135
573
326
64
417
687
566
430
724
962
295
44
99
8
464
396
715
359
29
96
921
561
61
337
621
223
663
248
853
223
628
234
828
542
955
557
998
397
301
115
476
672
553
198
392
336
743
959
786
684
852
255
878
735
680
240
846
563
146
307
993
12
13
339
430
474
796
136
155
333
142
166
532
869
170
795
783
634
722
569
445
141
5
550
900
710
666
908
537
46
125
995
503
229
291
71
698
312
770
64
799
421
541
522
956
652
159
960
678
78
516
271
403
136
888
841
914
313
502
305
762
146
153
967
746
607
839
414
189
571
95
888
700
260
78
596
774
230
404
585
318
305
414
687
915
699
153
211
851
7
425
207
705
453
24
250
263
842
378
909
636
365
766
967
84
764
975
560
222
101
725
117
183
179
980
713
228
681
967
176
310
529
824
431
902
5
962
971
276
53
655
77
429
269
698
54
587
68
174
716
581
356
71
387
469
755
1000
578
566
683
251
10
844
601
110
124
684
269
928
129
227
632
990
412
404
105
821
576
79
770
183
206
976
389
716
879
531
961
549
480
613
913
270
422
673
218
21
412
725
235
657
938
850
749
999
88
5
916
523
175
418
227
110
964
533
283
900
198
524
800
261
541
90
485
573
425
959
210
211
532
822
402
651
343
221
31
173
554
398
410
959
238
432
937
763
708
146
171
20
506
223
782
486
936
845
286
378
440
259
742
681
833
52
746
414
615
664
345
228
365
242
322
79
905
960
9
193
597
137
798
918
454
455
947
804
119
789
794
269
60
501
647
63
2
155
244
235
803
6
249
576
209
856
559
733
191
846
472
463
470
292
955
891
645
585
618
816
130
645
172
284
456
388
418
390
176
441
807
773
459
494
967
715
811
929
453
743
608
358
89
651
84
414
43
871
360
735
865
727
935
19
222
77
549
560
974
524
967
198
460
597
841
631
657
941
977
342
377
85
883
376
660
752
582
770
857
879
618
24
809
795
375
205
741
207
781
687
937
360
835
448
120
317
415
385
662
189
407
251
81
300
317
403
257
584
188
642
143
770
182
781
772
229
779
539
200
201
766
689
181
75
536
184
245
143
126
779
35
679
492
424
812
141
94
549
125
31
246
409
465
16
932
397
256
776
786
556
1
772
770
285
246
94
645
206
623
675
553
894
751
365
734
112
836
269
509
410
581
82
399
867
664
688
354
295
73
233
375
254
551
285
423
58
383
909
625
13
203
198
522
479
679
702
773
501
602
621
336
371
994
380
60
135
535
768
794
190
297
365
940
812
215
139
616
863
994
839
409
980
54
175
445
237
428
48
81
959
522
846
340
895
259
440
325
615
786
466
411
837
61
389
632
802
480
30
768
428
981
296
921
941
753
686
955
49
321
932
201
140
773
555
143
750
952
558
225
774
457
727
622
183
528
130
630
109
552
499
437
766
742
455
742
444
583
524
514
81
258
706
586
864
10
159
313
393
226
345
768
543
770
784
402
129
691
140
396
71
178
38
396
637
750
98
88
899
413
288
951
221
382
880
289
323
911
821
366
121
543
415
492
605
827
819
709
790
849
912
829
181
290
420
174
531
991
404
268
261
385
488
5
675
685
378
238
601
925
209
158
865
455
716
299
19
71
885
749
222
779
356
370
169
988
597
853
532
591
44
14
336
191
749
767
924
458
976
296
419
95
653
367
255
346
740
505
147
577
861
379
909
830
148
979
7
993
306
539
185
17
503
417
746
929
454
728
130
338
649
505
571
874
2
208
3
112
489
617
958
902
788
277
164
372
95
190
820
322
861
508
647
595
665
854
574
623
318
646
805
959
379
800
204
775
563
779
817
496
555
153
725
596
547
704
400
763
578
372
858
225
990
442
466
369
83
630
717
244
85
861
183
837
497
630
666
63
67
588
638
64
288
821
752
265
84
443
914
452
49
169
294
223
54
552
566
164
145
678
595
821
331
131
85
302
645
821
135
851
704
710
206
280
144
618
183
647
92
293
331
241
451
159
939
531
266
661
705
751
995
114
152
841
54
884
836
187
145
182
364
312
350
675
185
80
263
247
975
701
727
946
467
141
378
953
196
30
197
382
575
966
303
257
884
618
748
452
711
329
499
776
117
505
395
39
853
604
563
995
146
646
142
50
477
817
603
820
997
362
612
158
469
554
801
348
550
611
563
478
960
107
745
849
740
913
12
517
617
49
160
140
294
344
33
751
638
37
423
474
141
829
243
839
501
471
970
389
455
43
116
900
294
151
373
487
880
516
586
511
95
832
145
731
646
100
619
303
669
720
637
798
351
63
434
43
9
317
675
931
142
158
271
891
474
472
750
141
391
528
149
700
362
128
160
739
368
913
381
481
640
67
192
981
266
664
91
91
162
134
915
246
464
654
665
950
899
45
381
667
556
557
282
961
682
824
297
417
633
978
831
986
989
316
867
896
853
30
655
161
528
251
183
198
25
939
261
709
783
239
137
557
114
511
47
698
7
514
866
430
493
860
272
155
82
827
452
892
480
320
823
227
240
408
725
812
477
952
220
516
967
855
598
186
911
687
981
967
49
879
473
681
694
575
959
211
618
822
11
891
427
725
488
432
81
42
750
43
416
195
659
35
797
79
748
847
228
398
705
699
689
34
984
146
739
958
33
780
180
878
706
177
344
890
453
476
946
856
789
241
531
933
424
443
37
855
34
104
313
249
540
273
403
469
72
133
516
330
392
516
838
115
97
181
301
940
729
197
606
276
548
339
394
977
168
731
634
26
765
957
942
604
105
602
549
230
83
978
522
40
206
529
355
48
927
220
471
575
81
196
972
788
932
939
55
43
698
647
340
170
606
784
480
419
780
465
373
44
104
566
215
322
928
79
78
99
224
735
242
260
834
89
824
282
296
34
171
262
987
714
870
360
543
213
572
391
903
221
904
329
14
898
506
783
943
341
534
210
830
96
758
108
223
356
189
614
627
796
143
766
888
324
356
327
599
838
260
693
946
294
94
765
402
341
245
345
651
239
862
921
715
874
807
750
892
815
410
956
586
88
368
556
191
449
795
858
929
545
893
143
926
504
418
278
252
380
519
775
428
903
39
797
231
546
792
763
497
776
839
969
5
449
972
342
573
267
475
489
224
855
862
525
293
541
114
132
455
516
688
354
340
389
671
46
572
955
734
631
440
56
21
513
854
985
289
174
395
332
424
535
149
598
806
905
756
926
726
908
1000
595
882
320
8
931
774
787
562
237
868
891
46
150
502
649
301
419
539
894
895
958
989
508
493
95
830
497
699
400
85
94
595
910
270
506
677
81
920
971
322
72
551
208
393
36
517
395
456
728
17
69
166
474
647
739
763
1
226
514
719
301
432
25
687
537
627
314
508
926
612
981
432
921
297
323
815
689
92
219
240
444
586
575
163
632
436
476
608
501
767
656
616
701
105
188
138
621
549
765
79
489
932
288
417
382
643
937
255
524
523
935
718
809
688
256
110
703
528
651
440
146
892
190
467
950
809
604
751
970
826
104
228
121
309
324
445
920
112
533
668
638
729
752
282
836
373
223
301
554
967
92
547
564
896
479
910
771
537
626
312
755
897
864
493
195
973
51
856
918
628
416
638
980
172
580
66
98
153
861
193
987
417
287
122
681
961
587
989
802
145
520
436
979
514
584
127
156
916
380
465
398
174
326
978
529
974
896
42
571
444
674
623
901
249
799
790
285
405
35
716
188
10
17
117
29
801
258
640
427
627
753
647
684
144
38
87
199
480
177
562
813
867
637
473
595
947
318
13
492
375
7
509
118
109
722
193
604
656
280
167
975
14
53
785
654
595
647
272
652
802
393
257
804
560
984
166
835
375
204
804
79
54
652
853
452
417
744
497
609
621
733
16
133
526
502
201
924
20
689
475
64
913
340
607
533
904
434
531
841
640
959
986
854
339
201
554
407
545
57
993
308
637
625
826
388
72
297
832
23
747
268
191
221
50
797
530
79
571
576
430
680
666
741
394
550
405
866
525
619
739
887
434
534
880
555
837
940
690
441
880
826
596
930
970
969
837
557
251
46
204
540
867
804
140
597
661
905
826
375
847
648
162
29
492
457
201
694
627
72
253
808
447
101
813
406
346
570
561
811
866
733
494
605
361
653
602
768
664
788
286
255
631
949
617
147
924
208
666
877
398
521
33
413
348
414
997
951
101
696
90
919
908
694
387
287
999
314
736
190
281
274
139
819
238
685
452
299
481
489
414
212
807
634
173
388
508
59
212
542
350
926
845
164
53
883
22
910
528
934
469
808
910
734
960
327
377
693
315
468
350
503
951
595
159
213
473
623
360
760
454
163
304
28
862
522
975
657
721
314
839
226
710
14
980
808
84
113
835
972
581
664
274
535
245
151
618
335
893
231
292
164
351
988
863
468
538
462
183
228
785
229
394
794
632
267
112
805
346
403
817
709
572
107
344
184
551
159
531
296
67
103
815
971
107
168
167
612
285
520
647
650
818
442
296
766
729
183
534
208
428
872
32
101
38
39
600
231
155
6
480
473
832
631
165
508
469
716
119
860
362
649
839
291
551
397
561
79
70
549
113
482
25
356
886
387
867
708
643
333
365
795
690
759
203
23
505
423
791
517
738
39
382
263
887
481
149
417
559
725
90
748
428
412
211
506
919
454
426
273
476
81
882
902
188
440
317
346
643
856
90
760
192
999
478
242
97
638
950
788
237
719
373
570
349
810
577
980
350
731
219
137
13
491
635
708
73
328
72
728
14
812
447
748
977
41
719
874
278
311
559
356
899
901
549
283
621
574
327
399
935
458
843
333
129
83
449
950
90
20
651
785
9
349
887
305
304
63
817
207
897
297
49
478
354
974
266
459
642
640
227
841
691
843
321
475
181
924
349
87
601
609
653
28
10
116
922
654
206
434
88
266
804
433
12
878
965
50
183
104
106
729
890
957
647
450
151
308
366
243
546
160
53
104
269
979
143
135
243
391
114
295
758
548
134
639
821
62
236
826
536
483
595
196
328
842
792
855
844
878
58
353
623
718
869
309
892
609
511
404
963
710
169
907
557
745
779
240
868
977
454
959
766
789
280
548
662
366
208
754
991
992
46
386
926
130
433
983
759
941
114
190
743
457
254
156
984
710
682
567
837
692
415
999
575
181
888
859
860
139
913
788
869
379
41
243
858
151
732
384
722
836
817
977
797
225
107
745
912
874
617
241
738
56
396
699
453
857
759
580
337
728
587
13
347
818
550
895
393
239
729
204
342
356
615
715
643
792
829
527
718
472
829
505
554
551
946
536
386
222
224
789
256
622
13
667
59
34
662
375
325
818
558
64
711
145
919
777
337
515
845
359
31
446
33
822
661
283
120
829
934
245
414
856
834
173
402
760
379
260
328
679
401
229
9
381
918
331
189
65
643
687
141
611
923
696
827
672
297
448
171
654
770
688
282
229
846
143
240
710
573
370
707
863
448
761
564
563
948
347
972
656
540
977
672
632
209
91
393
274
296
460
498
50
482
578
363
231
617
597
472
214
789
703
826
238
529
314
253
398
136
823
656
581
344
311
2
204
202
259
806
441
914
755
149
982
880
128
181
891
557
554
285
564
560
695
177
426
628
878
533
202
257
921
885
426
943
986
331
714
660
906
348
827
818
811
354
62
911
733
744
759
716
122
91
323
304
754
422
690
830
887
476
153
752
536
440
844
473
523
795
301
657
201
41
637
908
660
750
911
60
774
122
131
45
379
582
137
530
388
997
232
751
520
614
898
925
746
3
842
242
216
691
362
445
246
457
18
837
300
611
16
233
792
118
181
549
257
867
367
297
889
407
563
868
824
260
454
749
456
368
602
875
28
759
245
538
57
708
105
388
287
986
556
679
248
201
54
676
95
803
140
848
823
357
694
231
213
732
683
461
77
444
215
191
290
64
635
644
743
399
510
314
91
889
323
923
1
830
223
79
281
30
712
120
157
67
535
31
257
431
286
699
348
37
397
886
532
858
540
351
852
362
981
234
117
908
57
699
241
171
542
762
589
161
968
66
736
914
637
12
11
719
834
126
363
455
116
906
245
281
396
879
80
236
539
658
132
741
647
656
665
2
577
235
906
635
683
273
287
783
138
548
896
204
499
168
332
14
183
380
554
551
46
664
998
947
597
230
372
106
501
158
839
326
774
424
858
384
497
196
227
9
956
726
518
206
897
815
701
151
969
770
223
554
152
248
121
61
765
477
585
417
880
918
88
276
359
828
376
310
682
375
102
659
524
318
740
719
131
11
4
20
886
130
744
185
484
728
332
945
553
61
720
662
855
558
579
35
844
656
806
785
597
747
288
455
343
968
859
689
20
662
966
537
313
661
101
280
138
132
205
488
992
597
531
290
592
717
450
664
741
433
189
163
23
322
886
779
715
633
926
910
115
183
197
49
580
362
437
32
649
689
689
509
324
758
494
750
437
955
823
610
16
167
283
597
344
636
846
392
283
822
268
609
849
429
338
380
851
879
169
319
108
813
475
855
895
135
122
523
36
588
744
478
283
66
189
112
153
440
804
682
443
60
694
38
881
456
506
503
892
365
628
861
692
163
862
385
775
233
5
251
378
20
274
529
836
394
992
824
426
595
147
620
293
866
67
399
922
176
731
69
461
874
161
360
432
696
960
161
197
805
495
872
161
393
464
762
830
377
333
573
72
611
780
503
567
974
234
292
965
432
768
33
572
266
142
618
771
862
114
673
470
755
795
63
876
114
242
323
85
700
708
497
590
718
696
136
822
201
236
690
109
428
398
932
133
917
665
549
765
508
969
458
581
137
303
242
310
969
790
860
583
601
57
550
401
722
373
678
987
796
405
765
18
901
588
929
484
36
701
213
293
858
495
4
528
534
912
332
309
970
243
845
920
843
415
593
830
164
559
943
336
799
197
338
529
236
365
107
957
721
496
296
240
581
502
821
625
131
575
409
124
127
150
37
255
167
474
455
675
179
403
208
724
386
388
605
891
689
337
192
644
429
37
27
255
820
357
238
663
629
368
126
981
50
715
226
762
741
679
504
67
778
545
789
980
352
701
523
638
712
618
704
434
466
220
391
54
66
274
44
818
152
310
924
941
334
933
290
606
635
847
949
480
645
899
510
118
328
160
258
841
929
385
517
47
597
830
596
109
107
21
673
210
716
86
294
334
100
797
494
526
305
333
314
398
853
349
769
195
338
788
392
581
110
283
1000
645
383
542
184
332
40
498
831
876
187
76
635
104
539
351
878
649
674
291
345
178
939
506
92
827
822
619
977
37
655
460
840
953
164
764
275
34
670
700
424
996
481
955
71
374
55
128
339
354
75
894
567
760
516
897
800
590
147
789
818
316
196
227
403
786
398
308
657
979
285
486
739
226
26
985
739
804
546
479
620
611
587
637
861
849
884
421
265
726
991
925
595
113
980
597
451
429
976
403
155
232
696
351
733
200
374
929
682
816
447
101
39
959
939
610
147
949
630
545
666
571
112
897
353
762
503
518
972
620
981
871
88
506
439
998
966
910
960
428
943
869
570
79
79
617
342
819
633
358
424
877
481
58
300
500
902
673
983
550
110
592
318
592
265
76
462
700
196
663
298
42
568
767
955
313
98
1
633
558
80
927
48
299
693
109
444
890
454
544
418
812
334
80
556
295
883
590
2
787
339
456
29
566
97
363
273
467
362
631
859
936
918
267
204
764
717
596
43
855
662
637
106
455
851
312
43
111
106
211
847
726
675
172
112
19
106
821
865
682
892
242
834
773
748
827
836
304
302
754
431
445
306
126
297
371
254
883
307
792
374
759
984
807
957
824
597
911
828
116
855
90
560
446
786
255
42
138
215
307
726
157
812
574
363
905
530
212
41
18
996
354
922
73
420
35
384
123
877
690
800
630
273
346
55
655
220
881
616
329
174
180
732
104
299
498
726
609
429
162
69
550
180
562
11
613
352
974
341
224
352
797
775
471
7
895
307
430
220
578
821
658
59
576
302
702
787
862
26
424
633
297
720
504
362
11
782
760
48
495
706
97
707
889
913
78
74
885
785
757
99
617
651
180
853
79
340
720
875
503
880
850
109
958
168
838
561
278
872
919
136
966
37
516
223
778
956
528
953
376
229
837
982
535
863
952
704
397
937
200
42
740
857
487
966
502
236
653
508
809
857
694
122
935
505
575
470
835
699
998
133
514
360
351
630
985
50
77
715
729
520
444
310
84
571
343
771
804
637
946
2
331
220
956
186
761
235
340
294
803
725
164
646
840
230
761
437
566
985
955
686
45
509
470
199
756
277
682
26
406
928
954
783
431
181
106
613
176
481
186
687
610
527
437
136
260
606
883
178
35
665
178
358
379
589
717
827
689
191
50
17
269
727
26
10
422
319
66
427
797
774
571
698
481
379
848
852
200
866
627
811
850
682
327
432
954
617
462
111
500
475
21
269
522
913
258
548
775
494
653
581
876
988
926
240
450
836
424
752
599
349
510
199
184
546
709
776
36
982
425
537
315
93
383
375
462
549
886
555
152
550
616
289
311
1
391
229
379
203
374
651
193
222
181
416
197
236
615
615
643
686
835
3
950
484
372
51
958
517
584
668
999
783
707
114
791
679
528
341
140
535
863
608
724
97
67
714
737
28
85
412
222
497
453
335
845
936
381
746
562
142
227
868
155
236
647
968
740
768
117
911
919
703
22
928
900
332
795
349
376
140
317
399
268
743
293
243
525
22
598
947
797
318
249
896
581
683
360
924
644
746
349
353
540
85
575
31
327
520
835
830
975
826
747
795
933
995
399
462
576
135
210
426
689
383
710
949
545
136
190
43
590
873
187
114
637
898
814
140
578
534
906
875
240
926
54
830
393
840
614
733
791
654
7
339
410
317
227
639
970
929
993
526
609
865
442
697
570
322
539
618
607
638
71
184
413
166
339
667
44
124
83
368
104
231
32
612
804
928
360
424
823
666
806
117
745
448
19
906
908
322
642
81
141
182
752
698
536
77
87
644
762
302
194
704
255
53
611
318
465
136
54
983
50
239
211
425
398
549
630
651
622
72
371
778
787
494
148
285
226
701
845
369
753
249
614
8
646
352
119
571
886
109
678
514
247
65
74
835
843
752
145
417
414
682
570
758
820
337
28
929
848
575
601
328
916
899
276
125
997
988
438
276
97
594
884
261
105
980
752
711
53
431
97
683
988
67
268
132
394
464
316
51
616
210
490
947
247
799
426
968
227
920
50
708
843
67
241
262
515
749
360
949
43
115
135
487
696
603
15
61
856
152
526
694
515
129
859
735
141
181
510
150
404
287
797
623
808
64
31
420
543
702
727
24
4
184
415
543
598
39
39
636
965
295
259
533
155
644
664
481
936
566
88
100
379
231
643
864
190
791
283
629
108
895
808
657
83
265
4
40
985
27
920
19
328
284
219
529
250
425
913
367
60
570
785
223
144
950
227
85
168
804
712
903
105
5
702
642
915
622
717
819
971
888
330
548
928
540
218
470
625
295
749
405
463
678
676
315
35
908
841
753
402
283
562
417
42
192
712
806
47
338
436
341
24
619
947
785
766
421
527
270
923
531
828
784
766
654
633
428
323
324
653
421
252
807
354
683
422
309
253
847
565
85
750
655
649
836
851
464
431
394
77
619
176
921
511
253
70
670
235
342
75
144
253
213
779
218
491
202
323
694
237
740
46
553
889
456
513
318
496
88
732
143
541
21
889
519
751
32
551
749
433
263
39
404
449
980
107
333
269
783
997
465
356
479
231
746
205
699
891
449
420
729
277
952
983
688
181
657
341
255
483
925
258
406
461
423
838
546
619
776
534
373
741
408
644
804
730
355
296
757
744
513
128
236
372
597
50
151
499
133
288
400
510
520
531
954
52
120
905
628
408
584
514
403
21
767
907
132
328
673
301
911
922
825
95
916
512
801
181
190
475
57
828
911
382
933
677
916
423
35
553
294
635
946
187
671
765
329
961
158
471
900
166
426
30
509
969
884
212
673
210
770
55
418
51
363
405
930
200
991
448
375
222
553
983
266
794
816
813
645
809
113
512
198
745
399
233
342
209
741
471
190
499
172
812
627
714
913
95
17
706
310
972
137
651
191
710
909
47
245
876
463
648
267
815
205
900
674
680
585
847
624
248
933
291
175
297
319
161
111
398
890
464
516
389
40
556
796
750
35
97
713
493
888
391
873
830
149
538
221
204
830
107
454
280
177
313
465
638
939
273
358
488
674
515
900
220
86
157
926
800
530
116
30
980
500
348
848
533
95
995
219
691
316
829
530
440
356
660
706
629
470
17
44
711
488
15
724
979
523
530
800
662
827
626
783
353
266
980
190
160
978
494
186
379
626
551
234
321
489
526
292
234
246
369
757
598
873
752
762
506
944
900
525
689
54
443
837
682
676
584
919
740
796
372
287
696
244
282
288
339
978
979
285
755
722
378
592
204
465
215
537
365
311
82
353
333
697
433
513
87
336
579
103
873
680
885
573
354
725
754
132
895
672
114
713
928
271
857
454
58
152
261
720
992
456
1
799
966
22
799
491
146
117
849
650
341
87
812
539
517
129
882
204
2
413
272
923
20
12
656
561
727
266
589
443
913
655
510
91
84
755
69
185
406
518
72
84
705
179
246
851
297
15
790
72
270
614
319
205
988
787
19
542
274
741
928
19
760
493
153
108
968
180
305
250
364
378
887
801
154
167
227
524
49
712
574
525
877
669
837
191
239
596
854
910
927
87
774
805
112
718
253
45
407
738
93
552
613
218
737
772
582
981
24
710
991
523
559
285
10
72
218
189
577
582
843
617
938
995
729
739
785
429
473
671
441
958
961
119
518
336
293
165
655
401
793
467
847
662
205
945
273
358
788
52
317
376
695
736
128
785
218
187
550
198
870
479
643
881
976
739
952
675
643
543
91
105
620
478
835
630
108
203
426
638
372
142
538
177
276
544
632
557
644
596
94
233
833
340
122
361
849
255
330
424
413
818
95
572
267
850
913
813
737
182
299
12
387
679
601
272
536
606
969
160
117
790
910
213
780
543
114
474
155
107
635
247
880
646
265
152
177
128
519
532
732
888
685
169
371
393
178
778
276
493
247
492
299
834
576
173
926
331
848
522
868
201
971
464
897
766
839
398
198
34
956
706
304
562
499
7
803
979
2
220
971
398
839
162
684
256
292
716
52
462
591
895
213
88
559
935
289
719
470
976
11
759
767
295
362
263
642
386
384
920
4
587
741
202
612
997
683
37
639
227
958
518
544
715
585
888
951
999
530
93
640
132
531
840
962
421
754
278
251
120
987
151
817
10
70
97
930
543
426
236
82
676
482
903
451
57
758
892
610
262
746
629
49
490
506
649
639
510
682
764
757
463
859
561
168
971
101
340
310
375
805
274
894
775
240
95
706
373
133
181
474
102
304
113
703
630
147
816
997
758
406
527
374
452
383
236
325
406
402
457
196
508
845
434
822
944
986
825
201
315
306
915
20
666
576
775
381
139
395
701
550
247
501
194
324
319
190
167
321
400
551
685
144
733
931
288
175
405
565
823
422
259
138
633
879
511
304
401
708
778
887
854
792
89
970
175
987
130
631
583
368
551
936
969
922
630
215
124
694
294
638
432
133
65
656
708
495
283
517
322
548
839
292
418
304
479
689
752
717
194
224
961
334
94
948
182
740
316
329
770
769
414
97
392
684
746
788
147
807
805
588
81
752
715
807
920
443
586
896
759
592
75
529
441
385
316
638
670
574
208
13
437
819
260
762
714
792
144
648
451
463
791
962
85
559
871
318
946
5
479
374
864
712
80
40
968
387
727
977
151
410
607
235
897
508
547
597
811
404
552
282
984
536
621
511
741
124
429
321
753
286
694
632
399
846
759
424
77
136
578
377
758
613
213
314
168
272
417
289
461
546
79
604
424
553
741
651
645
365
293
153
941
387
362
111
722
490
68
712
266
319
547
799
949
767
93
689
887
718
494
193
33
669
54
234
424
298
944
82
415
780
438
526
69
169
751
416
703
829
176
756
901
907
606
456
159
27
163
9
512
865
438
130
92
131
138
754
892
980
35
624
462
973
34
562
757
779
59
181
363
703
335
945
942
102
709
200
167
281
615
615
514
550
866
503
371
155
124
513
574
22
721
977
913
911
772
273
391
422
68
95
130
136
225
11
578
171
468
397
678
909
284
670
433
243
985
717
598
917
944
489
114
452
419
539
346
962
80
875
512
88
551
620
887
766
410
829
12
132
663
308
477
430
200
502
315
563
414
290
283
251
578
642
532
73
527
490
990
391
280
860
463
542
170
885
91
692
802
635
850
562
888
899
392
994
116
573
69
64
82
428
103
108
60
757
738
882
779
599
612
675
27
380
894
420
752
772
823
245
293
335
750
111
601
326
58
862
182
199
533
828
362
877
826
52
28
434
416
688
218
150
383
592
861
423
229
944
861
80
523
642
527
265
517
964
74
946
940
576
218
591
264
155
472
795
506
490
607
102
466
112
600
10
106
157
872
626
958
503
999
455
883
754
368
386
155
989
274
32
810
75
572
914
841
713
135
456
913
733
491
328
387
860
691
580
916
912
972
278
484
277
692
843
939
762
573
189
648
934
447
503
949
291
302
852
85
916
249
472
12
403
745
481
726
584
805
545
527
935
804
744
649
427
625
559
498
595
666
5
292
901
714
215
418
80
625
635
44
430
194
103
354
621
445
967
87
530
445
72
76
67
282
72
378
650
322
75
929
133
638
397
491
981
567
5
262
887
482
992
676
305
444
14
390
953
472
505
661
72
903
694
213
274
124
977
253
507
327
661
578
73
464
323
715
355
766
567
877
358
636
55
874
387
557
671
768
757
702
689
341
580
461
581
804
484
952
42
621
316
359
407
331
791
853
114
217
290
750
436
243
551
259
789
204
569
13
917
313
641
946
647
146
133
569
435
550
956
820
988
240
107
599
649
49
830
278
419
195
816
363
807
949
623
781
542
162
39
878
234
57
157
43
718
970
418
576
96
149
963
602
948
196
396
997
825
794
430
509
602
483
141
558
372
209
677
495
491
850
32
57
918
84
248
78
674
491
195
947
638
765
251
723
11
757
512
31
852
593
186
634
937
167
609
750
35
577
878
763
591
762
91
122
982
586
584
601
114
990
159
769
281
156
604
193
803
136
422
950
441
55
542
1
780
566
371
532
706
734
586
942
113
981
269
445
358
23
944
256
831
222
884
107
19
636
433
36
532
445
941
948
537
684
22
768
580
973
654
895
300
425
849
167
877
155
383
52
180
65
965
466
942
352
453
990
759
648
948
996
851
175
584
34
370
253
534
818
108
645
801
840
238
715
620
10
817
228
238
817
776
211
55
234
715
141
443
239
18
253
229
621
190
937
637
846
977
86
238
457
549
154
231
885
732
81
411
854
856
244
693
696
654
912
379
59
7
635
428
546
148
974
797
788
194
386
390
506
724
918
347
101
883
375
159
836
782
737
873
255
851
212
28
634
796
64
559
377
106
825
725
452
383
310
121
231
694
805
953
981
968
213
618
501
66
666
561
282
235
775
583
589
623
786
386
276
940
240
135
475
725
666
888
494
999
90
353
37
415
677
381
334
11
664
434
391
140
155
863
202
693
781
291
230
725
523
752
544
748
86
704
548
217
58
735
593
679
478
239
475
866
652
261
470
901
743
489
366
549
724
325
852
182
936
96
617
225
863
658
485
222
966
415
879
535
840
936
810
849
493
942
207
702
515
183
150
965
376
674
466
854
842
122
900
917
806
815
411
548
642
632
589
639
788
232
14
272
735
210
594
135
976
582
710
326
34
796
495
744
136
245
370
210
89
442
666
420
701
479
876
42
410
186
248
926
407
487
383
127
491
448
276
281
69
475
418
441
204
114
446
569
404
149
288
862
413
816
58
190
97
644
678
138
530
693
382
967
874
759
844
47
796
471
199
353
230
443
803
499
902
565
590
858
311
428
636
412
903
800
184
566
133
945
46
685
922
382
469
527
361
980
858
927
591
687
32
776
463
399
418
927
35
884
13
140
602
982
817
616
842
1
907
118
287
586
791
222
497
435
734
181
283
10
240
552
573
26
605
220
450
854
167
198
220
459
43
23
369
574
51
374
814
622
693
644
336
350
587
843
867
618
841
384
557
168
779
855
953
267
363
482
218
961
695
51
80
269
712
96
461
932
694
80
840
797
663
924
655
746
785
925
874
944
599
720
675
528
100
696
852
977
167
272
722
584
129
82
376
585
90
14
655
112
327
688
696
636
440
382
799
786
424
136
787
603
244
486
422
318
409
561
509
742
66
406
789
728
847
933
738
985
950
791
941
196
91
136
343
632
139
544
429
846
458
301
124
655
70
832
754
823
998
387
475
451
166
159
860
211
794
375
935
945
68
361
151
422
258
427
335
291
171
774
865
966
840
35
316
349
615
837
141
842
890
209
531
438
602
94
336
11
545
383
578
593
792
608
988
769
760
466
548
400
409
327
642
952
589
728
749
492
91
150
113
388
464
220
622
824
722
666
911
534
50
588
769
46
460
614
418
58
159
696
627
180
921
587
959
865
103
718
190
138
817
644
469
215
454
507
285
11
228
894
575
392
72
703
326
14
196
153
731
941
660
977
508
257
925
929
532
306
454
317
622
611
205
550
80
583
710
516
175
964
769
651
696
472
920
972
450
557
587
197
616
576
791
319
73
376
653
80
144
966
147
934
793
788
187
578
285
529
30
927
667
454
153
706
171
11
144
794
718
37
984
349
999
979
181
147
501
260
860
622
739
923
863
861
597
522
238
818
392
398
488
824
129
625
723
972
475
789
271
908
338
176
670
598
7
446
85
786
798
648
539
42
695
25
448
942
47
986
671
411
425
640
566
957
378
409
994
617
84
313
858
591
569
693
553
865
841
10
273
694
599
34
592
409
157
803
206
820
734
943
466
483
944
295
241
309
224
465
119
947
632
395
896
700
34
395
200
223
634
672
617
929
700
626
691
185
648
416
178
446
386
608
287
301
383
162
373
180
717
513
58
722
449
534
618
471
714
514
34
551
444
284
356
13
194
617
847
754
872
284
859
658
289
497
890
724
132
242
787
42
34
268
827
608
15
136
262
159
605
241
290
38
297
530
633
120
324
52
565
323
846
608
203
20
155
387
886
306
878
503
682
149
327
775
149
596
595
43
37
407
391
810
159
718
494
159
975
54
164
72
933
377
889
92
407
170
88
483
743
514
448
367
208
276
729
768
401
359
576
160
133
810
307
83
903
877
257
381
55
773
794
619
266
241
445
503
668
276
333
903
954
571
292
489
617
337
903
179
432
222
418
620
289
685
629
674
13
241
33
444
200
952
672
135
758
619
384
331
168
865
268
584
915
36
205
311
440
9
430
426
222
94
227
484
755
870
907
100
698
17
338
480
291
987
53
463
957
874
521
883
721
409
654
768
806
336
733
192
512
502
259
37
241
742
982
935
869
210
226
106
683
412
364
307
624
816
297
210
298
421
97
54
847
247
198
758
627
209
873
494
455
773
212
835
864
348
691
262
367
787
759
783
903
124
560
821
656
203
16
168
905
493
135
147
773
58
37
671
899
677
118
591
68
460
643
981
925
886
245
668
109
250
260
342
456
69
763
756
794
300
517
886
258
399
711
541
432
672
581
330
37
357
587
47
321
578
274
962
533
305
623
993
279
227
250
419
249
335
546
262
720
579
327
682
110
925
497
907
465
930
966
808
460
42
661
726
189
984
641
13
893
334
430
245
320
560
519
19
354
283
58
510
129
344
467
669
417
690
857
268
91
729
984
3
235
816
577
549
430
236
485
376
127
596
345
62
433
650
274
251
158
995
596
166
695
89
642
881
492
380
228
498
375
964
70
810
997
518
338
475
718
24
936
934
364
117
978
112
582
967
3
606
123
801
835
744
371
219
264
730
322
898
704
917
395
832
584
14
251
474
469
53
640
936
881
676
202
85
430
852
88
16
993
737
79
684
921
155
344
136
209
261
723
727
185
960
770
245
514
526
907
840
710
502
115
150
293
354
58
365
538
463
282
453
764
231
686
793
61
111
581
160
731
160
316
453
130
282
666
337
131
829
313
132
862
673
996
792
172
345
922
521
919
208
525
725
199
201
852
924
825
633
244
109
619
640
674
324
101
996
940
900
934
279
359
587
823
289
341
733
241
754
173
632
718
254
268
857
158
920
948
366
308
7
475
769
593
973
298
43
834
233
934
459
180
149
271
381
361
147
650
798
555
443
681
278
871
666
767
456
599
991
176
895
766
753
955
566
342
871
445
424
774
49
494
403
913
782
102
371
955
681
983
702
40
637
402
655
665
549
165
73
145
814
244
834
257
191
443
181
109
974
516
239
880
338
168
45
817
513
500
532
489
57
87
644
506
624
37
77
671
950
327
664
622
620
804
392
44
955
35
81
836
180
737
683
148
658
255
656
397
613
260
401
56
448
228
254
551
686
84
566
157
90
234
325
958
205
3
74
591
5
963
46
741
503
942
275
874
136
356
722
670
194
45
182
674
460
2
180
48
607
18
815
23
928
976
988
580
69
635
651
965
621
350
615
955
960
502
792
291
749
650
186
701
188
878
12
977
448
503
973
841
479
606
171
916
616
274
688
966
379
492
590
606
932
453
284
332
439
798
620
557
5
50
735
370
235
336
442
341
448
429
257
242
57
948
825
515
637
812
975
751
570
881
789
24
490
963
295
41
289
121
420
952
763
538
959
383
151
688
578
684
171
982
61
89
311
206
652
434
515
575
107
548
992
804
584
329
985
440
234
495
437
489
838
897
225
625
732
641
602
293
121
1
939
472
732
658
460
49
648
460
156
891
671
77
414
871
768
254
686
536
774
945
772
614
253
907
733
31
832
677
629
270
860
499
799
565
947
739
367
180
416
188
404
681
16
302
898
427
73
586
825
676
780
65
155
636
418
751
299
320
772
362
659
513
748
409
49
86
789
417
415
437
129
133
77
119
604
457
248
598
614
318
320
35
881
788
906
814
474
715
63
660
185
232
290
748
948
147
779
553
239
798
576
708
650
411
747
540
910
870
499
908
772
554
388
404
228
114
406
859
761
42
365
567
105
733
20
441
737
325
766
468
240
912
231
151
521
301
149
892
429
344
540
803
800
151
167
871
561
571
588
703
321
174
182
788
808
843
460
548
289
571
550
540
921
174
940
384
833
609
386
906
250
73
669
810
732
809
967
820
532
283
907
676
950
885
834
286
314
8
529
654
613
860
595
600
624
173
734
903
630
303
741
353
844
776
307
812
374
606
99
843
909
545
616
577
322
175
865
740
137
829
322
889
995
210
278
387
722
691
645
64
47
816
283
168
715
536
13
372
220
613
873
233
934
928
903
690
993
160
451
432
278
825
575
78
623
519
932
684
872
826
179
757
364
566
556
15
359
550
735
743
551
536
87
844
189
294
931
161
278
853
393
433
270
182
983
218
674
189
561
879
39
263
412
269
975
814
449
730
579
773
868
170
121
758
705
868
169
269
604
866
704
281
79
300
5
601
672
985
900
319
438
724
689
879
587
100
697
248
23
171
915
319
661
803
42
352
967
269
187
913
96
561
667
638
341
983
726
709
502
646
94
217
573
484
433
751
51
281
953
782
920
399
41
109
945
171
559
316
87
281
659
905
728
673
114
796
615
372
620
110
944
885
887
878
738
256
785
697
835
219
45
780
543
297
895
798
573
317
588
847
708
963
705
156
188
961
249
144
38
674
5
26
37
946
149
669
398
397
517
53
700
869
728
855
832
434
794
230
985
892
263
280
280
921
370
258
151
8
909
758
207
514
462
594
844
131
170
102
2
423
975
645
368
652
525
459
888
11
653
574
358
804
764
972
88
406
643
71
460
92
752
178
161
844
619
676
573
45
952
971
860
130
140
381
531
555
396
362
144
100
599
638
389
680
493
582
163
298
877
647
578
233
895
736
750
562
316
118
911
305
713
156
394
757
688
861
828
623
22
522
295
894
924
47
778
198
860
134
175
687
177
410
451
244
704
436
193
601
319
892
821
108
735
413
899
381
509
976
639
895
298
48
58
211
770
189
323
785
915
235
237
727
826
625
762
80
431
31
717
240
580
514
330
471
112
65
31
382
271
930
980
218
329
248
322
539
2
878
723
821
94
164
540
715
716
580
546
532
43
425
416
240
603
777
936
710
716
311
487
606
849
857
42
205
332
333
145
95
568
943
709
86
858
342
907
332
556
648
11
127
186
460
233
953
65
588
489
358
281
35
729
757
418
573
52
457
235
885
378
106
373
961
213
644
791
171
406
777
982
70
583
457
514
229
73
678
154
21
285
915
14
990
666
540
560
440
95
331
695
393
959
477
291
727
676
276
99
516
70
531
683
439
246
873
808
384
147
946
655
476
279
367
7
199
94
659
712
131
833
411
68
444
648
857
178
987
79
763
500
676
113
804
412
792
45
368
994
582
697
677
68
44
698
595
494
818
119
747
946
632
363
604
305
166
962
718
362
404
471
825
953
173
745
752
468
50
733
431
784
81
660
4
8
945
207
67
133
79
882
838
153
915
950
582
10
986
77
478
517
537
487
986
844
924
313
986
985
130
381
700
661
646
421
719
998
764
630
659
77
228
433
954
740
692
424
769
252
845
189
312
768
278
262
621
905
459
352
323
1000
888
555
850
776
166
214
252
81
610
315
722
588
145
936
916
994
580
82
151
497
60
515
439
774
288
343
293
377
270
366
204
9
962
620
504
243
709
149
954
63
485
210
604
156
656
236
531
983
300
190
935
399
727
245
97
20
122
57
552
543
441
428
315
399
365
871
315
895
785
12
882
57
603
962
161
9
610
764
695
830
663
510
798
550
738
393
340
14
804
243
867
663
813
386
624
515
631
722
562
787
107
480
565
698
298
37
642
661
43
354
541
271
850
65
942
452
472
805
845
169
334
175
523
464
372
848
57
913
653
624
278
671
408
960
652
6
584
937
167
599
78
164
425
780
265
493
537
933
337
785
501
709
628
271
27
29
279
274
378
100
265
66
386
352
978
975
219
630
544
326
313
767
798
565
592
175
842
301
730
899
663
238
140
182
454
47
596
505
42
690
448
307
21
678
937
868
825
745
412
433
682
684
337
326
522
870
153
853
741
384
461
562
733
892
653
569
773
731
706
2
962
161
416
357
403
903
658
825
65
954
245
378
758
438
973
867
575
399
51
731
419
916
123
503
105
703
443
908
807
462
486
377
669
970
578
473
637
18
434
962
768
915
114
46
800
715
192
421
670
28
424
854
417
905
157
144
257
948
129
710
86
399
447
136
619
580
13
583
728
102
1000
87
49
165
389
449
463
727
66
957
13
979
554
887
931
383
149
405
687
790
644
261
416
839
379
348
815
148
19
541
878
664
712
149
521
400
60
219
918
290
215
915
151
398
941
322
708
944
740
313
661
784
907
475
449
162
644
279
563
746
595
165
1
553
102
809
908
771
781
849
884
994
380
555
871
8
101
24
201
692
702
150
141
83
573
25
334
414
237
657
321
135
770
894
989
402
989
869
66
473
422
198
264
624
843
805
458
591
879
860
964
205
394
552
957
986
71
90
90
561
755
905
44
770
87
299
299
657
196
46
627
994
636
389
328
616
410
454
183
994
955
530
477
92
203
454
686
921
441
971
753
297
962
14
967
836
720
358
378
587
295
260
890
657
495
871
237
456
673
914
667
616
859
365
510
373
317
992
53
428
239
524
740
488
630
543
745
731
183
201
638
770
918
125
42
412
711
349
126
55
292
924
428
164
636
683
737
931
861
77
596
317
31
611
601
43
944
385
516
683
358
309
800
146
346
384
75
919
866
729
766
43
106
780
309
215
751
732
3
4
273
949
779
994
1000
719
578
126
320
441
409
880
14
529
910
219
957
200
396
303
10
594
130
718
213
82
541
471
666
251
189
122
803
467
683
816
87
830
691
556
130
650
617
348
337
427
263
651
253
333
398
167
526
452
762
350
882
231
222
4
353
760
395
699
54
852
611
856
399
857
743
655
159
779
195
415
229
978
351
418
343
608
12
919
894
456
414
620
377
738
403
365
34
805
625
457
737
231
339
223
217
687
534
682
709
672
275
813
886
471
438
74
807
34
631
3
699
296
606
930
265
863
942
191
355
664
95
173
249
848
479
938
997
618
723
556
922
474
288
631
472
433
560
883
279
21
471
868
910
879
507
168
352
345
88
426
943
163
665
517
590
667
478
979
50
29
858
221
40
368
235
317
366
561
746
121
476
315
239
383
456
412
807
226
838
757
431
220
379
447
250
163
496
515
859
911
38
269
110
142
934
243
718
853
528
572
407
360
867
399
767
212
650
63
598
395
75
551
886
258
844
49
192
190
954
129
566
35
688
430
111
278
730
223
651
657
680
582
509
765
308
387
331
265
153
104
164
988
332
423
851
722
194
559
724
494
827
255
857
371
254
478
255
883
27
166
724
816
619
574
209
374
225
475
1
52
462
366
554
495
831
744
817
95
978
825
197
706
586
332
411
302
553
668
737
723
668
139
224
388
103
591
734
354
353
979
830
893
199
876
575
281
800
294
125
704
235
493
942
188
524
402
371
631
795
20
710
28
957
643
222
686
10
584
760
910
557
910
736
615
486
193
79
774
139
656
649
592
643
151
40
725
268
894
278
874
970
31
679
869
63
999
690
700
759
177
212
152
898
898
311
73
411
669
456
949
28
478
631
325
281
190
438
878
304
264
201
901
384
576
165
733
247
55
987
189
464
707
143
562
765
681
677
939
312
244
889
557
583
361
115
940
494
751
496
627
526
989
961
537
616
2
471
386
198
286
818
417
536
407
988
263
295
924
564
450
401
982
920
891
946
999
110
960
472
621
738
592
758
286
625
476
725
902
474
794
55
270
299
873
550
247
523
703
464
124
398
193
57
873
330
736
921
104
853
3
839
800
661
109
157
482
172
956
7
398
161
243
847
503
904
644
105
772
960
367
546
191
54
786
675
70
381
589
358
280
274
636
21
940
103
980
63
211
929
32
619
275
628
677
107
709
346
698
58
613
254
106
222
720
213
721
119
437
201
122
84
483
238
939
118
524
437
871
478
711
887
333
492
132
875
988
446
570
287
515
829
486
314
581
666
785
41
441
633
438
935
2
982
48
654
908
46
516
124
361
945
278
773
461
716
459
678
426
994
112
196
812
882
350
561
819
642
678
690
680
206
824
590
336
782
795
852
761
39
590
148
360
357
240
412
882
769
19
708
188
12
480
154
446
513
745
694
21
737
144
513
185
540
366
776
1
971
197
809
134
418
781
594
660
954
797
435
366
688
409
782
825
765
335
266
30
505
957
574
856
511
249
447
958
490
188
620
807
131
238
824
594
955
451
69
417
951
708
24
315
442
651
577
695
445
909
886
137
722
642
790
891
458
51
702
695
509
50
206
76
1
988
522
882
822
283
61
148
325
233
260
9
548
732
680
510
239
581
319
490
543
823
292
893
510
909
958
432
936
896
208
94
578
191
310
517
561
166
793
305
838
751
325
732
842
686
65
845
81
776
218
302
307
752
364
676
588
530
851
630
579
301
884
914
496
970
824
293
597
250
806
431
178
36
799
45
841
671
382
192
687
272
51
905
30
321
212
537
902
776
942
406
139
850
356
987
335
350
964
72
488
509
48
170
105
516
961
406
187
725
271
219
324
607
137
195
381
616
571
335
393
391
78
847
46
545
849
181
391
47
657
20
727
65
583
875
745
771
349
102
736
943
936
419
225
444
861
719
224
964
130
197
966
888
437
985
601
951
532
538
372
327
183
654
610
133
59
911
63
452
881
511
127
831
94
775
764
510
477
512
611
545
566
740
811
446
294
14
736
397
15
327
855
641
362
686
176
938
793
908
222
258
978
168
605
705
430
550
675
778
92
973
622
145
540
754
678
619
792
456
628
825
99
125
755
806
211
225
504
181
853
573
210
457
950
39
523
691
112
690
996
927
438
68
833
772
710
377
625
592
778
747
367
880
375
65
519
35
356
267
432
974
849
579
912
722
756
974
395
964
775
596
758
394
530
532
484
945
768
725
80
542
891
150
557
328
134
763
891
254
532
219
817
894
279
52
208
416
732
935
818
503
834
874
311
146
181
1000
306
298
575
898
673
963
272
504
973
586
556
717
469
223
584
319
372
163
590
833
196
208
209
119
507
78
261
489
731
479
133
328
426
524
443
218
146
628
675
884
932
456
421
465
124
54
952
349
343
895
171
801
257
339
464
744
940
906
914
547
979
435
692
214
541
790
21
974
556
542
407
652
378
944
105
540
418
784
651
381
210
750
287
719
998
519
440
99
76
620
297
878
221
545
71
753
963
959
74
407
413
120
713
724
537
803
915
253
668
90
972
250
9
788
695
263
175
419
255
890
874
687
342
30
35
384
336
170
729
277
608
743
83
873
146
789
952
788
749
296
961
616
484
837
462
573
212
813
262
290
158
691
681
333
591
725
10
975
953
128
459
665
695
820
712
639
757
972
245
148
657
647
579
101
999
408
165
771
943
291
121
798
32
310
280
82
527
19
308
817
140
940
103
263
807
483
412
166
87
887
973
844
359
414
660
438
878
772
371
421
416
31
605
13
224
206
418
925
342
516
325
554
307
141
401
536
867
4
241
328
52
291
370
497
830
207
142
86
523
844
474
805
428
286
586
878
159
287
224
749
262
295
367
107
762
876
874
562
79
662
622
198
472
400
666
850
631
720
202
38
16
23
590
986
877
292
406
87
402
588
410
922
256
283
305
966
55
529
42
1
291
48
157
603
474
901
187
470
960
291
274
786
571
530
927
287
348
528
735
392
477
11
753
103
305
394
26
214
480
918
420
459
194
900
705
290
785
496
149
963
43
489
213
18
648
464
956
730
29
199
291
687
699
561
291
688
258
916
140
949
230
575
702
782
73
330
155
317
244
548
600
659
696
154
206
110
59
956
172
453
787
490
196
383
281
147
546
152
141
421
85
501
518
545
25
639
233
875
242
92
328
472
28
113
58
342
239
671
290
340
769
36
144
372
209
495
318
855
655
718
371
246
744
452
792
391
331
621
907
764
241
720
506
286
336
651
907
494
779
151
308
244
234
39
286
957
424
489
88
752
257
957
836
530
462
198
237
218
860
652
76
201
131
211
366
234
866
937
570
839
547
3
147
401
297
30
970
262
563
484
690
900
419
304
283
768
480
798
201
423
817
346
887
309
903
626
270
824
279
704
186
767
125
513
479
592
660
559
860
482
366
188
975
610
794
886
859
489
76
41
671
641
450
149
665
900
338
163
463
335
78
915
589
187
722
689
453
651
565
582
252
969
92
304
557
945
147
179
235
156
892
548
421
315
236
196
384
181
856
280
938
461
999
47
982
312
212
347
65
790
818
484
991
701
348
790
520
272
302
126
212
591
603
575
984
26
213
609
623
962
546
129
937
153
564
217
127
545
435
964
806
496
643
663
977
827
403
261
249
166
718
295
721
323
693
173
611
270
769
134
933
626
543
418
874
975
3
589
218
984
821
521
576
38
952
376
475
807
922
946
452
33
452
913
219
789
773
414
733
162
564
529
61
532
263
649
78
994
432
697
819
228
626
105
761
788
84
642
482
716
539
81
589
27
349
631
104
949
134
623
128
142
564
710
569
462
213
291
773
19
788
956
422
613
182
64
479
464
476
803
554
865
717
989
800
748
118
591
188
170
958
351
184
759
35
916
580
952
446
116
368
594
845
960
377
145
227
582
15
630
911
933
658
16
719
138
950
190
366
80
213
35
201
362
171
721
363
419
451
162
88
848
275
145
400
525
113
531
865
92
277
212
676
860
591
981
155
30
326
735
962
631
32
40
746
987
164
195
411
411
824
489
480
903
223
263
207
873
26
615
89
443
875
692
638
7
941
800
63
921
131
641
247
736
208
1
942
319
1
627
965
397
634
879
181
48
548
108
529
670
309
612
960
391
433
881
265
8
384
425
865
700
877
75
276
37
437
517
330
443
415
285
324
998
977
183
328
650
215
653
435
554
664
446
122
967
737
693
858
488
310
668
243
755
71
889
259
108
992
758
918
868
93
312
332
474
440
111
849
500
434
151
326
994
138
637
58
647
927
319
322
53
415
531
562
465
39
310
438
723
595
899
470
445
821
384
495
613
785
818
567
90
213
719
661
596
226
439
678
498
667
480
261
920
793
606
229
892
716
584
353
972
415
951
525
401
611
320
402
224
817
599
360
716
515
224
896
919
617
760
798
998
897
876
703
833
23
246
5
653
860
477
223
403
929
87
384
848
565
499
144
929
105
460
961
137
789
896
273
141
629
596
168
449
796
850
403
618
919
164
814
140
209
467
203
844
440
711
887
864
325
921
873
983
870
358
957
189
952
659
968
998
163
658
207
769
736
451
315
476
727
686
287
427
23
971
483
822
533
861
291
125
884
856
274
524
461
940
394
122
493
947
823
548
921
849
401
216
346
760
79
430
999
346
995
781
556
359
293
318
665
503
633
496
727
48
525
170
166
12
471
835
606
441
40
169
915
551
57
860
4
56
802
468
634
321
252
801
780
6
253
353
830
206
963
820
741
403
636
608
110
907
401
793
321
407
650
868
741
587
304
768
421
570
782
354
533
970
185
565
906
693
880
640
789
130
573
838
686
823
98
847
635
830
542
650
355
794
556
610
773
817
48
125
775
774
641
414
446
200
998
485
861
906
690
249
438
489
795
996
55
885
520
670
80
756
732
756
869
293
876
437
472
824
582
763
566
98
909
595
696
284
287
183
356
215
896
163
917
339
542
737
384
307
322
138
921
212
534
689
46
165
442
245
567
200
343
341
328
888
892
667
522
579
74
811
722
473
650
750
328
86
54
40
923
868
339
691
64
839
383
794
529
865
921
29
901
462
507
782
109
165
243
883
938
205
887
73
573
628
138
474
36
594
532
299
603
70
930
515
671
140
738
156
213
336
745
488
748
49
97
577
616
39
544
324
553
236
805
160
158
845
62
197
744
125
390
991
311
615
599
326
723
819
869
706
374
61
954
89
40
890
438
672
267
903
374
632
640
361
565
621
564
596
169
719
735
744
807
685
20
143
854
456
912
540
8
696
832
790
445
676
926
700
441
725
11
733
895
693
653
84
976
951
890
319
459
1
657
69
172
710
898
223
907
181
711
113
440
527
279
750
914
126
142
949
753
571
839
579
744
299
857
580
414
81
374
251
65
936
727
396
698
950
898
92
343
928
928
483
464
832
340
972
760
658
510
935
481
177
932
314
898
873
623
344
403
371
352
49
226
364
418
369
998
65
88
145
289
671
333
729
811
760
689
521
217
28
764
613
184
199
356
464
465
771
210
59
597
532
940
671
463
585
420
494
742
745
217
796
789
689
463
414
461
412
580
767
849
997
33
647
750
2
513
446
86
244
762
975
251
55
983
781
695
978
301
278
465
717
172
560
369
890
81
758
190
245
782
92
32
305
477
160
293
297
927
777
579
107
549
31
728
719
769
723
392
610
262
839
669
158
594
286
316
173
965
978
221
503
325
309
24
518
807
972
299
354
752
899
3
846
118
22
103
315
962
404
513
223
511
881
428
767
194
839
408
239
344
699
478
80
986
353
202
593
300
356
529
184
73
387
899
222
325
956
6
982
840
525
896
37
242
807
133
927
715
149
273
115
477
280
178
610
744
877
535
684
130
902
230
84
496
378
12
706
44
285
212
312
740
769
251
199
528
165
442
749
699
565
754
656
80
33
522
383
273
246
33
194
556
689
531
631
830
873
518
104
271
467
378
205
256
137
589
611
287
774
163
753
584
349
390
270
234
283
158
651
650
675
842
626
667
71
686
830
563
190
473
509
440
772
879
806
689
899
458
97
953
230
923
804
996
49
319
694
2
133
972
491
520
425
185
804
420
736
211
217
79
486
848
575
694
689
958
362
12
335
480
977
583
573
933
968
709
310
252
916
230
239
418
426
437
44
445
946
603
650
479
339
788
701
459
481
334
837
107
646
723
655
999
614
690
217
899
779
46
721
816
974
815
95
517
853
209
94
975
208
997
76
196
193
958
351
515
582
853
60
153
3
44
558
382
161
416
575
494
806
672
674
646
772
714
953
611
701
279
593
956
11
106
356
645
51
934
421
486
453
303
454
14
617
196
925
692
880
398
799
424
21
38
273
996
601
456
253
292
370
489
322
132
276
755
541
488
226
437
396
499
489
535
735
461
614
869
509
56
987
29
710
247
131
635
723
878
415
241
979
593
714
124
334
641
605
426
386
481
168
645
13
744
965
968
660
864
147
136
396
389
620
232
89
244
422
718
513
540
255
811
903
313
422
343
46
136
516
866
162
520
420
519
597
160
70
925
712
996
979
436
244
268
870
107
60
886
259
662
721
506
714
884
189
385
942
924
686
710
463
734
623
249
385
510
123
897
930
80
876
152
817
141
471
492
952
972
619
578
403
135
661
464
867
903
194
74
186
425
782
465
157
667
161
929
712
756
822
710
348
134
401
21
422
760
570
681
5
128
77
554
354
641
445
716
945
787
855
478
394
569
853
378
982
879
268
629
49
217
866
243
850
177
411
148
732
811
347
268
164
673
572
971
452
172
432
642
314
309
971
83
390
144
661
929
694
495
209
766
581
874
351
890
379
803
634
28
987
14
352
188
6
506
67
822
33
329
363
582
540
7
807
631
404
729
597
564
491
726
268
349
998
254
225
931
18
26
976
424
581
841
740
191
823
936
944
878
614
716
384
867
241
403
874
477
844
658
441
49
201
86
781
445
620
553
619
598
204
313
90
133
984
837
476
505
573
263
52
281
290
949
130
572
929
157
366
534
58
674
57
277
815
4
868
301
356
131
307
649
709
912
316
937
466
42
163
799
34
272
224
868
457
745
564
101
924
995
684
293
90
650
984
955
384
190
169
674
584
919
329
902
735
815
165
737
546
782
961
217
278
223
353
527
825
256
739
919
165
621
711
767
878
276
391
272
530
589
176
747
708
259
157
914
466
135
512
60
660
380
690
179
421
997
862
142
874
590
472
289
136
57
552
613
792
824
869
901
763
873
958
745
907
52
909
442
522
675
94
96
56
833
509
418
348
712
938
25
553
724
577
391
660
407
917
262
286
801
407
584
838
720
922
969
946
221
430
397
648
19
362
343
210
360
596
896
882
828
678
345
85
846
404
381
179
420
303
222
816
317
40
508
864
479
600
835
438
475
807
919
510
318
148
468
656
418
506
442
267
388
148
421
139
479
257
203
220
443
554
768
940
636
293
1
361
778
712
331
343
741
487
395
551
226
604
778
151
579
177
423
247
141
312
474
532
87
702
151
647
179
627
827
798
97
252
694
574
221
822
901
65
173
505
538
337
724
668
922
119
573
755
305
798
810
186
335
558
197
472
740
735
769
78
326
888
812
720
405
454
665
626
806
813
751
477
989
343
788
465
819
484
482
546
115
727
133
389
336
177
502
755
391
503
65
941
280
995
285
979
904
756
488
408
333
635
919
942
196
97
225
144
576
217
35
985
635
804
747
234
731
624
231
48
722
354
334
558
330
418
860
410
283
389
554
999
746
989
279
74
558
188
375
250
422
265
315
639
206
240
637
568
246
139
532
424
858
932
462
704
378
689
910
674
560
704
589
894
483
869
805
68
401
445
59
898
21
188
580
19
482
501
901
305
970
614
35
527
216
23
265
701
114
64
395
658
691
353
726
289
878
508
627
319
126
8
774
480
551
73
233
593
80
562
811
146
865
567
488
72
546
685
274
446
178
225
180
574
350
53
191
646
337
493
155
285
234
587
99
58
348
225
141
127
270
204
257
112
412
242
737
710
568
309
572
534
968
746
552
674
71
187
851
640
148
165
570
468
873
633
6
589
567
122
159
864
658
658
200
644
419
370
24
8
337
666
752
805
930
377
678
339
983
483
916
105
894
978
655
585
632
849
111
703
835
310
866
356
730
634
434
664
406
635
577
652
812
105
103
817
358
6
82
462
161
308
613
350
62
415
973
422
586
75
141
112
768
366
151
629
241
366
949
552
826
323
513
245
714
452
598
719
295
173
229
493
175
164
274
509
904
396
678
11
429
754
310
796
138
451
883
361
547
688
342
565
977
241
363
714
104
174
973
374
684
6
86
451
603
943
503
337
451
791
648
626
117
473
813
609
393
372
296
787
939
526
436
665
699
38
279
34
46
315
375
168
831
843
207
162
395
31
725
87
624
49
544
456
846
822
757
577
811
677
719
843
543
954
739
554
848
804
746
982
816
655
459
149
305
643
561
949
362
935
477
108
122
293
676
892
263
444
117
257
753
855
617
480
969
84
164
722
420
84
317
39
539
899
437
639
455
54
15
617
230
668
646
541
194
672
62
504
706
452
237
908
856
838
343
76
197
128
765
660
832
32
751
863
974
927
651
352
415
875
505
895
79
929
789
260
138
284
72
424
307
151
298
236
98
596
797
715
829
417
347
509
136
28
643
17
2
93
965
410
66
78
522
903
891
50
131
122
999
526
900
718
239
976
418
334
556
650
63
818
631
419
999
838
243
249
865
67
428
236
571
705
940
569
32
248
768
563
618
359
748
47
174
695
604
707
778
482
438
851
143
921
620
921
647
68
628
991
39
535
330
647
3
77
779
224
23
220
244
576
417
474
286
919
236
175
912
542
895
646
981
422
329
794
318
667
793
560
986
140
785
707
167
825
730
713
195
808
331
679
905
179
284
260
747
611
153
668
654
510
32
29
87
610
69
262
296
393
379
818
829
84
394
680
46
418
569
161
387
899
505
693
600
166
439
867
716
678
262
165
356
350
11
935
715
629
738
216
23
848
587
605
356
566
537
536
621
841
947
391
87
338
749
53
953
221
597
512
225
741
65
731
509
58
721
732
59
488
897
991
805
825
849
499
948
709
109
13
886
374
498
8
194
468
888
471
700
714
399
935
302
580
752
876
258
930
258
673
816
282
870
614
739
390
586
692
961
839
213
308
906
971
614
573
114
138
332
83
735
26
615
440
723
883
834
890
578
345
938
683
521
456
824
111
962
351
5
746
951
123
942
203
217
233
900
672
124
51
484
597
182
382
275
142
887
386
803
385
145
749
837
817
385
893
937
76
48
677
267
987
226
533
991
716
131
315
547
439
240
89
115
125
619
230
991
478
728
597
310
635
669
374
865
563
338
673
887
660
720
976
495
839
555
982
242
197
849
727
208
151
209
854
538
191
927
362
795
66
101
478
574
48
796
965
509
929
194
131
949
349
125
789
175
768
898
612
550
417
151
275
841
664
513
893
522
733
957
358
632
904
124
533
823
739
244
898
888
392
907
985
521
176
88
93
231
294
783
917
345
280
974
261
377
381
788
126
738
282
639
259
884
758
571
735
869
135
505
640
655
518
216
368
483
441
716
302
721
916
261
783
429
376
808
978
963
258
424
208
434
905
535
501
480
979
907
27
719
676
202
632
354
590
385
681
8
752
126
682
543
271
427
924
405
328
583
598
235
1000
580
984
166
517
906
308
321
712
508
165
1000
343
564
483
513
14
331
280
69
457
568
815
571
545
721
638
841
578
52
345
457
515
605
245
610
944
905
929
87
174
230
925
363
262
903
386
980
82
380
379
326
173
599
376
671
889
908
705
348
287
474
515
916
337
785
682
850
267
894
89
527
712
940
162
351
189
306
553
834
12
171
282
652
43
495
763
335
32
816
748
199
540
84
8
257
248
117
193
618
850
858
809
861
258
346
490
130
970
768
842
187
494
156
810
21
350
53
400
162
650
878
272
385
334
971
474
36
318
489
340
644
500
282
302
410
792
418
990
607
186
198
305
666
889
634
567
623
235
758
595
322
475
285
688
475
629
391
881
386
229
435
403
400
635
383
575
596
250
656
540
470
500
467
145
927
226
260
384
136
60
718
228
376
64
303
942
751
297
897
360
803
988
573
816
964
659
108
576
558
827
930
136
498
272
497
86
651
608
338
399
782
793
897
43
218
412
8
899
290
707
714
593
145
91
979
787
135
67
44
421
859
885
739
504
741
273
293
724
538
838
397
352
203
709
972
740
194
28
504
764
59
252
874
487
398
812
666
673
977
735
650
252
486
75
882
502
145
980
983
813
942
771
1
276
191
683
913
35
501
775
827
610
504
235
564
659
649
367
298
637
756
475
912
12
13
355
41
255
277
595
521
690
844
505
816
131
321
895
376
323
694
180
751
33
955
491
147
30
503
616
99
627
552
650
501
619
657
912
515
520
425
250
948
236
352
609
252
434
507
987
493
550
145
245
107
39
222
730
810
980
728
300
998
155
475
28
355
351
515
206
388
439
419
832
74
623
679
213
97
622
471
97
921
552
54
114
738
119
745
494
868
761
577
189
71
433
434
353
492
421
957
293
19
729
394
154
287
683
185
537
557
73
724
493
273
207
632
566
477
43
695
307
456
289
939
938
702
707
784
860
774
101
493
920
89
682
219
144
960
56
499
700
57
620
345
650
616
796
237
428
729
703
587
784
503
471
942
150
838
763
664
863
774
937
564
260
785
94
854
927
647
547
52
305
829
681
366
27
144
265
797
366
691
58
858
483
920
855
679
62
421
615
317
442
62
753
867
693
794
600
349
323
457
787
945
918
794
897
583
263
830
726
130
323
341
793
424
492
42
818
616
949
944
777
574
82
340
538
522
499
723
656
725
420
135
169
942
667
471
564
715
920
836
175
152
72
340
43
75
401
103
770
4
493
720
838
322
750
337
798
481
5
961
841
425
135
461
227
780
155
306
887
702
43
618
714
81
398
810
38
644
841
878
23
506
294
67
906
926
189
720
650
805
338
684
476
935
658
265
395
528
100
858
63
900
442
956
159
579
252
812
777
19
762
908
107
300
38
842
253
419
821
90
515
10
781
569
648
417
62
701
30
288
732
422
479
634
370
374
737
90
981
804
514
95
257
561
979
91
571
410
410
793
73
498
747
906
707
752
701
166
646
929
928
553
947
579
842
108
659
110
250
989
835
46
562
60
18
573
212
242
442
820
736
443
69
935
901
888
778
683
227
975
555
288
337
426
28
846
268
741
837
973
353
102
556
266
820
995
813
266
688
376
87
946
105
901
9
669
87
44
503
121
259
464
68
912
294
814
952
727
446
591
618
736
286
325
763
730
295
920
770
388
671
450
439
250
723
847
347
166
100
761
910
204
546
828
999
534
542
890
874
246
758
687
44
582
611
483
128
147
217
868
816
853
753
872
277
856
923
286
805
697
55
195
65
905
849
142
526
719
746
544
924
321
355
49
144
88
645
827
170
303
237
616
920
942
722
325
252
286
811
810
279
444
623
146
658
475
415
505
907
90
711
1
380
851
890
644
419
730
251
123
945
691
845
921
294
118
285
821
512
258
874
92
469
59
173
438
672
342
829
407
774
39
113
45
162
791
382
477
50
29
621
926
250
376
116
855
239
816
449
442
619
859
962
145
808
844
478
419
13
390
422
697
635
553
409
956
467
745
590
882
263
875
749
66
388
3
460
219
99
903
240
1
832
431
714
581
972
967
657
145
216
843
867
775
65
704
258
347
475
215
872
103
274
13
152
889
913
999
311
790
362
185
1
70
372
516
361
615
551
374
951
403
249
834
532
926
487
740
979
857
987
941
264
196
824
719
767
255
246
66
884
773
889
183
460
189
494
21
172
143
487
831
646
487
444
881
27
246
439
933
965
532
855
515
308
941
952
182
775
673
777
748
961
626
623
593
981
527
467
1000
347
846
104
382
47
541
508
894
443
639
680
282
424
528
892
813
14
682
110
501
112
895
754
641
34
117
242
30
278
306
159
533
85
321
101
646
44
137
668
922
307
425
564
985
319
110
310
271
856
514
767
719
945
848
561
462
692
783
861
729
231
402
818
516
909
362
802
377
96
214
542
176
236
494
398
446
37
699
936
243
706
466
172
738
532
888
112
945
348
31
542
515
878
557
832
712
829
716
345
764
954
356
249
514
867
712
972
853
133
799
878
255
590
857
513
850
394
161
416
111
468
28
227
539
965
880
794
671
672
771
160
646
370
235
717
294
371
231
416
864
91
557
485
196
648
738
641
6
630
958
995
350
57
497
661
838
731
154
351
9
796
393
608
896
460
178
985
552
317
121
616
182
389
698
396
470
231
895
900
171
23
285
96
120
678
332
464
390
395
784
254
543
536
998
286
55
647
856
745
965
230
227
42
753
747
180
835
825
38
779
310
64
104
935
825
962
834
584
724
361
941
64
909
564
116
40
158
380
612
782
294
625
506
42
597
742
802
687
203
305
28
969
175
427
258
839
852
32
120
563
778
638
406
454
753
34
730
161
398
713
932
342
421
968
487
155
837
388
915
706
428
811
145
546
647
719
842
962
414
515
523
378
935
373
413
498
675
305
258
246
613
84
294
130
863
231
573
573
496
528
572
643
135
408
950
834
125
378
932
558
596
616
544
789
895
461
587
504
954
179
570
977
414
721
165
243
552
573
265
463
279
394
127
775
988
293
105
804
343
9
78
754
185
423
945
641
147
266
850
85
394
978
24
560
217
5
715
707
440
263
824
864
859
113
660
105
891
312
6
914
17
518
355
438
961
172
62
692
412
250
934
775
500
635
724
597
278
553
822
234
900
727
175
547
445
719
252
876
803
481
363
946
393
606
264
410
263
173
837
536
727
977
646
733
585
499
893
995
608
476
867
55
89
758
916
988
887
389
763
708
815
759
315
497
970
662
779
240
543
745
453
830
189
99
5
330
289
736
130
460
624
430
428
336
866
649
146
593
698
444
117
572
270
321
449
351
474
776
746
302
782
800
171
389
338
833
132
119
436
554
777
525
933
75
153
964
396
20
333
41
21
411
776
841
108
590
288
980
327
610
739
156
104
382
636
683
732
197
573
261
326
697
763
649
810
245
611
760
61
227
295
440
675
287
573
960
41
522
323
569
415
68
670
110
247
695
709
901
436
462
124
973
299
632
767
858
901
685
481
13
191
51
383
826
166
823
105
830
771
650
157
864
442
169
333
122
736
516
147
908
565
884
661
436
567
306
314
421
577
322
900
697
883
330
386
528
271
519
856
733
345
442
315
971
265
876
715
490
705
112
438
84
931
658
13
721
163
952
750
703
421
109
562
680
443
564
806
882
849
216
55
803
941
84
170
983
953
302
818
997
472
167
568
702
541
747
734
920
872
157
208
743
624
802
518
625
195
132
549
772
582
206
305
233
83
554
505
294
335
540
287
242
198
922
739
306
942
908
893
728
863
938
409
860
614
896
527
831
470
530
756
943
380
949
190
295
47
985
434
50
950
126
696
136
163
990
357
851
282
972
326
740
896
906
74
757
389
178
101
539
593
795
147
516
479
859
7
376
510
94
385
63
878
507
902
278
189
211
93
523
873
91
600
198
511
503
863
81
865
213
453
545
852
768
683
852
223
9
155
673
750
324
482
110
809
360
418
556
377
400
863
412
226
950
65
467
453
36
467
761
453
776
490
397
650
295
41
375
373
424
69
26
820
574
19
865
289
318
178
656
327
793
382
313
817
465
233
130
915
75
8
463
338
899
679
496
669
447
93
56
114
148
660
133
20
952
523
619
506
416
785
444
783
979
366
115
456
483
160
877
403
345
611
863
457
312
234
996
158
583
821
198
721
310
681
492
666
476
939
239
767
409
591
80
526
219
608
468
800
376
278
878
57
133
507
757
177
484
600
854
335
581
633
124
360
900
306
971
627
370
292
721
311
69
28
716
122
222
942
375
250
419
106
322
591
344
729
556
659
45
891
839
232
333
321
516
442
531
959
852
969
892
601
966
446
629
340
43
350
593
109
252
975
33
993
963
143
44
356
566
699
738
516
77
474
907
375
7
280
710
594
897
970
757
413
169
466
497
863
639
572
152
212
26
66
601
13
97
58
79
286
606
852
804
337
901
927
682
247
614
289
635
651
682
717
724
315
466
818
809
627
774
81
480
872
471
400
399
361
775
855
637
334
783
414
480
950
116
21
345
475
928
903
904
321
989
700
540
57
526
594
35
845
836
906
857
215
953
435
221
639
304
251
485
211
130
84
743
689
953
162
237
793
466
293
486
847
548
200
166
390
477
455
190
810
266
629
880
713
447
350
360
72
956
80
420
98
227
827
368
176
438
144
530
602
551
826
83
344
96
319
981
985
103
90
422
929
450
367
207
561
222
152
945
608
62
423
459
835
862
102
642
986
739
796
580
223
994
675
210
860
704
651
578
347
346
396
633
234
410
336
43
747
896
507
218
893
892
73
648
695
279
559
225
825
306
181
468
125
549
551
82
392
667
239
867
938
931
70
974
139
281
611
57
806
874
773
961
705
490
509
938
93
323
818
426
162
319
236
324
327
53
312
469
541
844
873
217
9
265
28
230
215
624
511
698
262
919
184
283
980
119
617
222
747
341
808
811
306
74
177
891
213
716
437
730
243
809
86
633
253
106
388
226
543
946
515
462
636
385
27
229
393
738
733
149
710
125
787
673
612
24
23
562
350
512
747
12
748
291
441
598
775
421
142
732
311
814
207
896
126
584
881
194
479
449
338
7
301
70
698
696
725
422
386
557
858
458
574
621
460
787
105
274
973
175
461
644
497
356
610
394
63
131
776
11
655
54
36
283
25
22
211
209
889
180
783
2
848
895
500
628
349
51
359
515
728
6
503
164
62
264
488
263
879
881
977
175
573
769
306
611
972
831
805
548
645
680
196
79
220
505
800
242
567
130
428
536
680
969
297
23
707
920
69
968
102
24
103
705
43
613
680
568
248
855
415
138
46
174
972
953
150
88
832
739
944
175
346
728
779
515
315
905
31
54
14
159
708
58
751
274
234
771
162
541
926
151
517
135
512
281
625
678
826
712
20
575
125
123
465
395
982
355
96
613
467
910
340
832
85
991
25
421
645
534
771
81
779
840
752
341
356
912
735
991
315
360
898
363
30
667
324
685
954
406
374
293
73
313
360
589
9
545
842
825
824
653
614
952
925
856
56
363
598
627
934
499
807
735
176
176
162
694
694
3
46
211
76
840
865
693
630
772
746
4
84
998
73
521
55
996
766
366
367
919
201
516
705
803
679
40
341
552
193
60
542
763
969
648
615
444
386
203
658
22
125
164
863
458
450
38
407
683
500
123
661
349
933
992
638
324
854
171
214
443
722
832
27
973
873
412
678
707
689
652
485
557
410
804
112
909
121
335
175
866
38
693
391
456
307
966
849
489
37
195
137
142
663
112
872
808
594
913
541
227
982
382
889
256
310
898
823
248
291
317
578
718
950
758
969
348
188
107
651
488
106
681
207
275
512
319
288
201
834
144
917
392
83
867
553
655
423
986
345
821
975
535
478
87
467
864
730
312
7
762
890
928
549
537
935
829
955
655
768
75
538
80
400
998
414
909
307
645
503
778
406
488
802
220
473
511
654
323
931
96
972
885
988
580
504
524
967
12
468
410
695
125
300
649
866
556
497
466
141
896
103
943
478
840
523
240
857
338
466
387
263
707
427
657
720
877
421
294
459
152
594
403
160
223
621
371
999
451
747
495
633
975
793
951
841
333
15
558
232
250
998
367
340
86
121
199
68
543
71
913
443
273
602
218
621
547
511
197
143
14
426
80
918
388
331
387
530
94
456
724
114
599
705
106
286
71
742
960
10
232
808
638
972
185
480
797
456
502
75
559
655
523
285
788
107
942
546
627
438
520
284
533
444
386
789
44
350
548
510
905
5
210
14
77
631
101
451
952
868
309
668
967
549
576
84
814
255
993
8
995
947
791
367
12
901
175
787
470
494
623
773
715
701
566
400
237
342
803
751
684
204
856
314
363
249
497
694
715
750
296
319
371
854
569
946
938
243
554
440
491
895
102
437
346
741
678
183
387
369
372
836
936
277
487
1000
345
269
812
146
964
503
147
869
857
308
152
655
375
22
155
903
253
118
204
950
956
666
44
187
174
729
968
747
539
773
514
672
526
620
553
692
948
331
537
866
464
187
762
112
394
88
926
452
686
359
1000
721
764
175
933
238
21
904
898
963
543
41
217
480
894
986
826
695
962
829
382
522
380
71
562
928
757
1
876
653
160
416
869
362
890
5
747
979
624
32
399
680
693
729
799
328
787
603
938
783
140
975
503
718
887
29
190
153
521
96
289
876
779
982
595
486
497
16
88
775
492
810
259
456
974
935
194
251
576
822
564
630
272
955
488
808
978
894
276
263
173
253
347
944
716
362
805
608
959
571
603
4
808
633
170
986
558
492
963
405
402
65
906
790
626
591
290
430
661
871
657
309
78
748
227
664
501
396
421
364
399
278
72
744
697
664
414
887
264
265
723
284
551
9
474
363
822
994
154
247
79
872
59
89
652
42
630
553
676
325
517
104
333
577
432
914
171
919
842
796
466
583
332
887
438
376
885
751
127
567
296
940
199
586
18
42
387
584
280
569
361
486
792
518
595
827
16
908
162
456
300
272
170
852
562
726
175
751
66
959
886
419
970
510
415
178
452
587
725
541
515
642
115
30
272
480
179
491
552
712
362
383
756
173
559
143
414
872
274
701
4
940
109
451
413
469
741
601
969
897
766
431
238
833
842
306
843
727
888
238
499
184
580
789
296
971
580
313
1
978
219
422
331
295
760
258
788
9
74
475
104
167
247
180
253
772
253
703
404
79
693
617
333
873
164
812
973
241
27
40
67
342
217
428
274
362
566
77
513
795
106
71
406
223
656
571
168
259
20
629
466
900
280
631
934
683
140
823
135
895
190
958
287
954
167
129
95
270
987
154
820
465
618
915
927
650
687
455
625
225
519
75
530
983
323
998
229
582
668
316
401
614
757
935
272
103
176
116
316
961
1000
927
614
602
213
369
941
868
367
326
326
713
555
895
100
333
562
600
250
625
668
75
803
773
327
875
604
129
843
512
600
169
477
363
397
700
776
680
136
48
69
157
254
292
447
106
294
358
38
262
808
175
225
449
625
851
973
175
52
325
939
593
237
162
457
919
513
386
738
795
826
877
784
993
296
986
628
440
844
204
720
135
297
512
513
274
307
10
1000
426
496
882
280
867
127
465
240
509
347
564
145
117
441
291
188
974
497
363
534
625
952
383
680
601
608
873
967
943
606
486
310
313
342
764
93
838
626
229
611
586
602
674
272
603
48
202
553
558
94
229
432
697
384
770
706
393
203
163
152
242
313
449
916
578
725
889
230
971
329
821
135
832
762
236
502
212
776
615
863
255
794
465
753
97
343
506
241
310
231
474
796
168
1
898
719
834
571
850
726
325
51
679
266
861
182
605
260
567
195
394
670
149
325
173
210
923
582
845
299
307
161
716
139
542
983
355
348
172
110
137
139
480
870
907
285
924
535
749
386
542
484
347
499
755
341
943
123
423
487
770
433
452
92
931
279
232
170
499
163
870
190
501
823
852
653
3
709
134
7
526
645
333
313
71
998
728
785
456
391
350
538
576
216
14
406
983
880
568
33
649
150
938
865
241
9
41
824
80
602
711
373
657
163
300
421
4
57
707
837
374
406
964
222
167
775
475
461
671
801
525
745
798
818
720
992
40
172
891
133
734
817
854
998
116
970
182
430
94
990
337
92
348
47
307
953
372
478
630
922
206
733
336
869
757
388
567
95
54
248
927
465
618
118
405
183
128
298
660
679
807
798
89
711
803
478
115
301
785
412
28
815
794
950
384
476
675
258
49
487
575
721
239
278
694
403
297
947
207
59
594
392
645
283
226
466
208
780
463
587
531
720
724
158
400
481
828
306
291
689
848
903
43
536
925
657
758
20
469
691
754
816
424
727
60
948
14
504
535
425
364
848
351
113
620
526
123
366
656
967
923
317
231
254
122
35
853
202
582
525
979
869
240
500
680
957
669
631
179
92
513
891
835
139
430
277
978
59
522
697
931
170
609
744
359
165
722
945
864
420
692
898
479
781
824
370
21
453
860
213
280
166
885
104
184
922
580
830
286
281
860
884
161
770
431
667
250
254
550
814
45
399
275
990
398
745
965
875
965
874
514
501
364
170
999
741
394
440
372
559
231
675
40
796
717
538
378
442
580
340
952
449
975
204
849
20
425
579
940
631
371
700
278
826
583
867
848
807
155
245
641
47
685
775
169
946
767
791
171
976
179
452
646
306
293
86
139
793
669
103
162
284
885
606
884
808
138
718
579
52
986
382
7
300
31
503
907
493
368
831
554
190
683
338
16
344
980
217
693
982
625
240
405
651
300
116
445
496
620
803
69
854
313
140
851
818
294
952
960
394
631
703
394
174
456
966
912
351
87
530
30
22
85
292
141
83
457
187
380
125
124
673
362
633
238
775
702
860
315
829
434
766
858
927
947
413
908
762
250
823
673
623
682
524
388
293
964
729
372
830
479
468
452
779
152
650
727
356
970
351
324
580
109
923
402
269
931
920
371
155
586
204
657
514
499
27
120
389
691
37
721
816
670
577
11
954
197
183
395
188
274
802
824
247
605
906
469
397
142
162
708
800
350
322
62
587
979
168
100
210
45
854
586
898
502
266
791
403
587
429
291
963
870
499
675
760
172
489
776
290
155
447
887
979
906
603
633
582
351
47
669
464
482
618
961
647
122
717
472
997
843
845
434
723
91
404
163
638
557
479
820
180
326
256
291
333
64
94
631
582
701
609
981
115
76
232
520
611
697
670
212
419
448
623
914
397
4
85
544
154
92
24
366
360
551
805
907
356
185
241
905
392
829
54
982
231
852
236
579
295
770
99
749
754
745
731
509
374
318
749
251
480
375
112
27
302
432
341
689
496
872
840
161
285
543
676
160
599
748
224
179
474
301
377
194
75
444
578
507
366
405
534
536
505
404
29
559
681
99
300
291
224
468
866
71
448
59
783
648
60
912
838
615
314
272
467
760
647
18
160
503
471
19
739
646
790
381
447
839
14
962
125
723
605
251
907
62
902
960
704
519
429
472
114
455
982
13
510
855
461
502
114
368
112
632
643
250
756
894
732
493
286
291
574
99
596
873
546
836
522
919
279
376
140
1
722
726
48
401
353
856
740
604
516
304
320
362
512
24
198
633
986
864
395
202
518
884
546
982
505
876
501
801
961
302
684
270
154
41
114
322
554
223
322
257
391
571
334
427
443
794
777
239
996
467
380
677
587
983
878
444
795
498
553
400
501
213
462
987
852
770
345
462
295
849
881
639
866
436
300
952
225
399
136
766
796
346
84
500
145
104
390
757
804
107
522
905
564
389
607
296
560
34
563
734
246
486
242
813
871
9
835
420
48
536
118
600
761
459
751
695
142
807
65
184
207
343
230
905
278
798
548
986
804
862
992
51
515
138
184
715
288
881
554
874
921
491
911
926
585
403
762
451
5
521
855
965
20
27
577
951
972
168
649
389
745
794
114
179
418
215
125
242
778
18
43
977
892
250
209
690
217
756
81
31
784
785
667
353
526
405
796
518
622
818
666
324
971
59
102
269
844
78
495
448
583
21
957
152
151
669
793
350
373
587
264
197
232
302
500
142
407
953
213
813
680
249
583
841
999
180
78
443
1000
522
983
960
581
857
13
920
433
83
825
946
388
570
360
457
880
805
415
113
187
996
515
964
507
368
604
717
142
984
427
991
971
482
19
859
911
78
730
340
740
780
959
239
198
74
772
329
228
30
279
684
630
96
512
186
42
579
479
398
185
369
594
994
774
327
59
415
366
500
50
265
651
454
347
817
700
718
829
54
298
832
306
557
838
515
459
160
842
544
956
307
508
474
370
635
747
204
862
882
807
614
656
51
728
599
60
367
171
210
608
650
374
679
265
738
56
134
102
329
475
376
868
411
565
480
131
248
798
993
693
406
803
502
119
189
961
415
922
552
949
186
142
865
305
28
669
29
746
994
299
171
778
431
739
885
424
162
674
38
923
685
510
410
68
145
431
728
633
921
398
570
961
540
986
728
285
33
231
669
877
949
274
494
398
187
491
261
981
328
663
827
248
520
631
931
777
551
940
371
375
145
72
535
839
529
626
35
591
816
409
796
61
820
101
744
923
566
953
419
896
927
683
775
596
931
838
543
865
235
581
327
973
801
572
165
557
495
217
467
360
986
613
868
793
259
770
41
254
48
305
324
320
773
769
607
90
586
790
61
471
214
355
748
681
745
413
403
575
412
836
701
655
420
761
958
249
655
987
993
748
23
804
165
850
339
613
211
118
562
186
293
253
226
702
189
291
883
813
389
196
598
352
304
319
948
895
933
103
738
910
548
488
472
445
245
487
991
393
932
596
694
933
957
754
622
910
353
948
542
242
591
41
747
233
415
940
246
730
184
904
241
532
994
965
21
639
906
240
646
550
858
543
227
503
658
749
429
150
261
110
28
235
72
863
408
474
131
987
639
136
749
804
862
970
765
854
362
131
641
149
970
933
183
351
783
317
229
323
617
26
479
942
463
392
714
841
715
584
52
510
566
76
444
245
929
112
15
653
850
749
538
561
241
161
10
911
253
22
229
715
110
484
380
77
324
768
345
897
183
739
390
444
1000
55
62
259
228
856
525
707
390
820
191
110
95
320
263
673
222
202
262
18
140
175
736
335
396
763
296
170
756
799
185
802
721
591
870
540
372
824
870
22
45
295
305
566
254
260
990
942
172
275
401
569
262
167
389
872
918
125
539
292
264
889
17
448
196
832
657
513
236
644
825
505
63
248
522
72
902
787
361
767
740
967
622
993
743
697
800
381
102
783
184
801
214
517
632
394
883
943
195
267
921
706
168
598
717
482
895
383
415
606
846
432
32
103
33
24
794
766
208
396
82
693
933
278
278
961
313
20
567
680
170
93
589
425
181
749
778
568
69
15
324
780
660
232
545
861
318
490
289
790
343
225
616
828
383
493
857
592
547
463
937
109
764
180
804
760
587
674
393
773
869
619
330
829
62
31
556
986
643
308
232
424
32
7
303
914
268
431
932
621
748
406
711
647
370
158
565
882
911
570
382
833
83
660
361
903
825
373
69
500
993
292
16
908
598
268
941
404
701
710
297
417
782
915
387
693
142
815
957
138
748
982
299
871
539
609
252
276
818
849
428
884
940
224
224
318
962
470
99
469
766
964
391
32
513
174
892
133
99
209
797
236
632
66
600
650
442
983
199
424
530
782
178
904
190
982
144
186
1
337
945
819
301
715
520
724
500
601
747
442
197
747
715
900
107
429
605
493
406
139
213
893
372
256
723
131
994
455
372
120
549
675
430
109
15
539
850
501
875
142
179
563
876
436
369
178
575
737
87
504
99
693
122
851
570
618
556
35
380
819
977
633
902
787
387
962
910
471
519
555
431
335
921
349
122
176
979
712
734
198
884
705
290
859
652
999
258
834
566
104
701
10
644
654
813
975
767
536
824
220
575
902
625
303
13
530
25
6
788
530
721
850
276
926
391
581
290
957
425
805
844
745
150
337
566
258
856
932
181
278
611
984
868
8
4
172
119
613
717
960
223
302
411
819
64
694
44
270
769
502
104
441
896
875
149
478
441
398
772
149
572
896
2
170
267
519
641
753
684
277
206
35
289
177
759
764
165
143
912
532
555
107
329
895
861
815
258
567
599
674
438
990
754
267
252
173
561
56
805
11
112
755
959
727
739
165
247
729
888
658
342
891
155
829
255
12
776
421
89
935
409
528
865
912
665
678
545
271
146
735
972
127
721
910
981
194
670
139
314
477
722
795
27
596
882
529
174
149
54
14
248
951
113
326
68
568
455
269
962
50
57
99
666
562
574
704
715
621
417
422
189
531
751
943
207
358
369
360
125
442
781
281
624
41
461
529
566
335
444
89
800
967
957
727
842
403
89
4
819
825
490
758
377
198
231
953
202
225
160
543
698
273
337
328
989
323
660
695
384
513
317
272
966
924
711
705
651
394
153
149
863
88
893
701
42
6
496
792
759
273
415
169
713
32
544
27
953
509
224
696
595
126
332
352
977
560
898
782
775
542
548
650
713
45
117
315
22
523
835
976
819
727
705
369
853
940
851
598
203
127
233
194
871
65
826
512
37
410
590
86
735
194
920
199
540
391
832
465
416
619
634
99
938
874
909
766
282
359
673
714
39
418
370
680
426
848
738
597
843
290
345
914
453
780
231
469
505
720
905
629
449
405
701
90
311
797
415
262
239
201
371
782
982
964
420
69
893
264
89
988
545
809
220
848
832
32
706
706
134
340
26
269
217
897
707
992
802
48
368
195
773
878
267
353
333
793
738
690
58
343
723
911
912
299
794
320
550
912
898
719
566
149
77
1000
910
32
848
730
409
467
540
728
727
278
192
235
277
69
153
469
936
797
449
810
450
118
376
324
895
879
504
111
836
958
39
166
775
25
549
128
932
960
176
301
309
157
809
126
88
555
216
305
237
978
291
838
539
329
778
929
171
514
35
545
315
431
183
933
926
448
731
725
464
492
686
823
825
522
395
306
496
546
106
563
723
947
313
710
919
358
280
379
973
148
580
754
481
192
337
545
685
937
586
77
379
21
489
633
97
819
976
272
297
806
647
285
459
320
200
84
632
969
345
794
370
746
433
846
835
992
338
421
463
493
602
640
469
689
664
371
796
531
604
816
727
202
171
501
979
395
553
122
297
684
956
644
424
865
495
556
701
592
816
45
663
18
601
521
374
295
714
366
367
212
996
512
619
543
133
771
394
333
536
62
352
10
766
335
167
127
579
164
771
966
502
264
477
347
558
737
515
867
700
209
185
994
15
91
31
604
189
530
777
562
306
224
635
286
302
117
825
34
383
432
131
64
289
138
238
266
813
89
589
747
466
869
155
641
909
426
638
904
954
178
731
916
226
931
186
869
273
599
837
505
23
6
841
992
184
893
518
427
2
973
621
626
24
320
661
938
122
172
49
663
14
649
193
481
356
337
587
228
125
850
594
213
445
114
432
781
398
832
494
666
147
657
66
982
661
351
116
129
5
914
423
931
256
929
551
69
991
143
813
828
168
560
588
719
186
260
242
140
941
638
933
119
330
549
637
930
266
758
686
98
666
716
372
308
645
598
822
704
818
730
870
849
877
849
463
434
797
638
404
412
812
56
768
377
862
783
869
82
579
651
738
853
438
908
729
112
44
761
857
945
930
224
937
544
497
425
564
826
967
523
963
614
195
125
679
13
388
593
319
933
354
71
842
847
62
814
518
5
348
243
275
148
835
528
699
778
796
769
496
665
457
551
40
353
624
786
431
1
275
365
228
101
927
654
962
502
327
146
269
706
643
601
161
435
542
436
860
490
304
451
711
657
879
243
998
946
761
386
347
105
331
481
143
287
355
647
106
372
319
708
43
644
831
315
1000
346
379
5
970
324
999
292
483
662
607
310
993
279
551
310
642
572
253
373
102
651
251
847
570
451
861
403
751
325
547
746
808
997
443
974
274
395
856
634
647
795
821
181
711
898
154
469
980
531
628
969
693
562
803
144
882
362
863
130
972
675
771
131
490
810
228
253
277
946
699
510
942
19
131
816
388
940
936
725
106
897
272
472
371
826
655
629
189
656
568
96
951
19
121
944
217
163
789
543
691
287
77
207
295
874
260
951
612
457
520
730
378
273
187
955
89
436
39
977
486
780
247
364
700
897
834
481
410
879
968
283
965
444
306
166
678
763
785
794
258
224
587
599
303
278
939
92
812
581
194
735
788
975
36
601
210
290
515
186
412
647
463
888
959
320
721
22
816
429
257
527
613
675
452
552
851
386
516
612
950
578
144
62
7
945
478
5
944
561
918
823
147
243
329
528
496
282
505
303
809
153
243
982
359
978
642
866
909
251
835
766
609
501
181
730
281
263
972
523
231
956
542
943
339
57
425
521
49
882
271
180
990
319
205
249
387
249
14
436
866
771
132
705
988
758
533
384
53
955
348
781
550
897
473
341
128
857
768
978
234
959
223
804
69
735
145
125
422
678
172
547
55
645
834
276
278
66
101
420
651
294
971
825
666
455
193
713
208
330
554
174
605
282
59
905
661
142
426
223
884
366
953
414
876
16
575
920
578
821
505
232
126
958
336
463
930
473
52
42
959
33
787
42
249
483
286
496
600
937
384
763
162
153
454
924
137
693
460
606
681
881
47
265
306
645
83
695
472
495
818
313
521
156
538
581
996
400
144
513
883
643
871
695
978
903
581
940
253
107
295
45
442
958
482
600
523
160
885
750
336
312
378
750
197
416
640
252
787
480
863
923
900
204
355
209
368
21
247
506
805
561
510
355
669
56
749
771
960
683
509
55
29
526
952
222
890
293
447
898
728
559
639
407
803
708
644
775
771
979
706
965
418
137
324
872
32
572
789
987
980
382
270
482
36
273
62
149
610
915
153
35
382
270
243
589
349
956
849
592
341
559
431
126
974
984
598
506
942
62
553
932
289
870
385
82
862
574
49
445
77
714
240
913
161
90
346
645
308
175
195
544
719
484
815
848
72
947
306
845
513
802
947
579
856
829
657
416
457
644
282
996
228
151
299
618
321
566
956
737
760
305
935
484
613
470
388
61
433
280
211
370
420
575
877
587
594
59
878
80
159
551
667
490
465
982
700
717
769
879
271
795
85
86
334
755
913
327
648
920
361
216
704
676
837
604
301
347
29
913
123
984
688
15
892
745
475
103
205
289
142
383
685
795
775
694
823
14
872
151
104
416
458
764
499
196
968
907
350
90
932
329
370
448
701
666
15
178
970
472
9
823
250
69
724
901
257
29
977
854
608
850
291
156
246
471
34
79
197
272
344
644
11
991
593
306
925
492
652
279
653
754
6
407
969
931
100
625
476
871
920
793
926
426
632
835
824
314
739
347
153
764
609
78
144
418
424
587
755
213
959
423
630
925
589
762
748
692
180
99
158
593
649
740
491
807
835
52
295
254
643
930
552
378
406
940
605
961
11
772
488
299
992
628
847
590
785
671
698
656
715
634
257
529
470
708
407
456
692
332
303
71
3
179
416
988
126
590
365
128
482
835
515
370
581
615
393
332
90
551
445
747
749
682
690
884
656
339
198
842
4
998
277
46
99
859
902
179
779
273
47
602
159
903
481
214
622
716
225
136
47
893
959
405
806
394
259
466
374
64
732
694
723
682
399
475
373
608
165
518
492
350
539
191
584
946
316
529
469
72
43
263
113
853
539
866
833
785
297
207
863
296
770
121
629
341
860
991
213
303
291
87
57
834
52
380
328
439
449
239
700
857
560
287
880
720
409
415
266
35
579
102
902
337
910
373
260
989
417
273
689
903
652
753
968
405
669
748
646
148
998
341
484
489
30
511
973
460
173
607
807
661
359
250
49
951
951
743
957
417
838
25
930
367
287
491
223
864
384
629
259
508
283
559
778
221
207
425
346
751
711
283
63
485
65
584
393
656
148
965
596
528
351
647
646
639
789
719
98
450
249
25
283
779
550
971
576
451
206
368
781
740
678
203
392
866
271
35
180
866
44
303
265
175
897
899
241
325
23
476
893
426
959
777
737
76
136
364
340
347
405
173
7
646
282
36
161
232
119
252
62
347
285
124
224
828
240
453
876
17
638
94
534
686
291
485
525
950
556
369
206
16
39
104
918
667
386
192
628
489
210
286
801
385
746
48
946
56
765
286
964
938
23
594
529
482
924
844
884
922
128
311
874
19
601
849
128
612
596
744
768
812
265
800
659
53
563
985
644
395
429
169
745
610
599
181
915
410
928
306
559
976
978
613
556
499
830
163
971
633
612
151
224
743
419
325
991
539
758
63
704
900
705
799
489
909
697
391
825
812
188
34
284
820
792
949
624
713
633
952
353
706
74
28
827
357
735
434
837
151
193
576
214
911
739
259
226
714
218
707
284
261
978
106
934
412
111
137
284
249
968
629
820
14
997
933
408
174
915
827
447
389
329
710
247
544
358
519
389
660
284
698
145
430
694
342
501
673
343
873
109
77
291
787
805
887
866
758
100
180
199
87
474
126
234
200
585
441
790
992
114
441
810
145
823
494
709
3
184
315
461
81
672
855
147
613
624
573
876
722
76
886
25
633
118
180
859
71
71
357
296
896
237
878
416
691
461
68
814
241
116
892
282
800
177
419
159
56
330
956
426
578
589
596
429
315
595
952
336
910
619
674
749
823
211
318
515
101
910
792
322
132
669
508
153
150
645
654
405
834
382
22
492
570
816
749
422
651
425
325
884
7
176
437
85
955
263
963
848
421
114
652
662
35
937
739
758
220
518
850
294
108
767
893
13
490
399
602
122
654
797
573
964
85
876
839
100
173
594
138
872
552
213
753
453
824
146
846
722
872
31
622
155
405
546
941
785
496
431
954
830
173
929
495
264
629
768
151
543
699
648
338
795
663
461
616
449
208
121
809
576
766
1
635
1000
694
666
239
218
609
683
219
122
331
287
907
665
432
659
300
998
991
434
504
308
461
411
89
812
536
930
208
433
281
232
564
537
9
704
147
967
611
439
625
770
105
264
905
198
361
235
696
822
216
732
846
359
275
607
107
777
49
900
944
801
423
830
811
491
342
100
609
239
432
702
287
781
264
626
964
560
340
590
864
444
657
32
957
226
903
445
653
280
554
261
600
43
802
212
458
135
504
752
248
159
157
727
83
515
691
3
916
210
716
81
183
495
622
103
81
180
917
273
3
2
533
151
973
580
238
24
890
9
558
920
447
703
92
717
345
595
412
684
397
715
354
94
219
739
18
307
594
293
597
835
788
297
636
876
978
508
257
525
406
97
35
569
901
378
693
50
140
448
24
68
424
962
404
862
682
432
568
378
145
609
371
101
97
40
982
953
359
701
440
528
746
123
896
985
266
303
709
180
201
285
201
485
641
491
839
379
680
136
587
419
664
982
244
941
367
54
116
163
691
946
534
599
29
613
813
348
915
892
46
160
725
219
498
226
580
844
191
759
18
429
743
902
545
234
830
38
589
597
393
769
595
964
678
946
745
325
878
255
511
836
708
124
743
542
663
981
244
513
42
64
948
740
877
749
224
991
952
294
613
776
151
141
962
581
854
703
67
545
584
150
888
356
372
541
804
991
579
571
602
932
646
184
540
224
900
965
162
573
456
172
615
214
356
514
619
858
880
618
367
981
997
209
310
501
444
664
106
92
241
757
177
346
692
694
57
15
619
16
818
81
117
999
379
668
750
696
667
291
137
910
76
13
105
832
504
401
249
407
859
308
931
646
637
885
356
976
962
390
344
504
165
805
594
441
32
313
90
995
462
592
712
821
803
358
737
587
825
362
248
265
202
52
470
478
343
454
465
898
796
894
402
701
964
882
21
312
112
690
950
543
364
145
276
240
548
944
688
815
345
760
344
544
602
485
40
348
470
263
314
999
223
156
529
568
616
248
953
969
137
879
479
647
415
777
985
696
902
151
483
689
343
576
803
680
195
908
406
27
685
433
133
3
645
867
682
698
436
50
453
361
92
449
112
876
47
501
126
663
422
856
512
113
435
800
249
27
458
248
538
673
513
715
493
436
70
614
374
478
573
742
939
509
107
792
290
69
476
296
797
319
653
687
151
78
581
254
335
490
435
514
301
582
331
766
122
362
184
623
817
424
572
629
229
746
170
197
997
25
462
691
660
953
874
701
402
892
380
936
978
407
559
19
991
274
834
271
555
374
783
779
285
993
273
928
524
234
6
23
571
676
905
16
626
215
154
551
91
743
101
963
319
37
645
717
180
592
730
766
408
53
108
842
160
465
891
515
863
903
976
852
890
80
123
743
981
735
52
705
247
670
355
455
82
882
453
967
847
545
539
705
712
158
25
775
375
811
949
123
608
713
386
600
250
598
643
326
352
747
49
110
532
344
807
699
783
251
118
130
444
354
116
474
792
454
848
506
68
147
111
98
364
377
843
149
854
315
247
451
363
289
115
544
199
819
225
422
714
692
271
924
990
671
680
607
846
869
931
397
362
34
464
667
43
224
971
729
666
164
676
985
340
385
472
730
977
708
376
738
939
329
596
562
367
120
771
709
789
72
171
736
843
366
955
718
519
459
229
819
883
293
150
642
162
746
106
578
654
821
410
871
439
756
508
409
136
19
552
232
689
120
46
852
993
26
496
974
852
607
161
13
694
528
267
886
461
900
576
509
15
680
317
238
726
667
999
887
183
982
548
336
605
72
940
216
117
591
679
352
24
78
491
171
608
14
734
935
113
398
290
277
189
261
697
834
255
269
858
945
692
425
721
523
443
311
169
86
208
378
577
846
84
537
389
315
326
193
609
142
634
754
75
750
542
874
861
366
776
788
174
619
274
824
533
925
598
878
528
124
428
38
664
53
347
899
980
811
904
19
622
919
842
542
280
317
311
101
241
793
350
881
35
936
746
982
954
920
909
41
893
585
260
299
704
622
655
125
523
979
181
982
367
458
798
710
945
522
625
396
631
849
441
905
708
216
924
145
240
821
269
644
528
398
209
651
828
192
454
967
733
33
679
576
62
361
598
63
754
363
364
364
302
828
925
787
311
538
371
854
528
860
804
367
221
56
492
996
312
720
608
263
150
393
213
650
764
793
831
910
385
376
544
846
278
178
375
686
436
997
665
214
87
883
837
48
512
889
605
599
851
921
70
533
205
196
865
559
381
177
632
606
941
343
749
672
859
840
435
640
217
46
176
141
280
145
819
551
241
875
793
830
888
652
350
481
69
539
936
322
819
995
346
413
938
745
161
894
449
191
618
351
944
632
230
714
208
249
576
933
193
941
600
691
104
783
222
720
596
450
479
60
101
686
337
560
310
699
964
963
582
638
512
972
554
460
722
798
712
355
959
134
155
752
967
190
606
683
798
65
370
344
192
521
121
321
279
278
986
336
620
602
496
349
400
954
870
833
953
764
876
990
662
982
919
546
398
545
742
146
476
80
731
324
713
844
111
981
267
486
898
483
259
481
887
453
189
77
887
441
686
87
326
431
692
635
800
978
804
385
15
989
964
483
407
169
103
605
318
135
908
832
780
444
190
838
20
474
493
737
997
2
496
258
543
397
343
128
847
758
328
994
467
206
575
377
472
851
513
760
513
901
857
319
657
381
829
218
49
140
72
80
560
644
551
348
935
374
735
597
427
700
272
225
470
35
328
222
881
622
665
308
956
411
126
598
477
908
658
491
213
595
49
241
281
855
254
132
531
200
70
338
362
866
523
889
514
63
439
177
225
407
247
95
861
956
310
538
719
612
988
83
317
185
444
421
932
94
735
110
792
613
129
92
429
289
947
604
296
512
422
254
885
434
460
829
885
111
495
320
393
521
801
712
713
289
217
372
896
937
449
515
910
911
790
162
248
435
33
874
455
995
740
244
83
228
976
790
779
405
831
42
642
888
862
861
55
625
585
5
479
491
756
491
279
781
621
303
771
405
705
439
617
9
25
913
630
484
350
609
485
440
865
79
739
125
141
790
960
161
140
782
310
666
15
203
423
647
942
212
251
402
69
965
401
613
675
568
593
904
92
760
227
418
297
863
352
404
679
505
10
548
689
705
755
594
800
130
143
294
978
477
654
585
670
525
835
851
364
655
858
463
58
503
638
454
23
555
496
807
937
990
842
542
17
824
518
224
109
574
507
525
411
228
7
400
856
479
615
332
447
124
559
345
671
263
755
5
690
565
974
16
79
443
659
348
352
341
599
616
6
767
717
140
52
907
143
471
263
491
133
386
550
13
730
387
809
158
808
429
58
323
297
753
498
172
117
368
89
499
32
871
281
54
194
449
4
22
986
856
351
280
387
637
151
641
262
49
370
146
524
951
259
888
35
137
467
4
712
366
872
800
543
956
619
977
408
337
116
743
216
125
194
483
651
345
88
906
875
647
886
267
961
242
32
73
677
875
241
226
91
319
139
25
249
704
167
606
819
471
196
345
111
343
310
472
817
753
784
37
858
550
773
60
70
278
895
526
821
17
619
109
662
910
969
67
730
134
52
869
373
688
978
449
577
195
315
570
674
765
544
334
448
870
731
316
649
437
474
376
508
836
213
763
245
818
852
230
960
812
370
315
629
414
783
214
964
723
434
313
111
833
760
468
884
846
443
861
984
528
684
801
542
492
705
720
1000
135
788
99
328
449
11
416
485
978
854
899
36
617
336
337
747
778
870
928
962
706
524
148
663
940
940
594
320
828
60
208
4
767
788
979
11
719
549
845
411
88
740
256
316
493
570
6
129
437
362
608
602
431
518
334
594
918
516
170
886
719
517
931
245
908
222
97
545
434
533
219
248
73
766
488
429
936
28
261
746
441
501
136
451
906
43
327
110
12
818
360
77
924
612
213
538
638
493
532
420
328
536
518
313
908
812
353
605
716
9
699
444
547
303
745
342
884
273
760
897
992
160
723
273
712
278
973
354
38
753
519
161
127
144
649
88
981
48
455
712
836
526
169
131
265
580
686
921
182
517
199
934
792
643
357
57
537
880
625
214
488
693
515
26
493
839
515
456
964
611
937
580
875
201
70
980
651
139
194
953
877
282
753
482
801
879
45
879
614
561
634
316
541
317
381
889
220
334
183
655
640
567
194
161
186
758
252
404
982
247
456
330
313
533
67
849
170
155
465
43
321
221
771
849
955
466
882
183
88
98
743
708
399
768
274
891
102
856
917
66
957
362
930
78
507
961
595
476
173
378
378
600
785
884
152
332
715
67
144
146
141
660
758
198
990
168
503
964
857
300
855
574
330
311
113
782
402
397
724
831
984
307
182
398
288
367
414
764
939
123
156
961
460
266
383
501
246
349
393
209
180
817
623
680
303
944
246
790
679
722
259
250
284
832
314
174
867
318
562
727
178
755
832
437
570
674
54
464
440
88
588
479
756
728
509
250
632
805
534
897
288
149
746
659
373
390
553
898
700
83
843
131
292
741
500
398
25
899
112
813
356
63
965
509
248
589
492
535
205
243
869
170
9
70
42
990
818
530
620
715
791
251
705
240
455
398
684
442
48
932
203
296
848
659
742
299
82
909
597
504
251
400
269
69
839
353
561
584
404
28
648
87
846
407
916
448
314
434
825
346
851
398
66
116
133
332
575
732
292
351
202
555
924
174
602
682
505
480
169
71
677
591
120
608
972
922
489
158
756
34
843
534
196
284
299
197
542
55
806
620
862
297
759
661
547
240
528
566
80
137
346
108
990
319
607
945
922
104
818
2
4
208
97
670
851
572
216
631
580
489
996
939
805
285
573
173
399
423
228
956
783
555
224
339
248
653
551
209
89
600
240
952
586
700
967
62
331
331
914
291
277
320
852
91
414
48
179
773
346
809
157
15
498
214
640
563
308
928
579
988
18
763
940
590
367
723
167
218
854
868
398
664
205
631
254
324
226
370
899
745
160
506
484
324
96
474
832
907
805
744
828
385
15
687
821
40
477
505
667
224
316
735
477
37
777
797
785
481
618
308
715
973
153
36
758
119
237
426
249
852
898
470
144
630
744
866
363
703
243
478
659
177
537
976
544
770
992
358
127
115
515
449
685
717
200
877
282
583
746
613
762
48
776
845
777
33
1000
404
497
50
569
542
362
676
953
305
702
717
603
856
903
44
856
653
184
110
138
215
457
225
329
583
53
39
434
35
511
636
437
539
122
681
606
108
460
53
148
757
588
150
66
408
632
915
786
776
615
913
664
301
227
78
890
301
397
98
894
407
533
333
360
915
730
717
680
424
836
501
521
463
282
196
307
365
604
35
791
533
246
719
181
66
601
876
441
2
752
371
563
902
265
154
763
559
55
598
52
337
904
301
196
6
317
967
714
3
460
680
40
175
45
260
708
946
121
649
29
309
618
268
644
209
187
4
581
560
652
556
446
893
135
543
497
833
189
408
82
40
447
681
253
56
855
447
172
887
826
996
551
586
267
296
446
713
909
845
662
255
283
715
420
584
760
665
185
394
999
861
868
135
393
604
89
968
169
636
764
215
464
392
836
83
421
329
81
203
193
394
104
259
599
830
395
844
90
247
278
141
762
449
236
984
194
976
704
30
337
46
3
709
81
227
45
562
996
573
121
326
817
654
293
18
448
646
43
503
556
385
17
874
306
457
222
968
141
254
350
784
82
749
847
561
239
55
942
97
704
49
243
573
796
276
585
376
536
446
733
312
935
554
223
899
396
541
245
874
76
44
780
419
437
265
580
458
950
237
911
441
448
604
472
202
766
928
857
476
746
847
869
115
340
298
630
799
891
214
864
647
321
238
103
650
101
637
643
684
836
817
12
87
882
817
486
332
987
497
173
745
118
188
296
192
399
940
984
180
891
440
234
586
326
585
763
918
633
252
557
414
847
204
824
512
903
826
537
818
555
514
427
409
84
7
220
731
830
211
635
396
339
288
103
717
15
756
824
368
828
756
197
669
859
474
428
788
601
353
270
833
798
654
126
322
499
977
834
265
932
584
715
854
692
988
840
189
594
74
346
75
623
299
649
872
676
917
961
131
931
672
532
233
817
920
374
268
867
614
507
756
677
178
527
299
883
865
907
604
277
361
617
496
705
858
793
271
364
678
191
976
974
986
114
171
666
682
591
34
841
361
450
472
798
69
365
347
945
200
56
33
570
851
207
143
987
926
426
319
551
45
916
312
684
84
27
822
918
320
526
181
696
325
663
598
302
242
757
169
866
393
482
422
105
908
198
266
467
270
613
794
418
3
12
805
136
780
526
876
301
584
680
231
396
741
936
462
778
394
788
233
326
752
303
15
111
994
301
899
795
359
617
316
893
895
126
801
934
603
182
751
503
521
83
166
883
374
93
835
630
396
286
617
363
698
252
364
722
645
97
420
42
322
304
230
227
495
36
459
865
262
862
330
818
850
717
564
967
125
638
594
644
445
153
392
207
209
567
272
43
55
892
740
338
349
680
700
388
216
542
433
892
542
713
61
734
766
992
973
42
346
152
936
74
278
879
111
700
36
226
846
627
548
944
828
177
147
623
800
850
743
869
451
88
86
683
868
415
964
36
410
391
800
344
476
298
123
421
58
203
100
452
744
733
908
101
336
556
553
521
246
899
872
293
862
11
201
583
784
939
539
554
462
41
126
333
872
338
915
5
722
620
908
760
768
436
555
604
886
565
451
530
821
6
642
890
62
864
354
412
116
963
736
445
15
898
705
21
412
654
720
841
978
616
556
896
459
828
849
681
654
352
840
380
864
78
152
573
490
8
994
536
123
617
102
765
27
675
300
743
714
19
280
101
524
990
579
329
581
273
406
923
819
45
45
177
425
763
487
793
973
705
5
140
16
205
181
699
79
241
966
239
881
480
177
320
784
761
290
736
123
381
824
323
57
403
20
840
271
45
447
366
954
293
605
813
671
3
413
368
692
535
78
137
357
960
386
132
378
720
948
597
414
229
575
661
268
949
132
224
152
894
439
923
713
815
540
478
210
223
171
531
837
188
234
536
476
275
985
811
755
897
746
48
718
34
50
703
26
634
641
936
805
934
259
937
80
161
418
552
76
865
22
288
93
47
434
784
890
469
314
104
592
653
934
57
646
24
502
839
487
478
433
929
455
380
642
972
627
759
600
959
790
306
905
837
173
960
886
204
862
171
506
194
906
855
449
648
434
773
6
982
477
764
718
376
778
160
78
968
134
867
679
977
100
759
366
73
395
759
648
4
409
448
102
111
359
327
36
527
230
62
120
357
157
496
879
338
911
144
344
252
722
152
692
287
528
665
480
226
254
963
84
353
979
566
335
629
535
210
491
801
229
490
774
442
402
277
147
785
305
365
323
163
881
643
229
218
337
55
881
796
186
719
405
406
899
739
77
234
121
23
156
508
209
968
466
484
347
55
795
649
809
384
874
394
929
292
172
695
780
227
915
925
632
299
390
179
50
108
24
682
916
462
645
130
910
682
798
7
44
519
801
268
879
493
553
371
320
430
712
378
288
609
36
795
433
414
868
221
243
967
297
295
642
548
304
34
962
531
99
849
161
134
192
335
644
320
595
605
34
141
28
179
257
981
56
601
588
743
617
100
338
240
709
565
884
73
665
69
375
577
490
669
727
465
355
26
704
144
682
365
44
751
295
407
699
978
200
288
718
57
264
784
633
969
867
720
607
24
735
87
20
813
547
97
121
644
714
775
779
666
656
139
978
288
659
379
291
663
799
986
446
72
457
677
977
67
278
92
972
451
544
387
87
282
251
628
40
694
341
990
684
652
450
70
894
384
599
242
585
461
800
41
461
389
840
633
95
575
910
40
913
325
670
106
315
7
510
55
803
107
584
306
543
793
474
123
88
740
39
348
866
661
181
972
787
378
579
347
287
681
902
960
403
179
419
186
815
765
592
966
244
13
52
102
541
165
272
271
381
215
918
983
548
502
448
177
17
668
587
448
539
822
892
687
352
259
904
214
416
57
890
217
200
400
531
54
250
285
339
643
801
157
79
301
172
974
847
723
751
513
329
532
330
439
10
484
514
215
735
985
601
858
869
159
548
496
541
20
641
435
579
734
680
719
598
821
752
887
432
368
741
436
315
180
363
28
948
403
496
976
222
261
463
102
866
608
704
793
876
817
169
695
862
834
896
770
480
361
172
497
89
659
338
703
232
376
826
930
370
504
138
285
972
220
664
775
119
335
721
914
477
201
421
632
40
288
39
408
97
937
442
716
660
32
400
899
850
82
797
782
936
715
508
213
120
771
87
495
94
179
337
667
796
767
221
86
392
128
820
573
753
357
179
800
663
650
804
43
176
908
203
419
692
75
388
536
682
422
942
333
880
456
193
93
610
385
456
284
534
675
490
104
897
902
247
558
570
832
668
276
972
280
453
225
731
806
633
897
967
638
789
33
825
664
192
980
308
572
502
682
209
482
756
899
279
363
868
116
690
768
950
245
726
31
666
599
409
208
440
143
727
838
945
806
375
703
923
26
299
436
404
493
202
139
549
986
242
911
562
754
810
50
505
634
86
65
512
147
282
664
585
378
998
623
59
144
453
114
871
35
381
557
221
178
942
761
932
831
129
177
557
669
821
993
14
536
638
428
987
361
378
289
804
884
785
750
755
11
752
634
825
919
262
113
500
15
122
52
472
308
964
376
193
387
11
455
251
525
770
440
404
153
986
241
406
991
763
280
427
340
135
628
44
706
238
702
487
61
463
204
91
973
625
309
619
756
777
18
440
829
905
716
513
502
622
707
733
138
708
826
722
197
459
979
575
410
956
853
945
123
338
261
169
376
531
525
127
520
577
279
762
620
275
486
940
413
495
42
846
765
62
166
108
397
941
822
654
744
81
611
770
981
887
482
398
682
943
845
629
879
957
425
567
996
371
351
263
815
441
426
426
775
761
841
102
786
334
838
903
876
427
549
307
898
120
680
650
439
763
168
643
285
568
646
146
683
897
811
537
318
847
429
266
161
236
2
663
993
652
913
788
938
511
174
242
477
898
617
545
641
28
604
802
326
686
145
695
883
758
220
619
80
132
369
571
257
998
123
621
294
951
774
653
645
499
989
579
132
663
459
493
196
451
332
575
865
909
583
299
862
276
677
89
507
391
758
4
448
822
203
808
231
50
342
642
59
650
332
502
342
983
386
840
5
906
878
609
962
20
903
38
614
696
910
554
744
333
756
991
223
775
521
796
808
373
71
974
598
487
565
572
499
385
490
860
474
130
422
674
443
160
511
158
814
598
358
186
157
173
256
73
537
197
158
602
654
871
324
981
592
993
995
803
970
908
471
763
499
391
466
192
170
730
713
920
887
497
172
552
929
963
504
204
30
266
219
756
101
405
826
154
390
526
259
629
71
567
846
289
220
132
235
99
386
113
988
47
617
999
431
729
413
255
680
431
619
182
110
707
500
351
427
992
194
654
175
87
890
764
321
809
747
443
12
43
838
311
989
83
751
802
289
237
699
596
316
286
448
107
184
300
310
221
159
541
604
957
386
548
715
678
8
345
37
609
753
782
407
922
32
941
723
156
610
485
90
270
572
347
958
836
854
578
154
427
399
579
357
397
173
989
932
14
36
563
637
165
875
275
283
146
284
810
859
359
701
518
709
700
480
745
439
204
484
817
291
828
754
88
814
36
341
796
635
341
358
472
678
82
24
28
22
982
240
892
349
833
449
534
710
131
171
289
101
292
128
702
308
696
742
502
543
869
56
53
270
820
749
233
254
410
375
763
964
810
3
820
840
460
429
341
286
282
755
980
1000
738
278
776
108
932
571
455
446
17
558
926
919
541
514
555
156
55
969
487
28
63
505
583
582
548
55
629
633
458
620
263
662
618
313
200
748
458
10
52
875
533
88
666
28
732
654
928
557
108
925
89
597
298
911
718
226
824
980
56
539
504
671
623
172
505
801
625
893
898
337
844
415
58
924
868
725
397
593
205
700
502
250
763
11
1
196
469
595
430
595
762
415
88
364
925
941
253
385
788
198
1000
155
486
347
790
528
94
31
399
963
879
43
499
574
928
431
335
675
149
930
100
187
487
88
970
824
615
813
989
761
917
861
149
708
804
6
735
856
50
578
985
464
739
62
253
193
33
686
313
346
394
547
950
136
92
786
887
419
205
389
911
189
889
161
239
537
532
906
757
950
87
742
447
314
761
531
761
253
34
871
491
556
57
793
820
760
167
702
518
566
24
357
249
581
982
394
355
911
421
77
510
39
406
570
771
967
359
110
27
335
639
514
173
504
324
490
675
330
657
253
154
526
826
192
121
839
499
923
209
905
558
214
644
705
58
827
808
520
678
96
208
481
168
572
704
187
97
640
327
416
876
555
757
762
825
968
748
651
451
821
7
325
885
124
976
977
292
374
71
903
920
236
409
411
203
193
273
95
8
80
434
593
396
640
242
334
759
469
378
36
598
501
614
438
844
186
290
256
772
537
55
941
635
452
129
673
798
236
904
757
956
290
569
974
421
724
384
337
160
438
597
988
677
741
363
523
945
328
101
683
630
576
900
506
431
680
356
203
22
843
959
460
420
257
350
847
470
526
39
680
530
926
30
479
349
929
993
129
999
329
841
980
377
176
433
387
966
844
531
864
360
724
616
621
603
683
952
984
537
421
240
398
434
363
68
338
343
383
850
540
714
926
43
747
651
672
535
969
829
88
259
358
967
751
336
974
404
436
341
154
756
922
450
818
100
110
889
981
303
336
356
57
825
823
258
579
377
681
594
465
628
220
971
113
535
645
889
986
187
149
637
903
417
860
866
334
642
409
440
824
1000
577
581
542
360
593
855
349
254
279
207
564
792
877
903
987
857
149
94
122
330
76
628
70
412
152
468
856
914
534
722
85
869
497
558
904
63
855
47
398
308
933
947
83
109
47
474
844
435
102
965
752
224
855
621
720
618
453
79
958
208
119
333
435
419
938
161
778
381
528
965
617
317
384
989
840
633
26
798
478
161
180
956
702
880
362
433
369
1
394
633
262
843
657
608
302
465
434
95
725
641
513
727
10
86
249
716
248
788
112
834
479
64
183
534
341
716
605
787
839
735
237
609
657
944
111
382
143
416
509
136
552
540
118
160
231
193
660
889
55
653
802
40
797
256
779
399
667
908
961
631
94
538
740
871
27
605
26
380
656
737
103
393
421
90
545
32
800
664
844
103
613
868
917
292
703
409
361
597
814
236
157
415
640
646
357
76
183
295
209
568
610
190
845
73
205
87
411
864
312
183
827
92
675
434
807
702
719
889
487
741
56
991
252
469
219
301
927
158
439
952
236
151
460
155
279
118
283
592
448
315
988
326
477
374
689
909
608
669
698
672
554
690
545
232
610
655
911
986
769
425
761
280
43
580
945
963
464
359
936
627
530
90
622
347
544
331
883
112
348
643
713
550
328
729
605
400
430
910
736
315
454
60
692
858
401
745
924
238
18
984
620
445
37
17
889
105
928
853
426
766
418
970
998
706
211
45
125
842
58
311
168
147
265
369
892
585
790
889
15
369
618
758
909
376
88
443
797
230
125
337
632
715
365
566
40
623
976
733
464
104
752
942
442
947
430
864
882
629
527
446
706
930
160
21
669
957
764
352
994
590
125
797
731
739
24
958
798
186
385
227
338
827
297
305
546
688
353
500
331
401
309
353
789
649
922
594
519
819
278
929
562
346
978
703
485
325
582
582
49
913
934
519
977
244
265
56
993
979
752
903
224
97
172
972
62
777
734
651
502
298
523
169
909
402
525
187
643
683
831
98
842
31
424
331
904
114
694
974
558
436
340
61
146
81
131
410
881
584
872
979
387
9
224
718
223
224
716
156
183
520
236
246
724
592
420
505
586
878
925
645
829
757
821
162
406
359
629
14
929
154
46
320
291
526
963
205
460
98
79
288
64
462
967
840
941
573
741
590
23
939
996
462
566
612
928
482
498
345
523
945
629
187
35
891
513
467
679
135
620
572
965
380
701
208
659
368
779
880
608
106
387
37
125
88
561
747
615
685
267
708
932
431
13
735
812
539
304
465
966
705
224
639
704
32
288
157
113
369
13
848
850
426
205
184
786
938
597
702
997
780
532
291
404
846
652
670
879
686
158
388
244
309
469
286
786
785
602
981
964
55
483
180
193
735
254
842
315
410
31
611
374
287
871
484
781
26
777
861
153
866
88
615
770
630
749
131
369
18
156
659
514
944
478
770
117
201
676
735
230
160
688
12
479
694
494
925
240
493
229
467
432
898
405
909
452
154
220
142
809
35
897
451
577
633
657
117
779
200
258
31
987
335
549
986
199
256
638
140
439
88
19
680
474
911
876
606
386
120
375
402
626
990
642
139
910
812
795
753
132
585
61
887
759
690
136
11
685
39
104
602
265
662
285
96
574
250
790
620
85
135
763
661
115
599
790
134
154
116
49
182
936
852
918
521
737
519
657
194
951
662
268
858
450
361
607
839
224
625
368
551
493
265
82
396
37
712
814
191
711
456
816
470
825
746
717
452
828
269
668
537
274
429
693
528
760
375
399
753
319
577
143
112
444
644
889
44
498
698
713
105
151
637
511
244
657
859
78
165
619
818
447
606
573
383
440
636
684
85
483
33
279
556
829
465
771
946
918
783
20
588
308
601
282
496
278
887
856
876
255
318
145
124
908
903
382
459
879
696
469
951
344
626
979
55
886
765
98
209
667
604
72
709
990
836
145
851
632
760
172
464
779
871
412
775
867
816
913
619
16
573
525
873
629
500
941
679
44
177
396
477
686
102
23
20
826
204
464
533
474
468
841
23
573
395
687
464
813
980
267
504
149
184
602
583
704
963
877
650
62
822
287
269
546
661
338
253
923
293
953
541
807
228
13
346
335
510
716
920
639
232
489
157
318
75
590
629
775
56
830
490
315
557
906
416
465
836
333
893
994
494
915
779
944
288
202
404
432
190
325
757
766
535
964
40
756
480
70
222
888
729
707
652
404
267
719
387
278
823
128
146
340
372
103
859
4
611
630
542
453
434
505
524
695
968
299
597
220
147
575
168
509
27
775
825
775
175
303
948
963
862
168
93
71
30
692
271
191
552
33
794
173
168
926
536
997
1000
154
238
263
908
86
128
820
331
218
959
469
144
444
64
640
419
478
174
694
490
417
700
23
511
462
867
213
669
370
882
502
613
759
534
51
728
412
262
649
496
425
975
916
108
96
67
91
751
81
128
904
313
692
654
326
633
882
25
134
805
642
574
39
799
713
48
542
916
97
973
795
79
315
795
229
855
125
819
735
967
26
252
998
548
633
416
971
15
378
721
472
993
581
699
379
206
711
637
433
353
597
375
356
943
950
831
766
671
487
966
868
961
588
515
347
657
874
285
786
462
45
772
50
486
241
171
874
173
644
748
485
872
547
68
498
483
587
843
621
716
254
68
556
239
497
399
618
350
289
448
222
14
972
981
317
309
329
907
263
815
55
969
228
759
166
999
813
565
981
922
657
628
89
981
123
933
467
11
251
603
923
182
200
938
549
364
249
347
890
553
369
179
770
809
790
863
367
269
149
265
153
156
244
52
381
95
113
215
743
950
902
128
129
957
727
73
655
863
203
5
971
407
104
49
767
260
444
404
999
530
487
342
370
32
950
443
159
705
916
189
192
506
404
885
702
952
367
392
28
683
804
210
551
904
374
145
482
60
699
59
897
452
403
793
132
606
261
871
680
366
629
911
771
662
969
673
562
547
658
376
372
618
120
346
3
575
631
525
25
161
487
752
978
803
42
91
817
149
485
21
301
444
562
669
277
850
405
743
255
362
213
851
211
417
141
239
52
333
335
383
136
828
961
969
301
381
25
862
582
14
14
855
744
842
364
906
984
304
774
396
959
938
980
625
88
475
979
200
781
640
648
887
659
115
249
70
805
192
197
861
849
657
494
923
832
851
172
601
862
795
780
196
262
793
726
636
665
23
888
250
876
929
758
611
948
649
338
530
623
220
727
665
51
220
456
473
67
268
541
488
927
454
259
384
276
383
637
465
796
176
686
365
760
574
696
998
793
563
998
656
626
62
801
550
616
338
344
741
923
454
63
123
233
836
973
143
645
320
594
852
99
819
211
865
905
88
707
222
23
44
207
611
797
870
410
953
229
393
90
555
370
744
399
4
131
532
101
11
339
438
232
698
531
39
431
87
261
738
329
689
414
306
495
134
653
621
325
682
955
484
91
368
976
552
958
863
836
292
706
227
364
240
681
770
986
463
607
338
452
994
490
781
922
574
991
414
175
400
160
812
140
915
387
526
519
253
10
755
508
527
92
602
923
472
4
523
580
759
446
992
854
544
863
713
506
233
659
538
109
427
806
959
131
424
268
930
516
278
269
863
454
540
228
870
287
621
573
964
88
921
36
736
815
592
412
529
143
352
236
667
858
645
819
236
158
653
290
548
877
84
616
485
93
855
101
719
401
715
859
276
432
472
623
195
405
182
118
865
425
988
414
825
104
305
59
878
182
808
169
894
886
710
129
726
745
234
565
138
603
500
703
502
179
446
722
321
615
506
245
196
234
502
115
51
819
690
851
84
642
922
158
639
4
916
535
413
992
820
113
201
641
81
908
960
224
589
421
865
296
989
311
137
230
192
279
824
484
765
18
930
697
925
702
117
879
91
209
972
288
227
917
668
777
95
731
120
520
943
44
211
876
503
211
850
447
508
718
170
652
918
698
217
288
321
99
299
675
161
481
483
487
415
438
846
133
172
892
907
437
626
903
142
321
110
4
111
660
928
594
936
955
561
121
231
497
935
912
734
672
192
183
906
428
707
986
579
132
229
313
204
358
568
655
670
70
180
921
985
48
193
825
751
384
283
306
675
652
751
336
86
391
809
631
179
983
674
611
606
375
498
775
891
880
897
563
33
71
45
6
433
224
257
615
283
766
289
198
250
188
127
440
555
983
587
329
236
140
704
999
220
438
118
612
879
630
377
379
732
539
422
884
370
368
457
225
578
313
800
944
116
400
857
334
178
293
69
747
960
27
179
973
514
398
865
245
926
148
771
314
893
476
20
520
518
272
656
556
745
730
756
398
329
655
621
378
403
616
46
171
5
592
525
509
119
889
302
706
779
906
91
866
648
204
110
673
687
332
128
517
160
46
176
878
13
564
666
414
783
182
76
416
107
133
245
185
449
258
100
436
572
76
116
371
131
545
364
959
472
33
695
132
988
841
375
93
485
745
131
572
101
579
246
691
476
82
303
210
731
424
682
248
446
622
648
904
679
10
516
113
335
169
416
236
242
436
901
664
541
908
298
675
464
200
76
512
524
39
91
123
821
788
424
926
603
435
499
451
602
326
857
296
657
766
393
633
281
669
39
963
121
25
256
520
863
869
486
270
265
847
189
967
967
343
371
724
303
800
107
643
15
139
171
349
378
549
853
796
268
15
437
591
411
659
794
325
570
85
971
496
508
452
388
997
246
984
671
798
823
64
121
314
10
167
267
784
8
623
541
65
922
595
692
130
804
163
222
27
438
236
132
991
910
985
371
642
125
434
653
161
291
198
431
559
997
580
226
886
533
511
12
49
81
119
930
936
290
716
781
227
715
197
221
506
623
43
432
237
393
597
660
235
943
653
537
485
781
29
168
102
738
859
820
494
157
39
34
589
591
379
547
115
761
203
642
305
946
122
195
223
52
242
248
494
830
270
353
756
534
905
218
101
405
483
810
27
32
703
222
966
122
366
823
22
163
856
908
929
73
659
736
582
108
720
461
276
996
62
980
105
279
944
748
411
192
57
193
11
196
971
507
912
66
784
317
44
2
966
858
894
641
248
105
754
489
156
993
175
320
640
430
891
565
535
272
947
427
374
186
384
583
912
657
257
905
135
841
686
4
941
112
274
611
851
157
216
309
190
890
31
191
266
148
155
384
340
483
132
529
465
904
71
546
90
888
643
254
399
482
110
695
230
956
576
549
616
214
961
339
248
794
898
987
127
879
260
792
185
435
238
88
243
739
333
8
59
945
414
389
779
527
766
298
599
906
436
25
679
733
275
398
222
263
332
362
225
831
6
793
848
739
105
561
108
839
57
436
225
847
555
674
920
651
797
472
291
921
270
280
724
903
318
92
334
172
701
368
497
633
543
46
548
314
390
528
204
543
413
321
600
94
309
246
419
4
398
713
693
603
181
491
484
910
516
778
81
597
534
158
623
522
220
446
336
558
900
197
276
443
394
976
801
701
64
704
236
649
620
920
442
360
628
585
255
987
23
754
389
287
782
685
603
340
686
959
43
60
888
316
934
371
990
348
686
479
603
458
989
332
364
737
759
200
605
104
278
287
885
804
655
38
959
240
235
413
474
919
420
434
961
818
796
637
264
511
536
954
742
82
634
385
259
673
568
804
252
665
902
387
754
49
394
988
544
820
145
410
417
335
476
539
308
540
18
204
231
510
133
499
255
176
689
616
171
363
530
826
166
352
682
909
921
43
499
562
242
638
271
764
630
279
777
119
977
874
880
320
274
302
217
62
139
209
245
624
767
388
320
259
489
230
199
86
701
394
748
109
478
864
837
783
943
877
210
28
497
929
210
557
129
619
303
60
843
419
91
49
937
82
713
977
758
864
504
791
890
162
923
538
585
240
990
824
627
273
264
167
385
138
799
7
106
629
847
571
367
81
234
642
644
720
686
575
320
562
610
487
523
10
304
907
159
583
924
476
949
981
240
570
325
685
306
50
180
902
59
240
962
950
909
558
972
290
974
293
370
705
944
889
144
741
524
709
115
183
551
46
299
827
279
939
719
426
928
26
966
988
554
436
529
811
931
27
300
917
534
882
138
890
583
185
223
797
659
368
69
261
664
146
265
319
528
52
68
594
126
750
70
886
751
257
963
849
129
432
663
525
901
301
159
101
35
362
162
713
98
244
839
10
149
967
99
702
429
184
18
502
947
719
886
670
200
424
50
153
755
908
946
863
370
422
687
897
251
309
570
876
349
160
165
552
135
955
366
272
453
975
333
350
515
284
915
293
818
579
751
163
926
279
586
245
92
385
828
659
639
526
73
942
611
572
962
940
479
61
964
680
821
784
633
96
866
298
866
408
359
819
319
382
99
349
929
279
933
630
473
281
760
868
567
760
550
175
828
618
564
637
942
744
522
288
814
315
495
925
519
865
185
851
199
206
371
163
49
691
624
428
392
442
879
416
726
61
240
158
615
962
513
613
450
999
299
149
595
718
330
609
852
812
525
568
109
965
714
894
655
11
269
513
375
231
305
858
186
103
93
902
137
354
292
896
931
741
738
876
995
877
326
40
250
164
317
619
17
116
956
87
753
359
896
486
15
992
411
448
449
154
964
840
811
279
858
415
818
196
55
68
866
775
80
174
898
698
358
41
188
15
50
784
783
866
702
397
627
268
502
102
199
818
130
978
326
889
197
390
57
255
325
680
309
365
940
75
770
156
752
912
363
136
32
848
84
649
542
499
993
816
135
769
477
584
534
17
702
188
940
331
938
419
220
365
472
832
580
94
916
62
1000
200
569
532
436
359
907
419
76
600
96
623
851
253
998
409
461
841
370
743
746
504
660
275
400
894
952
712
834
899
376
762
441
967
390
976
868
912
319
446
317
238
750
469
263
92
514
546
694
402
861
92
301
830
7
62
901
150
328
370
108
49
746
733
62
877
627
186
594
636
486
20
631
949
576
463
810
516
911
207
704
813
281
159
211
219
112
621
7
195
930
588
270
681
383
366
833
765
297
309
371
39
956
43
914
2
900
562
348
239
904
598
332
876
498
673
963
532
13
489
293
300
536
8
505
417
416
296
681
278
960
260
289
167
457
857
827
324
589
475
197
105
847
416
123
53
312
795
618
91
381
397
570
54
531
262
22
226
124
705
704
747
722
660
259
290
812
324
859
47
280
647
303
672
377
737
912
319
253
779
109
499
961
977
390
484
899
998
100
735
507
357
586
833
46
874
859
976
743
368
756
608
726
878
224
221
52
337
168
407
229
160
9
996
349
900
852
426
712
968
216
620
325
565
13
173
853
946
514
617
663
725
272
634
806
330
906
897
548
363
873
393
207
903
128
784
247
649
417
443
109
291
745
279
44
81
635
413
953
103
711
424
626
558
850
436
319
878
48
872
341
896
203
892
475
513
383
411
751
609
591
640
551
89
353
947
434
17
718
209
606
962
397
750
488
216
678
40
122
924
440
880
595
550
909
742
732
725
126
900
411
100
980
724
715
257
995
97
14
92
146
262
252
598
723
90
582
347
542
413
715
565
857
610
894
793
9
488
433
829
946
466
910
214
503
171
606
261
933
820
60
897
556
77
177
559
152
360
886
163
719
458
841
169
518
212
971
691
420
767
942
519
296
497
662
436
317
965
790
598
386
107
722
981
1000
3
12
796
733
408
711
530
165
687
479
970
841
67
197
586
807
248
24
894
342
170
17
132
10
531
148
948
862
37
212
788
227
153
356
445
144
913
445
646
157
54
162
768
581
586
227
661
466
646
779
419
739
25
606
45
5
123
103
960
101
933
17
55
950
601
695
516
702
11
238
766
219
723
365
893
729
788
343
36
735
332
16
436
734
784
130
570
323
564
659
44
126
965
69
173
980
169
438
323
695
823
706
945
56
963
789
201
135
847
366
951
255
953
859
219
210
917
168
2
124
809
698
619
891
821
659
224
550
297
894
409
174
149
763
152
424
399
918
495
164
252
93
11
567
999
564
215
972
194
623
10
477
575
429
687
235
635
257
947
557
850
961
14
346
385
706
983
97
893
814
177
700
551
426
353
507
839
399
908
807
136
30
538
10
566
869
989
74
250
746
285
799
800
3
596
310
352
180
171
924
246
529
569
388
620
139
518
618
208
369
884
447
348
234
786
388
687
614
148
831
276
557
513
980
516
17
767
500
674
868
6
576
541
244
822
866
501
539
453
104
363
979
898
753
227
496
70
367
949
441
22
428
145
822
926
925
339
205
186
948
682
977
999
313
215
444
106
334
925
657
374
861
510
61
54
536
27
812
989
487
493
659
100
395
77
834
347
461
778
463
902
259
670
131
587
834
801
611
750
360
590
970
951
682
222
170
366
698
164
518
850
141
313
390
805
399
34
403
490
429
156
890
898
20
997
714
524
415
394
979
731
835
746
996
284
673
376
51
112
158
502
155
644
837
566
863
237
121
37
613
829
578
967
351
973
677
913
683
41
853
863
456
866
333
540
821
248
220
809
684
683
492
584
559
879
172
611
519
165
538
249
506
955
211
480
233
755
61
626
831
813
355
192
852
295
261
429
362
629
865
97
967
897
85
756
506
300
423
588
578
743
198
158
288
579
148
443
339
69
202
747
152
622
77
471
346
972
109
49
229
758
140
320
259
709
938
152
801
770
111
579
916
469
910
249
843
736
919
497
550
93
204
400
386
100
525
523
592
159
828
559
953
383
588
305
654
709
713
106
427
11
816
194
337
387
971
223
398
696
968
25
264
977
786
143
516
64
418
842
3
609
110
6
276
586
117
233
709
84
420
545
581
351
213
803
749
832
418
87
820
144
201
28
812
465
830
691
807
159
512
512
654
471
372
696
564
424
2
256
576
465
216
822
972
589
645
129
470
992
560
861
854
997
41
45
401
709
147
350
286
841
988
499
928
609
178
636
749
768
531
550
121
20
6
733
227
891
507
775
341
766
236
884
328
12
795
536
221
109
88
843
782
683
383
155
361
433
858
314
493
361
352
628
36
459
454
291
333
493
821
928
39
680
47
960
507
931
809
614
629
263
798
880
485
684
504
96
59
968
704
69
571
604
89
222
285
434
262
330
471
596
364
896
581
558
993
708
810
346
976
612
871
537
777
733
706
465
727
435
596
37
502
933
879
599
121
481
401
798
132
925
49
486
464
787
982
713
630
221
671
234
78
565
389
973
259
979
74
817
837
661
926
940
888
52
104
713
112
150
50
299
141
149
354
389
612
97
874
969
303
963
624
879
212
38
362
546
93
441
107
937
170
353
813
881
314
547
266
781
338
149
885
126
425
419
428
640
980
841
302
844
31
601
637
850
376
468
8
866
973
498
478
966
879
782
317
284
568
816
826
584
988
180
503
468
285
315
476
397
600
731
209
454
297
876
380
268
117
968
645
635
919
370
759
383
291
594
777
729
976
364
188
635
105
153
760
615
264
77
414
938
146
949
383
488
813
118
297
631
106
343
149
941
95
240
969
885
32
89
877
813
718
198
324
119
383
184
373
983
34
817
903
175
366
783
302
320
120
359
408
710
79
166
315
951
317
639
165
22
936
383
932
810
534
961
253
501
581
686
675
557
368
868
836
147
489
828
211
332
774
401
198
967
864
422
371
731
741
456
2
609
209
607
420
466
278
123
121
836
560
888
545
332
211
504
427
54
444
983
533
963
199
120
988
946
574
238
647
179
70
232
585
97
976
336
796
481
509
495
784
939
93
1000
668
103
133
919
39
230
890
167
822
1
579
598
127
333
737
238
269
976
94
202
259
163
641
673
692
81
507
309
368
27
703
265
386
937
614
29
747
838
216
186
618
632
821
855
334
368
947
742
546
270
50
572
610
952
347
639
688
298
624
80
837
554
117
187
918
558
280
903
874
745
892
171
904
317
287
914
992
518
780
317
205
217
825
37
883
740
141
859
254
986
933
839
921
632
221
233
487
421
469
222
27
715
28
388
8
858
160
494
619
958
142
622
95
962
581
181
698
653
596
110
628
131
420
438
989
708
240
158
364
614
488
855
71
823
17
374
526
687
223
45
678
911
865
696
420
255
652
450
171
90
246
124
788
76
674
695
875
128
915
908
122
815
696
936
169
745
786
79
929
84
554
856
280
753
64
944
928
333
349
706
143
463
604
957
371
112
406
683
176
762
849
775
645
511
768
257
576
466
677
160
795
380
985
693
238
539
316
592
415
276
20
324
72
369
733
908
107
428
929
532
64
961
524
884
437
918
892
856
804
812
918
188
996
3
189
381
319
675
4
371
755
648
591
936
221
800
294
698
76
186
22
255
973
149
193
188
432
960
80
538
162
345
972
64
147
481
525
452
751
646
231
611
231
966
746
326
346
688
592
518
345
969
239
636
898
4
274
759
711
455
259
632
999
268
190
432
217
710
79
935
183
25
151
337
19
929
375
732
760
928
455
814
340
801
955
757
268
83
241
70
452
380
35
310
123
939
810
54
127
782
899
917
614
120
337
469
507
812
965
780
973
744
881
614
147
591
993
514
594
202
829
255
23
197
49
75
835
376
138
451
113
485
489
586
449
157
909
181
560
89
293
953
258
207
140
436
617
894
592
447
865
485
152
684
2
430
642
560
526
444
953
934
442
220
466
922
852
808
433
375
324
159
812
542
737
896
361
432
770
42
202
41
968
10
193
332
349
815
594
5
305
204
728
149
301
501
346
199
199
344
785
338
941
559
178
91
789
688
790
878
523
613
316
268
466
786
967
161
758
693
398
420
625
355
248
863
613
791
915
763
31
141
504
739
880
339
953
810
150
648
919
586
711
692
497
616
32
599
199
552
28
986
438
491
747
305
968
634
476
830
593
237
405
458
578
565
608
223
564
352
217
617
320
155
824
963
725
993
824
763
111
190
637
762
450
874
247
410
136
390
608
732
22
436
845
869
351
372
655
149
672
335
966
409
987
800
562
716
293
895
535
48
243
984
975
134
298
875
207
433
44
856
203
404
430
549
333
8
123
189
96
196
448
829
392
44
803
425
506
330
553
129
235
142
397
123
681
292
184
658
939
47
374
496
634
59
620
201
622
214
435
603
748
864
652
993
237
742
409
793
591
94
517
938
158
181
52
584
359
26
789
678
78
656
75
493
735
212
816
596
251
329
879
893
307
330
142
119
542
502
821
197
696
420
887
709
508
38
4
272
438
241
675
856
990
443
579
327
243
402
240
348
601
563
856
275
949
345
412
478
150
177
258
614
853
236
221
479
567
568
401
646
842
751
899
517
798
240
13
717
866
159
756
189
42
169
879
179
822
951
709
120
671
619
41
911
669
382
847
509
215
600
527
423
200
75
977
57
24
38
750
822
143
969
798
593
988
191
279
400
13
13
334
908
588
13
908
940
319
342
714
903
72
489
447
440
470
846
221
265
826
597
443
827
155
722
768
223
920
457
356
374
731
492
35
897
864
494
329
288
468
968
892
808
259
370
284
978
143
371
199
311
371
748
667
786
415
619
351
248
986
588
711
640
780
348
783
824
255
862
504
384
670
229
13
357
917
568
471
90
42
141
710
976
247
409
937
534
102
994
203
591
697
19
436
247
111
122
513
832
65
663
154
626
88
172
867
360
510
602
679
553
323
842
726
965
470
31
101
728
498
37
307
587
908
808
379
234
754
157
434
688
895
661
317
153
376
154
390
885
869
820
458
930
644
982
193
471
333
254
879
853
718
843
184
711
821
685
20
633
864
324
613
681
398
540
141
587
287
137
499
302
559
485
447
524
314
285
912
107
397
691
914
74
145
468
305
629
472
125
54
748
512
570
311
109
319
591
135
510
914
742
975
639
640
566
823
484
615
486
104
402
720
36
21
976
251
836
687
159
389
174
477
454
403
785
415
672
865
736
237
307
449
513
593
413
455
832
905
74
532
557
547
913
381
268
863
721
568
906
442
561
230
734
746
224
523
181
574
825
561
20
7
940
659
7
994
23
708
393
646
52
642
592
981
569
873
63
284
873
332
886
27
605
101
671
883
21
153
720
224
591
71
830
967
796
86
610
575
936
372
156
400
252
400
694
734
1000
846
542
640
660
734
306
316
301
412
900
609
679
788
248
520
835
533
204
7
860
728
270
249
748
720
546
705
768
869
139
126
73
569
984
596
536
671
170
418
171
17
157
4
161
278
140
763
183
149
56
400
872
488
650
871
535
482
874
111
107
905
554
4
318
186
114
592
24
235
471
249
11
990
437
791
806
656
438
329
388
182
561
56
370
190
255
28
872
78
62
1
125
697
662
95
514
581
891
798
194
27
485
795
897
870
120
719
370
729
87
411
469
832
494
484
654
627
381
614
177
438
151
96
720
60
939
802
607
306
484
87
499
355
558
18
566
336
15
443
5
873
887
721
120
451
683
980
725
584
864
422
620
478
422
794
626
719
246
20
87
185
598
849
622
537
853
993
978
60
683
781
788
252
371
432
488
59
417
7
40
387
309
472
502
63
984
574
195
670
433
347
581
363
21
895
372
515
340
811
349
171
364
448
413
577
164
210
732
881
181
568
576
586
232
843
654
544
268
672
410
719
258
751
226
843
920
587
970
804
408
799
773
21
73
644
93
715
637
873
218
151
916
940
207
757
949
337
819
125
708
837
339
254
866
23
264
474
511
295
820
54
183
903
383
98
372
282
828
446
179
961
928
326
933
22
368
954
819
284
152
488
724
172
828
415
922
904
316
401
762
988
27
263
392
903
209
418
549
435
156
771
94
611
498
24
394
86
928
477
406
520
449
404
39
488
49
345
174
532
694
838
21
171
356
832
774
790
251
557
856
966
37
611
343
569
902
413
24
907
813
839
249
940
622
865
564
230
101
983
505
418
19
980
681
141
220
78
76
603
498
911
115
211
811
31
592
808
446
693
271
25
115
732
395
272
426
69
307
158
918
231
601
232
558
681
43
499
422
270
988
903
578
558
292
638
609
71
686
16
508
233
145
564
974
976
686
358
923
478
908
698
620
970
137
74
110
503
603
593
672
940
957
515
240
58
417
196
809
171
773
507
391
922
485
164
528
364
336
243
672
173
44
121
603
100
663
600
734
304
429
759
290
487
639
432
820
973
803
650
283
621
526
44
427
301
143
463
766
42
169
552
391
465
814
953
318
328
628
607
879
519
125
783
148
855
459
395
723
910
651
85
846
685
615
494
123
688
699
997
579
287
896
772
894
681
269
792
675
76
561
764
791
404
356
597
836
701
555
484
221
875
936
444
599
116
422
857
559
106
850
547
809
782
469
996
737
672
839
401
708
242
752
651
176
209
912
154
768
487
466
290
843
907
656
275
14
662
867
390
240
805
954
145
310
107
759
792
718
289
764
394
727
78
633
739
719
316
398
482
203
70
840
393
549
14
134
485
466
341
444
941
749
651
565
189
466
694
834
81
591
380
805
469
892
582
933
99
833
252
24
224
458
964
674
308
289
276
932
200
475
472
865
270
16
700
917
461
123
135
54
813
413
234
250
294
232
366
816
140
123
414
671
840
337
76
869
950
436
587
548
278
446
336
115
798
400
724
638
332
240
338
511
139
2
985
882
347
412
457
818
526
600
858
972
924
29
880
831
921
161
765
39
856
825
398
45
936
82
516
743
892
614
488
154
555
733
930
395
517
142
212
488
149
409
439
514
617
178
354
635
540
694
45
821
263
853
858
153
371
403
114
192
119
319
608
892
789
319
328
917
948
419
914
980
956
563
45
845
970
998
333
893
438
564
70
13
448
610
582
249
918
876
479
397
605
634
302
759
676
245
588
447
277
899
136
281
239
271
477
742
70
535
165
700
384
78
871
896
711
382
856
625
245
879
353
886
120
355
48
782
713
20
506
703
37
100
804
183
492
555
395
143
32
35
887
475
292
264
478
490
188
619
378
745
995
224
102
890
383
541
282
331
699
171
652
427
343
686
475
147
545
737
336
618
754
273
285
973
445
370
1000
896
741
913
117
141
873
923
916
416
709
262
760
178
480
885
332
290
810
716
393
37
141
88
233
965
4
152
336
357
956
306
902
891
407
698
271
127
810
562
831
750
883
121
44
397
459
962
507
290
405
57
787
953
212
807
432
208
211
327
663
730
325
933
392
460
701
603
956
536
844
773
314
370
791
4
320
505
34
617
788
433
285
622
624
102
430
770
191
474
88
423
932
451
124
521
398
926
6
381
376
806
322
827
655
344
356
864
658
826
586
21
201
258
441
758
463
724
702
79
948
869
641
912
741
648
36
43
684
776
15
234
72
233
759
498
817
456
734
736
929
942
511
236
11
519
343
30
78
325
415
818
694
694
844
473
805
407
312
247
973
940
900
648
846
935
848
172
842
700
759
769
634
259
374
426
554
784
116
541
766
462
526
479
29
948
31
200
43
433
403
606
277
792
199
635
229
762
476
336
325
141
722
588
271
594
964
781
404
685
810
861
819
251
85
955
709
170
999
458
16
154
927
282
476
21
766
920
811
687
324
689
903
139
406
697
630
679
871
780
891
234
81
897
326
619
694
845
648
98
74
527
807
733
711
622
437
414
266
900
268
153
580
172
535
337
594
778
418
893
958
93
407
234
10
800
706
342
63
512
565
776
849
578
740
858
490
196
756
394
69
722
336
900
801
370
418
44
155
435
242
709
623
425
975
317
633
455
625
985
954
26
815
834
533
215
841
116
883
819
858
167
783
538
567
818
132
623
794
376
717
781
620
529
985
596
92
568
839
616
298
751
720
433
856
530
628
935
363
100
279
157
450
608
717
403
417
173
340
11
248
826
973
964
285
254
456
101
618
565
917
614
200
575
741
349
678
393
399
807
338
455
906
580
950
642
937
617
254
47
546
139
564
928
609
752
413
576
25
596
92
250
387
91
135
458
739
150
841
431
178
882
87
102
825
450
908
104
950
109
531
810
782
466
604
661
489
694
815
802
258
480
461
241
32
413
192
804
375
286
543
150
442
556
111
512
456
713
671
375
674
179
689
340
632
481
568
615
152
354
344
159
835
340
767
167
454
114
893
970
355
289
804
802
221
375
358
761
956
962
645
554
428
76
155
428
713
289
527
26
517
974
294
176
827
74
181
507
507
496
397
249
808
309
603
97
359
637
685
729
563
288
24
772
860
31
165
969
291
564
808
765
691
140
786
139
421
428
678
488
186
363
837
865
539
592
415
961
551
30
802
13
756
665
198
472
224
997
363
540
542
333
267
496
445
50
655
369
516
174
548
23
799
799
434
287
562
267
934
951
390
774
657
809
444
928
460
258
886
264
668
33
603
171
442
548
552
201
993
812
136
445
563
690
754
46
260
922
371
907
789
272
198
472
551
576
203
673
5
819
18
588
165
993
588
50
115
109
323
136
616
427
433
224
93
221
825
47
208
605
28
730
587
523
511
644
672
472
89
528
440
857
428
923
448
318
59
527
759
667
178
471
24
548
162
220
66
659
931
494
756
445
300
206
412
140
93
8
95
36
828
240
483
690
107
776
561
312
794
991
505
536
526
990
159
612
960
48
858
446
736
343
928
240
853
851
166
294
632
202
998
367
916
818
531
971
178
759
548
595
290
613
548
400
102
300
463
605
310
118
554
160
655
54
428
443
165
743
883
749
495
931
917
171
539
321
742
580
742
756
432
459
667
847
314
898
174
138
995
731
320
190
284
536
494
735
182
750
578
789
598
554
897
473
784
544
486
449
57
447
840
485
292
872
322
111
433
640
557
456
316
871
753
373
715
374
587
805
164
576
826
320
491
811
64
443
302
86
363
828
7
399
422
965
205
149
3
811
175
590
86
452
968
58
388
322
113
781
289
125
258
921
855
40
904
566
792
225
652
724
24
505
134
321
369
738
78
64
498
738
966
18
845
502
569
741
737
185
895
177
18
475
192
45
207
38
464
385
233
880
11
291
124
381
357
381
186
723
745
270
132
883
65
472
433
745
37
61
390
929
207
456
322
17
204
788
351
642
773
728
442
822
745
513
199
578
610
806
870
561
355
131
200
268
108
312
867
460
962
479
873
280
963
299
409
40
987
464
726
958
190
142
707
864
19
451
405
746
966
94
766
151
362
698
339
24
936
296
389
717
747
301
216
617
800
395
162
925
269
437
818
450
663
117
317
865
745
725
935
850
671
781
180
167
89
671
966
275
881
124
437
662
79
554
536
82
431
711
697
767
309
87
445
139
438
666
329
504
787
742
992
544
690
527
463
283
411
288
529
140
616
476
115
409
242
331
343
218
338
960
884
252
659
772
489
811
335
174
600
690
683
799
411
85
799
518
63
42
896
168
113
339
417
106
370
879
133
18
307
730
407
151
495
184
358
568
904
260
211
312
394
135
950
871
107
995
450
384
141
181
413
368
71
352
625
875
276
754
857
3
45
724
666
373
517
447
755
342
182
897
32
204
38
887
858
417
921
325
352
126
686
983
640
290
672
442
747
592
78
348
544
180
290
581
352
537
686
44
315
555
611
332
962
463
550
821
318
928
608
253
531
931
735
323
310
12
281
670
126
207
660
949
259
344
392
781
317
420
479
299
34
203
820
633
850
715
877
97
17
824
22
19
477
798
210
236
76
132
735
647
442
354
362
343
355
228
401
122
508
735
45
255
363
112
378
890
384
701
104
244
587
208
698
430
344
934
757
188
445
115
833
822
674
299
409
184
515
852
120
196
520
725
262
133
427
315
586
120
171
46
63
765
33
579
740
529
935
418
645
17
509
37
343
140
550
839
536
766
589
659
968
551
88
714
512
447
491
301
32
745
590
291
645
756
317
147
385
578
163
897
472
349
702
101
46
296
384
575
299
112
778
745
547
319
560
673
279
239
232
537
783
810
950
951
858
145
856
840
267
862
844
611
889
565
287
123
719
294
443
521
212
711
765
774
524
4
587
599
774
434
44
109
973
642
1
68
3
559
300
775
478
653
436
67
926
742
88
147
567
229
702
311
164
716
641
708
56
912
888
530
236
128
773
606
502
329
262
80
224
402
174
492
987
703
646
710
170
542
4
335
466
128
867
209
808
908
793
474
50
849
450
298
638
403
294
409
752
572
946
795
307
485
378
841
852
906
416
149
878
951
257
536
315
246
495
722
8
963
575
97
77
500
616
718
878
192
893
427
171
746
863
966
606
125
271
257
798
242
584
191
757
274
381
341
260
304
610
477
740
645
221
174
28
248
883
288
725
318
716
612
706
686
558
756
598
101
719
951
690
714
959
744
136
887
137
262
716
404
404
692
951
234
698
539
4
130
890
57
827
604
499
275
75
707
246
85
87
479
45
825
434
922
550
462
712
134
594
842
572
977
559
505
643
325
280
323
145
938
854
417
396
680
367
557
798
109
954
619
337
342
258
648
956
712
689
977
660
242
18
669
686
427
919
216
459
813
481
132
869
854
695
928
82
159
251
290
93
73
781
651
538
708
638
1000
830
703
119
429
647
767
816
499
19
854
655
124
310
762
330
139
445
117
737
997
477
941
5
721
124
289
947
183
70
255
599
779
484
555
373
572
33
574
864
982
641
912
65
150
416
605
19
35
15
422
764
562
836
111
958
836
27
843
616
62
921
270
264
123
792
918
276
176
375
595
834
260
517
540
678
608
394
47
51
749
259
872
762
385
502
715
563
743
328
633
442
326
81
522
639
249
6
836
287
281
210
888
564
481
912
327
690
704
421
14
415
995
11
428
57
69
575
903
181
590
957
618
127
383
434
160
634
657
747
703
140
234
20
805
889
564
484
327
382
861
919
859
230
246
544
687
547
377
781
486
964
689
696
213
502
229
490
847
900
706
171
121
388
535
110
839
977
194
962
577
433
882
767
488
654
678
844
127
622
799
481
748
427
851
278
674
686
126
727
22
794
469
827
126
771
486
443
356
310
688
586
493
669
896
654
966
250
154
467
35
353
336
617
559
396
765
343
912
263
946
110
49
148
196
273
513
708
970
564
191
964
630
2
590
856
841
663
787
879
410
784
83
825
781
943
17
554
785
762
552
838
210
208
354
677
943
972
371
254
598
964
227
11
264
39
108
310
708
704
559
42
542
786
564
668
238
526
190
563
157
474
203
379
19
258
569
352
490
756
388
520
66
522
61
827
977
54
765
992
714
780
887
999
677
266
693
974
103
74
68
928
297
34
305
826
340
476
539
967
132
908
801
241
121
937
842
820
562
615
558
931
846
417
93
912
216
179
771
171
45
648
814
897
73
820
350
376
399
690
858
221
757
494
42
319
727
735
870
585
556
313
709
129
333
797
634
44
473
70
769
726
488
639
434
953
565
520
453
824
57
625
758
801
815
39
743
952
160
637
783
510
315
175
654
871
535
610
707
411
121
708
692
463
836
169
426
234
494
126
258
530
415
587
78
712
232
240
353
581
518
881
593
94
627
877
353
104
518
973
213
145
284
795
1000
357
648
879
716
653
799
330
378
315
304
962
679
368
614
79
571
940
198
557
264
616
495
513
572
688
268
173
451
585
370
46
75
151
346
15
831
328
316
478
472
615
23
349
291
234
628
894
46
544
190
474
406
560
176
85
937
276
99
146
484
203
572
782
522
336
141
877
758
701
881
519
733
948
884
888
262
87
816
71
446
816
767
22
659
143
990
408
849
927
890
618
14
664
511
18
653
853
565
793
534
953
465
131
549
719
384
526
914
972
100
520
795
851
790
718
280
988
679
604
722
977
501
649
500
129
871
964
73
926
177
379
266
99
844
864
687
433
292
828
690
314
735
838
654
595
681
11
849
343
632
240
230
405
271
693
692
520
203
821
794
886
20
213
699
157
48
933
78
231
515
231
22
373
2
396
908
252
71
753
41
236
172
716
85
264
162
431
982
210
471
855
465
516
668
963
580
658
322
421
821
97
645
690
688
500
266
145
71
18
481
897
324
727
866
920
765
823
281
434
405
298
513
808
482
682
921
830
721
852
556
771
228
328
982
766
552
796
710
604
925
256
231
544
790
310
893
340
442
449
719
406
943
966
402
693
620
423
530
990
26
962
887
279
486
159
811
921
941
234
282
520
426
650
96
130
8
855
579
14
113
123
378
922
914
646
113
669
190
617
277
644
828
34
483
355
968
440
53
176
552
791
875
968
497
961
419
739
37
133
386
531
4
166
20
567
788
953
234
366
694
724
613
296
880
64
94
65
57
544
78
198
947
910
113
662
172
81
67
950
991
895
572
677
525
821
483
357
303
825
832
939
48
572
353
197
641
353
298
413
920
389
801
983
51
615
904
295
942
926
535
232
476
160
895
588
882
25
590
353
873
154
135
979
509
94
971
555
480
822
359
366
824
621
213
446
555
121
343
210
964
327
452
529
911
668
447
705
120
313
393
762
188
119
500
53
708
561
498
607
283
399
759
944
287
615
147
673
275
679
664
413
445
526
667
248
211
851
434
107
782
257
350
630
551
442
179
189
259
88
614
147
157
737
786
189
971
705
443
323
169
356
872
763
163
631
810
563
429
675
468
31
500
132
978
403
440
877
672
205
347
269
979
835
362
273
848
513
790
232
840
537
1000
73
213
603
746
602
418
212
930
528
600
377
376
995
777
736
809
279
428
795
249
817
534
639
503
710
316
714
917
414
894
922
781
921
469
668
972
202
831
310
787
687
469
416
480
211
791
962
885
525
187
1
494
614
320
939
509
961
559
803
886
165
762
537
74
483
103
649
453
326
299
924
642
459
462
585
284
860
927
124
343
832
643
572
68
237
926
546
301
449
387
749
820
765
684
628
259
828
358
753
853
588
616
256
71
578
552
140
975
750
922
21
484
82
274
426
392
767
13
798
286
768
269
891
84
116
64
747
895
772
210
995
276
521
121
823
183
192
104
871
561
74
10
53
885
978
784
14
771
135
700
99
233
768
926
706
59
680
206
807
656
850
212
171
139
102
560
626
384
879
421
332
248
39
47
209
707
751
584
428
331
496
233
910
993
459
510
388
988
56
705
870
991
915
720
570
19
434
916
626
857
834
834
65
922
529
832
305
981
309
825
429
251
959
69
362
393
421
710
175
467
635
169
342
734
648
93
499
686
515
599
750
970
197
837
89
934
311
407
450
858
423
207
403
279
868
612
356
635
548
772
426
538
311
807
919
584
15
863
671
581
637
175
116
210
115
381
713
769
540
798
44
483
749
109
633
334
662
580
424
205
13
998
66
379
56
352
266
933
725
904
169
152
510
211
968
97
437
551
597
587
693
654
709
585
590
916
276
359
298
726
239
870
957
88
860
654
557
635
226
27
341
716
460
531
511
959
401
269
660
323
636
616
380
942
961
21
435
741
698
119
490
442
831
576
546
693
519
606
418
587
141
770
537
46
405
259
625
488
995
417
67
797
74
858
674
593
109
265
868
901
469
197
113
619
934
903
411
508
568
641
61
879
757
166
491
738
93
796
857
503
296
185
932
96
491
385
915
228
419
503
654
657
570
210
106
175
82
410
41
823
916
470
437
782
693
135
143
917
521
988
210
554
31
723
522
102
692
798
599
628
166
281
675
626
752
223
803
151
647
443
955
630
364
158
480
25
539
447
934
244
365
42
610
286
924
448
551
38
373
672
613
939
315
925
668
550
627
472
747
559
356
726
462
210
361
920
970
859
216
655
455
656
499
815
442
610
169
820
649
48
410
978
41
329
154
983
457
866
109
60
270
695
38
223
55
931
718
74
193
48
322
572
399
14
896
642
894
285
801
613
849
960
795
394
75
792
987
557
620
904
264
622
678
775
851
84
663
285
910
842
729
974
557
510
999
937
542
725
208
411
954
54
527
819
751
653
60
584
412
512
966
78
769
680
370
433
133
514
503
373
558
539
963
852
10
188
949
550
659
318
391
12
824
697
738
40
493
812
155
74
406
917
376
211
48
187
326
198
955
852
911
30
713
718
382
603
633
522
253
986
629
124
737
322
955
732
474
946
868
723
411
578
970
622
832
336
853
825
221
463
716
698
765
3
553
167
852
527
744
267
628
100
41
61
727
56
743
935
841
286
488
109
748
745
883
798
543
659
62
257
374
548
345
922
960
549
309
838
723
702
67
624
848
132
409
280
200
724
977
659
367
930
647
44
387
802
250
232
174
941
963
293
413
909
178
874
865
162
49
4
103
462
201
951
950
135
800
432
957
997
641
714
986
84
500
151
593
249
259
394
42
70
559
991
68
331
842
468
928
491
643
563
887
520
60
39
24
467
540
864
387
601
858
829
693
723
691
606
923
591
591
59
717
319
140
558
713
513
235
746
341
249
180
476
603
826
820
629
796
696
837
457
40
251
861
494
36
213
469
744
989
100
924
434
718
3
667
568
956
137
942
706
942
474
369
711
403
249
90
539
849
724
699
187
965
240
524
496
356
729
134
820
346
185
733
704
989
542
663
190
212
759
482
345
768
803
130
127
53
587
626
827
84
303
710
646
542
563
272
928
728
798
416
830
816
769
764
43
599
637
189
667
853
228
867
797
784
699
985
639
504
823
770
467
929
704
667
155
138
639
462
126
369
496
204
184
695
696
354
747
615
366
571
296
60
747
245
86
164
923
619
407
156
788
916
136
759
989
861
196
856
851
593
942
130
816
651
883
195
160
594
636
271
814
416
471
179
816
472
278
288
30
364
148
772
80
989
373
634
867
866
366
753
645
631
254
551
184
929
803
774
562
909
206
163
858
286
469
528
991
854
344
466
274
422
461
149
337
394
288
456
724
636
819
112
975
252
548
111
210
617
38
522
123
58
905
676
219
568
290
901
433
706
49
116
141
419
890
652
630
961
59
547
130
69
32
930
296
820
58
471
617
54
40
828
665
655
657
740
877
294
168
223
147
962
431
74
979
171
457
315
368
955
144
552
384
58
834
822
852
698
26
817
628
102
612
729
432
975
941
909
274
808
101
384
361
392
550
719
793
710
221
70
536
178
909
835
769
392
537
822
468
334
84
516
966
552
240
460
553
641
755
494
132
784
539
98
637
259
959
740
274
165
129
709
910
476
143
405
336
25
483
378
394
723
937
436
734
180
892
833
58
986
525
812
384
769
251
691
372
549
975
855
197
146
49
230
373
244
482
744
928
150
148
483
560
199
999
781
1
554
1
822
260
413
641
793
657
423
368
203
73
1000
666
262
433
685
443
702
236
387
126
874
689
984
239
959
703
622
269
661
950
853
35
880
871
342
11
535
445
860
184
55
490
113
86
598
570
478
543
471
394
978
404
703
849
142
358
425
170
805
596
951
835
528
927
141
438
364
67
259
601
6
694
539
686
916
111
566
78
585
318
208
769
713
156
474
842
964
669
496
171
281
455
349
782
119
3
492
193
236
358
785
627
422
519
315
973
627
158
843
481
754
364
265
68
435
907
355
556
320
639
806
823
212
375
788
535
33
766
156
127
502
77
631
509
259
246
811
620
612
291
585
842
861
357
993
327
651
184
963
288
763
310
342
898
12
13
408
952
201
734
764
26
390
795
118
40
284
775
348
5
936
165
986
229
15
153
429
700
819
74
927
202
750
616
395
586
408
39
762
660
132
652
6
255
24
616
386
69
657
35
463
239
576
484
447
210
199
241
323
839
896
249
31
675
323
258
819
399
7
515
616
917
581
392
502
76
803
389
608
487
128
928
960
429
436
962
95
413
677
82
227
621
259
410
429
567
388
221
519
738
967
582
260
431
618
217
423
396
36
879
266
467
142
404
116
40
795
11
397
138
800
459
489
378
714
702
860
419
575
745
545
580
508
201
955
303
680
873
249
943
169
549
870
602
39
338
78
885
965
799
26
101
196
907
348
463
330
195
366
682
997
953
803
292
964
567
968
845
260
906
685
953
879
738
643
664
860
793
246
723
69
551
528
319
658
693
151
205
303
872
349
674
475
964
951
884
301
766
868
122
271
781
359
815
752
90
309
188
97
19
373
744
157
531
636
504
491
386
5
769
413
480
795
541
950
367
74
279
976
465
394
53
273
974
263
85
469
898
70
589
121
383
584
735
499
949
701
884
715
837
390
539
113
27
476
268
20
348
283
519
592
640
865
877
992
756
373
159
477
686
778
146
43
288
439
173
406
952
708
924
869
202
103
987
714
295
56
266
348
628
561
556
896
16
267
42
607
640
702
275
112
1
863
99
139
132
453
601
366
514
261
575
681
315
283
354
560
770
135
433
75
155
182
5
415
186
330
85
637
513
319
173
133
622
415
588
677
657
307
389
315
838
348
629
694
465
786
502
84
795
184
932
569
901
244
964
956
814
664
322
930
369
678
704
782
666
522
893
188
785
506
77
187
997
945
647
928
166
283
606
660
454
442
528
824
911
735
605
394
447
622
671
218
477
48
148
858
932
542
46
698
566
413
242
554
952
430
514
48
946
951
285
514
341
404
102
192
344
772
740
765
112
90
935
912
20
495
315
73
522
105
718
657
695
389
175
818
898
822
28
403
438
206
762
500
562
487
27
346
10
822
797
496
954
465
274
783
547
861
422
51
183
319
856
527
438
276
11
346
574
850
747
683
661
830
810
327
948
499
827
844
340
285
113
943
950
696
510
988
232
645
39
724
951
688
136
969
264
701
953
876
47
878
516
1000
267
878
603
586
79
976
437
897
618
473
201
261
611
983
396
180
11
697
949
664
898
360
53
728
393
799
480
816
226
181
110
88
78
100
21
761
310
350
763
524
741
46
282
29
524
222
876
656
698
185
727
822
510
236
262
890
14
120
616
109
936
35
768
635
120
400
895
627
316
789
927
777
254
973
599
371
718
114
673
767
962
122
935
532
326
131
946
23
814
658
997
755
646
587
246
765
654
230
302
796
599
292
565
113
339
380
149
627
329
337
40
88
162
459
543
449
384
701
459
433
653
885
811
886
357
820
422
527
879
868
332
306
216
880
346
494
523
654
886
454
677
650
354
192
422
481
829
671
338
93
233
696
248
964
129
608
118
69
537
322
85
475
986
580
4
207
188
121
607
640
335
172
494
813
372
708
862
1
669
39
967
587
952
271
154
146
771
576
9
382
110
557
838
66
189
681
355
153
106
456
782
357
669
540
830
396
998
206
412
592
900
582
457
905
950
879
206
196
506
198
777
670
748
174
440
307
303
116
43
534
835
678
992
831
298
911
591
79
303
983
111
699
86
929
14
711
512
643
883
576
88
643
197
521
36
783
391
850
941
767
860
910
92
768
25
945
836
305
868
467
446
444
980
560
718
475
257
246
840
533
40
955
392
278
334
145
748
459
945
692
836
335
422
272
944
198
367
329
617
291
570
751
481
797
174
389
567
827
380
587
104
994
64
611
654
613
80
573
510
264
794
459
996
166
244
549
454
781
913
435
162
590
768
549
771
413
509
905
736
491
68
829
114
871
279
548
263
767
759
211
662
926
676
297
284
900
512
435
979
213
283
767
208
459
858
147
79
698
101
691
998
881
900
785
267
414
334
865
904
748
330
881
549
213
367
318
451
505
398
803
855
565
973
231
205
521
357
527
378
666
90
759
184
283
129
289
261
983
64
984
99
782
504
481
106
53
776
696
578
73
728
994
858
453
28
390
906
499
771
639
238
908
280
138
829
312
904
768
165
664
386
879
243
83
46
330
410
151
119
181
587
242
528
362
25
640
271
668
462
476
1
225
779
885
633
212
240
384
665
42
504
397
35
496
985
824
744
63
320
286
279
631
487
631
451
975
436
723
520
729
104
24
787
114
87
279
75
890
589
70
779
90
438
711
785
665
377
243
235
714
792
854
551
593
654
393
624
657
666
290
925
751
127
625
7
940
612
768
652
361
261
69
920
614
50
239
159
197
97
843
427
897
254
787
386
995
869
920
909
103
148
633
7
357
449
948
373
43
116
422
567
415
279
76
775
706
134
586
852
558
29
335
715
704
980
498
351
654
443
504
911
867
986
513
803
620
380
168
276
219
56
252
419
613
260
764
717
695
823
819
680
498
697
821
996
607
412
727
412
232
729
551
936
476
268
389
539
498
582
990
923
53
286
871
576
544
138
876
140
297
657
943
1000
939
887
570
516
697
898
324
179
871
276
993
553
741
829
332
903
818
307
278
489
702
486
81
943
221
95
995
32
169
394
493
687
177
808
465
33
290
599
32
764
557
724
412
8
392
156
733
441
703
323
977
324
470
352
852
523
144
436
513
5
646
385
646
647
196
381
563
591
528
87
338
429
959
236
560
360
424
436
456
95
582
52
523
386
209
530
726
621
82
895
180
298
236
466
353
455
170
375
563
838
764
591
513
29
934
897
948
736
558
174
199
157
399
124
20
320
833
673
734
812
489
65
582
670
36
519
136
654
448
977
836
129
814
83
453
367
47
526
933
783
124
75
757
310
691
174
569
560
294
916
736
947
434
97
309
14
350
967
448
548
932
150
630
328
565
666
971
348
590
465
955
176
91
41
984
847
403
718
929
785
417
954
131
334
649
442
284
534
822
35
334
556
112
291
831
417
528
49
961
282
501
888
786
990
817
451
37
541
452
445
643
117
409
754
862
665
498
236
731
888
981
760
821
983
629
837
473
433
408
670
460
516
781
438
651
554
104
303
628
944
124
183
562
661
306
439
998
633
480
960
600
272
984
486
714
538
503
17
402
321
193
349
92
90
692
19
493
600
316
126
309
950
517
93
550
816
829
295
504
725
615
13
836
3
509
820
393
955
645
882
233
846
973
369
416
851
570
943
845
795
404
675
35
428
419
743
419
520
711
843
279
758
443
589
272
142
715
439
459
940
119
722
590
384
553
358
168
572
305
292
246
856
382
938
148
753
872
489
344
628
261
523
810
576
924
304
576
332
877
670
705
236
647
256
812
136
942
475
753
364
89
969
5
484
234
628
691
20
547
518
696
436
665
545
645
463
19
870
821
294
752
593
339
202
270
736
57
170
115
972
536
370
583
85
44
276
636
97
823
211
453
981
114
894
164
576
800
618
624
519
99
359
507
408
19
27
651
672
36
600
265
603
870
937
634
686
445
970
673
588
705
649
173
822
309
382
32
518
804
661
551
344
606
128
330
555
742
638
937
936
112
903
99
729
323
32
873
286
409
945
17
661
863
605
327
208
880
944
610
744
280
401
634
993
769
126
82
572
986
296
733
488
917
496
654
160
552
82
889
258
425
538
638
482
144
810
380
674
724
496
29
390
393
423
349
945
221
640
274
410
895
734
190
144
776
969
299
291
953
967
136
880
953
864
580
373
842
808
376
280
169
574
75
468
122
255
297
456
641
765
708
816
855
370
281
772
680
611
675
858
200
274
188
283
720
735
384
849
245
977
323
928
591
141
606
850
578
408
783
951
57
976
48
509
366
12
554
216
524
638
851
684
647
825
752
519
865
201
329
11
645
976
906
398
975
930
413
775
181
106
286
479
952
598
953
370
135
777
592
202
552
948
306
148
601
502
799
740
311
217
158
344
857
339
252
420
249
34
582
605
455
477
140
376
560
316
492
836
917
774
5
145
520
922
255
433
13
562
172
681
478
740
627
94
18
941
594
674
601
538
672
647
826
545
931
415
741
647
918
633
750
323
737
109
658
604
297
513
913
346
292
187
308
726
839
506
85
677
452
204
39
788
294
344
287
258
49
215
350
670
569
75
549
472
640
262
538
221
45
143
650
517
805
567
706
897
936
715
991
955
503
667
749
275
203
684
207
139
982
99
615
44
486
906
316
475
82
593
242
464
392
528
855
326
184
694
785
228
920
800
103
488
650
825
298
911
743
600
846
986
153
293
785
701
861
466
446
558
769
15
921
646
870
716
363
302
772
993
449
968
60
236
750
973
287
381
615
567
312
147
658
777
513
249
141
214
893
140
347
462
908
581
874
991
487
167
80
323
13
239
37
450
750
43
41
984
485
338
72
279
335
598
989
139
832
989
656
286
41
505
140
355
701
433
241
966
798
855
380
514
993
785
68
189
160
533
464
869
365
299
517
788
662
11
922
529
9
676
986
111
128
921
57
264
664
322
940
649
209
240
989
604
504
368
644
861
366
918
59
81
270
823
147
166
108
611
214
737
744
82
620
275
637
95
926
890
365
353
551
518
385
406
833
279
80
154
453
751
173
174
723
552
47
744
289
877
191
796
141
610
868
300
80
156
228
564
339
477
189
626
452
676
682
398
352
222
931
495
773
427
753
979
300
828
779
539
346
988
654
886
903
571
604
783
554
844
382
51
344
207
813
675
725
23
330
540
685
199
108
717
285
45
42
897
863
2
775
464
886
557
375
975
628
517
455
660
315
152
17
350
553
107
190
255
441
312
834
18
291
833
928
325
881
228
157
775
991
255
840
640
522
871
653
342
220
256
575
430
961
639
171
762
378
260
292
779
906
413
260
516
1000
612
743
620
572
528
93
603
204
39
471
858
592
857
995
410
75
935
282
427
420
906
8
619
938
821
845
229
749
184
13
131
66
258
767
373
750
711
302
590
360
201
340
717
741
8
620
674
133
923
312
820
76
763
889
78
614
765
160
157
231
927
625
390
508
957
654
285
539
556
887
518
557
205
796
214
190
141
800
449
648
9
49
45
287
659
754
384
820
352
962
493
734
881
159
511
296
426
436
577
653
473
32
202
303
354
518
761
302
945
32
282
781
108
407
606
209
672
382
882
635
400
778
450
615
691
426
726
703
934
977
777
757
749
802
641
530
475
972
423
242
885
808
328
5
808
869
215
722
175
800
813
624
131
721
944
851
122
127
852
289
731
649
781
822
16
92
753
433
27
573
140
989
833
84
445
537
75
265
415
424
43
136
209
580
526
518
130
513
940
572
659
104
984
938
697
735
783
173
90
104
701
570
804
165
53
609
724
934
581
385
83
513
970
859
628
927
441
237
415
69
126
773
560
268
158
478
461
431
170
784
785
84
188
307
99
11
396
458
609
161
68
660
935
168
558
176
447
59
33
769
219
309
79
625
104
207
446
552
266
720
496
603
358
721
456
703
232
252
31
391
456
368
184
170
670
471
720
466
771
995
904
750
980
469
689
859
174
890
464
371
249
626
685
490
79
485
799
965
267
145
420
351
990
340
597
834
887
963
887
15
436
162
929
520
576
746
391
127
497
151
735
886
859
339
646
472
387
43
176
757
558
21
125
675
66
656
456
290
615
587
492
780
639
884
729
68
205
84
225
274
296
567
381
519
639
726
778
850
199
351
413
827
376
912
233
73
431
562
775
267
46
868
413
59
691
384
984
783
330
613
711
263
629
301
490
46
117
230
141
635
953
527
935
198
803
312
950
25
521
575
849
892
807
915
238
578
620
615
582
245
407
223
121
405
391
381
622
976
732
378
768
433
191
52
144
520
451
250
119
269
50
806
42
44
174
864
362
566
535
235
768
755
630
590
133
350
424
626
222
961
737
84
287
963
397
68
259
919
44
436
460
30
466
971
204
49
405
931
572
959
879
729
757
203
408
592
854
116
935
960
501
480
672
171
856
568
791
723
642
524
925
536
874
691
605
466
9
331
642
644
951
984
44
417
170
464
89
574
295
980
42
867
322
886
387
383
17
464
4
240
438
809
126
300
348
871
25
780
212
334
179
301
990
21
249
363
304
333
110
133
38
643
949
749
509
884
80
522
380
409
294
319
191
611
354
540
244
482
464
556
489
215
665
390
38
707
665
709
790
511
712
941
456
957
146
466
610
862
734
89
212
301
688
541
589
335
67
781
366
185
144
403
991
192
390
321
136
247
760
220
995
507
365
424
650
38
224
935
4
172
426
685
485
211
746
526
992
899
712
468
436
512
672
510
575
623
196
140
735
145
995
717
484
113
928
925
741
97
112
321
774
269
474
687
993
152
406
271
625
463
969
775
95
287
306
829
581
691
777
868
703
191
762
229
902
818
441
291
607
530
792
356
652
641
707
911
25
437
189
27
910
856
223
409
527
707
991
512
104
274
807
419
805
108
233
73
826
790
450
23
672
179
198
792
772
679
573
894
451
870
79
226
43
608
557
49
48
477
228
100
170
417
843
873
155
330
40
545
951
509
651
515
379
305
942
579
278
847
69
490
696
852
274
326
678
225
339
950
227
919
776
360
523
384
238
793
510
371
309
274
190
114
918
618
753
172
55
272
915
452
429
38
99
174
264
183
281
927
589
622
914
853
496
761
844
519
152
896
348
8
13
362
298
282
596
231
105
914
88
930
961
601
730
964
851
424
177
424
189
736
824
136
684
863
679
780
996
64
53
727
735
134
311
36
309
506
621
885
896
849
994
175
341
191
619
574
23
511
774
576
511
178
142
572
934
723
955
158
551
272
447
93
515
606
734
352
598
121
323
201
821
615
80
27
764
417
973
876
568
691
220
637
78
257
612
385
792
780
935
85
194
890
1000
513
43
887
776
831
553
794
716
697
171
888
912
97
778
190
347
129
14
366
14
719
319
126
644
457
595
662
558
497
355
812
552
153
932
821
869
934
675
119
799
287
130
769
443
320
93
273
986
81
663
455
518
993
321
436
432
760
275
157
950
434
910
947
370
429
995
884
627
732
582
183
139
319
408
506
322
194
387
290
685
652
798
981
245
802
678
958
19
341
953
762
716
61
204
150
183
463
887
358
923
532
550
187
945
817
903
178
497
973
753
967
59
439
510
546
546
97
219
592
440
571
113
646
901
877
12
434
536
13
455
646
833
179
71
217
478
698
285
499
120
267
927
872
939
167
306
626
883
453
287
735
466
511
163
407
808
246
67
600
48
345
258
16
123
748
521
875
471
583
449
965
768
899
753
763
981
23
839
383
64
108
244
310
178
2
471
101
631
855
250
141
865
448
991
902
369
254
838
941
578
757
38
433
360
332
199
138
176
980
717
561
863
927
576
478
899
960
16
799
36
589
875
759
438
794
918
438
893
238
648
218
259
973
578
274
660
59
413
893
977
582
621
858
704
756
23
913
161
572
23
844
435
576
990
59
837
798
131
778
63
846
363
333
776
564
556
145
216
626
454
82
630
111
643
9
72
430
976
231
194
640
695
939
401
990
537
239
967
980
368
919
944
88
338
165
988
644
166
844
348
42
404
254
279
495
691
991
377
778
128
915
126
961
795
503
237
480
877
938
454
560
99
601
368
30
37
319
108
744
113
985
750
667
293
856
612
251
153
133
267
538
213
124
201
225
944
441
557
787
122
467
535
157
742
769
206
364
364
865
18
260
864
44
74
227
281
473
747
127
815
576
204
236
673
89
430
474
434
204
276
315
27
843
512
749
848
751
23
239
930
296
191
595
197
278
999
133
843
112
516
863
717
702
532
370
175
192
518
407
331
745
331
296
791
234
79
534
719
579
454
55
995
271
70
309
257
886
891
691
818
692
454
212
887
125
529
504
981
458
95
412
167
71
886
293
845
984
560
12
426
216
438
717
893
334
301
508
827
867
523
671
866
458
298
329
449
720
734
61
911
444
464
810
510
334
176
815
516
443
561
21
819
335
654
272
865
127
231
714
879
306
353
975
510
370
861
435
590
552
545
59
258
822
779
413
809
598
864
1
537
863
165
239
818
53
141
745
53
725
613
105
551
918
191
554
857
457
212
937
514
830
1
312
948
571
376
505
111
160
567
865
803
515
136
566
204
7
714
571
286
933
801
417
738
163
177
26
703
929
864
889
613
68
903
101
603
16
961
307
133
386
488
416
508
761
512
45
655
107
375
973
994
242
739
523
17
265
783
549
228
307
415
132
232
766
115
566
872
132
400
482
308
839
163
721
789
945
225
118
976
52
557
268
570
729
444
369
640
642
917
867
737
771
519
481
748
163
789
157
231
81
442
187
532
342
76
883
647
547
414
15
496
686
656
446
978
695
498
968
862
139
473
130
866
722
751
325
211
11
182
540
621
365
735
177
297
124
478
293
711
362
265
138
100
247
442
135
233
55
138
146
938
436
649
996
221
556
889
870
400
478
216
254
67
13
641
673
643
941
430
750
25
654
304
302
533
863
992
75
723
545
141
970
950
917
436
878
466
287
650
374
695
992
406
222
955
979
551
545
405
189
924
680
98
858
126
345
585
961
12
561
769
754
183
165
436
349
29
784
821
688
38
213
721
960
857
979
936
180
786
835
398
755
362
818
710
697
915
465
461
665
619
10
491
522
791
629
799
13
376
248
201
999
289
595
156
791
620
921
529
648
872
777
622
806
595
765
394
184
6
572
52
419
861
962
684
159
370
707
431
570
295
531
135
25
65
624
219
865
456
173
516
249
575
733
686
104
663
757
72
340
923
392
857
608
836
805
671
56
117
568
886
92
734
958
424
617
939
347
588
875
778
550
126
737
659
63
254
532
801
761
484
583
991
526
221
759
407
362
405
678
763
966
624
955
499
527
592
311
343
325
502
246
329
366
249
643
430
181
536
98
975
188
687
49
24
999
293
167
212
191
206
92
187
966
96
596
138
388
543
641
334
954
508
677
276
605
57
917
497
600
849
867
959
41
184
923
611
120
154
870
310
155
526
516
33
929
408
738
861
379
828
296
750
324
787
441
609
964
86
227
900
378
541
299
999
484
110
398
637
512
675
628
432
194
684
385
673
875
102
393
515
546
662
81
452
87
568
167
434
44
97
536
606
367
806
349
40
700
244
734
930
660
916
515
107
90
290
30
462
2
268
993
490
625
7
683
413
73
236
570
630
486
743
20
837
136
836
991
871
303
996
168
219
475
499
393
28
793
241
296
951
917
172
446
581
625
189
952
766
756
351
441
476
180
620
89
1000
321
937
522
697
793
999
669
486
399
57
536
87
43
240
636
656
596
406
130
28
473
270
717
939
815
821
319
944
268
178
546
867
715
183
653
546
693
85
553
21
540
881
148
765
929
14
81
810
954
994
690
753
74
909
707
397
337
797
876
741
634
493
302
121
605
700
176
220
249
88
423
321
301
491
655
109
591
703
910
507
931
808
739
400
219
180
607
861
988
209
191
509
453
96
78
588
350
135
645
315
810
656
934
947
30
866
579
192
574
249
228
437
803
916
380
440
356
653
332
617
326
765
662
28
138
545
124
435
204
944
587
638
373
289
306
597
551
311
64
995
670
221
516
111
630
403
460
639
32
679
514
869
644
805
589
337
863
424
194
340
895
84
629
333
953
219
153
54
730
452
889
124
424
363
60
328
706
694
425
233
540
58
498
845
905
214
364
803
995
511
204
770
736
330
109
855
334
522
720
443
17
626
827
362
73
984
844
632
400
639
694
986
223
597
376
439
672
227
619
702
924
294
860
929
465
706
916
613
496
428
500
320
305
875
442
764
786
509
96
143
329
308
753
687
453
209
926
218
25
94
487
223
142
269
986
282
137
686
267
973
193
654
600
531
635
498
973
165
198
670
348
399
991
624
752
770
444
773
397
349
146
237
893
697
202
401
905
742
975
45
135
910
927
290
980
782
685
448
728
474
436
180
598
192
270
668
956
649
421
750
692
798
349
525
117
431
739
855
13
853
342
392
305
642
699
774
123
227
357
366
81
924
514
620
397
764
940
336
292
698
39
378
804
815
732
190
679
435
630
338
509
564
659
867
185
313
998
246
992
236
278
340
519
935
439
609
195
984
593
413
497
665
976
400
496
590
247
782
969
943
231
410
70
383
610
145
348
549
596
116
548
189
755
603
440
628
540
138
131
6
664
637
64
94
492
439
314
761
444
655
200
358
126
938
242
690
302
870
845
719
368
81
279
341
616
143
961
348
697
171
808
463
129
183
135
666
357
255
249
322
239
901
284
844
923
195
105
595
611
426
680
623
364
935
22
664
701
958
162
86
621
816
836
380
264
972
923
490
623
624
80
468
261
928
152
797
299
320
46
832
515
352
724
253
196
432
680
14
656
200
857
735
541
476
886
221
365
705
263
654
40
857
681
935
41
925
81
87
38
407
146
718
258
203
619
318
925
475
1
736
341
195
455
948
768
558
540
709
868
899
89
344
725
106
436
93
924
872
755
327
558
352
40
728
314
281
474
228
614
473
811
633
69
349
741
167
451
627
268
895
159
112
127
350
203
193
386
586
856
624
359
521
528
856
925
293
373
608
629
40
216
674
301
94
192
603
907
257
472
665
1
50
287
550
956
993
205
848
517
98
384
460
108
896
203
320
792
247
206
739
248
102
852
387
911
404
954
339
118
154
691
757
62
332
835
903
136
981
545
508
108
766
766
211
140
272
390
860
997
489
482
83
675
992
442
612
107
618
783
749
57
203
717
823
180
41
576
173
196
83
4
330
349
837
724
667
789
508
284
373
398
530
659
681
225
130
214
758
761
617
974
859
958
942
522
871
981
128
224
370
932
614
502
48
2
817
417
388
612
68
528
21
160
583
764
594
510
248
94
624
440
319
134
515
710
330
689
411
693
223
993
804
708
623
671
788
458
231
842
658
623
270
120
454
182
932
692
360
245
966
916
982
747
39
988
420
9
224
56
942
327
206
418
586
327
915
41
650
488
47
265
719
142
269
44
61
16
925
579
328
619
444
292
470
290
85
449
460
359
85
95
221
816
555
763
959
341
246
16
906
521
231
895
830
243
170
729
327
690
424
724
194
738
614
434
95
445
804
101
963
605
26
307
981
938
156
850
56
719
403
597
397
780
496
659
302
468
341
729
676
666
147
895
266
568
15
538
425
658
334
774
175
292
96
112
53
381
701
390
188
181
447
315
874
37
561
748
139
167
750
773
468
763
459
786
87
154
671
946
172
906
191
710
950
422
44
706
530
602
155
280
681
60
495
560
317
808
997
669
90
196
522
847
710
136
29
223
841
54
516
350
450
656
965
244
17
194
41
172
373
386
738
502
339
287
442
74
415
744
148
231
20
651
380
470
364
815
239
790
500
246
190
244
694
869
979
519
622
537
574
103
959
45
765
642
146
645
183
248
502
658
37
955
578
690
550
518
334
660
897
546
453
182
903
545
115
847
36
767
793
209
316
177
207
405
998
974
38
367
597
573
471
943
678
830
263
451
140
255
758
694
175
807
265
738
457
363
245
979
115
913
826
127
49
997
245
580
879
150
256
652
602
202
604
904
398
458
223
545
787
161
995
436
502
249
461
908
251
126
237
897
925
93
398
895
610
710
502
237
727
286
865
769
461
675
411
673
412
447
924
705
747
805
405
101
238
494
350
667
194
478
657
205
942
384
481
943
540
856
544
911
543
55
165
714
607
10
304
505
983
768
517
971
923
139
11
744
192
224
457
644
525
790
597
789
556
596
970
812
232
509
667
670
916
644
620
788
132
195
842
915
24
930
436
932
167
978
724
46
937
285
921
680
267
642
341
160
746
554
555
34
291
106
124
630
824
469
225
387
251
6
974
452
671
999
668
996
442
724
351
546
789
356
753
500
309
169
483
59
306
878
198
189
921
101
250
727
662
80
982
472
339
234
195
231
896
522
446
342
299
934
67
733
314
182
734
346
324
103
308
267
216
368
294
863
603
570
892
330
763
362
937
859
979
632
276
804
740
397
888
755
371
509
669
718
351
271
595
293
218
462
637
848
765
576
540
523
227
750
220
502
482
529
837
943
656
678
50
733
732
453
686
585
313
925
482
97
852
119
653
644
860
683
470
578
172
68
695
781
973
576
421
72
164
372
366
93
171
191
972
540
963
161
673
503
642
628
857
274
33
907
446
239
952
804
36
914
720
747
321
864
273
717
334
186
614
698
220
209
103
979
315
940
590
975
814
524
107
554
865
83
51
803
429
732
348
840
418
730
187
884
524
186
684
520
63
270
498
198
165
726
529
382
998
648
94
761
163
628
756
240
184
393
976
256
328
405
252
735
631
825
684
949
1
402
969
545
990
859
438
33
816
559
24
646
690
96
766
616
924
655
163
355
370
241
492
22
561
124
105
269
720
585
940
710
945
276
567
789
990
619
976
333
143
552
752
475
476
652
990
843
333
164
641
880
513
232
245
790
786
81
145
777
517
120
608
776
473
638
749
550
504
640
162
318
541
507
869
349
444
342
786
832
277
81
659
645
31
32
223
138
181
772
496
815
559
339
748
965
263
829
880
338
996
415
936
311
404
684
662
119
510
205
458
940
70
855
649
767
868
570
265
9
519
479
837
440
259
916
953
440
25
306
660
588
946
827
610
79
310
176
224
51
522
583
786
464
201
208
167
850
599
401
790
735
215
909
713
953
538
452
144
895
620
302
367
619
901
729
431
645
370
266
968
762
152
677
343
361
533
422
363
588
686
570
264
32
762
188
317
108
631
346
947
564
626
67
372
607
115
195
862
291
270
167
565
947
398
992
74
858
701
616
60
72
499
30
477
214
823
129
517
558
437
319
840
957
175
933
404
680
291
2
857
534
125
978
507
26
234
390
532
105
966
917
81
178
897
287
456
486
747
524
684
125
753
175
177
283
254
667
91
465
879
655
243
968
563
794
771
638
583
838
942
278
461
435
223
78
400
123
739
581
577
824
80
23
807
962
867
873
628
293
187
370
423
294
99
687
473
91
333
693
39
864
935
625
153
282
13
248
685
836
76
84
278
610
710
596
75
534
711
250
791
522
500
778
257
114
471
572
568
153
494
895
965
687
660
129
274
187
942
368
29
479
372
635
788
876
537
286
683
2
962
517
965
476
427
323
296
662
112
432
543
302
91
345
642
333
209
518
236
157
65
108
289
417
613
901
478
155
840
446
291
177
672
821
510
939
19
544
299
345
854
45
670
1000
786
128
435
591
399
533
80
185
659
840
968
607
946
235
324
54
395
845
485
707
763
492
781
580
85
350
791
315
426
576
934
507
213
170
884
583
607
166
689
549
412
83
929
247
715
467
789
803
152
479
163
907
830
570
682
588
978
994
159
643
98
423
627
11
447
638
957
47
288
364
167
290
841
659
403
581
49
160
446
200
968
92
479
647
200
729
644
73
803
786
482
194
940
275
485
93
239
849
82
766
201
151
133
581
715
922
857
117
875
305
21
492
522
959
454
477
561
978
756
572
775
5
229
746
46
391
250
192
732
262
755
307
506
142
132
315
68
393
773
796
569
657
465
203
600
438
389
888
547
250
355
139
754
557
144
831
732
756
578
616
721
995
882
3
202
930
574
378
857
820
966
389
164
587
830
642
425
336
914
462
769
928
792
417
797
882
454
553
284
93
897
181
759
625
433
487
224
534
397
975
784
546
280
889
938
50
232
242
963
688
77
815
713
744
947
692
637
96
313
860
721
894
2
880
25
897
285
727
625
566
883
748
702
318
343
697
934
711
392
624
977
938
817
579
783
958
576
157
128
322
172
373
384
180
252
442
94
23
362
3
391
655
131
240
579
287
609
678
746
737
894
4
220
616
285
869
400
611
847
908
532
324
425
277
486
723
842
477
273
935
848
796
501
658
508
883
195
414
358
960
294
747
118
968
35
254
191
429
785
796
176
405
844
359
499
53
359
866
310
631
623
556
46
88
787
538
214
475
681
51
335
128
301
306
313
431
85
99
664
166
494
339
65
373
352
911
761
833
76
615
582
309
794
341
709
325
739
61
636
749
68
576
845
139
36
6
293
794
300
116
648
756
134
996
476
582
998
605
767
910
981
65
343
659
361
349
815
18
232
117
376
556
673
600
421
889
315
342
151
88
537
259
642
362
122
522
698
576
879
673
879
329
711
217
596
368
871
438
367
1
336
96
251
53
845
206
870
418
695
164
316
37
391
854
724
202
516
629
272
923
999
200
115
447
513
403
138
545
812
744
824
996
796
769
849
532
788
92
384
288
143
152
187
699
383
774
452
339
800
511
929
686
362
387
210
720
950
194
455
532
991
484
918
744
502
836
540
926
423
124
650
133
50
680
330
320
320
366
377
365
372
546
885
373
179
440
547
399
390
848
162
915
88
233
671
76
653
828
964
603
342
118
943
71
79
558
553
701
405
536
840
783
280
817
305
916
972
34
1
738
453
713
834
205
863
844
392
686
974
423
393
987
55
688
522
811
232
937
927
848
592
301
626
169
650
443
676
168
744
541
548
851
317
794
725
208
959
540
665
769
404
25
474
768
498
584
263
786
623
239
987
822
782
627
290
212
890
454
834
785
134
546
367
551
278
519
473
395
197
108
654
198
332
99
690
880
380
349
804
502
563
639
350
82
921
257
745
364
650
984
604
193
276
304
168
26
826
460
931
257
296
616
190
753
121
510
223
474
666
431
514
95
810
418
418
929
926
873
333
976
493
628
184
133
126
664
822
665
302
45
159
469
192
980
139
16
413
260
481
957
550
606
318
486
60
150
621
509
796
635
201
783
736
623
185
174
957
788
270
231
241
623
592
335
710
26
740
324
402
793
186
744
724
397
906
809
479
587
195
639
614
544
64
709
71
365
800
72
402
516
107
12
744
766
192
673
298
921
835
814
858
990
332
429
340
99
425
813
335
928
855
862
884
967
176
904
565
761
807
251
70
68
197
825
657
626
530
186
18
720
691
760
682
724
118
905
861
54
543
264
166
629
601
44
737
941
384
64
927
815
29
246
717
968
20
233
400
381
682
466
216
48
141
39
832
232
484
716
164
100
28
488
699
800
638
706
632
571
323
274
444
26
21
698
198
824
825
503
743
816
347
165
168
694
435
669
601
916
451
917
893
635
515
360
797
510
241
70
68
533
149
100
452
117
668
830
904
764
921
884
246
615
880
503
138
795
212
615
731
133
256
263
629
992
562
855
546
509
378
697
408
525
418
161
600
535
587
201
193
39
870
10
163
827
153
469
690
324
872
405
251
213
324
102
324
714
6
548
170
417
158
217
765
604
156
399
177
607
339
544
892
741
956
876
11
539
223
276
85
412
615
628
773
572
724
893
610
586
351
67
852
657
988
449
301
151
189
945
949
196
641
569
951
896
674
883
465
340
845
914
499
862
524
540
188
205
559
497
619
592
453
883
206
509
931
902
838
107
804
503
386
325
54
870
143
314
742
44
856
988
390
32
937
770
84
284
693
575
405
96
211
200
121
586
656
593
359
390
123
427
260
463
683
95
546
693
78
843
75
656
78
444
829
470
108
324
544
660
124
721
284
153
64
864
226
270
517
836
227
839
389
756
992
635
359
428
23
778
950
246
53
994
490
251
560
655
310
363
606
54
690
316
511
871
375
994
361
88
584
147
511
569
816
593
843
998
97
65
879
473
396
485
169
241
850
978
9
348
112
367
263
53
318
1
356
879
208
945
635
344
324
79
554
503
90
851
865
650
311
477
87
32
633
447
548
567
512
7
100
942
521
196
361
996
824
212
320
277
697
141
972
926
451
953
983
698
818
190
87
970
623
88
874
576
721
436
749
97
636
809
917
603
747
689
345
283
665
575
402
812
191
186
358
262
468
972
196
499
2
181
189
927
485
179
464
572
92
761
989
105
651
360
484
295
560
757
127
908
681
140
948
471
200
188
812
307
329
104
208
16
13
731
623
881
420
205
508
64
783
655
376
112
973
876
888
782
434
601
406
899
684
349
222
248
507
660
588
689
900
898
221
320
235
198
418
980
39
359
835
677
619
274
140
993
143
23
775
352
598
668
922
154
786
826
442
414
985
262
232
489
623
133
670
945
183
545
191
869
470
122
661
617
143
614
476
358
27
721
396
261
152
551
274
911
58
107
405
418
454
950
63
626
323
739
100
469
768
518
707
276
885
540
57
423
960
873
235
566
259
250
926
452
3
320
344
620
973
809
80
892
108
2
816
114
552
582
782
713
900
683
452
694
832
159
516
488
579
454
495
520
549
711
883
787
607
62
609
676
844
453
24
472
346
242
802
458
743
527
130
511
756
415
948
80
843
280
870
88
103
244
460
971
361
291
111
665
286
183
184
754
933
746
783
840
492
817
577
322
924
379
5
612
260
953
435
571
53
75
15
161
528
43
807
576
635
289
813
542
273
844
29
351
52
394
176
794
194
82
433
801
992
234
976
205
608
200
114
694
658
638
693
324
655
937
706
276
401
809
108
566
479
991
252
896
268
37
800
296
584
133
717
189
565
81
767
334
832
899
105
901
84
100
410
881
432
718
23
502
862
703
470
947
517
803
635
877
726
329
589
782
947
671
872
130
910
912
894
648
979
744
826
598
568
143
175
861
896
999
966
277
347
883
292
581
509
89
90
876
507
720
750
686
152
534
506
499
825
455
200
784
981
839
763
953
424
890
768
205
380
105
253
445
693
421
678
649
978
184
24
153
5
775
731
299
295
649
149
25
597
560
850
219
115
297
228
229
524
298
839
158
129
333
877
440
814
719
198
695
395
505
880
780
346
385
167
488
685
447
312
657
441
917
520
623
985
449
161
821
773
998
666
908
602
520
412
534
772
147
551
852
608
612
663
120
326
841
577
578
997
90
685
172
673
798
608
251
647
919
242
6
937
919
766
329
191
932
879
779
444
572
394
372
760
767
101
959
772
415
832
2
506
136
399
437
649
960
975
174
371
972
250
443
162
885
120
841
807
132
930
57
340
567
41
447
551
624
932
643
79
811
750
88
582
254
38
539
318
238
567
36
377
418
780
765
328
346
86
789
580
23
870
516
88
230
584
499
737
442
822
265
394
603
690
669
256
255
79
179
125
370
417
436
398
575
416
768
491
605
395
849
915
456
541
447
462
642
841
838
612
310
415
394
271
784
31
602
679
479
907
150
962
168
721
420
449
947
472
220
646
714
890
337
587
252
265
913
345
142
835
51
347
330
531
588
403
743
565
183
50
144
215
278
66
102
343
33
365
106
92
19
859
194
952
459
499
496
277
66
712
651
547
447
626
420
361
538
252
976
863
378
952
11
201
879
289
834
739
569
832
89
645
808
765
965
594
59
799
19
481
637
53
274
301
907
244
292
922
943
809
804
715
901
266
978
347
143
939
877
846
702
33
871
640
414
452
579
640
853
852
653
890
979
992
472
20
876
70
934
597
856
434
861
254
206
210
248
484
394
484
816
844
942
407
280
479
25
71
16
325
250
386
200
17
445
148
732
197
989
374
217
267
391
414
270
432
916
145
779
734
592
112
184
144
860
813
262
407
257
831
272
523
109
628
122
748
497
161
770
833
434
147
44
964
215
446
212
916
424
597
980
457
829
267
446
500
947
384
379
83
196
795
695
719
519
819
751
820
221
649
781
747
84
775
795
519
656
541
845
131
414
570
984
121
106
170
202
27
28
60
278
379
203
186
966
846
538
280
638
314
979
380
436
943
491
220
136
376
355
716
747
976
933
474
136
289
68
827
4
36
502
421
735
132
134
217
124
886
844
575
189
835
671
946
248
153
715
269
967
602
654
15
444
205
243
588
506
205
29
556
11
18
407
193
513
406
632
355
193
329
274
354
799
814
782
848
959
465
354
756
743
80
678
602
15
710
73
551
556
969
502
862
413
847
350
83
421
954
768
829
193
348
918
284
735
12
703
101
887
543
904
311
581
238
461
79
93
107
753
423
254
36
186
783
78
284
98
27
355
902
997
313
715
145
652
359
490
629
586
283
102
735
192
347
885
905
694
316
53
585
336
206
716
225
81
750
690
321
158
543
843
191
521
749
925
909
456
540
450
216
681
556
255
32
519
160
417
687
540
146
466
602
7
53
874
413
491
187
462
931
272
778
168
777
986
296
126
641
195
172
851
932
740
314
157
268
286
544
667
901
325
533
104
875
639
897
722
961
851
542
810
897
750
101
774
302
49
824
305
939
363
369
590
567
535
706
479
507
116
256
146
657
826
300
6
5
988
826
265
825
450
322
403
828
477
365
470
225
879
688
529
114
430
843
645
216
202
295
10
647
330
246
785
181
175
739
829
500
636
702
224
30
493
882
925
201
703
188
483
348
750
751
553
827
574
815
471
255
606
243
57
611
335
800
435
750
980
106
160
694
517
520
495
49
404
439
857
955
289
146
79
986
780
311
34
852
213
135
473
531
393
975
750
632
873
146
363
870
477
255
2
983
639
900
218
732
132
843
704
775
440
547
878
516
866
20
881
772
465
283
537
631
132
318
121
728
142
261
179
778
966
921
539
898
106
863
433
22
778
643
96
332
211
347
826
706
707
685
895
66
95
665
720
963
526
829
92
970
515
566
570
275
537
20
4
903
67
2
566
137
141
675
891
98
448
423
26
275
57
467
82
318
218
850
580
283
405
992
420
683
601
713
398
136
592
429
282
500
156
627
300
921
692
273
876
237
54
532
966
622
298
186
468
672
526
191
317
85
847
744
402
658
958
738
275
732
465
515
404
646
95
999
911
893
782
971
229
969
540
483
411
291
611
304
482
696
524
701
114
761
331
538
731
435
654
719
960
941
110
401
718
846
69
933
960
301
323
883
448
437
802
150
561
131
581
676
931
500
387
86
673
474
300
367
313
934
700
318
635
560
111
48
304
85
736
683
340
532
615
308
132
407
290
283
299
850
987
836
543
852
37
942
196
443
84
919
253
657
986
688
936
877
737
521
496
903
938
768
527
754
122
364
650
435
337
934
669
540
578
488
261
182
531
168
332
759
542
23
606
366
587
1
914
996
535
81
589
611
778
485
193
228
490
43
168
267
98
467
378
961
609
303
758
312
898
909
845
44
370
278
855
919
713
421
726
966
515
723
168
570
877
128
662
508
345
939
394
983
801
487
621
836
302
992
997
755
433
132
229
386
95
47
594
948
976
280
570
438
52
923
96
461
592
348
949
689
53
865
367
654
687
30
705
866
455
83
665
480
47
821
23
373
320
417
375
141
19
735
150
554
823
51
963
405
636
93
933
968
178
579
125
944
640
787
39
916
742
238
339
507
479
191
582
19
388
956
645
707
684
426
675
970
782
282
682
213
224
455
859
72
801
711
219
795
149
141
193
704
128
418
872
399
116
37
371
9
924
106
3
613
407
921
186
811
358
695
92
191
37
824
933
678
288
378
576
362
632
58
168
443
341
939
850
281
490
960
873
800
537
918
40
357
961
606
351
468
997
398
217
686
701
544
844
126
143
796
554
288
639
909
341
920
387
54
446
980
840
824
31
169
757
713
927
849
993
285
388
289
369
93
772
91
713
324
349
437
834
689
731
252
854
626
767
167
469
819
470
280
104
132
80
621
172
981
166
347
695
555
192
145
367
661
954
8
329
33
283
474
994
467
140
572
38
470
846
389
799
359
456
672
662
339
565
985
931
186
709
998
370
528
911
197
561
229
133
512
405
553
518
657
574
214
914
405
943
347
251
937
980
770
140
596
511
966
881
123
911
719
617
501
761
154
697
567
634
241
837
202
15
243
125
481
504
340
800
35
171
981
672
314
374
852
278
313
999
76
962
21
528
229
182
77
130
193
63
669
915
176
28
468
67
148
505
950
506
398
249
440
229
573
23
286
220
526
847
809
598
880
801
243
784
28
86
23
204
658
952
794
862
5
990
601
796
652
703
224
397
868
175
748
466
761
46
115
590
409
546
500
341
956
431
185
964
745
164
144
587
847
270
955
802
892
275
426
241
462
831
399
747
315
931
480
997
827
734
456
636
960
703
362
624
136
312
895
268
138
425
393
420
732
996
126
1
58
875
363
887
251
622
87
192
984
607
427
937
725
926
824
176
412
59
531
773
323
774
910
569
71
123
478
348
421
710
506
526
588
440
491
665
364
699
570
274
976
684
77
429
305
727
680
909
136
197
115
887
236
679
417
994
998
839
754
95
427
374
298
178
740
74
809
164
484
271
583
799
720
723
907
467
347
831
839
791
437
354
903
101
119
193
249
29
610
55
647
835
744
781
409
964
832
216
183
223
858
629
890
912
303
615
30
591
96
966
998
136
27
306
761
15
334
731
513
131
515
758
115
651
805
239
366
211
670
468
947
597
549
699
618
165
528
118
95
485
253
744
275
576
924
948
990
800
179
650
272
646
320
111
753
438
897
297
737
831
784
656
709
254
297
526
909
18
929
436
244
588
819
661
133
912
211
885
804
413
310
182
326
846
917
798
986
618
920
70
16
847
96
795
978
116
657
500
41
467
687
701
457
798
533
99
194
991
787
740
318
107
828
723
565
127
433
415
39
257
196
526
265
24
417
79
984
288
103
314
625
487
392
490
292
965
266
282
989
974
693
495
152
992
759
260
550
311
555
729
858
761
341
89
822
190
236
899
911
33
991
833
235
85
646
421
323
922
691
3
446
481
351
997
345
286
988
807
987
325
110
140
835
414
491
104
392
637
127
427
660
315
87
363
976
533
716
642
61
30
193
732
277
111
354
777
107
357
271
490
336
246
277
729
904
680
780
556
534
661
384
461
723
156
101
516
12
310
425
345
36
689
456
371
838
264
835
887
280
628
929
168
191
934
483
601
909
574
237
463
823
920
330
390
501
987
83
856
218
757
780
35
589
427
698
772
271
335
646
488
65
868
688
651
396
382
343
427
592
369
321
933
707
134
295
345
299
448
341
987
720
661
666
279
458
927
985
749
822
247
839
675
951
639
854
638
970
470
901
335
504
932
720
636
910
472
545
989
186
201
982
604
666
448
388
352
944
389
21
264
422
279
880
668
588
715
129
719
158
713
700
301
230
815
660
934
298
300
857
198
668
511
13
246
986
123
235
255
417
533
226
518
639
982
788
754
600
779
438
290
997
458
450
856
78
205
191
973
247
47
90
650
629
642
500
275
586
512
661
94
159
960
26
682
952
306
788
13
698
621
497
441
613
511
195
795
191
827
627
489
392
16
318
742
579
834
742
312
723
412
770
275
763
558
423
930
385
280
96
577
396
169
957
780
572
500
298
135
300
730
813
84
414
203
96
687
548
697
231
800
972
442
982
844
652
774
172
461
750
550
180
589
963
966
391
124
404
53
184
854
667
767
128
34
979
429
341
621
890
309
376
660
402
118
891
343
430
913
994
997
575
691
924
417
107
2
563
961
477
537
197
835
480
154
698
41
626
188
937
256
701
327
871
584
254
944
511
851
207
632
124
477
317
939
785
352
38
168
778
29
352
557
395
71
979
265
834
849
677
245
470
275
513
772
603
840
878
511
110
616
25
556
376
694
750
62
200
580
544
21
278
656
3
880
728
602
11
504
18
364
689
310
608
653
176
821
242
703
242
306
831
387
263
172
286
704
61
644
762
561
348
951
469
396
353
876
38
402
111
200
580
829
649
400
908
2
159
150
748
789
347
175
532
111
873
222
514
308
814
364
132
344
386
134
64
43
119
391
949
570
802
347
415
848
720
309
223
43
866
547
704
827
709
614
734
961
759
66
144
263
159
667
212
55
893
344
696
671
729
725
321
633
496
21
459
165
522
342
115
837
544
545
26
371
803
468
235
163
497
826
620
558
409
819
712
327
559
139
392
196
802
217
319
258
556
656
725
713
638
176
21
142
127
775
902
754
137
760
899
837
330
317
682
902
214
397
75
393
234
602
358
675
117
665
826
506
350
144
109
592
629
201
290
544
459
759
963
6
480
248
460
226
799
831
841
812
557
65
811
420
789
738
924
954
123
412
441
223
451
574
183
913
10
626
920
15
948
858
744
715
260
953
977
611
634
317
376
366
769
351
591
277
305
386
948
689
994
373
945
702
462
997
229
102
318
25
384
408
423
198
860
53
215
721
306
884
591
433
369
169
773
71
908
451
648
842
228
766
903
767
542
284
707
621
854
806
448
643
610
972
971
283
24
920
780
631
214
304
562
880
944
742
74
591
732
302
210
18
264
266
945
735
990
393
123
514
485
594
535
934
782
992
412
833
642
673
481
623
74
249
50
365
963
17
146
7
413
333
744
126
587
559
109
160
993
623
542
328
948
39
768
128
293
874
411
965
93
636
540
416
594
741
551
548
631
953
686
960
163
59
522
24
460
952
679
263
542
185
672
17
62
886
323
684
360
3
895
208
330
36
438
710
216
724
306
7
614
591
306
89
30
207
588
909
387
862
254
102
616
382
148
510
202
754
507
905
617
56
253
267
614
649
215
950
482
822
238
916
826
896
991
165
102
531
529
644
434
757
841
455
51
247
180
441
254
760
317
559
654
117
155
877
965
151
100
543
64
73
831
345
701
666
256
803
589
245
705
352
800
54
568
291
783
7
641
645
623
610
887
425
924
324
744
237
926
262
36
807
801
342
581
962
895
80
386
751
527
927
144
745
302
821
397
416
216
703
501
880
596
192
440
22
151
914
762
892
57
487
698
555
271
339
55
114
82
56
752
346
530
527
575
253
883
612
628
541
349
882
762
353
373
558
254
515
795
825
816
270
91
55
123
833
496
954
618
363
87
318
92
664
937
433
12
600
210
805
68
325
901
270
34
707
401
184
624
780
833
180
401
197
296
324
347
131
420
220
63
173
225
755
289
186
934
591
491
916
728
42
87
12
564
291
868
466
803
13
782
151
313
19
710
514
677
740
587
732
878
591
602
548
710
260
91
168
983
243
708
297
343
689
813
702
897
242
400
694
412
687
563
158
177
89
687
120
299
273
254
354
157
970
655
364
625
680
89
393
726
825
169
192
160
791
313
701
224
115
245
483
403
651
135
482
461
723
582
263
379
537
203
305
279
681
625
869
398
304
127
42
954
896
178
577
25
811
178
733
427
177
820
761
317
203
350
17
6
490
70
500
251
492
62
131
399
385
68
354
103
761
144
248
694
509
91
837
701
342
265
437
764
818
769
321
480
57
589
955
730
635
662
590
516
472
603
329
467
460
350
457
837
36
729
209
894
96
138
334
207
554
948
766
975
501
779
490
722
643
627
461
204
328
531
428
421
822
391
311
110
658
70
931
13
498
945
37
27
460
301
767
158
637
304
786
854
63
636
579
905
336
393
777
784
630
666
593
211
83
900
322
311
467
451
639
60
269
602
30
805
316
973
316
568
883
586
391
484
565
198
216
831
414
700
898
397
289
320
724
672
305
699
357
982
492
901
236
387
500
451
897
281
885
396
534
600
650
378
515
647
539
397
16
616
142
469
748
767
780
739
904
652
64
321
340
977
295
485
437
291
656
260
53
650
469
589
740
916
765
34
350
619
660
46
315
917
935
541
572
963
136
604
61
865
368
370
916
350
489
152
737
594
650
461
11
879
603
145
885
246
353
12
264
524
824
764
873
599
215
301
862
143
702
939
111
731
360
202
947
65
398
138
922
278
232
882
889
539
379
611
296
521
451
175
39
849
78
929
625
92
489
122
116
558
756
979
722
146
648
954
393
674
339
643
738
81
738
152
604
494
227
733
683
432
686
481
234
131
98
987
534
315
784
96
904
225
374
808
939
449
944
819
31
652
490
362
967
835
471
287
295
583
313
616
668
426
403
999
918
495
85
420
181
243
378
118
497
427
108
358
92
998
382
918
488
235
25
8
390
170
66
943
807
117
349
155
989
270
85
863
111
312
284
219
17
195
779
719
594
476
418
659
899
632
333
700
801
450
28
462
716
249
217
382
264
536
87
611
712
572
389
208
971
623
248
877
792
483
90
488
919
922
480
472
660
612
227
575
575
446
729
999
567
132
762
617
898
53
220
841
167
820
720
199
249
112
184
122
337
784
943
127
567
73
775
546
187
998
927
566
237
785
960
950
916
649
909
710
130
939
87
117
855
550
183
163
637
716
393
517
873
747
622
152
117
662
533
672
934
82
962
370
523
748
274
347
432
423
815
883
570
810
517
225
609
463
678
101
804
752
624
105
497
237
810
9
430
207
979
367
801
559
556
66
476
251
856
695
707
489
279
967
754
251
194
484
290
587
533
769
222
632
695
253
290
929
662
76
726
771
597
201
240
590
506
682
533
5
789
604
902
414
993
222
331
614
618
34
775
522
928
592
918
854
747
118
170
344
14
205
939
856
406
436
50
778
56
65
161
56
889
919
237
767
452
847
271
255
800
889
224
283
176
239
639
283
106
933
75
953
559
726
573
1000
640
824
671
137
855
668
230
582
612
725
966
403
61
486
681
825
582
102
992
843
648
374
999
821
731
34
426
819
96
450
876
181
457
525
538
666
58
194
774
156
877
110
966
8
816
825
776
419
686
118
364
759
417
834
582
662
320
419
372
412
700
745
910
850
496
214
480
483
322
99
558
4
565
647
157
750
752
74
356
437
321
621
479
91
932
332
327
653
806
456
739
316
937
706
974
768
551
256
570
142
886
967
265
443
849
740
773
516
240
104
498
275
866
847
13
146
2
967
181
606
6
744
338
533
869
154
281
613
849
10
136
795
864
567
588
154
842
731
973
978
666
615
861
774
316
737
106
178
122
980
346
137
847
602
369
119
168
3
48
224
331
478
662
696
76
382
847
723
296
191
993
30
46
921
138
942
743
733
278
32
795
81
297
456
634
733
106
69
909
11
931
524
986
121
822
720
743
813
598
142
346
215
280
193
320
789
195
572
502
91
250
651
235
776
445
990
754
336
874
45
669
445
320
304
896
338
696
762
141
757
849
904
327
559
985
695
924
815
834
229
349
586
452
290
550
578
556
540
155
48
209
544
138
631
679
116
861
159
228
674
781
460
497
286
706
634
422
598
461
926
193
348
7
718
697
193
456
321
112
68
757
202
615
645
920
80
818
195
101
309
310
420
438
206
438
868
521
629
994
4
89
829
227
610
951
140
408
551
49
578
179
141
745
600
149
836
750
27
778
186
887
644
896
419
423
822
195
691
235
529
588
956
614
802
932
767
301
301
78
494
877
9
726
196
485
131
302
845
642
545
14
614
238
632
36
944
445
437
704
930
389
806
608
938
48
528
472
964
328
150
27
345
83
738
933
529
446
238
192
642
761
444
764
105
268
701
651
768
336
786
858
60
252
489
401
82
205
334
862
67
167
793
225
681
844
444
163
72
794
358
557
738
674
466
586
497
120
683
408
792
554
618
574
423
949
349
493
149
600
802
270
883
583
172
169
598
698
107
647
538
808
42
572
64
662
474
110
350
649
804
568
989
691
867
201
272
435
890
420
99
645
120
809
240
596
812
539
196
632
258
712
59
932
783
280
650
786
820
45
969
649
117
82
307
571
48
344
224
238
855
223
135
759
472
466
920
140
740
348
932
53
473
824
884
913
756
921
396
520
611
859
108
899
572
433
339
956
967
220
716
232
857
593
32
897
144
669
206
75
136
456
418
306
707
3
68
789
1000
696
235
715
397
564
333
399
166
759
641
571
444
856
721
482
820
943
115
226
853
943
808
552
6
198
884
29
710
60
623
971
98
698
942
250
543
462
276
962
341
315
633
369
517
966
173
463
749
846
675
597
554
886
828
464
612
988
337
30
900
1000
40
224
963
568
559
975
782
192
219
303
94
195
662
764
143
269
982
231
803
137
439
956
606
691
207
558
724
977
457
981
843
574
779
856
117
393
696
378
278
31
467
422
73
558
324
358
613
922
818
119
673
140
670
618
103
507
696
406
700
464
208
546
446
250
304
787
227
240
317
140
893
222
212
138
559
16
747
994
570
43
695
609
556
556
20
709
511
161
122
627
371
525
886
839
710
699
395
189
401
589
247
756
378
144
632
785
964
158
501
914
650
995
650
275
459
601
91
399
653
888
956
443
425
825
826
603
941
566
99
556
774
759
728
774
330
926
655
774
232
515
687
573
979
220
948
137
876
951
241
243
423
557
609
192
36
126
586
906
941
134
920
821
733
882
831
948
341
293
52
203
415
591
669
276
608
912
977
738
268
780
397
93
171
502
461
178
840
275
906
407
835
74
938
769
256
54
10
994
373
558
916
857
531
286
547
706
466
592
554
217
950
634
730
627
747
547
954
518
170
140
690
961
284
248
181
306
207
177
71
446
626
548
610
537
388
376
402
865
130
207
555
42
667
570
801
949
79
629
945
473
133
745
125
549
705
491
321
565
693
564
344
870
443
516
285
42
356
858
378
84
238
881
664
240
569
278
83
792
615
949
588
51
695
21
2
11
521
274
266
87
949
279
963
520
72
612
155
950
218
623
172
235
247
925
198
770
730
799
858
227
398
97
344
708
715
227
210
148
536
460
182
956
332
380
151
991
868
453
572
723
752
896
583
401
254
446
888
146
562
146
920
981
33
114
830
913
165
322
758
567
373
927
803
541
505
564
845
199
628
88
677
921
9
342
476
98
604
552
845
23
442
385
585
752
641
534
29
420
292
541
273
115
721
12
476
39
186
481
766
820
565
610
199
335
647
505
278
531
803
829
697
347
408
213
464
772
345
534
35
264
692
32
358
358
1
543
892
771
6
527
767
825
86
949
352
748
436
297
726
384
413
245
921
800
204
573
383
126
291
557
728
394
787
964
768
803
925
735
532
333
715
174
547
440
361
237
445
882
425
837
91
567
889
81
561
855
431
602
402
96
728
819
515
820
380
574
214
483
905
889
980
653
914
278
877
16
759
464
346
265
183
164
801
974
754
233
542
963
117
933
57
89
481
293
299
664
723
209
990
447
552
18
662
308
548
670
205
609
470
99
681
634
278
245
652
261
32
689
375
362
871
322
432
465
259
260
636
1
993
678
801
472
340
523
726
449
125
873
208
41
410
548
325
36
137
460
941
837
878
750
584
329
964
990
300
33
869
237
920
225
506
863
85
735
217
898
663
574
286
642
284
850
913
159
802
693
259
948
380
886
223
119
355
420
256
223
773
410
506
830
242
436
593
277
388
984
516
45
388
247
233
164
622
904
8
785
341
858
804
959
397
265
520
99
65
171
37
683
799
96
780
255
387
152
956
123
336
310
470
714
273
721
178
579
654
91
670
849
875
256
692
812
878
686
410
176
482
301
661
560
184
259
633
116
97
770
634
371
76
876
192
770
639
511
330
701
475
28
248
220
686
146
631
982
872
191
531
493
646
280
118
558
277
160
656
25
914
651
468
471
348
973
711
89
279
791
576
221
159
84
907
788
517
219
362
506
473
88
691
769
167
68
110
362
115
489
670
694
948
277
929
28
769
478
809
709
687
20
578
899
629
704
464
407
497
214
438
115
119
650
231
202
296
16
549
480
1
793
515
172
980
511
790
289
316
111
914
841
704
186
77
255
882
720
283
381
692
759
796
16
901
758
80
198
989
439
330
484
991
927
947
653
850
572
824
995
605
967
536
169
76
564
984
519
761
168
875
827
633
952
822
498
887
149
701
678
65
122
571
458
328
842
62
52
675
658
852
443
26
924
830
724
649
742
65
217
451
164
546
484
424
988
979
678
219
678
332
290
120
959
195
193
714
475
840
126
841
953
26
257
574
868
188
754
181
936
463
612
579
782
38
13
11
185
369
833
963
910
517
527
148
469
993
7
995
605
915
465
371
897
227
224
413
261
238
232
961
88
834
508
759
711
3
104
965
820
804
606
823
875
379
551
241
912
160
464
320
56
805
145
216
818
743
642
932
206
945
257
262
859
617
149
301
672
959
616
492
552
229
957
490
25
787
192
336
137
775
441
116
656
262
955
800
854
677
716
98
228
427
826
298
833
210
996
699
449
88
436
791
149
617
1000
744
484
815
567
62
937
139
197
27
737
906
287
828
140
963
306
227
792
434
658
157
429
947
372
278
584
29
10
444
697
13
152
827
182
680
102
300
679
14
19
417
753
358
761
521
235
370
868
810
931
853
655
243
563
350
915
310
467
42
513
923
847
185
709
833
261
543
453
762
592
676
343
153
747
468
286
247
345
956
97
859
11
792
405
905
368
578
586
548
81
100
403
548
33
801
8
328
16
235
597
255
598
269
304
604
15
348
988
700
375
514
529
96
224
43
199
513
538
178
505
448
94
12
845
899
941
148
203
270
484
463
943
974
825
557
184
192
799
469
898
173
71
780
393
223
324
324
48
997
492
238
340
539
283
204
840
873
283
791
395
894
252
937
470
241
244
858
679
315
218
148
895
66
187
64
149
35
245
608
188
401
331
510
653
493
556
781
564
879
835
526
546
352
713
210
57
933
501
57
780
527
806
588
655
521
796
87
291
502
997
282
424
419
836
351
878
655
769
989
825
355
549
101
345
177
213
931
415
178
569
170
447
187
46
719
12
362
529
102
857
654
687
626
184
657
628
402
571
298
952
907
331
813
627
137
955
268
495
579
447
436
488
239
815
600
902
808
151
297
173
470
598
624
783
354
32
47
733
757
620
428
562
191
763
43
933
698
252
864
432
759
822
403
320
623
167
459
56
744
128
740
984
755
833
273
722
209
884
828
141
944
995
11
471
965
482
186
23
394
458
208
351
605
570
598
921
306
400
413
122
130
871
181
783
264
926
150
575
871
446
678
74
766
711
149
701
737
64
921
708
192
5
684
562
455
33
451
22
27
662
505
345
838
448
227
693
586
473
564
763
999
956
706
750
822
888
586
367
792
502
276
652
186
335
677
197
397
213
658
196
744
27
988
689
194
442
6
583
158
312
747
999
255
649
296
294
909
620
114
23
44
53
877
825
199
69
420
298
821
612
925
342
179
560
865
231
182
588
189
679
557
593
468
713
51
409
807
329
538
134
625
645
374
305
165
709
423
823
721
30
614
772
499
357
573
219
167
160
289
300
915
989
226
575
29
891
936
193
726
72
438
339
641
315
120
72
89
294
431
341
474
271
445
840
447
685
444
124
512
541
398
232
179
260
881
943
74
288
806
840
611
302
838
152
948
296
674
617
220
369
195
246
112
574
290
344
934
113
233
535
251
255
380
189
658
745
622
703
713
927
504
953
273
674
892
853
602
340
332
620
821
147
904
897
384
74
505
989
537
781
136
277
592
656
256
590
883
972
374
417
751
838
395
484
842
382
876
193
640
93
803
118
297
54
302
362
646
421
137
47
624
887
247
199
329
747
981
613
384
670
521
252
567
145
922
680
307
166
272
669
171
31
859
26
255
713
865
97
910
225
304
54
361
846
939
662
887
681
71
292
264
466
818
444
288
665
528
322
565
731
89
570
193
819
353
928
552
468
942
936
24
751
237
438
999
749
771
802
624
267
935
922
448
550
281
2
36
324
36
785
105
674
892
562
449
472
363
317
267
485
969
977
707
558
369
338
659
644
112
380
382
103
469
146
550
172
394
153
155
212
321
171
176
104
546
109
579
11
571
1000
989
981
562
297
587
933
67
451
4
740
847
10
877
395
288
895
539
949
196
533
526
929
385
901
497
847
179
752
972
240
313
798
885
438
527
528
364
991
406
623
635
756
570
480
958
833
175
707
402
849
831
119
612
714
766
521
961
925
325
274
397
803
643
381
112
109
74
834
236
37
973
315
964
637
860
849
620
441
452
534
600
364
987
855
453
602
256
831
818
984
341
796
193
404
438
72
579
73
188
401
649
736
912
711
763
673
222
991
5
115
79
38
63
937
540
288
935
18
149
472
989
708
890
531
729
423
827
625
262
138
65
982
911
302
976
423
35
728
302
30
320
576
143
94
316
274
823
115
201
353
290
341
537
591
791
560
260
713
290
361
480
646
819
750
7
687
116
346
121
661
817
356
412
6
139
13
68
148
535
727
541
923
854
990
522
832
644
394
173
420
991
243
746
168
352
259
895
753
952
209
769
446
339
142
915
153
298
968
455
698
103
355
902
322
45
430
639
709
518
666
983
678
672
979
739
245
553
966
280
684
865
251
557
622
435
692
65
358
13
205
892
103
914
161
358
453
507
240
953
983
911
995
527
131
864
780
368
193
9
407
536
935
318
525
99
648
225
417
908
554
936
609
704
878
126
410
401
504
745
884
506
941
593
727
302
137
286
232
158
842
148
340
118
429
360
736
758
398
934
686
33
580
134
750
887
20
698
206
478
722
985
715
457
989
649
213
275
678
944
680
966
928
184
10
741
620
509
540
767
697
573
488
83
493
211
536
664
734
775
258
884
812
264
938
976
266
363
648
529
795
543
234
960
112
217
872
170
996
20
102
729
69
851
124
667
928
897
59
968
120
875
320
13
288
757
751
458
701
209
717
555
86
973
977
209
657
809
705
586
411
287
497
610
800
560
653
717
393
180
319
484
291
295
973
358
211
493
630
973
74
835
163
464
460
490
880
627
973
779
511
170
68
630
610
122
538
924
888
107
540
603
677
579
742
901
729
619
114
356
527
711
379
609
746
266
646
15
336
275
443
661
461
853
275
509
179
757
529
581
953
764
203
596
604
86
831
891
760
138
264
854
277
767
93
403
291
4
297
709
986
142
661
835
104
535
362
4
437
22
594
117
723
472
456
130
473
527
392
505
582
829
920
642
398
619
554
277
811
485
47
729
442
587
540
416
191
474
217
186
626
250
224
869
457
977
304
784
974
169
555
624
951
596
820
197
542
413
693
555
510
239
914
661
534
337
704
188
642
139
860
135
80
175
871
650
542
714
526
386
533
165
779
763
830
53
522
514
74
887
952
460
27
886
609
2
557
795
156
277
980
273
860
83
74
112
688
635
132
325
59
702
135
398
30
561
973
373
338
270
942
511
923
666
935
501
282
968
873
321
270
492
156
995
936
763
828
536
88
929
341
612
182
261
971
294
222
451
91
573
462
263
242
979
682
485
350
621
897
904
155
595
743
454
20
30
393
265
451
625
660
474
55
850
967
222
404
72
7
400
143
275
706
315
590
432
384
304
399
883
137
836
731
939
522
44
895
812
513
938
827
544
628
890
384
51
912
141
736
680
133
998
833
455
969
637
664
120
411
678
795
257
534
734
671
442
226
880
713
850
185
280
220
887
859
103
797
80
1000
406
323
69
807
469
198
425
622
94
705
491
888
785
696
44
912
148
824
812
360
120
638
302
78
398
549
452
978
45
971
777
286
412
6
206
307
153
723
412
798
142
599
963
335
890
690
843
9
555
560
987
823
90
976
780
906
538
31
925
517
225
535
273
296
472
215
328
335
106
887
700
524
767
644
27
487
954
158
571
191
924
135
998
220
976
667
888
26
554
866
512
492
85
678
193
35
295
4
418
159
762
734
530
364
479
818
987
174
153
511
64
260
727
421
23
361
981
254
356
353
358
451
636
9
258
677
333
89
940
878
758
447
433
901
199
280
348
654
419
195
446
176
793
557
209
461
615
764
745
459
906
994
779
882
671
62
501
948
371
264
209
529
634
380
288
466
728
798
771
37
52
880
904
715
77
206
953
987
192
747
866
467
663
328
17
728
771
403
380
431
365
769
838
850
479
481
147
951
599
721
810
161
138
834
299
512
338
53
858
39
916
462
482
774
192
750
976
624
220
961
487
587
205
10
96
975
448
929
385
414
706
321
770
14
748
398
509
802
204
79
483
929
355
59
754
502
420
89
676
88
207
802
846
904
29
492
25
826
472
850
476
769
996
774
644
686
825
22
499
326
96
357
739
704
724
39
99
833
47
431
430
153
623
560
279
683
755
398
74
11
653
782
121
150
506
16
353
422
660
551
455
779
783
997
577
193
144
761
58
166
920
336
976
303
629
809
31
523
848
96
690
96
428
78
993
861
965
37
242
19
391
210
561
27
524
906
588
145
483
342
872
900
178
492
151
950
905
788
332
33
707
322
839
641
695
820
65
652
223
957
526
662
90
537
615
127
18
622
312
750
611
652
632
258
134
971
360
113
770
740
720
923
922
6
389
919
415
599
102
112
902
178
24
584
655
527
321
456
365
790
649
82
737
668
810
608
991
635
410
656
540
302
238
775
872
706
509
589
548
339
223
468
528
483
413
588
686
774
782
657
271
488
905
884
325
417
309
1000
102
970
927
434
827
957
652
802
347
391
497
957
632
784
565
912
652
489
800
518
129
470
181
316
626
118
639
918
604
900
916
92
605
226
893
673
584
238
907
578
767
810
866
139
901
974
104
758
349
101
57
577
755
825
820
134
879
383
330
136
87
460
735
18
121
86
794
835
435
972
609
22
603
671
860
236
905
922
211
726
147
627
611
818
730
740
916
183
181
522
301
878
331
857
703
75
515
259
600
2
849
885
974
926
157
276
94
711
632
564
508
222
22
126
547
294
479
749
43
522
849
597
172
453
399
421
919
665
332
537
920
834
136
955
446
824
533
218
620
823
631
306
630
143
637
131
672
488
474
742
97
713
684
348
131
733
6
601
175
948
679
330
263
623
783
869
23
494
862
433
641
302
437
832
538
933
490
375
18
113
745
488
345
514
735
606
860
909
302
395
591
97
12
695
350
429
505
51
560
35
322
383
134
464
206
725
872
215
922
232
971
837
7
273
140
882
988
788
672
207
639
297
95
795
42
298
179
480
339
330
284
557
442
429
624
200
87
698
618
800
457
425
238
43
511
685
831
927
203
431
605
955
612
996
842
442
745
955
437
897
300
280
367
979
284
933
290
319
211
629
544
419
710
838
699
937
900
545
690
182
631
712
793
244
224
643
854
104
88
978
725
728
532
465
501
364
376
651
313
380
298
336
294
864
811
116
153
758
312
669
806
33
468
379
857
694
595
810
148
649
694
850
984
499
417
892
643
343
70
455
377
117
624
611
627
318
954
879
83
349
215
26
515
151
362
61
274
119
147
131
13
52
334
894
129
836
677
138
685
480
867
840
633
175
687
603
765
376
997
266
267
841
563
337
882
47
597
761
399
31
771
391
32
798
952
643
742
278
151
11
355
940
560
658
573
680
357
807
977
778
717
592
592
887
426
549
154
10
445
387
569
744
80
198
776
7
26
741
165
375
935
86
663
100
131
30
577
100
923
826
434
499
366
425
604
889
909
81
650
480
540
223
398
159
484
963
856
214
38
369
596
309
525
268
809
181
856
481
951
551
368
464
118
442
187
148
192
149
37
951
545
849
250
980
990
587
276
275
609
945
584
361
168
670
299
408
753
734
221
474
867
319
583
472
75
52
637
737
453
937
550
637
49
822
228
698
602
334
830
68
257
132
852
78
297
293
612
353
63
944
660
736
910
427
744
65
11
977
913
352
737
752
641
730
309
242
867
838
74
45
765
5
77
63
969
824
865
498
73
898
574
715
936
956
663
443
642
220
884
527
1
870
232
112
89
119
196
334
972
743
980
602
121
307
449
99
742
191
586
22
174
72
274
864
388
433
801
8
34
739
508
735
250
651
181
136
398
65
695
582
6
570
648
601
210
295
182
902
275
329
946
736
26
729
760
277
289
413
809
926
853
813
658
198
975
202
118
657
41
998
592
51
19
653
514
7
525
507
691
709
403
961
726
991
746
387
207
533
847
737
521
919
127
877
380
457
225
849
418
755
693
148
564
457
221
402
667
431
461
90
136
307
726
920
306
202
976
991
505
412
70
791
242
127
450
132
340
722
167
613
859
658
775
21
623
872
91
448
231
273
539
807
442
805
705
933
738
178
177
723
345
108
910
14
577
514
914
570
498
722
166
716
643
683
355
555
757
763
273
185
304
25
489
987
654
956
669
488
59
253
290
144
330
765
556
749
387
750
86
624
533
515
222
932
101
443
773
549
610
149
995
439
394
332
887
704
978
116
704
975
824
19
997
279
172
840
820
594
471
696
307
363
937
976
959
180
556
513
446
458
843
679
827
151
366
539
450
517
735
217
906
85
496
350
20
73
257
770
83
677
299
452
691
973
352
555
18
264
662
13
969
113
759
933
562
648
146
463
756
591
517
21
562
785
591
90
737
715
637
342
594
161
121
912
359
464
112
449
178
903
258
540
842
461
3
237
389
367
314
554
52
32
205
369
769
342
753
294
875
116
70
898
859
44
506
29
634
801
527
559
746
659
939
195
968
957
324
521
702
725
813
382
311
692
524
656
821
431
716
301
257
27
450
177
428
333
998
310
288
196
654
885
41
935
936
502
119
140
372
456
996
793
170
63
488
222
588
472
428
391
202
10
878
493
959
246
165
759
977
402
310
351
988
314
438
97
429
63
218
508
132
821
416
635
454
212
408
733
561
692
387
862
759
282
308
643
196
934
704
517
680
61
711
280
482
87
715
297
373
607
939
908
301
45
96
25
100
607
88
810
228
254
413
483
820
467
569
745
35
818
908
924
926
620
299
756
694
401
617
851
589
160
446
851
557
769
814
327
486
524
791
125
184
545
171
776
321
498
620
626
29
835
803
314
681
302
234
955
997
251
148
642
822
813
453
53
314
756
2
138
610
820
401
469
268
234
369
705
40
966
880
242
439
657
999
214
457
245
569
217
256
56
567
108
2
892
450
813
294
281
836
916
834
934
471
755
482
322
42
625
955
662
599
80
953
972
539
115
680
852
514
206
940
920
943
360
795
742
570
54
443
439
583
879
669
771
72
257
150
427
669
133
67
729
647
203
775
916
302
836
790
165
752
894
937
301
77
512
585
87
525
120
204
898
678
195
142
244
626
918
914
311
45
970
497
354
191
373
227
169
858
636
707
944
587
862
639
216
641
110
108
971
336
628
359
293
148
5
108
232
112
157
511
635
695
890
504
214
550
476
998
182
110
769
181
891
242
294
749
9
182
760
349
362
128
199
780
232
832
499
492
764
357
361
112
838
850
523
145
706
441
680
388
800
440
990
103
578
806
610
948
399
678
766
143
486
367
132
570
16
714
537
330
808
46
698
642
898
925
145
565
804
309
732
732
425
367
60
839
710
880
766
447
751
178
38
75
660
154
23
371
168
694
116
892
978
280
491
123
141
256
362
390
502
936
586
614
165
307
865
932
173
84
458
742
245
907
670
688
129
514
626
940
480
12
978
713
750
634
816
238
747
186
399
469
293
235
928
624
743
890
47
543
836
313
357
80
174
494
632
574
749
180
310
54
949
406
138
925
864
892
651
530
652
453
953
78
130
793
563
84
202
314
115
500
592
929
771
295
878
349
635
432
888
696
433
97
17
193
417
545
548
903
314
569
789
668
960
260
740
383
36
362
590
256
482
479
345
650
978
986
811
829
602
695
83
981
248
55
205
445
885
577
494
899
55
692
406
472
905
896
803
348
153
752
507
257
630
195
431
291
854
4
731
349
884
594
646
756
922
498
695
112
448
648
818
764
902
382
780
187
988
451
702
671
394
650
847
454
80
852
494
84
137
834
29
931
700
912
733
320
684
188
945
856
846
68
234
446
636
305
280
934
708
254
694
255
660
77
946
994
709
455
528
345
351
264
176
691
622
477
536
65
356
316
698
694
101
659
373
659
878
611
329
791
25
826
733
519
788
367
964
330
973
675
716
301
983
497
340
159
97
21
700
353
688
324
380
484
741
287
559
482
755
599
578
82
293
709
208
51
38
896
769
94
840
716
311
709
435
302
916
157
831
189
149
489
700
409
954
750
217
388
935
655
827
487
553
444
231
622
357
394
201
685
106
586
506
260
715
464
990
408
584
53
862
106
629
217
821
988
425
418
805
965
765
103
356
844
71
514
589
399
730
746
155
885
826
857
75
521
78
58
776
278
351
356
323
105
295
986
13
801
231
447
111
95
877
821
240
659
240
533
228
929
116
293
889
255
733
159
545
971
565
812
168
268
92
487
601
7
376
979
525
754
575
513
948
402
594
408
411
423
73
711
394
636
712
62
885
12
50
579
877
781
812
252
536
219
844
258
370
613
670
270
416
211
456
937
496
541
251
825
669
837
395
190
335
590
838
598
289
605
541
681
188
429
687
794
733
226
890
677
260
801
487
271
953
787
492
16
828
8
637
58
920
208
163
723
778
69
154
673
438
350
495
518
8
299
988
854
66
349
570
517
634
456
608
918
66
556
662
129
943
149
964
527
288
2
338
897
424
217
247
56
361
318
122
680
963
105
286
23
489
296
636
554
281
735
615
584
863
945
738
530
850
256
584
995
879
959
582
679
365
119
221
811
680
923
415
229
876
158
147
544
619
901
914
750
173
799
18
275
178
324
503
668
492
657
843
108
619
702
195
248
594
28
982
97
755
502
794
643
374
73
859
135
10
238
155
805
339
320
209
690
777
809
189
981
638
140
634
561
738
614
67
822
201
447
273
639
697
833
87
842
3
971
558
427
276
258
92
256
149
998
455
52
94
964
906
943
829
352
766
279
167
960
516
10
805
330
961
756
685
491
948
724
468
949
492
586
606
54
992
74
9
74
998
829
636
426
427
586
152
547
447
928
455
471
865
72
201
900
884
13
844
500
971
324
536
18
971
381
215
278
516
951
591
972
792
751
351
207
87
925
347
232
108
901
913
331
704
903
116
398
61
225
696
810
792
158
947
999
607
877
664
28
591
800
251
359
971
416
161
112
599
269
230
427
788
71
278
262
40
290
793
655
509
470
828
23
90
210
212
289
703
719
38
891
40
739
210
539
115
936
230
475
542
277
766
838
267
205
775
791
116
751
835
814
527
970
247
278
23
908
475
152
839
874
112
615
920
517
17
744
262
351
918
830
634
529
816
600
851
233
623
688
601
718
286
313
246
352
452
227
921
85
351
503
147
349
157
378
933
809
818
288
309
541
965
779
437
219
996
697
663
366
280
590
994
803
182
693
642
148
615
279
728
686
171
197
755
307
19
258
621
214
184
193
279
293
682
740
227
40
793
61
416
236
899
517
948
313
803
959
146
26
173
906
465
403
100
821
594
132
72
875
982
439
665
481
408
498
575
491
833
502
152
514
1
355
149
51
395
545
818
803
150
492
367
855
825
506
285
568
714
762
542
1
644
34
820
250
613
971
462
201
552
669
377
325
209
472
180
450
990
569
812
635
666
41
88
397
849
107
429
239
899
292
753
392
625
25
299
241
811
743
444
442
613
923
935
646
916
113
695
895
181
144
363
446
671
782
955
510
831
329
138
324
126
252
37
800
976
16
953
504
875
285
202
110
258
333
448
764
300
407
251
678
34
457
886
323
484
858
793
833
686
342
258
364
403
543
621
914
986
532
376
38
982
637
384
841
499
322
874
966
520
201
1
921
348
113
385
74
236
753
790
2
144
535
640
353
31
364
209
245
548
361
146
425
569
76
49
277
880
543
88
299
278
58
202
225
783
873
6
743
276
5
92
837
270
138
57
465
614
5
640
921
473
97
875
25
399
470
91
499
923
770
130
657
635
52
414
324
381
558
475
137
474
378
948
995
865
835
822
181
242
717
180
997
169
861
73
849
932
28
21
807
567
229
362
772
568
365
760
705
426
299
660
336
784
449
710
792
789
946
957
111
125
915
596
734
78
121
922
616
331
827
677
20
639
340
855
583
318
768
139
12
793
716
846
933
922
611
338
592
218
416
352
322
301
120
142
474
112
763
245
626
791
597
627
673
312
280
764
540
322
421
330
925
827
961
82
416
406
428
294
623
828
449
431
247
349
519
567
39
520
667
512
702
453
296
363
719
660
275
521
227
243
923
131
424
49
745
441
47
379
845
837
214
113
352
736
458
614
233
108
166
280
55
716
735
145
328
556
326
710
297
275
299
131
512
399
865
536
407
140
793
235
241
995
817
219
1
832
474
687
273
733
411
729
766
165
334
577
440
516
189
426
556
892
614
641
109
307
382
261
224
648
106
564
748
917
262
67
974
38
882
192
123
873
599
264
431
221
556
530
912
278
255
912
416
937
361
444
331
198
630
142
136
870
649
896
510
787
51
575
768
996
434
915
878
323
528
760
972
784
359
175
431
633
443
638
471
424
96
287
142
779
961
803
272
970
277
965
61
607
248
491
425
146
378
628
117
582
790
691
344
196
524
80
385
464
117
694
844
106
324
592
374
380
355
108
224
616
572
752
4
364
802
304
607
209
34
294
859
769
70
967
72
402
878
672
831
474
38
756
355
839
163
546
304
932
563
386
224
940
242
458
547
444
787
816
884
446
928
983
139
871
566
238
986
185
461
792
5
750
992
534
14
838
634
251
269
810
551
219
276
546
761
437
9
703
57
619
586
194
461
43
981
504
4
157
673
71
802
140
203
164
844
390
469
297
243
814
481
423
991
70
40
500
463
667
208
788
15
235
862
330
190
820
233
331
704
239
161
672
61
972
194
821
218
292
651
795
235
768
314
272
228
944
757
472
224
819
980
217
537
397
871
203
210
470
162
394
517
910
546
932
658
546
25
113
740
767
522
762
486
524
632
635
420
162
257
989
598
31
750
356
533
853
886
621
402
924
469
22
550
213
269
185
701
251
28
326
409
370
95
772
280
323
798
334
387
146
773
945
613
68
208
135
669
579
72
57
567
731
536
887
21
724
478
433
458
350
207
599
600
802
832
658
681
484
830
134
955
535
733
511
707
42
174
304
97
94
855
640
813
631
881
333
302
631
542
600
78
696
465
856
74
523
503
787
173
687
659
479
239
391
910
742
797
354
760
543
537
759
151
529
892
333
480
744
856
96
945
520
457
582
72
832
785
362
422
645
641
815
964
144
694
876
962
238
202
994
767
509
806
309
57
538
753
920
135
203
344
396
359
194
47
656
903
22
540
599
624
934
118
838
454
590
217
506
803
488
378
417
927
394
64
649
672
865
897
483
131
941
473
189
123
449
151
551
108
313
778
299
526
222
991
942
885
794
570
621
373
670
313
680
623
251
5
313
288
443
483
741
286
506
594
587
693
583
617
13
302
676
287
516
100
969
582
470
957
444
191
92
56
257
664
240
668
101
687
629
68
412
486
678
919
944
621
697
843
846
821
404
756
357
440
982
78
555
754
957
28
18
693
433
811
134
794
485
88
961
523
790
76
972
993
485
567
196
280
349
655
563
170
948
120
111
625
785
423
471
561
30
509
685
337
43
449
296
418
182
409
510
944
62
976
711
623
123
839
879
368
395
921
287
176
891
643
697
370
432
731
838
769
364
248
170
139
998
820
622
317
780
261
855
163
371
423
73
12
661
536
184
718
449
521
346
176
218
83
478
638
869
227
884
778
781
19
770
934
187
431
894
21
856
139
409
978
687
123
559
41
552
360
640
207
71
204
879
929
454
592
658
52
745
297
197
332
92
816
604
67
245
363
461
896
225
611
913
166
74
536
830
67
571
260
458
464
361
821
5
485
10
700
99
625
788
687
783
69
136
805
639
790
910
391
837
678
105
846
945
853
244
348
863
361
437
919
594
190
264
603
636
337
51
918
772
313
350
585
523
216
612
381
100
628
799
22
595
822
380
528
913
463
518
498
880
203
981
917
989
333
398
925
35
264
451
367
56
42
249
596
327
164
931
893
801
475
902
36
171
772
937
311
270
398
441
173
998
106
661
43
511
250
179
922
603
925
283
481
18
216
83
877
154
445
75
429
3
673
153
198
279
662
398
472
625
989
115
540
410
115
436
659
683
713
263
343
683
643
538
879
868
187
208
982
410
849
675
70
690
845
734
776
591
13
948
774
490
846
202
701
626
763
163
231
200
820
355
521
601
749
366
521
481
191
431
207
211
69
902
900
662
668
892
932
911
965
331
218
211
333
765
694
370
733
644
595
707
544
86
836
972
309
949
64
803
839
63
979
105
414
395
341
997
197
547
511
969
297
955
393
798
117
579
795
890
514
715
595
357
394
235
910
637
964
650
406
570
134
561
674
798
951
620
503
641
409
160
734
529
653
645
771
476
29
667
470
285
600
690
231
128
363
799
944
169
794
46
377
717
813
621
136
304
731
942
761
502
890
930
648
448
698
528
855
519
534
569
445
537
241
749
368
54
943
385
291
591
561
439
503
235
443
555
380
139
927
531
738
76
26
933
851
268
598
954
22
36
35
248
826
36
660
963
49
156
143
834
943
999
410
667
816
299
791
466
540
511
328
607
9
533
629
673
390
815
660
446
613
203
555
238
590
344
749
422
287
257
987
485
192
434
822
10
856
741
412
94
250
833
811
360
66
340
356
470
446
800
501
183
499
902
412
528
315
900
185
76
740
253
917
737
716
898
731
246
682
514
941
413
290
780
258
499
388
886
525
125
379
517
681
629
861
744
217
28
738
738
406
717
734
592
306
596
925
930
763
541
645
398
198
78
934
367
111
47
778
284
491
72
3
672
130
390
808
443
381
504
905
160
188
879
260
529
866
230
455
737
775
687
175
544
889
42
97
499
437
13
93
441
380
688
685
491
864
928
231
49
496
594
463
475
525
129
154
140
702
190
493
803
891
215
212
91
145
163
903
372
450
239
205
330
379
389
625
103
838
365
776
109
50
581
702
758
789
542
354
319
212
25
599
562
970
750
845
474
999
332
805
794
803
334
107
235
169
414
282
507
612
77
582
902
93
482
210
732
437
856
817
874
570
418
743
767
630
768
168
607
231
63
304
493
454
610
407
271
201
568
829
814
906
775
258
600
342
304
368
57
969
611
789
301
619
566
453
450
983
685
984
936
238
567
334
797
865
20
869
521
551
741
730
492
302
344
63
974
739
994
677
886
340
706
669
260
714
662
884
506
557
546
704
157
159
706
290
655
170
157
942
182
188
488
382
393
166
576
606
885
79
717
389
118
239
934
222
144
122
609
401
319
572
864
320
825
351
993
453
149
528
168
706
712
15
130
454
704
780
604
552
885
136
457
840
548
948
576
102
106
142
661
550
564
449
938
113
971
511
154
805
921
683
565
90
441
231
446
594
580
776
293
656
914
767
557
597
336
643
323
858
975
880
316
430
438
401
11
960
247
733
142
552
490
328
340
510
909
294
689
297
307
862
928
135
152
900
658
583
148
255
494
184
565
588
460
220
52
382
814
530
183
632
798
233
545
569
544
927
8
283
951
158
221
867
169
679
63
89
488
250
704
891
376
516
521
790
622
790
946
633
513
710
409
28
484
849
780
329
312
858
767
391
944
323
667
460
404
790
598
460
212
139
242
457
847
151
814
15
530
140
560
816
305
328
755
317
542
732
729
485
14
425
202
134
624
856
529
298
899
784
97
228
171
137
315
597
302
491
490
694
841
3
23
142
435
707
20
422
780
967
114
741
633
685
716
169
775
189
996
356
880
293
465
688
271
956
666
602
933
793
44
413
414
249
851
60
238
675
876
402
70
294
686
909
346
981
827
171
980
653
359
623
897
646
985
570
876
742
423
464
560
848
12
159
493
250
110
121
320
389
559
610
355
894
558
875
640
272
205
718
547
403
199
142
169
775
471
107
320
126
983
347
319
77
176
563
132
714
65
289
10
502
332
952
201
305
239
499
942
501
212
89
937
510
858
289
223
665
271
662
112
192
574
39
811
170
378
304
852
960
666
338
510
663
753
923
569
814
157
757
262
617
491
764
588
277
128
837
534
162
907
541
623
236
199
877
887
380
811
834
467
667
663
855
674
800
743
447
48
790
551
450
378
889
377
696
618
623
932
218
932
206
16
19
78
421
99
821
616
523
961
755
113
700
970
180
347
356
134
788
686
567
172
602
859
346
680
148
502
331
777
777
193
134
938
322
903
177
972
304
615
94
342
535
207
843
697
318
378
272
988
345
877
238
452
542
114
963
392
413
769
608
613
466
379
286
246
993
66
4
724
885
596
466
913
963
553
888
472
936
352
78
564
494
886
298
616
491
740
608
838
315
688
664
990
452
813
925
16
498
655
465
935
36
547
245
46
881
680
851
646
986
732
456
997
686
523
434
649
167
193
67
175
983
919
665
668
716
81
898
726
730
369
295
497
418
487
158
24
566
111
161
451
365
778
232
399
711
955
84
5
797
835
262
494
466
496
44
805
45
111
974
600
888
807
11
239
355
627
142
590
697
477
154
760
653
426
236
812
138
331
958
176
491
278
509
408
380
360
756
865
910
30
610
153
653
833
162
188
384
58
139
762
195
68
410
738
580
262
581
465
608
209
348
160
112
335
186
890
948
249
635
156
850
40
783
469
619
563
588
817
687
705
405
157
717
856
643
884
806
676
184
922
366
234
81
198
202
429
55
158
261
726
978
444
899
843
431
230
647
43
190
91
224
437
238
743
85
972
323
973
688
623
397
241
513
933
247
492
590
594
382
469
806
351
546
95
744
877
622
180
712
994
178
717
988
595
377
136
224
470
336
586
523
431
784
30
985
320
268
444
387
121
791
125
64
54
778
8
871
520
914
610
612
344
981
414
221
636
349
883
337
432
112
947
583
835
883
786
135
684
945
540
354
789
471
866
796
856
531
377
972
958
15
577
769
454
632
874
739
21
305
158
89
70
167
550
813
283
892
65
978
900
606
544
561
321
302
231
717
433
354
230
578
228
545
271
715
240
656
705
891
85
512
88
336
817
836
262
721
687
493
26
241
706
920
762
508
399
686
979
563
698
583
924
46
806
231
317
652
485
197
615
415
999
606
914
598
807
380
73
645
976
703
15
793
190
418
291
659
159
167
300
18
1
714
154
138
598
757
381
54
116
783
708
859
565
947
700
149
96
455
844
402
181
761
834
30
245
387
569
388
555
629
391
132
120
840
422
806
975
432
633
821
830
981
786
755
131
661
1
710
54
816
828
887
608
71
114
677
994
452
145
455
108
405
233
140
26
611
454
411
554
877
967
632
308
29
73
144
871
866
267
639
499
178
701
803
775
664
930
183
327
675
467
867
364
678
982
234
443
621
25
688
120
676
176
339
57
261
916
475
773
960
637
856
567
1
702
256
505
462
637
672
869
290
85
681
357
217
429
694
126
419
618
7
895
779
187
374
8
842
43
271
379
780
995
361
123
235
401
390
939
808
275
509
375
368
905
201
104
200
494
684
901
549
724
686
576
240
162
873
211
793
862
831
855
406
155
887
255
213
819
469
490
430
164
836
172
293
454
609
375
536
783
60
22
357
165
489
971
676
836
75
246
754
841
457
660
815
395
990
436
568
679
423
107
596
81
172
104
612
36
241
113
494
16
505
56
272
565
988
904
263
893
941
598
676
911
476
544
466
374
616
610
621
851
481
808
936
830
83
56
836
225
839
809
201
70
42
914
948
442
202
145
911
818
227
299
35
1
99
617
655
28
875
721
928
820
598
616
597
64
911
593
740
779
865
495
645
942
46
999
934
538
779
66
877
883
761
104
187
525
904
619
121
544
386
16
878
287
795
944
345
644
148
680
883
188
348
281
849
232
512
21
172
9
297
747
258
884
793
16
547
980
872
357
873
141
684
354
571
896
277
913
103
207
626
513
762
841
158
534
872
746
147
227
502
349
71
458
199
390
989
668
211
67
543
293
831
169
997
407
674
136
732
824
780
423
738
921
357
386
322
288
998
479
700
994
212
576
724
162
844
840
331
258
809
858
890
927
640
403
247
924
361
549
436
596
241
213
56
412
719
659
404
351
353
579
329
654
388
75
851
461
55
421
787
417
164
477
674
700
930
239
336
993
639
892
560
822
433
812
316
225
814
784
322
933
167
897
799
379
668
821
248
395
283
663
494
138
408
932
33
121
642
737
686
538
942
188
640
100
931
544
157
911
26
565
564
351
515
4
335
872
692
336
549
296
987
913
288
363
399
203
922
733
456
939
418
106
771
854
529
404
573
879
462
873
345
94
136
13
549
657
741
425
240
961
705
706
591
675
195
541
175
82
276
390
569
701
925
720
319
984
816
469
113
645
600
186
737
449
729
747
694
363
461
966
881
700
616
467
912
821
127
447
810
260
708
232
840
951
227
408
526
862
443
463
598
561
814
527
549
431
998
742
190
90
134
346
581
338
100
237
180
58
475
122
793
270
488
47
294
314
10
789
374
472
643
575
378
449
588
937
961
634
434
57
706
126
513
545
535
877
475
805
474
682
276
924
717
700
888
845
676
633
825
519
983
296
648
642
573
542
991
867
41
627
384
906
518
195
357
935
694
758
267
531
517
272
223
93
982
471
517
663
445
484
156
788
487
753
427
847
315
211
689
220
27
439
210
536
14
908
527
790
690
308
192
28
168
480
285
870
798
335
472
90
370
381
247
349
637
569
856
619
804
879
305
958
293
212
256
292
76
496
829
861
538
196
121
874
420
334
762
529
521
864
898
940
557
402
449
258
698
789
275
303
50
44
549
62
490
761
238
469
327
424
699
446
151
734
395
610
247
831
659
795
762
210
716
885
125
506
796
868
163
119
618
535
100
86
302
571
349
599
636
603
276
977
218
43
676
121
162
316
23
837
729
711
75
15
89
855
277
782
581
689
800
202
630
829
755
29
661
297
418
292
654
200
972
157
111
779
498
91
458
383
679
214
831
806
466
513
413
145
525
967
384
193
743
412
964
767
586
314
86
835
961
243
640
221
334
939
984
466
391
323
524
433
406
623
180
217
256
738
443
937
633
48
33
575
812
926
211
789
11
456
569
129
414
209
271
203
598
451
501
567
328
614
61
995
969
740
391
911
151
299
580
855
358
207
890
957
541
528
840
716
779
428
159
193
915
556
125
66
723
613
987
29
910
106
394
145
828
742
628
506
709
666
833
914
411
970
881
656
386
454
855
453
323
50
696
611
3
945
172
671
964
452
369
163
68
744
308
539
363
122
971
175
792
206
415
561
458
307
435
365
662
16
79
748
284
745
203
807
783
645
536
197
825
777
528
397
981
336
746
300
855
193
848
17
818
513
197
450
7
748
366
331
110
659
680
858
759
884
474
743
74
593
14
686
582
76
666
155
475
84
899
246
149
744
991
848
274
588
136
364
1
95
225
756
429
129
928
561
26
961
286
339
335
208
108
173
2
567
614
319
285
89
906
823
574
939
489
170
268
746
660
931
354
963
110
512
749
572
864
39
551
725
629
428
352
953
697
452
291
963
883
600
79
672
777
645
800
774
639
552
89
837
681
996
156
343
358
721
435
738
720
458
718
962
571
481
93
950
762
640
736
814
655
1000
659
247
185
790
921
671
776
849
930
934
908
26
495
157
26
934
152
949
969
64
296
379
61
485
414
982
417
798
936
501
202
304
498
588
333
90
506
273
631
122
299
601
849
351
320
488
127
717
659
848
728
395
17
613
443
813
157
921
400
743
54
672
694
281
554
747
752
407
77
394
235
595
913
762
621
374
297
71
245
265
195
831
236
722
805
578
630
916
90
514
497
642
567
355
689
833
951
467
348
20
529
92
379
322
876
834
413
342
774
601
448
359
69
85
109
871
145
869
81
692
967
84
359
218
334
613
299
564
128
985
524
718
605
676
7
592
160
587
929
277
223
79
773
576
964
482
956
633
276
905
410
418
972
796
626
565
937
885
713
808
811
612
574
510
81
734
842
663
897
115
408
943
716
593
33
754
306
315
978
725
240
338
320
650
43
721
13
450
674
844
436
956
691
580
844
876
620
739
965
589
65
564
296
5
765
596
814
119
131
768
440
527
28
141
278
323
431
421
41
529
441
709
621
257
721
565
507
552
243
568
694
833
15
783
778
22
326
227
251
326
434
699
524
317
823
882
879
120
192
639
32
151
459
377
909
205
219
734
609
985
559
121
285
397
290
760
184
33
243
619
766
22
158
425
229
858
32
170
427
219
319
905
23
763
850
59
657
183
736
941
864
135
945
834
552
666
817
550
144
212
49
97
13
892
269
624
28
604
242
731
808
43
798
665
700
644
6
384
836
372
653
66
527
833
87
788
822
877
448
432
14
40
483
170
972
950
728
686
783
164
923
478
499
254
963
444
27
114
213
832
728
561
688
56
266
677
283
785
488
648
549
764
951
564
832
498
67
204
194
267
820
270
341
255
377
100
900
719
162
870
389
186
612
539
600
596
104
535
308
984
539
476
61
576
549
663
818
400
492
123
213
180
65
391
540
159
696
161
513
58
915
761
677
255
789
9
338
821
141
317
858
894
351
824
339
18
109
163
804
848
193
979
980
78
418
453
460
399
841
144
801
109
957
534
539
902
896
121
160
787
730
655
804
696
532
494
336
533
335
832
161
9
605
650
644
434
951
404
863
366
400
429
525
466
504
593
329
56
626
929
913
435
327
517
925
929
545
102
54
651
471
798
589
870
946
149
610
636
183
704
840
233
787
464
471
159
649
940
498
166
154
188
689
651
671
398
749
123
542
465
526
808
941
897
644
252
393
540
94
946
775
652
889
661
546
41
805
144
385
155
539
931
185
234
653
369
833
79
932
372
140
759
861
36
561
916
89
97
815
78
297
105
277
87
940
412
795
205
280
82
341
912
675
266
166
282
167
312
626
928
977
198
9
599
256
582
722
724
527
87
912
979
409
285
475
954
473
476
764
392
405
985
37
642
75
810
709
339
819
654
289
219
972
430
776
315
263
991
826
489
465
449
867
278
615
382
575
984
409
572
786
360
788
305
892
74
559
24
799
209
167
532
382
788
255
366
755
687
237
314
208
681
335
324
109
744
265
183
64
747
924
655
538
530
690
383
928
280
762
575
439
178
448
748
203
904
537
319
298
978
970
404
107
906
485
916
214
829
379
212
174
350
361
854
609
434
481
509
958
294
364
934
307
885
365
262
543
966
656
418
120
176
927
749
288
780
365
462
430
805
601
998
572
675
256
827
383
16
571
132
881
285
196
474
715
469
278
428
674
603
320
403
720
800
230
896
300
288
998
174
94
777
949
44
5
646
873
437
605
834
260
650
921
915
533
475
536
476
192
176
845
625
4
931
626
644
622
425
308
194
501
832
353
194
847
310
821
60
965
948
633
940
307
697
732
738
389
766
318
79
918
108
390
248
558
497
137
940
476
123
734
18
334
688
383
903
198
599
239
843
304
148
810
65
944
847
136
642
468
700
510
740
825
418
252
60
424
817
743
693
859
419
693
428
624
876
274
579
584
467
772
174
772
683
452
422
672
252
954
639
595
878
756
724
605
470
903
741
904
957
68
453
657
653
725
169
391
521
382
476
112
832
7
268
956
273
514
439
846
438
474
904
384
531
447
242
939
770
416
579
932
58
159
108
383
929
781
426
715
798
862
314
644
139
594
359
569
884
13
683
513
358
35
979
90
737
461
100
291
246
218
216
986
890
718
884
269
649
675
78
84
385
333
185
384
640
629
811
173
245
856
422
899
409
490
912
683
853
311
639
237
831
478
325
314
980
541
561
831
310
564
516
385
160
735
633
19
750
266
527
598
547
264
484
200
948
181
774
998
797
279
295
835
723
934
404
284
240
308
552
274
428
855
464
752
732
51
806
130
620
574
532
475
285
841
286
807
88
788
543
832
273
954
413
398
151
218
818
493
652
900
971
227
290
934
508
716
483
240
187
353
286
992
357
526
405
2
951
555
146
786
706
893
898
319
745
12
95
56
520
350
303
834
924
29
500
530
53
327
216
599
756
980
900
983
780
50
366
590
437
975
27
216
86
319
67
318
893
503
863
2
971
3
13
33
520
241
613
669
108
577
485
278
885
416
628
899
521
821
552
25
168
867
115
175
232
179
443
502
324
806
958
571
792
404
52
231
455
402
769
75
559
496
737
934
311
977
280
948
367
639
84
503
672
400
936
12
294
148
39
540
82
814
730
886
625
242
308
376
547
481
791
329
396
17
758
763
209
259
212
597
280
116
542
751
50
685
26
229
918
22
137
87
75
624
799
551
124
654
454
887
221
436
68
846
872
398
641
68
379
433
351
10
877
653
886
686
748
963
634
807
285
467
677
398
963
686
773
571
210
187
726
49
950
622
835
253
132
584
379
856
543
499
452
322
560
9
765
407
961
526
224
291
350
198
380
396
758
994
311
924
555
755
64
173
876
632
716
783
486
388
153
580
374
132
436
736
43
533
555
755
479
942
915
102
372
546
305
608
818
623
34
634
428
285
672
535
534
112
578
239
681
380
58
543
224
305
865
826
710
108
104
51
767
742
1000
153
302
574
990
201
245
308
352
440
327
362
714
964
720
757
682
641
864
408
46
162
72
734
627
872
807
201
855
617
236
223
928
881
334
717
342
742
460
919
636
551
346
616
283
847
173
491
894
313
163
701
647
808
635
378
470
752
489
413
943
726
21
433
655
739
987
51
501
618
686
593
933
370
655
879
941
421
763
896
745
265
71
315
612
925
511
4
818
882
551
13
637
537
597
331
972
897
40
705
354
40
162
614
944
791
125
925
652
633
149
238
873
290
179
858
909
347
119
281
20
331
33
776
772
897
71
417
742
620
246
790
310
341
59
846
424
429
886
411
769
38
645
235
574
600
938
291
587
846
219
708
15
361
14
260
207
424
821
575
314
377
951
602
163
105
706
77
469
613
314
807
89
794
184
790
707
413
236
770
778
156
43
243
878
350
94
712
417
188
972
173
386
461
290
160
555
677
183
83
937
441
227
239
820
629
723
634
424
480
539
354
164
493
18
40
317
713
934
132
553
46
68
635
983
583
557
299
685
454
616
753
264
576
934
432
750
749
644
309
818
616
448
689
272
834
490
917
795
406
256
675
662
121
811
364
627
877
802
25
942
34
745
307
298
916
492
437
392
872
224
7
293
520
395
602
621
639
617
305
509
802
871
126
827
315
584
541
54
735
68
943
463
901
488
67
353
46
495
462
270
16
955
361
220
776
233
820
615
313
325
507
386
316
568
285
343
504
508
79
140
884
819
994
654
591
41
799
321
272
481
75
345
656
560
814
298
423
506
151
176
556
639
282
843
553
304
584
329
27
869
996
829
813
508
242
99
504
656
529
802
140
180
852
706
740
681
60
839
560
49
635
257
586
199
462
381
6
732
656
113
841
22
751
335
101
995
659
910
263
639
110
947
71
845
767
889
847
644
214
817
481
881
504
108
288
414
862
977
996
456
878
363
115
528
864
366
216
742
967
684
784
934
693
370
190
351
63
565
605
405
292
137
398
705
865
974
174
650
205
190
389
318
237
531
66
815
142
66
369
738
828
365
952
506
644
958
548
10
554
733
422
299
723
225
739
263
609
571
420
226
661
233
241
692
852
657
936
233
908
118
593
421
632
583
703
526
971
636
482
471
22
199
632
29
891
650
320
568
490
937
888
153
866
24
629
604
49
157
828
520
979
355
843
344
739
53
198
996
993
182
417
659
187
754
773
490
984
493
880
882
97
295
461
160
227
435
332
364
500
38
449
631
67
829
683
839
52
880
493
377
115
776
768
332
386
882
723
703
991
962
970
816
91
340
890
856
451
450
299
947
341
656
957
897
536
566
441
131
359
309
480
770
635
536
36
371
158
564
548
870
523
305
748
76
370
627
36
795
820
744
181
137
297
409
672
666
287
121
790
54
290
667
776
694
929
188
431
648
695
968
1
70
552
747
901
252
747
752
523
21
496
82
88
43
583
687
277
655
271
106
286
810
971
146
311
348
73
612
556
382
130
44
610
244
676
191
910
137
391
263
347
863
787
122
17
613
592
155
452
11
635
432
830
824
393
192
18
308
921
934
135
954
167
356
857
482
880
65
556
737
141
513
191
182
757
432
590
755
46
799
95
741
12
793
803
485
204
858
454
282
557
16
343
661
479
453
534
475
138
926
893
151
232
78
986
251
280
644
694
825
265
400
725
83
789
651
758
516
359
965
453
271
397
557
446
882
806
193
339
789
475
224
876
494
363
912
630
146
864
383
629
596
348
192
262
109
685
637
229
106
121
372
652
800
688
273
492
768
502
43
539
416
687
268
8
664
126
806
720
239
115
484
331
475
553
318
336
936
787
754
327
474
579
817
322
526
836
925
89
266
344
726
494
223
806
540
540
213
259
679
790
355
771
908
307
895
558
912
750
890
100
580
310
227
972
566
135
357
163
786
857
714
827
871
12
471
474
136
487
403
790
798
185
227
320
514
821
645
177
16
863
244
890
559
527
912
169
602
681
903
286
106
639
985
13
230
553
228
769
84
37
469
524
412
875
711
587
462
686
461
649
597
117
314
168
188
380
440
692
953
594
907
714
907
709
90
453
420
563
519
958
416
163
410
809
429
70
958
267
178
354
734
334
563
1000
226
907
142
484
91
772
577
940
717
401
962
999
504
35
421
384
358
472
139
75
875
847
235
697
584
447
606
815
474
568
666
1
263
720
413
116
320
499
510
670
946
619
105
610
33
814
85
698
717
697
676
241
976
744
522
962
500
461
398
201
581
697
783
769
692
29
449
996
181
471
27
161
669
712
425
703
446
897
764
273
935
839
343
412
347
804
732
118
767
394
118
862
192
551
213
538
983
92
441
543
702
945
744
608
140
601
560
355
718
954
403
733
764
613
641
117
237
756
760
72
743
303
949
992
155
904
549
741
262
328
75
408
190
465
564
571
630
44
597
90
513
51
431
790
223
259
731
789
442
511
712
21
877
84
417
568
533
391
998
429
101
931
84
692
129
731
727
905
149
891
972
79
414
499
819
921
705
678
199
740
720
989
858
813
600
759
85
952
501
158
4
639
411
673
793
779
154
330
291
821
642
556
231
763
147
615
346
151
395
558
498
746
107
819
823
257
442
490
729
203
336
416
958
92
65
437
126
43
841
501
433
420
454
840
411
593
338
383
28
852
177
283
335
29
163
245
243
162
631
133
828
310
161
719
785
954
398
823
259
484
974
972
748
15
633
387
348
28
848
871
953
35
918
676
325
554
17
610
780
319
375
27
650
138
667
573
822
250
25
916
973
721
585
324
258
54
14
786
767
490
490
643
887
342
939
294
633
115
936
485
129
854
419
712
886
833
745
503
126
137
556
604
221
795
321
381
832
530
713
564
219
848
799
664
469
463
292
94
676
900
986
860
677
490
697
435
201
331
91
961
308
732
656
186
603
325
152
164
303
25
946
952
943
100
360
443
462
581
479
884
424
861
854
350
484
875
982
52
202
405
726
789
144
985
396
695
590
908
890
329
425
602
958
438
723
816
584
650
488
57
671
19
976
409
67
876
420
648
731
540
827
870
806
73
46
330
349
74
567
282
767
177
356
988
723
942
718
831
652
203
187
443
942
575
159
257
702
395
348
998
709
853
830
567
522
747
290
844
630
827
719
256
981
978
989
797
236
589
25
783
321
425
425
283
574
895
866
605
107
890
87
793
923
512
230
668
867
80
545
468
938
569
968
926
544
574
783
673
525
67
312
951
939
53
936
260
610
674
762
794
109
781
530
500
93
329
371
974
357
609
198
562
795
861
841
484
236
664
519
891
28
513
497
406
939
876
357
292
688
148
827
471
874
85
323
339
584
482
741
363
121
994
806
295
500
652
997
530
759
488
780
345
802
689
215
657
431
714
147
224
437
891
683
899
670
735
509
196
417
395
557
192
284
830
551
369
453
524
632
141
898
759
608
277
543
703
296
446
903
257
776
963
944
189
751
144
347
54
784
545
761
370
96
720
545
239
699
442
255
213
204
561
825
93
558
431
692
688
686
607
543
336
518
954
426
267
6
398
738
114
346
619
542
995
616
624
769
716
606
883
60
629
172
747
782
915
672
223
344
882
335
745
64
148
915
383
653
741
611
604
999
660
518
219
459
80
876
882
25
547
672
152
14
375
6
392
547
765
999
875
639
875
479
1
271
540
620
640
862
700
996
429
435
683
412
599
408
913
107
994
946
434
379
380
142
295
214
664
250
697
501
615
659
808
853
441
206
633
693
19
552
792
142
227
549
546
210
460
530
11
392
251
763
512
62
885
831
876
266
705
356
423
196
548
651
555
953
285
736
742
55
970
427
584
368
866
534
189
967
940
927
799
136
149
687
821
22
857
667
465
960
608
255
48
345
430
45
156
206
357
807
987
704
649
864
150
516
790
356
470
853
567
808
683
362
871
862
749
966
677
598
594
658
546
413
75
140
281
851
351
958
322
159
473
349
195
405
60
43
347
7
382
569
383
161
819
286
281
284
486
154
967
882
579
789
573
284
662
676
555
906
426
379
42
368
321
764
409
892
446
270
434
211
187
201
58
261
823
123
756
555
833
306
48
287
693
103
585
462
548
463
212
631
79
875
365
248
523
510
879
292
281
990
960
175
211
898
190
667
570
15
952
382
791
575
104
979
591
233
862
77
225
576
92
830
449
798
277
499
2
174
46
548
456
390
424
242
607
816
167
369
688
782
464
369
688
98
589
972
266
993
271
461
292
851
443
747
57
765
738
806
330
411
509
769
676
398
142
941
593
882
485
740
579
507
187
960
254
347
560
559
140
897
361
233
434
616
171
219
92
532
269
416
503
245
863
508
742
637
148
853
582
729
955
568
896
729
167
676
806
434
426
821
491
522
324
973
668
157
35
952
611
866
876
660
97
41
640
580
228
873
315
203
168
533
465
500
529
679
552
444
902
945
311
717
179
588
411
733
971
128
560
535
590
981
383
752
544
986
639
100
848
731
503
108
76
314
299
155
929
386
214
66
26
304
420
807
690
775
863
685
576
745
99
849
912
84
652
580
379
968
108
248
914
684
546
694
615
954
899
257
554
42
453
132
227
148
403
715
869
348
540
587
516
928
5
811
146
104
171
573
977
482
283
759
418
463
950
770
433
594
305
286
385
235
776
691
5
131
500
351
552
5
180
456
526
682
172
672
666
879
668
929
101
367
739
746
681
905
506
97
260
68
338
306
781
28
251
442
263
303
311
350
26
382
753
613
182
509
449
204
926
671
25
922
923
701
258
417
991
689
453
730
372
349
906
366
562
418
61
469
634
310
124
974
892
384
184
794
381
419
679
803
923
108
141
906
795
403
811
611
600
642
769
172
413
550
278
386
381
436
201
801
682
985
538
15
169
684
63
87
897
98
668
955
60
988
569
834
138
585
934
575
872
265
815
705
986
376
435
904
228
625
313
854
661
341
608
446
256
499
462
609
152
266
52
408
769
922
714
118
471
235
122
688
791
42
975
608
592
731
710
956
834
948
529
527
208
786
835
897
819
524
304
958
550
477
156
892
157
948
848
601
630
268
771
270
775
301
196
206
331
287
749
176
228
158
798
209
246
64
562
132
116
477
391
690
536
175
132
168
500
771
498
590
484
548
931
23
488
761
178
401
884
317
161
547
598
141
548
308
245
10
728
985
191
998
981
365
154
908
917
807
880
770
511
998
886
977
666
164
451
805
34
30
518
687
867
393
810
21
952
392
322
121
182
13
126
450
292
468
605
479
730
145
757
58
347
313
486
307
920
86
508
619
756
38
175
777
149
471
925
970
1
562
956
678
170
46
101
61
291
521
410
551
923
993
211
139
118
644
805
482
597
160
132
622
568
827
927
774
519
133
519
662
786
92
701
393
200
612
323
459
708
661
607
354
836
950
117
797
83
474
519
657
89
434
324
723
456
180
493
5
174
370
261
49
167
130
930
50
582
37
86
343
969
448
55
548
660
883
513
245
500
797
332
551
862
57
966
8
435
937
942
749
264
816
628
546
383
435
966
872
946
689
353
801
372
300
405
459
551
926
888
554
858
545
756
494
6
764
464
920
455
32
610
68
859
897
604
960
954
589
294
576
855
56
602
694
594
541
174
9
593
861
359
523
644
624
17
914
828
551
793
814
8
382
460
84
93
369
499
536
943
905
52
172
18
936
111
56
782
478
772
412
71
318
97
360
261
823
530
488
704
672
483
13
457
193
639
497
503
299
243
715
548
603
270
537
655
741
9
270
824
827
568
967
177
166
940
788
459
596
641
828
714
92
591
343
4
479
21
407
498
579
292
868
819
805
41
123
917
884
226
474
612
349
143
143
180
449
338
84
29
841
729
610
710
918
980
947
864
726
394
857
739
417
478
702
78
441
100
931
789
492
295
104
291
483
151
834
662
728
119
418
950
187
179
806
505
289
889
604
259
971
605
414
91
731
117
150
968
149
470
70
293
407
312
50
32
287
381
807
605
715
990
216
521
949
546
55
903
702
812
351
567
956
161
378
41
326
161
743
11
230
34
574
689
500
248
915
711
478
710
183
624
665
827
100
959
880
528
982
661
720
272
212
377
429
198
834
130
243
47
728
794
596
824
106
983
356
542
299
89
285
564
962
443
976
213
333
162
852
782
919
215
531
762
943
634
965
177
821
898
562
553
932
211
942
752
767
657
281
755
962
205
530
42
763
374
271
43
840
310
145
210
111
653
482
362
649
954
725
927
789
707
830
324
565
113
458
999
363
484
138
283
125
94
423
259
298
539
309
522
226
587
901
166
149
487
821
659
495
178
652
638
320
275
951
847
892
528
114
392
214
842
403
520
879
372
781
333
729
454
78
215
968
157
779
756
978
762
662
991
953
609
599
269
979
892
304
277
144
497
329
855
14
472
261
653
298
332
204
256
1000
802
259
709
625
55
118
279
204
91
935
771
10
83
198
678
120
871
788
435
446
778
318
813
394
852
775
574
246
758
289
841
140
658
625
160
709
4
280
792
174
620
445
347
500
630
702
233
925
253
31
938
186
158
806
549
664
476
259
193
61
354
897
247
573
82
485
778
359
457
916
895
888
710
697
754
77
693
142
93
45
666
911
536
239
449
46
734
503
396
323
725
203
250
215
625
581
982
866
185
590
269
643
385
670
277
161
910
762
452
990
155
665
706
614
69
896
823
606
878
572
658
888
649
725
540
491
69
254
851
678
7
400
37
387
905
501
318
339
629
445
119
580
158
432
107
633
98
787
872
806
159
104
263
81
310
966
300
877
199
81
353
328
380
265
167
675
100
412
853
604
654
930
630
280
784
111
388
691
398
695
196
607
880
611
664
419
423
535
385
492
690
698
720
245
682
2
573
390
579
657
349
380
810
475
848
894
25
188
222
892
357
856
955
159
788
833
925
23
819
696
713
980
757
672
577
182
284
209
54
349
863
314
613
706
997
813
6
331
623
177
509
628
780
567
940
590
732
622
987
535
527
503
344
137
970
894
56
683
652
363
795
732
906
587
811
537
438
612
478
568
341
155
88
263
134
464
888
104
955
593
966
903
775
373
122
365
25
286
295
596
51
754
99
352
975
447
277
684
676
695
57
954
59
852
993
691
810
792
789
833
926
258
203
743
231
475
628
993
254
468
764
806
579
446
773
916
474
164
545
420
99
503
709
925
248
715
142
829
67
115
698
541
976
2
658
672
385
421
909
306
642
64
862
665
404
128
432
466
37
254
771
512
298
476
776
456
225
428
431
293
633
625
349
913
568
937
670
459
122
185
486
748
221
159
608
834
937
775
606
522
649
811
893
205
827
988
642
594
77
103
703
339
375
967
606
120
143
729
464
223
222
166
941
354
592
524
535
415
283
97
952
990
680
361
302
171
493
96
119
216
721
806
981
797
481
808
518
451
160
380
306
442
854
98
681
306
26
978
671
918
272
419
241
498
744
442
164
193
954
94
604
157
656
825
481
483
402
297
78
280
186
536
10
461
931
207
821
856
638
536
821
810
664
568
659
567
805
646
725
667
685
215
624
568
75
752
49
167
914
788
74
801
147
177
427
768
792
555
456
820
950
826
749
751
877
933
375
960
784
28
190
208
348
42
544
864
529
810
824
774
159
255
350
39
976
924
333
185
781
69
925
536
242
697
381
456
54
934
324
579
826
102
806
123
50
301
636
205
982
529
157
523
351
304
69
211
914
455
202
663
464
797
80
282
824
387
370
957
780
607
706
550
969
232
887
631
531
695
789
232
615
296
283
116
397
66
506
497
638
569
736
377
443
97
250
704
325
757
801
79
855
833
989
646
790
344
562
453
681
916
578
605
534
451
511
113
962
389
455
899
901
481
461
439
661
350
948
39
339
891
965
996
396
660
742
15
564
217
283
964
51
751
757
274
841
118
292
752
496
650
504
760
244
962
695
198
73
850
622
927
827
552
180
467
991
779
500
898
810
951
949
793
590
415
247
922
425
276
575
337
452
608
139
244
336
397
199
649
467
627
776
263
482
373
852
321
411
396
108
150
530
919
645
531
832
266
976
550
264
606
895
290
515
2
828
804
310
179
689
196
117
524
361
711
622
264
979
370
520
719
668
677
299
622
522
778
196
884
477
993
199
606
894
66
293
375
966
336
239
597
372
770
525
332
265
16
722
35
676
675
310
689
519
448
770
179
993
436
752
362
776
470
610
9
836
95
727
276
175
189
680
556
219
513
504
845
451
651
314
402
138
835
951
569
522
416
766
631
745
52
907
56
218
22
501
607
93
416
404
812
981
231
148
832
236
707
794
959
221
444
763
546
452
610
605
175
30
655
888
509
390
52
522
701
574
556
290
675
94
807
461
13
258
121
337
106
691
268
42
674
208
620
356
249
612
987
179
208
237
817
378
780
998
165
351
940
533
992
107
313
735
41
502
532
74
674
759
557
529
612
191
213
455
495
403
736
404
102
902
16
95
532
389
166
77
817
515
346
482
557
204
949
993
533
552
149
595
518
175
134
562
387
58
780
827
506
554
461
892
652
206
460
304
700
558
573
963
285
868
795
239
650
222
368
686
782
921
447
309
123
673
941
701
764
797
140
538
965
342
89
981
324
319
895
212
482
449
696
982
516
232
747
437
863
882
279
220
7
394
373
60
741
308
531
784
219
901
477
982
886
932
627
344
91
377
66
724
367
24
341
4
142
493
596
743
448
494
491
506
87
82
167
331
423
720
585
421
367
857
5
4
496
857
757
468
933
209
611
260
653
95
682
995
172
788
307
551
866
147
888
720
605
105
628
827
428
793
923
6
421
230
852
563
100
632
686
696
747
989
33
118
10
629
853
968
767
99
705
422
887
991
319
711
244
449
296
861
508
129
192
616
476
399
946
214
829
110
861
323
213
462
165
574
56
202
969
545
649
18
289
649
671
165
386
419
536
660
88
256
307
292
167
483
809
420
757
306
900
237
872
140
328
312
344
222
260
35
509
883
680
9
237
361
152
188
921
987
588
196
62
855
655
724
430
265
246
32
623
894
792
547
329
841
18
339
212
544
245
655
344
451
681
914
371
46
481
827
809
713
45
295
961
529
133
99
815
940
798
25
670
728
700
216
682
562
419
975
215
675
108
62
117
869
865
18
936
817
238
924
456
39
717
306
989
519
677
608
80
901
209
50
754
257
986
644
46
783
893
339
231
790
884
669
764
479
908
685
671
421
734
405
57
282
439
347
60
334
716
614
899
739
552
62
888
98
493
282
452
304
233
137
683
422
206
749
944
228
284
950
563
708
14
642
321
338
953
647
447
241
431
658
986
422
908
841
582
740
431
524
164
45
278
587
821
30
537
171
938
748
858
768
765
686
207
395
570
806
122
94
665
443
5
156
58
842
531
825
489
859
313
284
445
652
305
582
206
31
918
861
880
24
527
896
908
837
593
592
296
962
360
493
493
594
638
520
638
883
609
224
781
894
555
909
622
416
680
407
845
291
487
301
538
764
816
369
509
702
574
56
272
323
695
978
374
760
695
753
862
742
15
830
437
608
804
269
898
572
600
142
750
6
897
160
428
695
981
206
982
888
238
413
269
474
630
33
997
657
649
201
86
914
691
143
766
322
992
185
33
679
129
918
935
867
625
209
743
325
802
36
430
584
233
96
542
563
739
723
624
284
209
544
501
634
517
525
275
678
505
603
617
860
722
232
720
370
269
478
103
320
720
89
393
764
549
210
337
818
537
233
487
72
50
799
250
27
509
459
991
787
355
393
148
164
340
661
40
72
754
154
905
572
438
505
37
883
62
611
28
572
473
247
48
226
898
642
167
83
865
270
933
604
78
89
479
745
624
619
331
617
357
895
867
323
932
18
779
723
761
986
868
871
721
415
23
454
871
613
581
899
158
548
894
122
536
825
32
757
1000
907
555
457
435
139
95
282
548
511
816
501
3
888
588
337
294
368
707
151
592
438
949
583
73
257
933
569
310
18
730
980
427
46
486
757
805
54
618
988
414
990
757
326
785
560
542
111
263
298
181
620
789
935
811
670
107
538
140
244
590
210
745
579
37
228
9
81
522
34
440
920
110
54
820
863
298
392
444
799
950
783
103
778
438
751
276
447
157
545
937
971
584
671
222
178
575
878
782
572
568
95
660
626
544
803
240
261
330
251
126
535
486
444
981
391
209
799
15
339
146
671
570
511
297
378
25
780
722
497
352
548
994
842
241
63
951
231
434
976
264
825
884
701
153
668
248
525
854
807
446
36
625
487
961
774
282
731
387
352
291
392
156
728
527
889
845
112
564
955
356
534
972
340
674
770
757
686
476
457
429
410
240
990
86
534
921
227
160
645
638
385
339
57
754
854
381
433
563
865
436
136
929
680
752
954
795
898
156
614
819
553
190
629
957
884
259
838
957
370
540
376
895
617
811
645
733
123
265
101
632
806
530
830
205
18
626
722
722
873
774
987
621
484
230
943
280
420
191
372
2
425
994
460
633
500
745
696
759
127
895
906
402
930
591
98
21
311
249
47
325
692
398
227
683
340
361
546
915
805
366
39
303
629
600
953
210
999
52
18
694
991
872
996
163
166
379
607
882
364
77
155
809
51
515
436
837
834
40
170
876
526
526
110
535
568
439
695
590
783
927
392
804
759
667
998
381
777
276
406
57
91
570
384
689
768
888
330
478
820
42
936
421
457
159
893
652
574
219
870
669
371
996
292
294
449
926
712
118
978
449
362
168
875
688
50
532
931
807
713
85
809
4
121
214
351
218
349
832
714
555
710
820
548
25
23
363
580
222
758
872
345
313
80
935
424
427
299
147
774
116
709
526
523
921
548
600
818
153
695
746
58
807
210
409
596
100
484
914
90
376
658
324
767
604
179
770
63
851
591
984
275
501
358
150
766
238
148
427
789
20
299
290
963
950
853
576
298
398
741
429
659
296
969
649
827
113
523
860
338
351
757
12
957
742
648
633
880
249
490
795
169
787
584
893
246
662
172
115
377
874
167
34
501
559
936
797
731
545
135
923
828
62
572
736
372
255
882
139
580
868
39
635
714
989
194
624
747
704
719
807
687
852
456
618
736
318
8
315
614
844
326
549
312
778
435
363
129
820
70
68
195
417
759
58
825
538
137
31
619
30
339
660
669
106
70
459
381
713
274
231
884
859
199
224
64
115
688
255
803
369
944
304
66
682
514
988
329
275
608
80
473
41
58
705
741
20
672
965
922
202
410
684
248
656
15
442
880
515
293
462
49
84
533
942
217
570
304
902
299
291
714
691
355
130
855
664
644
712
121
225
86
811
401
664
388
676
5
567
856
126
631
321
836
209
413
987
98
572
795
968
51
961
249
636
207
497
842
656
857
307
422
56
708
169
663
421
775
681
372
832
296
507
386
250
850
927
370
770
244
441
553
665
502
657
105
447
515
126
453
940
769
511
969
463
373
146
5
502
159
10
926
65
612
83
73
703
584
706
110
245
780
20
992
688
404
863
460
372
95
105
520
312
533
756
817
692
777
284
108
950
18
992
746
550
951
68
181
832
884
88
440
927
128
756
668
213
252
833
890
249
156
418
862
394
744
210
972
925
496
464
482
633
771
171
710
29
713
504
508
374
352
840
730
88
150
287
952
835
915
233
59
863
422
143
983
429
870
269
837
932
874
321
471
287
702
793
583
224
563
465
828
943
458
609
561
921
971
230
941
354
838
922
260
732
293
796
165
134
956
491
526
972
79
970
590
886
716
364
52
432
906
12
66
284
175
204
26
581
677
361
999
233
465
242
638
211
196
354
378
575
26
56
387
605
331
617
577
641
977
627
797
896
268
138
401
361
992
563
44
615
868
859
559
504
372
895
101
138
88
712
487
920
47
886
973
981
844
645
371
548
634
98
894
828
330
856
634
598
952
175
471
829
410
239
35
19
444
730
648
734
789
943
998
624
518
75
858
285
118
690
561
648
57
539
197
408
852
556
745
369
603
266
139
830
412
535
960
79
633
245
106
774
756
149
409
591
652
92
287
402
205
895
182
816
390
857
783
825
177
599
649
798
418
759
218
809
25
86
708
60
630
313
703
207
641
101
843
5
654
350
369
944
655
463
744
428
841
269
369
36
657
646
71
46
690
250
849
194
274
573
143
530
956
460
873
87
985
592
594
190
798
666
670
907
765
388
60
907
555
204
784
869
425
523
249
280
325
933
376
936
289
231
199
128
262
627
733
967
65
524
947
355
600
601
26
911
362
44
185
950
465
854
361
700
915
539
114
60
3
134
273
978
734
548
139
903
753
56
132
858
575
706
234
69
716
543
22
302
743
9
298
853
184
621
745
852
500
520
243
356
266
761
53
827
535
983
979
279
438
594
688
581
670
537
996
760
631
226
698
740
638
428
598
2
182
30
424
495
755
840
542
950
524
148
486
543
291
733
157
580
605
131
545
56
550
474
627
899
168
341
650
632
874
499
922
802
772
165
209
290
467
402
121
647
258
741
443
173
477
775
935
320
256
650
90
546
256
115
233
731
556
617
185
785
285
8
149
875
673
494
608
824
898
830
830
936
31
726
780
33
978
600
936
594
514
766
218
671
478
875
568
878
546
636
941
523
620
149
535
933
725
177
279
61
599
980
968
936
812
102
865
86
545
376
373
657
282
27
125
267
313
466
719
727
383
416
76
785
135
427
873
341
213
300
701
550
317
336
10
818
528
489
679
721
232
500
473
912
408
521
261
449
748
648
200
553
867
227
917
130
51
788
492
668
47
726
876
952
303
573
542
303
551
513
178
431
588
670
522
606
739
853
522
333
310
274
404
921
682
688
556
275
687
228
658
579
30
552
842
505
220
660
378
447
525
823
466
930
405
206
561
682
648
652
819
551
65
425
458
641
747
251
984
382
658
686
60
414
269
858
576
360
946
706
229
359
939
929
725
687
494
144
542
201
391
950
433
618
777
929
967
318
922
302
419
89
243
615
286
702
294
716
667
237
348
404
772
879
961
827
847
964
217
324
111
762
814
46
492
817
525
482
375
683
299
141
859
893
257
575
205
834
27
609
356
293
358
380
516
163
655
695
593
233
552
448
842
515
419
124
791
352
705
10
703
762
444
37
814
303
557
123
250
490
297
206
841
19
541
975
10
833
723
768
195
23
182
697
680
570
23
508
848
827
974
257
551
251
194
812
814
92
931
807
783
986
829
273
147
561
323
382
359
913
203
286
925
102
806
155
319
592
856
977
8
471
6
691
904
486
461
102
463
839
877
246
905
190
992
255
281
310
487
890
574
647
789
155
799
792
112
609
663
295
395
9
787
357
788
967
491
711
867
311
475
522
871
858
871
386
765
626
471
342
923
506
95
645
748
762
595
57
461
783
914
818
684
391
867
785
103
580
563
108
465
878
491
776
222
632
811
618
65
238
920
182
775
374
534
747
737
489
680
112
485
374
929
462
543
985
447
616
698
918
6
880
752
721
882
867
751
548
323
41
450
605
566
954
42
956
104
976
912
218
667
487
649
589
65
892
206
343
954
509
484
40
642
841
990
511
214
115
865
861
517
807
166
336
347
422
405
959
385
201
660
846
759
835
926
508
104
749
635
151
96
359
793
170
92
664
474
88
449
914
855
419
126
293
869
953
750
164
901
383
853
688
112
290
61
53
26
234
886
930
896
924
641
46
786
434
75
662
768
345
873
340
502
555
903
938
94
21
946
794
365
829
451
571
898
88
474
244
171
197
830
346
99
379
524
161
504
851
445
880
873
511
65
828
89
332
893
442
932
126
42
839
204
473
111
848
351
327
515
248
370
319
762
77
281
119
251
191
475
107
105
208
956
22
762
752
884
521
995
448
341
112
102
576
125
446
616
722
17
605
631
383
665
837
140
509
222
473
380
739
433
226
61
352
509
410
191
88
967
467
767
308
579
996
676
748
488
383
177
517
372
593
52
198
50
153
284
6
141
490
189
472
633
944
557
39
963
643
694
677
362
790
620
932
774
818
429
54
850
189
309
705
361
596
906
909
849
232
438
270
860
446
391
771
658
253
819
596
135
825
72
423
738
98
135
54
163
252
740
711
848
299
598
181
667
292
473
909
56
952
816
267
590
394
609
647
182
309
360
605
421
941
857
38
369
422
413
791
826
243
176
391
880
639
364
387
439
62
763
447
680
457
249
321
88
143
178
453
166
618
241
2
95
595
965
814
443
885
845
592
919
83
79
51
62
619
339
693
538
204
397
556
638
653
155
2
886
765
332
525
382
828
613
26
206
315
232
235
366
749
246
46
553
731
995
888
558
755
126
6
844
255
315
896
659
666
921
252
73
521
110
473
363
682
584
617
814
168
666
967
214
783
191
203
663
56
30
949
330
681
305
538
288
445
204
974
494
650
124
179
220
954
658
667
549
399
936
95
293
182
818
20
760
89
97
454
901
560
46
785
22
517
730
444
591
131
676
415
706
338
573
676
963
680
326
932
178
245
438
402
820
287
945
456
580
17
928
535
278
291
623
397
409
444
876
375
666
322
32
337
445
205
635
767
601
677
274
65
239
811
538
826
196
451
345
940
195
896
218
251
25
310
615
866
127
361
221
861
847
403
583
284
291
758
884
195
218
294
349
812
338
147
652
18
227
277
662
603
237
129
746
145
432
250
110
204
609
477
193
876
371
930
840
600
989
924
887
864
750
528
33
21
94
890
137
286
162
115
590
675
282
396
310
127
130
261
180
906
208
621
400
576
210
347
664
277
666
544
107
274
506
195
13
279
910
730
43
448
962
195
844
556
79
331
56
449
779
746
608
388
45
325
644
150
166
124
872
855
961
984
144
1
335
725
420
503
169
736
597
306
494
728
863
591
547
