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