1
1
1
1
8
1
8
8
8
20
13
15
15
20
27
1
1
1
1
20
27
27
27
39
1
1
8
13
27
34
34
34
34
51
8
13
15
20
34
46
46
41
41
46
46
58
20
27
46
41
53
58
58
53
53
53
53
70
1
27
34
34
34
34
41
58
60
70
65
70
65
60
82
82
1
20
34
46
46
41
58
48
48
65
65
82
82
94
94
1
51
46
41
58
58
53
53
65
94
94
106
106
1
13
34
58
53
53
53
65
65
65
77
101
101
113
113
1
46
53
53
53
48
53
65
65
77
77
72
89
125
125
1
53
53
65
77
72
89
89
96
137
137
1
53
53
53
77
89
84
101
96
149
149
1
53
53
53
53
53
53
65
65
65
89
84
96
113
161
161
53
53
65
65
77
72
72
89
89
96
125
173
173
1
77
77
84
96
96
137
185
185
1
1
53
53
53
89
84
84
149
197
197
1
53
53
53
53
53
53
53
65
65
65
89
96
161
209
209
1
8
53
53
65
65
77
72
72
89
89
96
173
221
221
1
1
1
15
53
53
77
77
89
84
96
96
185
233
233
8
8
8
27
53
53
53
53
53
65
65
65
89
84
84
96
197
245
245
20
15
20
53
53
53
53
53
65
65
77
72
72
89
89
96
209
257
257
1
1
1
20
27
27
53
53
53
53
53
53
65
77
77
89
84
89
89
96
96
221
269
269
1
1
1
8
27
34
34
34
51
53
58
65
65
77
72
72
89
89
89
84
84
96
96
96
233
281
281
1
8
8
13
15
20
34
46
41
41
46
46
58
77
72
84
96
96
96
96
96
108
245
269
269
293
293
8
15
20
27
46
41
53
58
58
53
53
53
53
70
72
84
84
84
84
84
96
108
120
257
281
281
300
300
1
20
27
27
34
34
34
34
41
58
65
65
60
70
65
70
65
60
72
82
82
84
84
96
103
120
120
127
269
293
293
312
1
1
20
34
46
46
41
58
48
48
65
65
65
65
65
72
72
72
72
82
82
84
94
94
96
96
108
120
127
127
281
300
300
324
1
8
51
46
41
58
58
53
53
65
65
84
84
89
84
84
94
94
91
106
106
103
103
120
120
115
127
293
312
336
1
1
13
15
34
58
53
53
53
65
65
65
77
96
91
96
91
101
101
113
113
127
127
139
305
324
348
1
8
27
46
53
53
53
48
53
65
65
77
77
72
89
91
96
91
103
120
125
125
139
151
312
336
355
1
20
53
53
65
77
72
89
89
91
96
96
91
96
96
103
103
103
127
127
127
137
137
151
151
158
158
348
367
1
53
53
53
77
89
84
91
96
91
101
96
108
115
115
120
127
127
149
149
151
158
158
158
158
281
324
360
360
379
379
1
53
53
53
53
53
53
65
65
65
89
84
96
96
91
96
103
113
115
120
120
127
122
122
122
122
151
161
161
158
293
336
372
372
391
391
53
53
65
65
77
72
72
89
89
96
108
125
127
127
158
173
173
170
305
348
384
384
403
403
1
1
77
77
84
96
96
96
103
115
127
137
151
170
185
185
182
312
355
391
391
410
410
1
1
53
53
53
89
84
84
91
108
103
103
120
115
115
149
151
158
182
197
197
189
367
422
422
1
1
53
53
53
53
53
53
53
65
65
65
89
96
120
115
127
127
127
151
161
158
189
209
209
379
434
434
1
1
1
8
53
53
65
65
77
72
72
89
89
96
115
127
127
139
134
158
173
221
221
391
446
446
1
15
53
53
77
77
89
84
96
96
103
103
103
115
115
127
146
185
182
182
182
233
233
403
458
458
1
8
27
53
53
53
53
53
65
65
65
89
84
84
96
115
115
115
127
127
127
151
151
182
197
189
189
189
245
245
415
470
470
20
53
53
53
53
53
65
65
77
72
72
89
89
96
127
139
139
158
158
189
209
257
257
427
482
482
1
1
1
1
53
53
53
53
53
53
65
77
77
89
84
89
89
96
96
115
127
134
146
146
221
269
269
439
494
494
1
1
1
8
53
58
65
65
77
72
72
89
89
89
84
84
96
96
96
103
103
115
115
127
127
127
182
182
182
233
281
281
451
506
506
1
1
8
8
15
77
72
84
96
96
96
96
96
108
115
115
115
127
127
127
151
151
182
189
189
189
245
269
269
293
293
463
518
518
1
8
8
15
15
27
72
84
84
84
84
84
96
108
115
120
127
127
139
139
158
158
189
257
281
281
300
300
475
530
530
8
20
20
27
27
53
53
53
53
53
65
65
72
72
84
84
96
96
103
103
103
115
120
120
127
127
134
146
146
182
182
182
269
293
293
312
487
542
542
1
20
53
53
53
65
65
65
65
65
65
72
72
72
72
89
89
84
96
96
96
96
113
108
115
115
115
115
115
120
127
127
127
137
127
127
127
151
151
182
189
189
189
189
189
281
300
300
324
499
554
554
1
8
58
65
65
77
72
72
72
72
84
84
84
84
89
84
84
96
96
96
91
103
103
125
115
120
120
115
127
127
127
127
127
139
139
149
158
158
158
158
182
182
189
293
312
336
511
566
566
566
566
1
1
8
15
72
84
96
96
96
96
91
96
91
108
108
113
108
103
115
115
137
137
137
127
127
127
127
139
134
134
139
146
161
146
146
182
182
182
189
189
305
324
348
523
578
578
578
578
8
8
15
27
65
72
84
84
84
84
91
96
91
103
120
120
125
120
127
127
127
127
149
149
144
139
139
146
151
168
182
189
189
189
201
281
312
324
336
355
535
590
590
590
590
1
20
20
27
65
77
72
84
84
84
96
91
96
96
91
96
103
103
103
120
115
115
137
127
127
127
127
139
161
161
146
146
151
151
158
158
180
189
201
213
293
336
348
367
547
597
597
597
597
1
1
65
65
65
89
84
84
96
96
91
96
91
103
108
120
120
115
115
115
115
120
127
127
144
146
146
151
168
173
158
158
158
158
158
192
213
220
305
348
360
360
379
379
559
609
609
1
8
65
77
77
84
84
96
96
96
96
96
96
96
91
103
103
120
120
120
127
127
127
127
122
122
122
122
146
146
146
151
151
158
158
158
180
185
165
204
213
220
312
355
372
372
391
391
571
621
621
1
1
15
96
96
91
103
103
103
108
108
120
127
127
127
139
146
146
146
158
158
158
158
165
165
170
197
192
216
213
220
367
384
384
403
403
583
633
633
1
1
8
27
84
103
103
103
103
103
115
115
115
120
115
127
127
127
127
139
151
151
146
170
165
170
182
204
204
223
213
213
220
379
391
391
410
410
595
645
645
1
1
1
8
20
96
103
103
103
103
103
103
115
120
115
115
127
127
127
127
151
146
146
151
173
158
158
158
158
192
177
182
189
216
235
220
220
391
422
422
607
657
657
1
1
15
84
84
84
96
103
103
103
115
115
115
115
115
127
127
127
127
146
146
146
146
151
158
158
158
158
158
158
185
165
165
182
204
189
228
213
247
403
434
434
619
669
669
1
8
27
115
120
115
115
115
127
122
127
127
127
127
134
139
134
151
146
146
158
158
158
165
165
197
182
189
216
228
213
213
213
240
220
247
259
415
446
446
631
681
681
1
20
84
103
108
103
103
103
103
120
127
122
127
127
127
134
134
139
146
146
146
146
146
146
146
146
158
158
158
170
182
182
204
189
223
240
220
220
220
252
259
271
427
458
458
643
693
693
1
1
8
84
115
120
115
115
115
122
127
127
134
151
151
151
146
146
146
146
151
151
146
158
158
158
170
165
165
177
189
189
213
213
213
213
213
235
252
259
271
278
439
470
470
655
705
705
1
1
1
15
115
120
115
115
127
127
127
127
127
139
146
146
158
158
158
158
158
158
158
170
165
165
182
182
213
220
220
220
220
220
220
220
247
259
278
290
451
482
482
667
717
717
1
1
1
8
8
27
103
103
115
122
127
127
127
134
134
134
151
146
158
170
170
165
165
165
177
182
182
182
189
189
220
232
232
259
290
302
463
494
494
679
705
705
729
729
1
8
15
20
115
115
115
115
115
115
115
122
127
127
127
127
134
134
134
139
151
151
158
165
165
165
165
182
182
177
177
189
189
189
244
244
271
302
314
475
506
506
691
717
717
736
736
1
20
27
115
115
115
122
127
127
127
127
127
134
134
134
139
139
146
151
146
158
158
165
182
177
177
177
182
182
182
182
182
189
189
189
244
251
251
283
314
326
487
518
518
703
729
729
748
1
1
108
115
122
127
127
127
127
127
134
139
139
134
146
146
151
146
153
158
182
177
177
177
182
189
189
189
189
189
189
189
189
189
189
196
244
244
251
295
326
338
499
530
530
715
736
736
760
1
1
8
8
115
127
134
139
139
146
146
158
153
158
158
158
170
182
177
177
189
189
189
189
184
189
196
196
201
201
244
251
251
307
338
350
511
518
518
542
542
727
748
772
1
1
8
15
15
115
122
122
134
134
146
146
146
146
146
165
182
189
189
189
196
196
196
213
213
251
263
319
350
362
523
530
530
549
549
739
760
784
1
8
20
27
27
115
115
122
122
127
134
134
134
134
151
151
146
146
146
153
158
158
182
177
189
196
196
196
196
213
220
220
251
251
263
275
275
331
362
374
535
542
542
561
746
772
791
1
20
115
115
115
115
115
134
146
146
146
146
158
158
158
158
170
165
182
182
189
189
196
196
196
196
208
213
213
220
244
251
275
282
282
282
282
343
374
386
547
549
549
573
715
760
784
803
1
8
115
127
146
146
151
146
158
153
158
158
158
165
165
177
177
177
177
189
189
184
196
196
196
208
208
213
220
220
220
251
251
282
282
355
386
398
559
561
585
727
772
796
796
815
815
1
1
1
15
122
122
134
153
158
158
165
165
165
165
182
177
196
208
220
215
215
220
227
227
232
244
275
367
398
410
571
573
597
739
784
808
808
827
827
1
8
27
122
122
122
134
134
134
134
134
151
151
158
165
165
165
165
182
189
196
201
220
220
227
232
244
244
244
244
251
275
282
379
410
422
578
585
604
746
791
820
820
839
839
1
1
8
20
115
115
134
146
146
158
158
170
165
165
165
165
182
182
177
177
189
208
213
215
220
227
244
251
251
251
251
251
251
275
275
282
294
391
422
434
547
573
597
616
803
827
827
846
846
1
1
15
122
134
146
158
153
158
158
158
165
165
165
182
182
177
177
189
189
189
208
208
220
215
220
220
227
239
251
251
275
282
282
294
306
403
434
446
559
585
609
609
628
628
815
858
858
1
8
27
122
122
134
134
134
134
151
151
153
158
165
165
182
177
189
189
189
189
196
196
208
213
227
227
244
251
282
306
313
415
446
458
571
597
621
621
640
640
827
870
870
1
20
115
115
122
122
134
134
146
146
158
158
165
170
182
182
189
196
213
213
215
220
227
227
239
244
251
258
306
313
427
458
470
578
604
633
633
652
652
839
882
882
1
1
122
122
122
134
134
134
134
146
158
153
158
182
182
182
177
189
189
184
196
208
215
215
220
220
227
227
227
227
244
244
246
251
263
275
275
306
313
439
470
482
616
640
640
659
659
851
894
894
1
1
120
134
134
146
146
153
158
158
165
182
182
182
177
177
189
189
189
189
184
196
208
208
208
227
239
239
244
251
251
263
275
282
282
306
306
313
451
482
494
628
671
671
863
906
906
1
1
1
8
146
153
153
177
189
189
189
189
189
201
196
196
220
239
251
246
251
275
282
313
313
463
470
482
494
506
640
683
683
875
918
918
1
1
1
8
15
153
153
153
153
153
165
165
184
201
196
196
213
208
215
215
227
227
246
258
275
282
306
475
482
494
501
513
652
695
695
887
930
930
1
1
1
20
27
127
127
153
153
165
165
172
177
184
184
196
196
196
196
213
213
220
215
215
215
215
227
227
227
227
227
244
244
275
275
275
282
306
313
487
494
506
525
664
707
707
899
942
942
1
1
1
8
127
127
127
146
153
153
153
153
165
165
177
177
177
177
196
213
208
208
208
208
220
220
220
227
239
239
251
251
275
275
282
282
282
306
306
313
499
501
513
537
676
719
719
911
954
954
1
1
1
8
15
127
158
165
165
165
165
172
172
184
184
213
213
208
220
215
220
215
220
220
227
239
251
246
282
282
306
313
313
511
525
547
549
573
688
731
731
923
966
966
1
1
1
1
8
15
27
146
146
165
177
172
172
172
177
184
184
196
220
220
215
215
215
232
227
227
227
227
227
246
258
275
275
275
306
313
523
537
559
561
585
700
743
743
935
978
978
1
1
8
20
27
115
146
146
146
146
165
172
172
172
172
184
184
184
184
196
196
196
196
196
213
208
208
213
213
220
215
215
220
232
227
227
244
239
239
244
244
275
282
282
282
306
306
313
530
549
571
568
573
597
712
755
755
947
990
990
1
8
20
127
146
146
158
158
165
165
165
165
172
172
177
177
184
184
196
208
208
213
220
220
220
220
215
215
215
220
220
227
227
227
227
244
244
239
251
251
251
246
251
251
275
275
282
306
306
306
313
313
499
537
561
583
580
585
609
724
767
767
959
1002
1002
1
1
1
15
158
165
170
165
165
177
172
172
184
184
184
196
196
196
213
213
208
220
215
220
227
227
244
239
239
251
251
251
251
246
258
275
282
282
282
282
306
306
306
313
313
313
511
549
573
573
595
592
592
597
621
736
779
779
971
1014
1014
1
1
1
8
8
27
115
115
146
165
165
177
172
177
189
184
184
196
196
196
196
213
203
203
203
203
213
220
215
227
244
239
244
244
251
246
246
275
282
313
313
313
313
313
325
523
561
585
585
607
604
604
609
633
748
791
791
983
1002
1002
1026
1026
1
8
15
20
115
115
127
146
146
146
146
146
158
165
177
177
184
184
184
196
196
196
208
208
213
213
220
220
244
251
246
246
246
246
246
251
251
263
258
275
275
275
282
325
337
530
568
597
597
619
616
616
621
645
760
803
803
995
1014
1014
1033
1033
1
1
8
20
27
127
146
146
158
158
158
165
177
172
184
184
184
184
191
196
196
196
196
196
213
208
213
220
220
220
215
220
220
251
246
246
263
258
258
275
275
275
275
282
282
282
337
337
344
580
604
604
631
623
623
633
657
772
815
815
1007
1026
1026
1045
1
1
15
115
146
158
170
165
165
182
189
184
184
196
191
196
196
208
208
213
220
220
220
220
215
220
227
244
246
246
246
246
251
251
275
270
270
275
275
275
275
275
282
282
282
282
337
344
344
592
643
635
635
645
669
784
827
827
1019
1033
1033
1057
1
1
1
8
8
27
115
127
146
146
146
146
158
165
177
196
196
196
208
208
213
213
220
215
215
220
244
251
251
258
258
258
275
282
282
282
277
277
282
282
282
282
282
294
337
337
344
604
655
647
647
657
681
796
815
815
839
839
1031
1045
1069
1
1
1
8
15
20
115
115
127
146
146
146
158
158
158
165
191
191
196
191
208
213
215
215
215
215
215
215
220
220
227
244
251
275
270
265
265
282
282
294
306
344
344
344
356
616
667
659
659
669
693
808
827
827
846
846
1043
1057
1081
8
8
15
27
115
115
115
127
146
146
146
158
158
170
165
165
184
184
184
189
196
196
203
213
213
215
215
220
227
227
251
275
275
275
265
265
265
282
277
306
306
313
337
344
344
356
368
628
679
671
671
681
705
820
839
839
858
1019
1050
1057
1069
1088
1
1
20
20
27
127
146
151
158
158
158
158
165
165
177
189
196
196
196
191
213
215
215
215
220
220
220
220
244
244
239
239
244
258
258
258
265
265
282
282
282
277
277
277
277
313
313
344
344
368
368
375
375
640
691
683
683
693
717
832
846
846
870
1031
1069
1081
1100
1
1
8
158
165
165
165
165
165
189
189
189
208
208
215
215
220
220
222
227
232
244
251
251
246
246
251
258
270
265
265
289
289
306
306
337
368
375
375
375
375
652
679
703
695
695
705
705
729
844
858
882
1043
1081
1093
1093
1112
1112
1
1
8
15
165
165
165
165
165
177
189
191
191
196
196
213
215
215
220
215
227
232
239
244
244
251
251
258
258
275
270
265
282
296
296
296
296
306
313
313
313
337
344
368
368
375
664
691
710
707
707
717
717
736
856
870
894
1050
1088
1105
1105
1124
1124
1
1
1
1
20
27
158
158
165
165
177
177
184
184
196
196
196
191
203
220
227
234
244
244
251
246
251
275
275
275
270
265
282
277
289
313
313
313
325
337
344
375
375
387
676
703
719
719
729
729
748
832
863
870
882
901
1100
1117
1117
1136
1136
1
1
1
8
158
158
158
165
165
165
165
189
189
196
196
196
191
213
213
215
227
227
244
244
234
234
234
244
234
246
246
251
251
282
282
282
282
277
284
289
325
337
337
344
387
399
688
710
731
731
736
741
760
844
882
894
913
1112
1124
1124
1143
1143
1
1
1
8
8
15
158
170
177
177
177
191
191
196
196
196
208
208
213
220
220
222
239
234
234
244
244
251
251
246
251
275
277
277
289
284
289
306
337
344
344
368
399
406
700
743
743
748
753
772
856
894
906
925
1124
1155
1155
1
1
1
8
15
15
27
184
184
189
184
184
196
196
203
215
215
220
234
234
251
251
251
258
263
275
275
275
282
284
289
289
284
301
306
313
344
368
375
399
406
712
755
755
760
765
784
863
901
918
937
1136
1167
1167
1
8
8
20
27
27
184
184
184
196
196
196
191
191
196
191
191
196
196
215
220
227
227
244
244
244
234
234
234
246
251
263
258
275
265
282
282
282
289
284
289
296
301
308
313
337
337
337
375
399
406
724
767
767
772
772
791
913
930
949
1148
1179
1179
20
20
177
177
177
184
184
191
191
196
196
196
196
208
208
203
222
227
239
234
234
234
234
251
251
251
251
251
251
246
258
275
275
275
275
275
275
275
277
277
277
282
282
289
306
308
308
337
344
344
344
399
399
406
736
741
760
779
779
784
803
925
942
961
1160
1191
1191
1
1
1
177
189
189
184
184
196
196
196
203
208
208
208
215
215
215
227
227
227
244
234
234
234
251
246
258
275
275
265
282
282
282
282
282
282
282
282
282
282
282
289
289
289
284
306
306
313
315
337
344
368
368
406
406
748
753
772
791
791
796
796
815
815
937
954
973
1172
1203
1203
1
1
8
177
189
184
201
215
215
215
215
215
215
222
227
244
239
251
251
251
246
246
258
258
275
265
282
282
294
294
284
289
301
301
306
313
313
337
337
344
344
344
375
375
399
760
765
779
779
784
803
803
808
808
827
827
949
966
985
1184
1215
1215
1
1
1
8
8
15
177
196
196
208
215
215
215
222
222
251
258
253
275
265
282
289
284
289
294
306
306
296
308
308
313
313
344
344
344
356
399
406
772
772
791
791
791
810
810
820
820
839
839
954
961
978
973
997
1196
1227
1227
1
1
1
8
20
15
27
189
184
196
196
208
203
208
215
227
222
222
244
244
253
258
265
265
265
265
277
277
282
289
289
284
294
306
306
313
313
308
337
356
368
399
399
406
784
803
803
803
822
827
827
846
846
966
973
985
985
1004
1208
1239
1239
1
1
8
20
27
196
196
196
201
196
196
208
203
227
222
222
239
244
251
251
246
246
253
275
265
265
277
284
289
289
289
284
306
306
306
313
313
315
344
368
368
368
368
375
399
406
406
796
810
810
815
834
858
858
978
985
997
1016
1220
1251
1251
1
1
8
8
15
196
208
208
208
208
220
220
222
222
244
234
244
234
251
246
246
246
246
253
253
253
253
275
282
277
289
284
289
289
306
296
301
301
313
313
313
337
337
368
375
375
375
375
399
406
808
822
827
846
870
870
985
997
1004
1028
1232
1263
1263
1
1
1
15
20
27
203
203
208
203
220
227
234
234
251
241
251
246
265
265
270
265
277
277
282
289
284
289
284
306
296
313
308
308
308
325
337
344
344
368
368
375
399
399
406
820
834
839
858
882
882
1009
1016
1040
1244
1275
1275
8
8
27
196
196
196
208
208
215
227
227
241
241
241
241
277
277
272
284
289
289
289
284
284
289
284
289
284
306
306
306
313
313
313
325
315
337
337
344
368
368
375
375
387
399
399
399
406
406
827
846
851
865
894
894
1021
1028
1052
1256
1287
1287
1
1
20
15
208
208
208
203
227
239
241
241
251
241
253
275
275
282
272
277
272
289
289
284
306
296
301
301
301
296
313
313
313
313
337
344
344
344
344
344
368
375
375
375
387
399
399
399
399
406
406
406
406
406
796
834
858
863
877
906
906
1028
1040
1059
1268
1299
1299
1
8
27
220
220
227
227
227
234
234
246
241
241
253
253
265
282
282
272
277
284
284
313
313
308
308
308
308
308
344
344
375
375
375
375
375
399
399
406
406
406
406
418
808
846
870
870
875
889
889
918
918
997
1028
1052
1071
1280
1299
1299
1311
1311
1
1
20
203
203
208
208
227
227
227
241
253
265
260
260
272
272
277
272
277
277
272
284
306
306
296
296
296
308
308
308
315
315
337
375
406
406
406
418
430
820
858
882
882
887
901
901
930
930
1009
1040
1064
1083
1292
1311
1311
1323
1323
1
1
196
196
208
208
208
203
215
241
246
272
277
272
272
289
289
306
306
306
306
306
313
313
303
303
320
315
315
337
344
368
368
399
399
406
406
430
430
437
827
865
894
894
899
913
913
942
942
1021
1052
1064
1076
1083
1095
1304
1323
1323
1330
1330
1
1
1
8
34
34
34
208
208
208
203
227
227
253
260
275
275
272
277
277
289
289
301
301
313
313
308
313
313
313
303
303
337
337
332
344
356
368
375
375
399
406
406
430
437
437
877
901
901
911
920
920
954
954
1028
1059
1076
1088
1095
1107
1316
1330
1330
1342
1
1
1
15
27
27
34
34
46
46
46
203
203
208
220
220
234
253
253
265
260
272
282
282
272
284
289
301
306
296
308
315
320
337
344
344
339
356
368
368
368
375
406
418
418
437
889
923
932
932
966
966
1071
1088
1095
1107
1114
1328
1342
1354
1
1
8
27
34
58
58
58
58
196
196
208
208
215
227
227
253
272
272
284
284
284
296
306
306
306
301
313
308
327
327
344
368
375
375
375
430
430
901
935
944
944
978
978
1083
1095
1114
1126
1340
1354
1366
1
1
1
1
8
20
27
46
65
65
65
65
208
208
208
203
203
208
203
203
208
227
260
275
275
272
272
284
296
296
296
303
313
313
313
308
308
334
368
375
399
399
437
437
913
947
956
956
990
990
1095
1126
1138
1347
1366
1378
1
1
1
15
34
53
77
77
203
203
208
208
220
220
215
234
253
260
260
272
272
272
272
282
282
291
306
306
306
306
306
296
296
308
308
308
320
337
337
368
375
406
406
430
925
959
968
968
1002
1002
1107
1138
1150
1359
1378
1385
1
1
1
8
27
27
27
34
34
89
89
201
208
215
220
227
227
227
253
253
272
284
284
284
284
306
313
313
313
313
313
313
313
308
308
308
315
327
344
344
368
368
375
430
430
430
437
937
971
980
980
1014
1014
1119
1150
1162
1366
1385
1397
1
1
1
8
20
39
34
34
53
101
101
227
227
234
282
282
284
296
291
296
296
296
296
296
296
313
308
308
308
325
325
320
375
375
399
399
437
437
437
949
983
992
992
1002
1002
1026
1026
1131
1162
1174
1366
1378
1397
1404
1
1
1
1
1
8
15
34
34
51
53
113
113
208
227
227
227
234
234
260
260
272
289
291
296
296
303
308
308
308
308
308
320
337
337
327
368
363
406
406
430
430
430
430
430
437
437
961
995
1004
1004
1014
1014
1033
1033
1143
1174
1186
1378
1404
1416
1
1
1
1
8
20
27
34
34
53
65
125
125
122
134
208
220
227
239
234
234
260
260
260
275
272
272
272
272
272
289
289
289
308
308
308
308
320
320
315
320
315
337
337
337
327
344
344
368
363
375
406
406
430
425
437
437
437
437
437
973
1007
1016
1016
1026
1026
1045
1155
1174
1186
1186
1198
1404
1416
1428
1
1
1
1
8
8
8
15
34
34
34
34
34
53
77
137
137
158
158
208
208
208
239
234
234
251
253
253
275
272
282
284
284
289
308
320
315
320
315
320
315
337
337
327
327
327
332
344
344
344
386
386
368
368
375
406
425
425
437
449
449
985
1019
1028
1028
1033
1033
1057
1167
1186
1198
1198
1210
1404
1416
1428
1440
1
1
1
15
15
20
27
27
27
34
34
34
34
46
46
46
53
89
149
149
134
189
189
208
220
232
234
234
246
246
258
260
275
275
272
282
284
289
296
291
296
296
308
320
315
337
327
327
327
327
332
332
344
344
344
344
339
398
398
368
363
375
375
406
406
425
461
461
997
1031
1040
1040
1045
1069
1179
1198
1210
1205
1217
1280
1428
1440
1452
8
8
8
27
27
34
34
34
34
53
58
58
58
58
101
122
122
134
134
161
161
151
151
153
165
189
246
246
253
260
260
272
272
272
272
282
282
282
289
291
296
296
296
303
308
308
320
315
315
337
337
327
327
327
327
332
344
344
339
339
339
356
368
410
410
375
375
399
399
406
425
461
461
461
468
468
468
468
1009
1019
1043
1052
1052
1057
1057
1081
1191
1205
1217
1229
1292
1299
1440
1452
1464
1
20
20
15
27
34
34
34
46
46
53
53
53
65
65
65
65
113
115
115
122
122
134
134
146
173
173
158
158
182
182
189
239
246
253
253
253
253
253
253
258
260
260
272
272
284
284
296
308
308
320
315
327
332
327
332
379
344
344
339
339
339
356
351
368
368
368
368
375
375
422
422
399
399
406
406
406
425
461
468
468
468
468
1021
1031
1050
1064
1064
1069
1069
1088
1203
1203
1229
1241
1241
1304
1299
1311
1452
1464
1476
1
1
8
27
34
34
34
53
53
65
65
77
77
125
122
122
122
134
134
134
134
161
161
146
158
153
180
180
182
182
182
189
189
251
253
253
260
260
260
265
272
272
272
272
284
296
291
308
337
332
339
339
339
391
346
346
346
368
368
368
368
358
358
375
375
375
375
434
434
406
406
468
480
1033
1043
1076
1076
1081
1081
1100
1215
1215
1241
1253
1253
1311
1311
1323
1464
1476
1483
1
1
1
1
20
27
27
34
34
72
72
89
89
120
137
134
134
146
146
173
173
153
158
158
165
192
182
182
182
189
189
189
239
258
253
253
253
265
272
272
277
284
284
291
303
337
344
344
344
339
346
346
346
346
403
368
368
368
375
375
375
375
375
375
446
446
480
492
1045
1050
1088
1088
1088
1093
1112
1227
1227
1253
1265
1265
1323
1323
1330
1476
1483
1483
1495
1
1
1
8
8
34
39
34
34
53
72
101
101
149
146
153
153
180
180
204
189
189
189
189
189
201
239
239
239
239
253
253
265
265
272
284
284
291
291
337
344
344
339
346
346
368
368
358
415
375
375
375
375
375
375
387
434
434
458
458
461
492
492
499
1057
1076
1076
1093
1100
1100
1100
1105
1112
1124
1234
1234
1265
1272
1272
1330
1330
1342
1488
1483
1495
1507
8
8
15
15
34
34
34
51
53
72
72
113
113
161
153
153
153
153
153
165
165
192
216
201
213
258
265
277
277
272
284
291
291
291
291
291
303
337
337
344
339
351
346
368
358
375
375
370
427
387
399
446
446
465
465
461
468
492
499
499
1069
1088
1088
1105
1107
1107
1117
1112
1124
1136
1277
1284
1284
1330
1342
1349
1366
1500
1507
1519
1
1
20
20
27
27
34
34
34
34
53
65
72
84
125
125
127
127
168
153
153
165
165
172
204
223
213
213
220
265
265
272
284
284
291
291
303
303
344
344
363
375
370
387
377
439
399
399
406
458
458
477
468
499
1081
1100
1100
1117
1119
1124
1124
1136
1143
1289
1296
1296
1349
1349
1366
1512
1519
1531
1
1
1
34
34
53
77
84
91
91
91
91
127
127
127
137
137
153
153
153
153
165
165
177
177
216
213
235
220
220
265
265
265
265
272
272
277
277
284
284
284
284
284
291
291
291
291
315
315
337
337
344
368
368
363
363
370
387
377
399
399
451
406
406
406
465
465
489
1093
1107
1107
1124
1131
1136
1143
1155
1301
1308
1308
1349
1524
1531
1543
1
1
8
8
34
34
53
72
72
89
91
91
127
149
149
158
165
165
165
165
172
172
184
184
228
228
213
213
220
247
247
265
265
265
277
277
277
284
284
284
289
284
289
284
284
296
296
296
296
303
303
303
337
322
322
344
344
363
375
375
399
399
399
399
399
394
394
406
406
406
406
406
463
477
501
1093
1105
1119
1131
1143
1148
1155
1167
1308
1320
1320
1536
1543
1555
1
1
1
8
15
15
34
34
34
53
72
72
72
101
161
161
177
172
172
172
172
240
240
220
220
220
232
259
259
277
284
289
289
289
284
296
296
296
296
296
308
308
308
315
310
310
322
322
344
394
394
394
406
406
406
406
406
406
406
406
418
475
489
513
1105
1117
1131
1143
1155
1160
1167
1179
1244
1320
1327
1327
1548
1555
1567
1
1
1
8
20
27
27
34
34
34
34
46
53
53
53
72
72
84
91
91
113
149
173
173
172
172
172
204
184
213
220
220
247
247
232
244
266
266
272
272
284
289
296
303
303
303
308
308
308
310
310
310
310
315
315
315
315
322
368
375
375
399
394
451
418
430
482
489
501
520
1117
1124
1143
1155
1162
1172
1179
1191
1256
1251
1251
1327
1339
1339
1404
1404
1404
1404
1560
1567
1579
1
1
1
20
34
34
53
65
65
91
91
103
103
125
161
161
161
165
165
165
180
180
172
172
184
184
184
184
216
220
220
244
244
251
251
278
278
265
265
272
272
284
284
303
303
303
303
303
308
308
308
310
310
310
315
315
315
322
322
368
375
399
399
399
406
406
463
430
430
430
430
437
437
501
513
532
1124
1155
1162
1174
1184
1191
1203
1268
1263
1263
1339
1346
1346
1346
1404
1404
1404
1404
1416
1416
1572
1579
1591
1
72
72
110
110
137
168
173
173
165
177
172
172
192
196
196
223
213
244
251
251
251
251
290
290
265
284
284
284
296
296
315
310
315
315
310
315
322
334
334
339
346
375
399
399
399
399
406
406
406
475
430
437
437
437
437
437
437
513
525
525
487
544
544
1167
1167
1174
1186
1186
1196
1203
1215
1275
1275
1275
1327
1346
1358
1358
1358
1416
1416
1423
1423
1584
1591
1603
1
1
1
27
34
72
72
91
91
149
165
165
180
180
177
172
189
204
213
203
203
203
203
235
220
244
244
251
302
302
272
272
284
296
308
303
327
327
329
339
339
339
341
341
341
341
346
346
346
346
368
358
406
406
406
406
482
437
449
456
468
520
537
537
487
487
556
556
1179
1179
1186
1198
1198
1208
1215
1227
1287
1282
1282
1370
1370
1370
1423
1423
1596
1603
1615
39
34
34
72
72
91
110
110
161
177
172
192
184
196
216
213
220
247
251
251
263
265
272
314
314
284
284
303
315
329
334
334
339
339
346
346
346
346
346
368
358
358
358
370
375
399
399
449
461
456
456
468
468
532
487
549
549
568
568
1191
1191
1198
1203
1210
1210
1220
1227
1239
1294
1294
1294
1382
1382
1382
1404
1404
1608
1615
1627
1
34
34
34
34
34
34
51
72
84
91
91
110
168
189
184
204
191
196
223
220
259
263
275
265
284
284
326
326
296
296
322
322
334
334
341
346
346
358
358
358
370
370
370
375
377
399
399
406
406
406
461
461
461
468
468
487
487
544
556
556
575
575
1198
1198
1210
1215
1217
1217
1232
1239
1241
1251
1294
1301
1301
1371
1394
1394
1394
1404
1404
1416
1416
1620
1627
1639
1
27
27
27
34
34
46
51
63
53
72
72
89
84
91
91
91
91
110
110
110
184
184
196
191
196
216
235
244
271
275
282
296
338
338
308
303
334
334
334
329
346
353
370
370
377
377
377
406
406
406
430
430
468
468
468
556
587
587
1227
1222
1229
1229
1244
1241
1251
1253
1263
1301
1301
1378
1406
1406
1406
1428
1428
1632
1639
1651
1
1
27
27
39
34
34
34
34
34
58
53
53
53
75
65
72
72
72
101
91
91
91
91
91
91
110
149
204
191
196
196
191
208
228
228
247
247
244
251
283
275
282
303
350
350
315
346
346
346
360
377
377
437
437
568
599
599
1234
1234
1256
1241
1241
1253
1263
1265
1275
1378
1418
1418
1418
1435
1435
1644
1651
1663
1
1
1
1
27
34
34
34
34
34
51
51
53
70
65
65
87
72
72
89
89
108
110
110
110
110
110
161
196
191
196
216
203
208
215
240
240
259
259
251
295
275
282
277
284
362
362
362
362
363
353
353
406
580
611
611
1246
1246
1268
1253
1253
1265
1275
1272
1282
1430
1430
1425
1435
1435
1656
1663
1675
1
1
1
1
1
27
27
27
34
34
34
63
65
82
77
72
72
99
84
101
101
91
91
110
120
110
168
184
184
184
196
223
215
215
247
247
266
266
275
275
307
282
277
277
277
284
289
284
284
296
374
374
374
374
363
363
394
406
406
406
592
623
623
1196
1253
1253
1275
1265
1265
1272
1282
1284
1294
1442
1437
1437
1668
1675
1687
1
1
1
1
1
1
1
8
27
34
34
34
46
75
72
72
72
94
84
111
91
91
108
113
103
103
110
110
110
110
132
122
196
196
196
191
235
222
244
244
278
278
282
282
277
277
319
289
284
289
289
284
296
296
296
308
315
381
381
381
381
375
375
394
394
394
604
635
635
1208
1203
1215
1253
1265
1287
1272
1272
1284
1294
1291
1301
1425
1454
1449
1680
1687
1699
1
1
1
15
27
34
34
34
39
34
46
53
82
84
101
91
91
91
123
120
125
110
110
110
122
144
134
191
191
196
196
208
208
247
251
251
275
290
290
289
289
331
296
296
296
308
308
308
308
308
315
327
393
393
394
394
394
616
647
647
1220
1215
1227
1272
1294
1284
1284
1291
1301
1313
1437
1437
1466
1461
1692
1699
1711
1
1
1
1
8
27
34
34
34
51
53
53
75
94
84
84
96
91
91
113
135
110
110
132
132
129
151
141
184
184
196
196
203
215
215
259
275
275
275
282
302
302
272
284
296
343
308
308
315
315
315
327
327
339
405
405
375
394
456
628
659
659
1227
1227
1239
1272
1294
1284
1291
1291
1291
1313
1325
1327
1449
1478
1473
1704
1711
1723
1
1
1
1
20
27
27
27
34
34
46
63
82
72
72
72
101
96
91
91
103
103
125
110
110
110
147
144
129
163
196
196
196
191
191
196
191
191
196
215
244
244
271
265
282
282
282
272
272
314
314
284
284
296
296
296
355
315
315
327
327
322
339
329
351
375
417
417
394
394
394
406
425
456
640
671
671
1215
1239
1234
1246
1284
1301
1291
1291
1303
1303
1325
1327
1337
1346
1461
1490
1485
1716
1723
1735
1
27
27
39
34
53
53
58
75
72
84
91
91
113
113
103
103
103
103
103
110
132
132
154
129
156
156
141
141
175
175
191
191
196
196
208
208
203
222
251
251
283
275
275
275
275
275
265
265
272
284
284
326
326
296
296
296
308
303
367
327
327
322
322
322
339
329
334
329
329
351
341
358
363
429
429
394
406
406
425
425
437
437
456
456
652
683
683
1119
1203
1227
1246
1246
1258
1291
1301
1313
1303
1315
1315
1337
1349
1346
1358
1473
1502
1497
1728
1735
1747
1
27
34
34
51
53
60
60
60
60
70
72
72
87
91
91
103
125
125
115
110
110
110
144
129
166
168
168
187
187
189
196
203
208
215
215
215
275
295
265
282
282
282
282
282
282
282
272
284
296
296
296
338
338
308
308
315
315
327
327
322
322
379
339
334
329
334
334
329
351
341
341
341
358
363
353
394
394
441
441
406
406
437
437
437
437
437
437
456
456
456
456
664
695
695
1131
1138
1167
1196
1215
1239
1246
1253
1265
1325
1315
1327
1327
1349
1346
1346
1361
1383
1370
1485
1514
1509
1740
1747
1759
1
1
8
27
27
27
34
34
53
53
63
60
60
82
99
91
91
115
110
110
110
110
137
137
132
127
129
151
141
141
178
178
175
175
194
194
215
215
222
251
251
265
282
307
272
294
294
284
296
296
296
308
308
303
350
350
315
315
327
327
327
339
334
334
391
351
341
341
341
358
353
353
353
360
394
406
406
406
453
453
430
437
437
437
437
456
456
456
676
683
683
707
707
1143
1138
1150
1167
1179
1186
1186
1208
1227
1246
1253
1265
1337
1327
1339
1339
1346
1346
1361
1358
1373
1390
1377
1440
1440
1497
1526
1521
1752
1759
1771
1
8
15
34
34
34
46
53
75
94
91
91
111
103
110
110
110
110
122
122
122
149
149
134
129
129
129
141
163
190
190
206
206
196
215
215
215
222
222
265
319
284
284
306
306
296
338
338
308
308
308
308
315
315
357
357
327
327
327
339
334
351
341
403
358
363
353
353
360
360
360
406
406
465
465
430
430
430
437
456
688
695
695
714
714
1155
1150
1162
1179
1174
1186
1191
1198
1198
1220
1234
1258
1349
1339
1346
1351
1351
1358
1373
1365
1385
1390
1447
1447
1509
1538
1533
1764
1771
1783
1
1
20
27
27
34
46
53
53
53
53
53
60
60
72
82
101
91
103
103
123
135
129
134
129
156
156
141
141
141
141
153
175
197
197
196
218
218
208
215
227
222
222
244
277
284
306
331
296
296
296
313
313
308
308
350
350
320
315
315
327
369
351
358
363
415
360
360
399
399
406
453
453
472
472
437
437
437
700
707
707
726
1162
1167
1174
1191
1186
1198
1198
1210
1210
1227
1246
1265
1346
1361
1351
1358
1363
1363
1365
1385
1397
1447
1447
1521
1550
1545
1776
1783
1795
1
1
1
1
1
1
1
27
53
53
60
60
75
72
72
94
91
113
125
135
147
122
122
134
129
141
153
160
187
209
209
196
196
196
230
230
227
222
222
239
244
251
277
277
277
284
289
284
284
306
306
296
313
343
308
320
315
357
357
327
381
358
363
363
427
394
406
406
406
406
406
465
465
484
712
714
714
738
1148
1179
1174
1186
1198
1198
1210
1210
1217
1217
1239
1253
1301
1373
1363
1370
1375
1370
1397
1409
1533
1557
1557
1788
1795
1807
1
1
1
8
39
34
34
82
79
79
101
91
91
103
103
125
132
147
154
134
141
160
160
199
221
221
196
208
220
242
242
222
222
244
234
244
234
251
246
277
277
289
284
289
289
284
306
296
296
296
313
313
308
355
315
315
327
369
393
375
375
439
394
394
394
472
472
496
724
726
750
1160
1167
1167
1191
1186
1198
1210
1205
1217
1217
1229
1229
1246
1301
1346
1385
1370
1377
1387
1382
1409
1421
1545
1557
1569
1564
1800
1807
1819
1
1
1
1
15
27
51
58
53
53
60
60
60
91
91
91
113
122
122
132
134
154
166
141
141
153
160
211
233
233
254
254
234
234
251
241
251
289
289
296
296
313
308
308
308
308
308
325
315
362
381
400
394
394
451
484
508
736
738
762
1172
1179
1179
1198
1198
1210
1217
1217
1229
1246
1236
1236
1253
1294
1346
1358
1370
1397
1399
1394
1421
1433
1557
1569
1564
1581
1812
1819
1831
1
1
1
1
8
27
27
27
34
34
39
34
53
58
53
53
65
60
60
60
60
79
79
91
91
103
103
125
134
129
129
129
166
178
153
160
160
160
160
172
223
245
245
227
241
241
241
241
266
266
272
284
308
308
303
325
315
315
315
310
337
337
393
375
412
394
458
425
496
515
743
750
769
1179
1191
1191
1210
1205
1217
1217
1224
1236
1272
1294
1301
1370
1370
1382
1409
1411
1406
1433
1445
1569
1581
1593
1824
1831
1843
1
1
1
8
20
39
34
34
46
51
58
53
53
53
53
60
60
60
60
77
79
91
135
122
122
137
137
134
129
141
178
178
190
160
160
160
160
160
160
160
160
172
179
179
235
257
257
239
241
241
241
253
278
278
265
272
272
284
284
306
296
313
313
343
303
315
315
310
310
337
322
344
344
344
344
381
405
405
375
424
424
394
394
394
406
406
508
527
762
781
1167
1191
1198
1198
1217
1217
1217
1224
1229
1236
1236
1265
1377
1394
1421
1423
1418
1445
1457
1581
1593
1605
1836
1843
1855
1
1
1
13
15
34
51
58
53
53
65
79
79
79
89
103
103
125
147
134
149
149
129
129
160
160
190
190
160
202
172
179
179
179
179
179
247
227
227
227
269
269
251
241
241
253
253
265
290
290
265
265
272
284
284
284
296
296
296
296
313
313
313
308
303
303
355
310
310
322
344
344
334
393
363
417
417
439
394
394
394
436
436
406
406
425
425
496
520
520
539
539
712
738
774
774
793
793
1148
1167
1179
1198
1210
1210
1217
1229
1224
1236
1272
1301
1346
1377
1406
1433
1435
1430
1457
1469
1593
1605
1617
1848
1855
1867
8
13
25
27
34
53
53
53
65
65
60
60
60
60
60
60
77
79
101
122
122
132
134
154
156
156
160
160
197
197
172
214
179
184
191
227
234
259
281
281
246
241
253
265
260
260
265
302
302
272
272
272
284
284
284
284
284
306
296
296
296
296
296
308
308
308
308
308
308
303
303
315
315
310
310
362
337
322
334
341
363
400
424
424
394
394
394
394
451
443
443
425
425
508
532
532
551
551
724
750
786
786
805
805
1160
1179
1191
1198
1217
1217
1224
1229
1241
1236
1236
1248
1291
1291
1346
1358
1395
1418
1445
1447
1442
1469
1481
1605
1617
1629
1860
1867
1879
1
20
25
37
34
34
53
60
60
60
77
72
72
72
79
89
79
79
79
79
108
103
103
122
134
166
160
209
209
179
226
191
191
203
227
227
227
234
234
271
246
293
293
293
293
265
272
272
314
314
284
284
284
284
284
306
296
296
296
296
296
313
313
308
308
308
308
308
308
308
308
308
303
320
320
315
315
310
310
337
322
344
344
334
344
341
412
394
394
394
458
455
455
425
425
425
425
425
425
437
515
539
539
558
558
736
762
798
798
817
817
1172
1191
1198
1217
1217
1253
1248
1260
1291
1291
1303
1332
1370
1402
1430
1457
1452
1452
1459
1454
1481
1493
1617
1629
1641
1872
1879
1891
1
1
1
37
37
49
49
34
34
34
34
53
65
79
84
84
79
79
79
101
120
122
122
122
134
134
134
134
129
178
160
160
179
221
221
238
198
210
227
234
239
234
241
283
305
305
305
305
260
265
272
284
284
306
326
326
306
306
296
296
296
313
308
308
308
308
308
308
308
308
308
303
320
320
320
320
315
310
310
337
337
337
327
327
322
344
344
344
334
344
356
341
363
424
394
406
406
425
425
425
425
467
467
437
437
527
570
570
743
769
805
805
824
824
906
925
1119
1131
1179
1198
1210
1265
1260
1272
1291
1291
1303
1310
1339
1339
1377
1377
1402
1442
1469
1459
1459
1471
1466
1493
1505
1629
1641
1653
1884
1891
1903
1
1
44
44
34
56
56
51
53
60
60
72
72
72
72
79
89
84
79
79
79
79
91
113
113
103
103
132
132
134
146
146
160
190
179
179
179
179
191
233
233
250
227
239
246
251
253
253
253
295
265
265
260
312
312
312
312
272
277
314
314
284
284
333
333
313
313
313
313
308
308
308
308
308
320
320
320
320
315
310
337
337
327
327
327
327
327
322
322
344
344
344
344
344
334
356
341
368
363
436
406
406
406
425
425
425
437
479
479
539
582
582
781
836
836
918
937
1093
1131
1131
1138
1143
1191
1210
1217
1277
1272
1284
1303
1310
1339
1339
1377
1377
1389
1389
1459
1459
1454
1481
1483
1478
1505
1517
1641
1653
1665
1896
1903
1915
1
8
34
34
68
68
65
60
60
84
79
79
79
79
101
96
91
103
125
125
144
144
153
153
160
160
202
191
198
198
210
245
245
262
253
258
253
265
307
272
277
277
277
324
324
284
289
284
284
326
326
296
296
313
345
320
320
315
327
327
327
327
327
322
322
344
344
344
344
334
356
356
341
368
363
363
375
375
394
406
448
491
491
551
594
594
793
848
848
906
925
925
930
949
1105
1143
1138
1143
1150
1155
1198
1217
1289
1284
1296
1306
1291
1291
1310
1389
1389
1396
1396
1466
1493
1495
1490
1517
1529
1653
1665
1677
1908
1915
1927
1
1
1
1
1
8
15
27
27
80
80
60
60
72
79
79
96
108
108
103
98
110
132
132
151
151
153
179
179
214
179
179
191
210
257
257
274
246
253
258
258
265
265
272
272
277
277
319
284
289
284
289
289
284
336
336
296
296
296
333
333
303
308
315
357
327
327
344
341
368
368
375
375
375
394
394
394
460
503
503
563
606
606
805
860
860
918
937
937
937
956
1093
1117
1150
1150
1155
1162
1162
1198
1299
1301
1296
1306
1308
1313
1303
1396
1396
1478
1505
1502
1502
1529
1541
1665
1677
1689
1920
1927
1939
1
1
1
1
20
27
34
34
34
34
60
60
87
92
92
84
79
79
79
103
103
98
120
115
163
163
153
153
160
160
226
191
198
198
210
269
269
286
246
258
258
253
258
253
265
260
260
260
272
272
272
289
289
331
291
296
296
296
348
348
308
308
308
345
315
337
337
337
369
344
368
368
375
375
375
394
394
472
515
515
575
618
618
817
872
872
930
949
949
968
1105
1112
1112
1124
1162
1162
1162
1169
1174
1217
1306
1291
1308
1313
1320
1310
1490
1517
1514
1509
1541
1553
1677
1689
1701
1932
1939
1951
1
1
1
13
27
34
34
60
60
72
72
104
99
99
104
79
79
79
79
103
103
98
110
110
132
153
175
175
165
179
179
179
179
191
238
210
281
281
246
246
246
298
258
258
253
253
270
277
272
272
272
272
284
284
289
296
338
308
308
360
360
315
315
315
357
337
344
344
344
376
368
368
368
368
368
375
375
394
484
527
527
587
630
630
829
884
884
937
956
961
980
1117
1124
1124
1136
1169
1169
1174
1181
1181
1217
1306
1291
1303
1502
1529
1526
1553
1565
1689
1701
1713
1944
1951
1963
1
8
13
25
27
34
39
34
34
46
60
60
79
79
79
79
111
106
106
111
91
91
103
103
98
115
144
153
153
165
160
160
187
187
172
172
172
172
179
191
198
198
210
250
269
269
246
288
288
258
258
258
258
310
270
265
277
272
272
284
284
284
284
284
296
296
315
315
372
372
337
337
369
344
388
368
375
375
375
375
375
394
394
496
539
539
599
642
642
841
896
896
968
973
992
1124
1136
1136
1143
1169
1181
1181
1188
1217
1313
1315
1514
1541
1538
1565
1577
1701
1713
1725
1956
1963
1975
1
1
1
1
1
1
1
15
25
37
34
34
41
51
58
60
72
72
123
123
103
98
103
98
115
110
110
156
153
153
153
172
172
199
199
179
179
179
179
179
191
191
191
191
198
210
262
281
281
300
270
270
265
265
322
277
272
272
319
284
291
291
296
296
303
308
357
384
384
344
344
381
381
363
400
400
375
375
375
375
387
394
508
551
551
611
654
654
853
908
908
985
980
1004
1136
1143
1143
1143
1188
1217
1236
1313
1322
1339
1339
1526
1553
1550
1577
1589
1713
1725
1737
1968
1975
1982
1
1
8
27
27
27
27
37
37
34
34
49
49
46
58
65
60
60
91
103
103
98
98
98
98
135
135
115
110
110
129
168
153
160
160
211
211
191
198
198
198
203
203
210
210
210
210
274
288
288
265
260
260
260
260
260
265
312
277
277
277
277
272
272
272
272
334
284
331
296
291
291
291
291
308
308
315
337
337
369
344
344
396
396
393
393
368
363
375
375
375
412
412
387
399
399
394
394
394
520
539
539
558
558
623
666
666
865
920
920
961
980
992
992
1011
1093
1143
1155
1155
1188
1188
1224
1291
1351
1351
1382
1377
1377
1502
1538
1565
1562
1589
1601
1725
1737
1749
1980
1982
1994
1
1
1
8
20
27
34
39
34
34
44
44
41
56
56
53
53
80
60
60
77
72
72
98
115
110
110
110
110
110
147
147
122
141
141
153
180
165
172
172
179
179
223
223
210
210
210
222
222
286
253
253
300
265
265
265
277
277
277
277
277
272
272
272
272
324
289
284
284
284
284
346
296
291
291
291
291
338
343
308
303
303
315
315
384
384
344
344
344
376
381
403
403
368
368
368
368
400
400
375
375
419
419
399
394
394
394
406
406
532
551
551
570
635
654
654
673
673
877
932
932
973
992
1004
1023
1105
1112
1112
1162
1162
1224
1236
1277
1291
1303
1389
1389
1389
1514
1509
1550
1577
1574
1601
1613
1737
1749
1761
1992
1982
2006
1
15
27
34
34
34
39
34
34
34
34
34
53
68
68
65
65
60
60
87
89
89
91
91
103
103
115
110
110
122
122
159
159
129
129
153
160
192
172
172
184
184
235
235
210
229
229
293
258
265
265
265
265
265
265
265
265
312
277
277
277
272
272
289
289
284
284
284
331
301
296
296
358
308
303
303
355
315
315
315
332
332
396
396
388
393
363
363
415
375
375
375
375
431
431
406
406
406
544
558
558
582
647
666
666
685
889
944
944
985
1004
1016
1035
1117
1124
1124
1143
1181
1284
1284
1315
1407
1389
1396
1396
1526
1562
1589
1586
1613
1625
1749
1761
1773
1982
2004
1994
2018
1
1
8
27
27
27
34
34
34
41
41
51
58
53
65
80
80
60
77
77
72
72
99
101
101
98
98
98
115
122
129
129
129
129
129
171
171
141
141
160
172
204
179
191
191
210
210
210
210
247
247
229
258
260
260
260
265
265
277
272
272
277
324
289
284
301
296
291
291
296
343
308
303
308
370
315
315
315
367
337
337
332
322
322
344
381
403
403
368
368
368
368
400
375
405
427
399
399
394
406
443
443
556
570
594
659
673
673
697
901
956
956
992
1011
1016
1028
1035
1047
1124
1136
1136
1162
1181
1296
1296
1322
1322
1414
1396
1396
1538
1574
1601
1598
1625
1632
1761
1773
1785
2016
2006
2030
1
1
1
20
34
34
34
34
34
34
34
58
65
65
60
60
77
87
92
92
84
84
111
91
91
108
108
103
103
98
115
110
129
129
129
129
129
129
129
183
183
160
160
160
172
172
179
216
191
210
210
222
259
259
229
229
274
253
253
258
265
260
265
265
312
282
272
272
272
277
289
284
284
284
284
289
336
336
296
296
296
296
308
308
308
308
355
355
315
382
322
322
379
344
344
344
393
368
368
368
363
363
415
375
375
375
375
375
375
412
417
439
399
394
394
406
406
406
455
455
425
544
563
582
582
601
671
685
709
913
968
968
1023
1028
1040
1047
1059
1076
1136
1143
1143
1162
1284
1322
1322
1334
1334
1464
1464
1550
1586
1613
1610
1632
1632
1644
1773
1785
1797
2028
2018
2042
34
34
41
41
41
53
60
77
72
72
72
84
104
99
99
104
123
103
98
98
120
120
115
129
129
129
129
141
141
141
141
195
195
179
179
191
191
191
228
210
222
229
229
229
229
271
271
241
286
258
260
260
260
265
265
272
272
272
272
272
277
324
284
284
284
284
289
301
296
296
296
296
296
296
291
291
291
348
348
308
308
308
308
308
308
308
320
367
367
332
389
344
344
391
405
375
375
375
375
375
375
427
424
399
429
394
446
406
406
406
418
418
425
425
425
467
467
556
594
594
613
678
697
716
925
980
980
1040
1035
1047
1057
1059
1064
1066
1076
1088
1143
1155
1155
1334
1341
1341
1414
1471
1471
1562
1598
1625
1632
1622
1644
1656
1785
1797
1809
2040
2030
2054
27
34
34
34
34
34
34
34
34
34
41
60
89
111
106
106
111
91
91
103
103
103
135
115
115
115
115
132
132
129
129
129
129
141
141
148
148
153
172
172
207
207
207
207
179
191
240
229
229
229
241
283
283
248
248
248
248
293
258
260
265
265
265
277
282
289
284
284
289
331
296
291
291
296
291
291
291
308
308
308
303
308
308
308
308
303
303
303
355
355
320
320
320
327
374
374
403
368
368
368
368
368
363
363
375
375
375
417
439
399
394
436
441
406
406
458
430
430
425
425
479
479
563
601
606
625
659
697
709
728
937
980
980
992
992
1047
1047
1069
1066
1076
1078
1083
1083
1088
1100
1162
1162
1162
1311
1341
1471
1471
1483
1574
1610
1637
1634
1656
1668
1797
1809
1821
2052
2042
2066
1
1
34
34
34
41
41
41
53
80
72
72
72
72
84
101
91
123
123
115
147
127
127
144
144
129
129
129
129
141
141
148
148
148
148
148
148
160
219
219
219
219
191
191
191
210
252
229
229
229
229
271
271
248
248
258
258
290
290
265
265
265
272
272
277
282
289
289
291
291
296
343
308
308
303
308
303
303
370
320
320
320
320
315
327
327
327
332
332
344
344
386
386
368
415
375
375
375
375
375
427
429
451
451
406
448
453
470
470
430
430
437
437
491
491
613
618
637
671
709
721
721
740
740
949
992
992
1004
1004
1057
1059
1081
1078
1088
1095
1095
1090
1100
1107
1143
1162
1318
1471
1471
1483
1490
1586
1622
1649
1641
1668
1680
1809
1821
1833
2064
2054
2078
1
1
1
1
27
34
34
34
34
34
53
65
87
84
91
91
91
113
98
103
135
135
159
134
134
129
129
129
129
129
129
129
156
156
148
160
172
172
191
226
226
226
226
210
264
229
229
229
229
239
239
283
283
253
253
265
302
277
277
284
289
291
291
291
296
355
320
315
382
332
337
327
327
327
322
344
344
398
398
363
363
363
375
427
387
387
439
441
463
463
460
465
482
482
437
437
503
503
625
630
649
678
716
733
733
752
752
961
1004
1004
1019
1011
1011
1057
1069
1071
1088
1095
1090
1107
1107
1102
1107
1119
1284
1284
1318
1322
1483
1490
1598
1629
1661
1641
1653
1680
1692
1821
1833
1845
2076
2066
2090
1
1
1
34
41
41
41
60
72
72
72
72
84
99
125
147
147
134
129
171
141
141
141
141
168
168
148
148
160
160
172
191
191
191
238
238
210
210
210
229
229
229
229
229
239
239
239
276
241
241
248
248
253
253
253
253
253
290
290
265
265
265
277
277
314
289
291
291
291
296
303
367
337
332
332
327
322
389
344
339
363
410
410
415
434
399
399
446
453
453
470
470
472
472
489
489
515
515
637
642
661
728
740
740
759
759
973
1011
1011
1031
1023
1069
1081
1083
1100
1107
1102
1114
1114
1114
1119
1126
1296
1322
1334
1471
1471
1490
1610
1629
1673
1653
1665
1692
1704
1833
1845
1852
2088
2078
2102
1
1
1
34
34
34
34
34
34
34
34
72
84
111
137
134
134
159
159
129
129
183
148
148
148
180
180
160
172
172
167
179
191
191
191
191
250
250
210
229
229
239
241
288
248
248
248
253
253
253
253
253
260
260
265
265
265
265
302
277
277
326
291
296
303
303
315
332
379
344
344
363
363
422
422
427
399
399
406
406
458
465
465
484
484
501
501
527
527
630
649
649
649
668
740
771
771
985
1023
1043
1035
1081
1088
1095
1107
1114
1114
1126
1126
1121
1126
1318
1318
1334
1341
1483
1622
1685
1665
1677
1704
1716
1845
1852
1864
2090
2095
2114
1
1
1
1
1
34
41
41
60
60
72
72
72
72
72
84
123
149
134
129
146
171
171
141
148
148
148
148
148
195
160
192
192
191
191
191
191
203
203
262
262
248
253
295
260
265
267
267
267
277
277
277
314
284
284
333
315
315
322
344
344
391
363
434
434
434
406
406
470
472
477
496
496
513
513
515
515
534
534
642
661
661
680
752
783
783
997
1019
1035
1050
1047
1088
1100
1102
1107
1121
1133
1133
1133
1222
1325
1325
1325
1325
1341
1471
1490
1634
1697
1677
1689
1716
1728
1857
1852
1876
2102
2107
2121
1
34
34
34
34
34
34
34
72
84
135
134
134
129
129
161
146
141
153
153
153
153
183
183
148
148
160
172
207
167
167
204
204
179
215
210
274
274
229
248
248
258
260
260
267
272
277
277
282
272
284
284
284
326
345
322
322
344
403
363
394
446
446
482
484
489
508
508
525
525
527
527
546
649
668
673
692
764
795
795
1009
1031
1047
1057
1062
1059
1100
1107
1114
1114
1126
1133
1140
1284
1325
1325
1325
1325
1337
1337
1341
1394
1471
1483
1646
1709
1689
1701
1728
1740
1852
1869
1864
1888
2114
2133
1
1
34
34
41
41
41
41
60
60
72
72
72
72
84
147
134
134
134
141
141
173
153
153
148
148
148
148
148
195
195
160
160
219
179
216
216
210
222
229
276
286
286
246
248
248
253
260
260
267
267
267
272
272
277
282
272
272
314
289
284
284
338
338
357
357
344
363
363
363
415
458
458
494
496
496
520
515
537
537
534
534
558
680
685
704
776
807
807
1021
1043
1057
1059
1069
1069
1066
1107
1121
1126
1133
1140
1152
1229
1241
1296
1337
1337
1322
1344
1344
1401
1495
1658
1721
1701
1713
1740
1752
1881
1876
1900
2126
2145
1
1
1
1
1
34
34
34
34
34
34
34
34
34
34
34
53
53
72
72
84
134
159
129
129
183
183
148
148
148
185
160
160
172
172
167
167
202
202
167
167
167
167
179
231
228
228
222
229
229
288
298
298
248
248
248
253
253
253
260
260
260
267
272
272
277
272
272
289
284
284
326
301
296
296
308
350
350
332
369
369
344
363
363
375
375
427
394
394
470
470
425
506
508
532
527
549
549
546
570
692
692
711
788
819
819
1028
1028
1050
1069
1069
1066
1081
1078
1121
1133
1152
1164
1327
1344
1344
1334
1401
1401
1502
1670
1733
1713
1725
1752
1764
1893
1888
1912
2138
2157
1
1
1
1
1
27
27
34
34
46
46
46
60
60
60
60
65
60
60
72
72
72
72
72
84
84
84
84
134
146
171
141
153
153
148
148
148
148
148
148
148
148
195
195
160
160
160
160
197
172
167
167
179
214
243
240
240
222
222
234
246
246
246
246
248
253
253
295
310
310
260
260
260
267
267
267
267
267
267
267
272
272
277
272
289
289
284
284
301
296
296
296
296
291
333
308
308
308
303
320
357
357
332
332
332
376
376
363
363
375
375
439
425
425
482
482
477
496
518
520
520
539
539
539
561
561
558
577
704
723
800
831
831
1021
1028
1040
1040
1062
1081
1078
1088
1085
1140
1164
1176
1334
1341
1401
1408
1408
1471
1682
1745
1725
1737
1764
1771
1905
1900
1924
2095
2150
2169
1
1
34
34
34
34
34
34
58
58
58
58
60
72
72
72
72
72
84
84
96
96
98
134
129
129
153
153
183
148
165
165
160
172
167
167
202
202
172
172
209
179
226
228
228
210
210
210
255
220
220
247
247
234
229
241
241
246
246
246
246
298
298
248
248
248
248
258
258
253
260
260
260
317
317
267
267
267
272
277
272
289
289
289
284
301
296
296
296
291
308
308
303
303
303
345
320
320
332
332
332
332
344
388
388
394
394
394
451
406
470
470
425
489
489
489
508
530
532
532
551
551
573
573
570
589
673
692
716
716
735
735
812
843
843
1033
1040
1047
1052
1069
1088
1085
1100
1097
1140
1152
1176
1188
1325
1334
1341
1353
1419
1408
1408
1420
1471
1483
1694
1752
1737
1749
1776
1783
1917
1912
1936
2107
2121
2162
2181
1
1
27
34
46
65
65
65
65
72
84
84
91
91
103
103
110
110
153
148
148
148
195
160
172
172
167
167
167
179
214
179
179
221
238
240
240
210
220
220
222
267
259
274
241
241
241
241
241
258
258
310
310
260
270
270
270
270
267
267
267
267
267
267
267
267
312
272
272
277
329
289
289
291
291
301
296
296
308
308
303
303
320
357
332
332
344
339
363
400
400
375
375
375
394
394
406
406
463
425
482
482
501
496
520
515
542
539
539
558
558
558
585
585
582
582
601
601
685
704
728
728
747
747
824
855
855
855
855
1016
1028
1045
1047
1052
1069
1059
1100
1097
1107
1107
1109
1164
1188
1200
1325
1325
1337
1334
1341
1353
1360
1426
1426
1408
1408
1420
1427
1495
1706
1749
1771
1761
1788
1795
1929
1924
1948
2133
2174
2193
1
1
34
34
34
34
34
53
60
60
77
77
72
91
91
96
103
98
129
153
153
148
172
167
167
167
202
167
167
179
179
179
179
179
179
179
226
233
208
210
210
245
247
247
227
279
271
241
286
253
260
265
270
270
270
317
317
267
267
267
272
267
272
277
277
282
279
279
324
289
284
289
341
291
291
291
291
301
296
303
308
308
308
303
320
332
369
339
339
375
375
375
412
412
394
394
394
406
475
425
489
489
513
532
527
554
570
570
570
597
597
594
594
613
613
692
711
735
735
754
754
836
867
867
867
867
997
1028
1028
1040
1035
1035
1052
1059
1071
1107
1107
1109
1121
1176
1200
1212
1325
1337
1349
1334
1341
1341
1353
1360
1438
1438
1420
1427
1502
1502
1718
1752
1761
1783
1773
1800
1807
1941
1936
1960
2145
2186
2205
27
27
34
34
34
34
60
60
60
60
89
89
84
91
103
103
103
103
103
98
110
110
129
148
148
172
172
172
167
179
179
179
179
179
191
191
186
186
238
208
245
257
227
259
239
234
291
283
253
298
265
260
265
265
312
267
267
277
277
282
329
279
284
284
289
291
336
291
291
301
296
296
286
353
303
303
308
308
313
313
315
320
332
332
332
344
339
381
424
424
394
394
487
501
525
539
539
566
585
585
577
582
582
604
604
601
601
620
620
723
766
766
848
874
874
874
874
1002
1009
1040
1040
1052
1047
1047
1064
1071
1078
1107
1121
1133
1188
1212
1224
1349
1334
1356
1341
1353
1353
1360
1426
1408
1408
1427
1502
1502
1514
1514
1730
1773
1795
1785
1812
1819
1953
1948
1972
2157
2198
2217
1
1
1
1
39
34
34
34
34
34
34
34
53
60
60
72
101
101
91
91
91
91
91
103
103
98
115
115
129
129
129
153
153
183
172
167
167
179
179
226
191
186
198
198
208
250
250
252
227
269
269
239
234
271
241
251
246
246
246
298
248
248
290
260
310
265
270
272
267
324
341
291
286
348
303
308
298
313
313
360
315
315
322
332
332
332
332
339
393
375
375
436
436
475
494
513
513
532
551
578
597
597
589
594
594
616
632
632
735
778
778
860
886
886
983
980
1002
1014
1021
1052
1047
1059
1059
1059
1071
1078
1107
1133
1145
1200
1224
1231
1323
1334
1356
1353
1365
1360
1420
1514
1521
1521
1742
1785
1807
1797
1824
1831
1960
1960
1984
2169
2210
2229
1
1
1
1
1
34
34
51
53
60
60
91
91
91
91
113
113
103
103
103
103
98
115
115
110
110
122
122
122
122
122
122
148
195
172
172
172
179
191
186
186
186
198
238
198
208
210
220
262
262
227
239
234
241
241
281
281
251
246
246
246
283
258
258
258
302
322
267
267
336
286
291
286
353
298
360
315
372
322
322
332
332
344
339
405
375
448
448
487
525
525
544
563
590
604
604
601
606
606
628
644
644
747
790
790
872
898
898
961
995
992
1014
1026
1028
1059
1059
1071
1066
1066
1071
1085
1145
1157
1212
1231
1243
1330
1356
1346
1368
1365
1372
1408
1427
1521
1754
1797
1819
1809
1836
1843
1972
1972
1991
2181
2222
2241
1
1
1
1
27
27
34
34
34
34
34
53
65
60
60
91
103
103
103
98
125
125
110
110
110
110
115
122
122
122
127
153
153
148
172
202
167
167
186
233
198
198
198
198
208
245
220
227
279
269
269
239
234
271
251
288
288
258
258
295
295
260
260
270
270
270
272
267
267
314
314
334
341
291
286
291
291
348
313
365
365
372
322
332
384
384
375
417
460
460
494
532
537
556
575
602
616
613
618
618
640
656
656
759
802
802
879
910
910
973
980
1007
1004
1026
1033
1040
1071
1066
1078
1078
1078
1078
1085
1097
1157
1169
1224
1231
1255
1330
1356
1353
1380
1372
1408
1420
1766
1809
1831
1821
1848
1855
1960
1984
2003
2193
2234
2248
1
1
1
1
1
27
27
39
34
34
34
39
34
34
34
34
46
53
60
77
91
91
103
103
98
110
110
137
137
122
122
134
134
148
148
172
172
172
179
186
186
186
198
198
198
198
198
208
245
210
257
227
239
234
241
241
291
251
283
258
300
300
270
260
307
307
272
277
272
326
326
346
286
291
286
286
291
286
291
291
353
303
313
313
313
360
377
377
332
384
344
396
396
363
429
394
472
472
544
549
568
587
609
628
625
630
630
647
668
668
771
802
802
814
814
886
917
917
983
985
992
1014
1011
1033
1045
1047
1078
1078
1085
1085
1109
1169
1176
1231
1236
1243
1267
1330
1356
1368
1353
1387
1426
1426
1432
1502
1778
1821
1843
1833
1860
1867
1972
1996
1991
2015
2205
2241
2248
2260
1
34
34
39
34
34
34
39
34
51
51
46
58
58
53
60
60
60
60
72
89
91
91
103
98
98
98
115
122
122
149
149
134
146
153
153
148
172
172
172
172
167
167
179
186
198
198
198
198
210
252
217
217
217
217
269
239
234
234
251
298
258
253
290
260
260
265
260
260
272
312
312
282
282
277
272
272
314
314
284
291
291
291
291
333
333
358
303
298
303
360
372
332
384
384
344
396
403
403
363
363
375
375
394
441
484
484
556
561
590
580
599
628
640
637
642
642
659
680
680
783
814
814
821
821
886
898
924
924
995
992
1002
1002
992
1004
1026
1023
1045
1047
1052
1066
1078
1085
1121
1121
1176
1188
1248
1255
1279
1356
1368
1375
1372
1438
1439
1502
1514
1790
1833
1855
1845
1872
1879
2008
2003
2027
2217
2241
2260
2272
1
1
27
34
34
34
51
51
58
58
53
58
58
65
65
101
103
98
110
110
110
110
122
122
122
122
122
122
134
134
134
134
161
161
141
153
172
172
172
172
184
184
179
179
179
186
186
186
198
198
198
198
198
210
217
217
227
227
241
241
281
251
253
253
258
248
248
253
253
265
265
265
265
265
260
302
272
267
267
277
277
272
324
324
284
284
346
296
291
303
345
345
365
310
310
310
315
372
332
332
384
384
403
363
363
363
415
415
375
375
394
394
453
472
472
491
491
568
573
602
592
611
640
652
652
649
654
654
671
671
692
692
795
821
821
833
936
936
973
980
1007
1004
1014
1014
1004
1011
1033
1030
1052
1078
1085
1133
1176
1200
1260
1267
1291
1330
1368
1375
1372
1408
1514
1521
1802
1845
1867
1857
1884
1891
2020
2015
2039
2229
2272
2284
1
1
27
34
34
34
34
41
53
58
58
65
65
77
77
91
91
91
103
103
113
110
110
122
117
117
134
141
141
173
173
153
167
167
179
196
191
186
186
186
186
198
198
198
210
222
266
266
246
246
293
253
253
258
253
260
260
265
265
265
265
260
272
267
267
277
277
277
277
277
277
267
272
314
289
289
284
336
336
286
286
296
296
291
358
303
303
310
310
315
357
357
317
317
317
322
332
384
396
396
363
363
363
363
363
415
427
427
465
484
484
503
561
580
580
580
609
599
623
647
664
664
661
666
666
683
683
704
704
807
807
833
845
845
948
948
985
992
1014
1011
1026
1026
1016
1023
1033
1121
1145
1176
1188
1212
1272
1279
1303
1380
1406
1408
1420
1439
1521
1814
1857
1879
1869
1891
1903
2032
2027
2051
2241
2284
2296
1
1
1
1
27
34
34
34
34
34
34
41
53
77
77
89
89
125
110
122
122
122
122
122
122
117
134
134
141
141
141
153
185
185
191
186
186
186
186
203
198
198
198
198
210
215
217
217
217
227
229
241
241
246
246
278
278
253
253
260
305
265
265
260
272
267
277
277
277
277
277
267
272
289
289
289
289
284
326
301
301
301
296
348
348
298
298
303
303
365
317
317
322
332
332
369
369
329
396
403
408
363
363
427
439
439
394
394
394
477
491
491
515
573
592
592
611
635
659
654
654
671
671
673
673
673
690
690
716
716
819
819
836
845
857
857
924
960
960
997
1004
1026
1033
1033
1023
1030
1047
1052
1157
1200
1224
1284
1291
1315
1356
1387
1426
1413
1413
1432
1521
1826
1869
1891
1891
1881
1903
1910
2044
2039
2063
2253
2296
2308
1
1
1
27
27
34
34
34
34
39
34
34
41
46
53
53
53
89
89
101
101
91
91
103
103
110
110
110
122
137
117
117
134
134
141
141
141
153
153
153
197
197
167
203
198
208
210
205
215
215
247
217
217
217
227
227
229
229
229
239
246
253
248
248
253
290
290
260
260
260
260
265
265
272
272
272
272
317
272
277
277
277
282
289
289
289
284
296
296
301
301
301
301
296
338
308
308
303
360
360
332
329
344
344
381
381
336
408
363
363
363
415
420
375
375
439
451
451
489
503
527
580
599
604
623
647
671
666
666
685
685
702
702
728
728
826
826
848
857
864
864
924
936
972
972
1004
1011
1011
1033
1045
1045
1035
1052
1140
1140
1140
1140
1169
1212
1236
1296
1303
1330
1327
1368
1438
1425
1425
1439
1439
1502
1838
1881
1903
1903
1893
1910
1922
2056
2051
2075
2265
2308
2320
1
27
39
34
34
34
34
34
51
41
41
53
53
65
65
96
101
101
113
113
110
110
122
122
122
122
122
122
122
117
134
134
134
134
149
134
129
141
141
141
153
153
185
185
204
204
203
203
198
208
208
215
205
215
215
217
217
217
227
227
259
239
239
241
241
236
236
236
246
251
253
248
260
270
302
302
272
272
277
277
267
267
282
284
284
329
284
289
289
296
296
301
301
301
296
313
313
308
308
313
313
303
350
310
372
372
332
344
344
344
336
336
393
393
363
420
375
375
427
427
394
446
463
463
496
515
534
611
616
635
659
683
673
673
697
697
714
714
716
716
735
735
855
855
855
869
876
876
954
954
961
973
948
980
979
979
979
979
1016
1033
1023
1030
1047
1052
1052
1042
1140
1140
1152
1152
1181
1224
1248
1308
1315
1339
1380
1413
1439
1451
1451
1507
1514
1850
1893
1915
1905
1922
1934
2068
2063
2087
2277
2320
2332
1
1
34
34
34
34
51
41
41
53
63
72
72
72
96
91
91
103
103
113
113
113
125
125
110
110
137
122
117
117
134
134
129
146
146
161
141
141
141
136
136
136
136
153
153
197
197
167
167
216
191
191
191
198
198
208
208
215
215
222
222
217
217
217
217
227
229
239
239
271
236
251
251
246
253
258
258
290
290
260
265
270
272
277
309
309
284
289
284
291
291
341
296
296
301
286
301
308
313
313
303
310
362
332
384
384
344
344
336
363
405
405
375
375
432
439
458
475
475
527
546
623
623
642
671
695
685
709
709
726
726
728
728
747
867
867
862
862
881
888
888
932
947
954
966
961
966
973
985
980
960
992
991
991
1023
1030
1030
1052
1052
1140
1140
1152
1159
1159
1193
1236
1260
1320
1327
1351
1387
1377
1413
1439
1451
1458
1458
1514
1521
1862
1905
1927
1917
1934
1946
2080
2075
2099
2289
2332
2344
1
8
34
34
34
34
34
41
41
63
53
53
75
72
72
84
96
125
125
125
110
137
137
122
122
137
122
122
122
117
117
117
149
134
134
134
134
141
141
141
136
136
153
153
173
153
167
167
204
204
191
196
196
228
203
203
203
208
205
222
222
222
222
222
217
217
217
229
229
229
239
241
236
236
236
236
236
236
236
251
251
246
283
253
258
258
258
260
260
265
270
270
270
302
302
272
272
277
284
321
291
291
291
296
291
296
353
303
308
298
374
344
396
396
408
363
363
375
417
417
427
444
451
451
470
470
477
487
487
515
539
539
558
558
635
654
678
707
697
721
716
738
738
735
735
759
874
874
886
886
888
925
900
900
944
959
966
978
973
978
985
997
992
972
1004
1003
1003
1023
1085
1085
1152
1159
1205
1248
1272
1332
1339
1356
1363
1358
1387
1377
1384
1451
1458
1514
1521
1533
1874
1917
1939
1929
1946
1958
2092
2087
2111
2301
2344
2356
1
1
1
1
1
1
1
1
1
15
34
34
34
34
34
34
41
41
41
53
53
53
53
75
65
60
72
72
87
72
89
84
96
91
91
103
110
110
137
137
137
117
149
149
149
134
141
141
141
161
141
146
146
153
153
185
216
191
191
196
196
196
198
208
203
208
203
203
240
205
205
215
215
222
217
217
217
234
229
229
229
229
241
241
236
236
236
236
251
253
253
258
258
295
260
270
272
309
309
284
284
291
291
291
296
291
301
301
333
303
313
365
332
384
384
386
403
403
363
420
375
429
429
439
456
463
463
482
482
489
499
499
527
551
551
570
570
604
623
647
647
659
666
666
697
719
709
721
733
728
750
750
747
759
771
881
881
881
895
932
937
907
907
956
971
978
985
985
985
992
1004
1004
984
1011
1015
1015
1030
1097
1159
1217
1260
1284
1330
1344
1351
1368
1370
1365
1384
1458
1514
1521
1533
1540
1886
1929
1951
1941
1958
1970
2104
2099
2118
2313
2356
2368
1
1
1
1
1
1
1
1
8
8
27
34
34
34
34
34
34
34
34
34
34
41
41
41
41
41
53
53
65
65
87
72
72
72
84
89
89
84
99
96
103
122
122
117
149
149
149
129
141
141
141
141
161
161
161
161
161
141
141
141
136
136
153
153
173
153
153
153
153
153
153
183
192
226
196
228
208
208
208
203
205
215
215
215
247
227
227
234
229
246
241
241
236
236
236
236
236
236
253
248
248
258
260
307
267
272
284
321
291
296
296
301
301
301
303
303
303
313
313
313
345
377
332
344
344
344
396
396
398
363
415
427
441
441
446
468
470
470
489
489
496
511
511
534
558
558
577
577
616
635
659
659
671
678
678
709
731
721
733
740
740
762
762
759
771
778
881
907
947
944
949
914
914
963
978
985
997
992
997
1004
1016
1011
996
1023
1027
1027
1042
1085
1085
1104
1140
1229
1272
1296
1361
1351
1363
1380
1370
1365
1382
1413
1514
1521
1521
1533
1540
1898
1941
1963
1953
1970
1982
2111
2111
2130
2325
2368
2380
1
1
1
1
20
15
27
34
34
34
34
34
34
41
41
53
53
53
53
53
53
53
65
60
60
72
72
77
77
72
99
84
91
91
91
91
96
96
111
91
103
103
110
110
137
137
117
141
141
141
141
161
156
156
136
136
153
153
153
173
173
173
173
173
153
153
148
148
165
185
165
165
195
238
208
240
205
215
222
217
217
217
217
227
227
227
259
229
234
234
234
241
241
236
236
236
236
236
236
241
236
253
248
248
248
253
260
260
282
282
267
267
267
272
272
314
284
296
301
333
313
303
303
303
310
310
310
310
352
344
389
344
336
403
403
363
363
410
375
375
427
429
429
448
448
458
480
499
499
501
501
518
518
546
589
589
623
642
666
666
678
685
685
716
721
743
733
740
740
752
774
774
774
771
793
778
790
812
895
959
954
954
924
924
924
924
944
956
956
926
926
975
990
997
1004
1004
1004
1011
1023
1023
1008
1030
1039
1039
1085
1085
1085
1097
1140
1152
1241
1284
1308
1351
1368
1368
1375
1387
1387
1382
1394
1384
1425
1439
1514
1521
1533
1533
1540
1910
1953
1975
1965
1982
1994
2118
2123
2142
2337
2380
2392
1
1
8
27
34
39
34
34
34
34
53
53
53
53
53
65
65
65
65
60
60
72
72
72
72
72
89
89
84
84
111
91
91
91
123
122
149
149
136
153
153
173
173
168
153
153
153
153
165
165
160
185
180
180
180
180
155
155
172
172
172
172
197
172
172
207
191
226
228
250
205
227
227
227
227
252
252
222
222
227
227
227
229
234
234
234
241
241
241
271
271
236
236
236
236
236
236
236
236
236
236
236
253
248
248
248
253
253
253
260
260
272
267
267
267
267
267
272
284
284
291
291
291
291
291
296
291
303
345
310
310
310
310
332
364
401
336
363
415
375
375
422
439
441
441
460
470
492
511
511
513
513
530
558
601
601
654
697
697
728
733
755
740
752
759
786
786
786
786
786
783
783
805
790
802
802
824
831
831
925
924
924
944
971
966
966
936
936
956
963
968
938
938
982
997
1004
1004
1011
1011
1030
1030
1020
1051
1051
1085
1085
1085
1097
1097
1104
1140
1164
1253
1296
1320
1368
1368
1387
1387
1387
1399
1399
1394
1384
1406
1451
1514
1533
1545
1540
1922
1965
1987
1977
1994
2006
2111
2130
2135
2154
2349
2392
2404
1
20
34
34
51
41
53
53
53
53
53
53
53
53
65
65
60
60
60
72
77
72
72
72
72
72
89
89
96
96
91
91
91
123
103
110
135
156
156
136
136
153
153
153
153
153
185
160
185
180
165
155
172
172
172
197
192
192
172
209
219
238
240
205
262
227
264
264
234
234
241
241
236
236
236
246
253
283
283
253
248
248
253
253
295
265
260
255
260
255
260
267
272
284
306
306
296
296
291
333
313
303
303
303
310
310
310
310
357
357
337
337
322
332
332
332
344
344
389
376
376
336
408
363
427
427
434
446
448
448
472
482
504
518
518
525
525
542
570
613
613
666
709
709
740
740
767
759
771
798
798
798
798
798
795
795
817
802
814
814
831
843
843
937
914
914
924
924
936
956
978
978
978
943
943
968
975
975
950
950
997
1023
1030
1032
1063
1063
1085
1097
1109
1104
1140
1152
1171
1265
1308
1332
1399
1399
1399
1406
1406
1406
1413
1418
1458
1526
1545
1552
1934
1977
1999
1989
2006
2018
2142
2147
2166
2361
2404
2416
1
1
1
1
1
27
34
34
34
34
34
34
34
63
53
53
53
53
65
65
65
65
72
77
77
72
72
72
84
84
89
89
84
91
91
96
96
96
135
110
122
122
147
153
168
153
165
155
155
155
192
172
197
197
172
172
192
172
209
204
204
221
231
250
247
222
222
227
227
274
234
234
234
246
271
271
236
236
236
246
246
246
253
253
258
253
253
290
290
260
255
255
265
255
260
307
272
267
267
267
272
284
301
296
313
313
313
303
303
345
322
317
332
332
369
369
344
344
344
344
329
401
336
336
388
388
363
363
439
439
446
458
460
484
494
516
530
537
537
554
582
625
625
678
721
721
752
774
779
771
793
793
783
805
805
805
805
805
802
802
807
824
814
821
821
838
838
850
850
924
924
949
926
936
943
968
990
985
985
975
982
962
962
1004
1011
1052
1044
1085
1075
1075
1097
1104
1116
1164
1171
1277
1320
1344
1406
1406
1411
1418
1425
1430
1439
1533
1552
1946
1989
2011
2001
2018
2030
2154
2159
2178
2373
2416
2428
1
1
1
1
1
1
27
27
34
34
34
34
46
53
58
75
65
65
60
60
60
60
72
77
72
72
72
72
72
72
72
89
84
84
91
91
96
96
96
96
96
96
103
103
110
110
122
147
154
136
136
153
165
180
155
172
172
172
172
172
172
172
172
172
184
209
209
184
199
221
221
216
216
233
243
215
262
227
217
217
227
259
234
234
234
241
241
286
236
236
236
246
246
246
246
253
253
258
258
253
258
253
253
260
260
260
255
260
255
260
265
265
272
272
272
302
302
267
277
267
282
314
284
301
301
296
303
310
310
310
310
352
337
317
332
332
332
329
376
376
356
356
408
363
363
395
395
446
451
453
470
472
491
506
523
542
549
549
561
594
637
637
690
733
733
764
786
791
783
805
805
795
817
817
819
836
826
833
833
845
845
857
857
891
924
924
936
936
956
938
943
975
975
997
997
997
987
974
969
1004
1059
1056
1087
1087
1109
1126
1171
1289
1332
1356
1368
1368
1423
1430
1442
1444
1451
1458
1533
1958
2001
2023
2013
2030
2042
2166
2171
2190
2385
2428
2440
1
1
1
8
27
27
39
34
34
34
34
34
58
53
53
53
60
60
60
60
87
77
72
72
72
84
84
84
84
91
96
96
96
103
108
108
103
103
115
110
110
110
122
159
153
153
160
160
160
155
155
155
172
172
197
172
192
172
172
184
184
184
184
191
191
221
221
221
191
191
191
191
211
233
233
228
228
208
245
255
215
215
222
222
227
227
227
274
234
234
239
271
236
246
246
253
253
298
258
258
258
258
253
260
255
255
260
255
255
260
255
260
265
265
265
255
272
272
267
272
277
277
267
282
314
314
284
301
301
296
313
313
303
332
332
364
344
344
344
329
329
336
368
368
363
363
363
407
407
458
463
482
484
504
503
518
542
554
561
561
573
606
649
649
702
733
733
745
745
776
798
803
795
817
817
807
829
829
826
848
838
845
845
857
857
857
898
898
918
948
948
968
950
982
997
987
1004
1004
994
981
981
1068
1099
1099
1116
1133
1171
1183
1301
1344
1368
1380
1380
1392
1387
1387
1435
1442
1454
1451
1458
1552
1970
2013
2035
2025
2042
2054
2178
2183
2202
2397
2440
2452
1
1
8
15
27
27
27
34
34
34
34
51
53
53
53
53
53
70
65
65
60
60
60
60
60
60
72
72
72
72
72
72
72
99
84
84
84
84
89
91
91
91
91
91
91
103
110
120
120
135
171
136
136
153
160
180
155
172
172
172
172
172
172
172
209
204
204
191
191
191
191
191
191
191
191
191
223
223
233
228
233
233
223
223
208
208
245
245
240
240
215
252
267
227
227
234
234
239
239
241
241
286
236
246
251
246
283
253
253
258
258
310
260
260
260
265
265
255
265
270
272
272
272
272
267
272
267
272
277
277
267
284
284
284
284
326
326
301
301
313
313
313
303
337
344
344
376
368
363
363
375
375
375
375
419
419
434
470
475
472
494
496
496
516
515
515
530
554
566
566
573
573
585
585
618
661
661
714
745
745
752
752
788
805
810
807
824
829
819
841
841
833
833
860
845
857
857
857
864
864
899
896
906
906
930
955
955
975
982
962
1004
1004
994
993
1059
1080
1111
1111
1133
1133
1171
1183
1195
1313
1356
1380
1399
1399
1399
1389
1447
1454
1451
1451
1466
1458
1458
1470
1552
1982
2025
2047
2037
2054
2066
2190
2195
2214
2409
2452
2464
8
20
27
27
27
34
34
34
34
34
39
34
34
34
63
53
53
65
65
65
60
60
82
77
72
72
72
72
72
72
84
84
84
89
89
111
96
96
96
103
103
103
115
110
110
110
120
115
127
127
147
183
153
153
153
160
160
155
155
155
172
172
172
192
172
172
172
184
191
191
221
216
216
203
208
235
235
245
245
245
235
235
255
215
222
222
257
257
252
252
227
264
274
234
239
241
236
236
246
236
251
251
246
253
253
298
298
253
258
248
248
248
248
258
258
260
260
295
260
265
255
265
270
272
317
272
267
277
267
284
284
279
279
279
284
284
284
291
296
291
301
338
338
313
337
332
332
344
344
344
388
368
363
375
375
431
431
446
482
487
484
506
508
508
523
527
527
542
561
578
578
585
585
597
597
630
673
673
726
752
752
764
788
800
817
819
836
841
831
848
848
872
877
852
864
864
871
871
911
908
918
918
925
925
942
955
975
974
1005
1092
1116
1133
1123
1123
1171
1183
1195
1202
1325
1368
1370
1392
1399
1389
1406
1406
1396
1459
1466
1478
1470
1470
1477
1994
2037
2059
2049
2066
2078
2202
2207
2226
2421
2464
2476
1
1
1
15
27
27
27
27
34
34
39
34
34
46
51
53
53
53
75
65
65
65
65
60
60
60
60
72
72
77
77
72
72
94
89
84
84
84
79
79
91
91
96
96
96
96
103
123
103
115
110
120
120
115
127
127
154
136
136
153
195
155
155
155
155
172
172
172
172
204
184
199
184
191
191
191
191
191
196
196
203
228
223
223
203
208
215
215
247
247
252
257
257
242
242
267
227
269
269
264
264
239
241
241
241
276
236
236
236
251
253
253
253
253
253
253
258
258
258
258
260
310
310
260
265
270
265
272
307
272
267
267
267
267
267
267
329
279
279
284
284
296
291
286
286
286
296
291
301
303
313
350
350
344
368
368
363
400
375
375
443
443
453
475
494
494
494
491
513
515
515
534
534
554
573
585
585
597
597
604
604
642
685
685
738
738
764
776
776
800
812
817
807
807
829
831
848
853
843
855
855
852
884
884
889
864
871
871
923
920
895
930
930
937
937
914
949
955
994
986
1017
1104
1116
1135
1135
1183
1190
1202
1337
1380
1377
1404
1406
1406
1396
1451
1471
1458
1478
1490
1477
1477
2006
2049
2071
2061
2078
2090
2214
2219
2238
2433
2476
2488
1
1
1
1
8
8
27
27
27
34
34
34
34
34
34
46
51
53
53
53
53
58
63
65
65
65
87
77
77
72
72
72
72
72
84
84
89
89
84
84
84
79
106
96
96
96
96
103
103
103
103
103
103
115
115
115
115
135
110
110
110
120
127
127
122
134
155
155
155
155
172
172
207
167
167
216
191
191
191
191
191
211
191
196
196
196
203
203
203
203
208
203
203
208
210
215
222
222
222
252
252
217
217
259
259
264
269
269
254
254
274
239
281
281
271
271
236
251
253
288
253
248
258
265
265
260
265
270
270
270
260
272
272
272
317
322
272
267
267
267
272
284
319
284
341
286
286
296
301
303
298
303
303
313
313
313
310
310
310
337
362
362
332
368
363
363
375
375
412
455
455
487
506
506
503
525
546
546
566
585
585
585
604
604
616
616
654
673
673
692
692
750
750
776
788
788
807
824
819
819
843
860
865
850
867
867
899
896
901
871
896
883
883
930
927
937
937
914
949
949
926
961
969
994
981
998
1029
1116
1147
1147
1190
1349
1392
1377
1416
1483
1470
1490
1502
2018
2061
2083
2073
2090
2102
2226
2231
2250
2445
2488
2500
1
1
1
1
15
20
27
27
34
34
34
34
34
46
53
53
53
53
53
53
53
53
63
65
65
75
70
60
72
72
77
72
72
94
89
89
84
79
79
91
91
96
96
96
96
91
91
91
91
113
103
103
103
115
110
127
127
147
127
139
136
160
172
219
179
174
191
191
191
191
191
196
196
228
223
203
208
203
208
208
203
210
210
210
215
215
215
247
247
227
264
264
234
266
266
276
281
281
266
266
236
251
253
293
293
283
253
258
253
300
260
255
255
260
260
272
272
272
282
282
267
272
272
284
284
329
334
284
284
331
296
301
301
301
291
291
353
298
303
305
310
310
317
374
374
329
329
344
368
363
363
363
375
424
467
467
494
513
518
515
537
558
558
578
597
597
597
616
628
628
666
685
685
704
757
757
788
795
795
814
814
831
826
826
850
872
857
877
879
879
871
911
906
871
908
908
918
883
908
895
895
942
939
914
914
914
914
949
949
956
956
938
968
993
1010
1041
1128
1159
1159
1361
1404
1396
1428
1458
1490
1477
1502
2030
2073
2095
2085
2102
2114
2238
2243
2262
2457
2500
2512
1
8
27
27
27
27
34
34
46
53
53
53
53
53
53
65
65
65
65
75
87
77
77
87
82
72
72
84
84
89
89
79
106
96
96
91
91
91
103
103
103
103
125
110
110
110
127
127
122
122
134
134
159
139
134
151
151
172
172
172
174
191
191
191
191
231
191
191
186
191
191
208
208
240
210
210
210
235
215
215
222
222
227
227
227
227
227
259
259
234
271
271
236
278
288
293
293
278
278
253
258
253
253
300
305
295
255
260
272
272
272
307
267
267
267
267
272
284
279
284
284
296
341
341
286
296
286
301
301
296
291
343
303
360
305
305
310
310
310
310
332
317
332
329
329
344
386
386
363
375
436
479
479
525
530
527
549
570
570
590
609
604
604
628
640
640
678
692
692
716
767
783
800
807
807
802
838
838
833
833
855
857
869
884
889
891
891
923
918
903
915
920
895
930
895
920
907
907
949
946
926
926
956
956
968
968
945
1005
1022
1053
1140
1171
1171
1171
1373
1416
1396
1440
1451
1470
1509
1557
2042
2085
2107
2097
2114
2126
2250
2255
2274
2469
2512
2524
1
1
1
20
27
39
34
34
34
46
53
58
53
65
65
72
77
72
72
72
72
82
94
89
84
84
99
89
79
79
91
91
96
96
96
96
91
91
91
91
113
103
103
103
103
103
98
98
98
98
110
110
110
110
115
120
137
127
134
134
171
151
136
136
158
158
158
158
172
172
191
191
191
191
191
191
186
191
203
203
243
203
210
210
210
252
222
222
222
247
227
227
217
217
269
234
234
234
266
266
276
236
236
283
253
290
300
305
305
290
290
255
255
260
272
272
272
317
307
267
267
267
267
272
319
279
284
291
296
291
291
296
296
353
303
303
313
303
355
305
372
332
329
344
344
398
398
363
448
467
467
486
486
537
537
539
556
582
582
602
621
616
640
652
652
678
690
704
716
728
759
779
783
795
812
807
807
802
819
819
814
833
855
870
867
869
871
881
896
901
903
903
930
930
910
910
927
927
942
907
927
949
919
919
933
933
975
975
960
960
1017
1034
1065
1121
1133
1152
1183
1183
1183
1385
1428
1452
1458
1490
1482
1538
1557
1564
2054
2097
2119
2109
2126
2138
2262
2267
2286
2481
2524
2536
1
1
1
1
8
34
34
34
51
53
53
53
53
75
72
77
72
82
72
84
84
84
84
79
79
79
96
96
96
96
91
101
111
103
103
103
108
108
98
98
125
110
110
110
110
115
115
115
122
122
127
127
127
122
122
134
134
144
134
136
136
178
158
158
172
174
191
191
186
186
191
198
203
203
215
210
210
210
250
210
210
210
210
210
222
222
222
217
264
259
234
234
281
236
236
278
288
293
253
305
295
255
260
302
272
312
312
317
317
302
302
322
267
267
267
267
272
272
284
329
314
284
331
331
341
291
286
291
286
286
296
303
303
303
313
365
365
367
384
384
329
344
386
386
363
405
405
460
479
479
498
549
551
568
594
594
609
633
628
647
664
664
690
697
716
728
735
771
786
786
786
778
778
795
802
802
802
819
819
819
814
831
831
821
833
857
882
879
889
889
881
893
908
908
910
910
910
910
942
937
934
914
949
919
939
956
956
926
926
967
967
1064
1029
1046
1077
1128
1164
1195
1195
1195
1397
1440
1464
1451
1463
1470
1489
1509
1545
1564
2066
2109
2131
2121
2138
2150
2274
2279
2298
2493
2536
2548
1
1
8
15
27
27
34
63
53
53
53
60
60
60
60
65
72
72
72
72
82
84
84
84
84
84
84
89
79
91
91
91
91
91
91
91
103
103
123
113
115
120
120
120
137
127
122
122
122
122
134
134
129
134
134
134
146
151
190
172
174
174
191
191
186
198
203
203
203
210
210
210
210
205
210
210
215
222
222
227
271
271
236
236
293
248
248
248
248
253
290
300
305
255
260
317
307
267
267
267
267
282
272
309
284
324
324
329
324
314
314
334
284
291
291
291
291
336
326
291
301
296
343
343
353
303
310
377
377
332
379
396
396
398
398
417
472
486
486
518
510
537
561
561
563
590
580
580
606
606
628
645
640
659
676
676
697
728
735
747
764
783
788
798
798
793
793
790
790
802
814
814
809
826
826
826
821
838
838
828
857
869
894
891
901
901
893
905
915
920
927
922
922
914
914
949
949
926
961
931
946
968
938
975
967
1071
1041
1053
1053
1084
1084
1121
1176
1202
1207
1207
1409
1452
1476
1470
1482
1545
2078
2121
2143
2133
2150
2162
2286
2291
2310
2505
2548
2560
1
1
20
27
27
39
34
34
34
34
34
46
53
53
53
53
53
53
75
60
60
65
65
77
72
84
84
84
79
96
91
101
91
103
108
98
98
120
120
120
110
110
110
110
130
120
127
127
127
122
122
122
134
134
159
149
149
129
134
134
146
141
151
153
153
153
153
158
180
180
172
172
202
202
174
231
191
191
191
191
203
208
210
210
210
205
205
205
215
215
222
222
227
227
227
234
239
283
300
295
260
255
302
272
272
272
272
272
307
317
272
267
267
267
267
267
282
329
319
319
321
291
291
291
336
336
341
326
326
341
291
286
301
301
296
348
338
338
313
313
303
355
355
360
317
332
384
384
344
391
403
403
363
405
405
429
484
498
530
522
549
573
573
575
602
592
592
618
618
640
657
652
671
688
688
740
740
747
759
759
776
783
783
795
800
805
805
802
802
817
817
809
809
821
821
838
833
833
828
845
845
870
852
881
901
903
913
913
905
917
927
927
934
914
949
934
934
926
956
926
926
938
968
943
958
975
950
967
1053
1096
1096
1128
1171
1188
1219
1219
1404
1421
1464
1488
1489
1564
2090
2133
2155
2140
2162
2174
2298
2303
2322
2517
2560
2572
1
1
1
1
1
1
27
27
34
51
58
53
65
65
65
60
60
87
72
72
72
72
72
84
84
89
84
84
79
91
91
96
96
91
91
91
91
103
113
98
98
115
120
120
110
110
137
127
122
127
127
122
142
122
134
134
134
134
134
134
171
161
161
141
151
151
153
153
158
170
192
192
172
214
214
174
191
191
243
203
208
208
210
210
210
210
210
210
210
210
210
205
205
205
205
210
215
210
215
252
222
222
222
227
227
234
234
234
239
239
246
251
246
253
248
290
295
260
270
260
307
272
267
267
267
272
314
314
284
319
324
284
291
291
336
331
331
301
301
333
333
303
343
343
353
338
338
313
313
303
360
350
350
305
310
362
362
372
344
403
363
363
415
415
375
375
417
441
491
510
537
529
556
580
580
587
609
599
599
630
630
647
652
669
664
671
683
700
700
700
700
752
752
759
771
771
783
795
795
802
807
812
812
812
814
814
809
826
851
848
828
828
828
870
857
857
857
857
882
893
913
915
920
920
917
914
929
934
946
956
946
946
938
968
938
945
955
970
962
1071
1065
1108
1108
1133
1183
1200
1202
1231
1231
1411
1411
1411
1433
1476
1500
1489
1564
2102
2140
2140
2167
2152
2174
2186
2310
2315
2334
2529
2572
2584
1
1
8
27
27
34
34
34
34
34
63
53
53
53
53
53
53
70
60
60
65
60
72
77
77
72
72
99
84
84
84
91
96
96
96
96
111
103
103
98
115
115
120
125
125
127
122
127
127
122
122
122
117
117
134
144
134
134
154
154
134
134
134
134
161
141
141
146
151
146
178
168
168
153
158
158
170
182
204
204
174
221
221
203
208
210
210
210
250
210
210
205
210
210
210
210
215
222
222
222
222
222
222
217
217
222
227
227
217
217
227
264
234
234
234
239
241
241
236
246
236
251
251
246
253
258
258
258
253
260
270
260
302
307
272
267
272
314
284
279
284
326
326
331
296
291
301
291
303
348
338
338
345
345
365
350
350
305
310
310
372
357
357
332
332
332
374
374
384
344
363
363
410
375
375
427
427
429
448
522
541
568
599
611
611
642
642
659
664
681
671
683
690
712
712
712
712
759
759
771
778
778
790
790
812
802
802
829
809
814
814
821
821
828
863
848
860
882
852
869
869
894
871
871
905
920
927
932
932
927
914
929
934
926
941
946
958
958
945
945
950
967
982
974
1077
1128
1120
1120
1176
1195
1212
1243
1243
1411
1418
1418
1445
1488
1512
1489
2114
2140
2152
2179
2164
2186
2198
2322
2327
2346
2541
2584
2596
1
1
1
15
27
27
27
34
34
34
34
46
53
53
75
60
60
60
60
60
82
72
72
72
72
72
72
72
84
84
84
84
91
96
96
111
91
91
103
103
103
113
123
98
98
115
127
122
137
137
117
134
129
129
129
134
134
139
134
146
141
166
166
146
146
173
153
153
153
158
158
153
190
160
160
172
182
189
174
216
216
191
191
196
233
233
203
208
210
210
215
222
227
217
217
217
227
234
234
234
229
229
229
224
234
229
234
234
229
239
271
241
241
241
241
241
246
236
236
236
251
253
258
258
258
253
260
255
270
265
260
272
267
267
267
267
272
309
319
284
279
279
284
326
296
291
301
301
291
291
291
296
291
333
333
343
338
338
303
313
360
305
310
310
352
352
377
357
357
332
384
369
369
344
386
386
396
363
363
375
375
439
439
441
460
534
534
553
553
580
611
623
623
630
630
649
649
671
671
693
690
702
719
719
719
719
743
783
790
790
809
809
809
841
821
848
828
828
828
838
838
833
828
845
845
855
855
855
855
875
860
872
894
881
881
901
871
871
871
871
883
900
915
917
939
939
939
939
941
946
946
938
953
958
970
970
962
979
994
986
1089
1128
1132
1132
1183
1202
1224
1255
1255
1382
1418
1418
1457
1500
1470
1524
2126
2164
2191
2176
2198
2210
2334
2339
2358
2553
2596
2608
1
1
1
1
8
27
34
34
34
46
53
53
87
87
72
72
84
79
79
84
94
94
84
96
96
91
103
103
103
103
123
110
110
120
130
135
122
127
127
117
117
117
134
129
134
134
139
144
144
141
146
151
151
153
153
173
173
153
153
185
165
165
160
160
160
160
160
165
180
202
182
204
204
189
196
196
196
191
191
223
223
203
208
203
203
208
210
245
245
210
205
210
210
210
210
215
222
227
229
224
229
234
234
239
241
241
236
241
236
236
236
236
246
251
241
236
236
236
236
236
251
253
253
258
258
253
260
255
255
255
270
270
265
270
260
260
272
267
267
267
272
272
284
284
321
331
296
286
286
286
286
301
291
291
296
338
303
303
313
313
313
303
355
350
350
305
305
310
310
310
310
372
332
332
332
364
364
384
369
391
391
381
381
398
398
408
363
363
363
375
375
429
451
451
453
453
472
472
472
510
546
546
565
565
592
606
623
625
635
635
642
642
661
683
705
702
714
731
731
738
755
762
762
783
783
795
802
802
809
829
851
853
828
848
860
840
840
855
855
857
857
867
867
882
872
879
901
893
893
913
883
883
890
920
907
907
922
922
929
939
951
953
958
945
945
965
970
982
982
972
972
974
991
1006
998
1101
1144
1144
1183
1202
1214
1236
1267
1267
1389
1469
1512
1536
2138
2176
2203
2188
2210
2222
2346
2351
2370
2565
2608
2620
1
1
1
20
53
60
60
60
60
60
72
79
94
94
79
96
101
101
91
91
103
103
103
103
103
103
98
98
115
115
120
135
122
122
127
142
147
117
129
129
134
134
134
134
151
151
151
141
141
153
153
158
158
158
158
153
153
160
185
185
197
172
172
172
182
192
214
189
216
216
191
196
196
208
203
208
208
203
235
210
210
210
205
210
210
215
215
215
257
257
227
227
227
227
229
229
229
224
234
229
234
234
234
234
229
241
241
241
236
246
251
241
236
251
241
241
241
241
253
253
258
258
253
253
265
260
265
260
272
267
267
267
282
282
272
284
279
279
284
284
296
286
286
291
291
286
286
291
301
301
301
301
291
291
296
291
333
353
343
303
313
313
303
303
360
350
367
357
357
332
332
332
384
376
376
381
403
403
393
393
363
363
410
410
420
441
463
463
465
465
484
484
484
522
553
553
572
572
604
618
635
637
647
647
649
649
673
695
717
714
726
743
743
750
762
759
764
774
774
759
759
776
776
795
795
802
809
814
814
841
828
833
863
860
840
870
870
870
855
855
860
872
852
852
867
869
874
874
894
879
891
871
871
913
905
900
920
890
890
907
941
963
945
965
970
957
957
977
982
994
994
979
979
986
1003
1018
1010
1113
1156
1156
1183
1202
1214
1221
1248
1279
1279
1389
1481
1524
1548
2150
2188
2215
2200
2222
2234
2358
2363
2382
2577
2620
2632
1
34
34
34
53
53
53
53
72
72
72
79
79
79
84
84
84
96
91
103
103
103
103
113
113
115
115
115
115
110
110
127
127
127
147
117
117
117
134
154
159
146
146
153
153
158
158
158
158
153
153
153
153
153
180
172
172
182
182
197
197
209
184
189
204
226
191
191
223
223
208
208
210
205
215
215
247
222
227
227
227
227
227
227
227
227
269
269
229
229
229
224
229
234
229
229
234
229
234
234
241
241
241
241
236
236
236
246
246
241
241
241
241
241
253
258
248
248
258
253
253
253
260
265
272
267
267
267
284
284
296
291
291
291
301
301
291
301
301
296
296
303
313
313
303
345
365
355
305
310
372
362
332
332
332
332
379
369
396
396
388
388
393
410
415
415
405
405
422
422
432
448
475
475
472
472
491
491
491
529
584
584
606
616
635
625
625
625
647
647
647
644
659
659
661
673
685
707
724
726
721
738
755
755
757
769
769
771
776
781
781
771
771
788
788
802
802
832
809
821
821
853
875
870
855
855
872
852
857
882
882
882
867
872
879
864
864
874
881
901
891
898
883
920
912
912
907
953
945
975
957
977
982
964
964
989
979
994
1006
1006
998
1015
1030
1022
1125
1168
1168
1214
1221
1260
1291
1291
1493
1536
1560
1569
2162
2200
2227
2212
2234
2246
2370
2375
2394
2589
2632
2644
1
1
1
1
34
53
53
53
60
60
60
60
72
79
84
79
79
91
91
91
91
103
103
103
98
98
115
120
125
125
127
122
122
117
134
134
159
146
151
141
141
166
171
158
153
153
153
153
160
165
172
172
172
192
179
189
189
209
209
221
191
191
191
216
238
235
205
227
227
227
259
229
234
234
224
234
234
234
229
281
281
241
241
236
246
241
241
241
241
246
246
241
241
241
241
253
248
258
248
253
253
253
255
265
265
265
267
267
296
286
291
286
301
296
343
303
313
303
303
357
377
362
332
332
384
374
391
381
381
408
408
400
400
400
427
427
417
417
434
434
444
460
487
487
503
503
541
596
596
618
628
647
637
637
654
659
659
656
666
666
673
685
692
719
731
738
733
750
762
762
764
764
778
778
778
783
788
788
778
778
795
795
822
809
809
844
809
821
828
828
855
855
860
882
882
867
867
879
864
894
894
894
874
879
891
876
876
901
871
893
898
890
924
965
957
987
964
989
979
994
1001
1006
1018
1018
1010
1022
1042
1029
1133
1137
1183
1180
1180
1202
1221
1272
1303
1303
1401
1401
1505
1548
1550
1572
1569
1576
2174
2212
2239
2224
2246
2258
2382
2387
2406
2601
2644
2656
1
1
1
1
1
1
34
34
34
34
53
53
53
53
53
72
72
72
79
79
79
91
103
103
108
115
120
120
110
110
122
122
127
137
137
117
117
117
129
134
134
151
171
153
153
153
158
153
178
183
153
160
160
165
165
172
182
172
204
221
221
228
228
250
210
210
210
205
247
224
234
234
266
236
241
293
293
253
248
248
253
253
253
248
248
248
248
253
260
260
260
260
260
265
265
265
265
272
267
267
267
272
272
291
291
291
303
313
313
303
355
332
369
384
391
386
403
393
393
420
420
412
412
412
439
439
429
429
446
446
456
472
499
499
515
515
553
608
608
625
640
654
644
649
666
666
668
678
685
692
704
731
731
721
743
750
740
740
762
769
769
796
788
790
790
785
785
790
790
785
785
802
802
829
829
856
828
840
840
862
862
872
894
894
879
879
876
901
901
901
871
871
891
898
883
905
920
936
946
977
964
999
1001
1006
1013
1018
1030
1030
1022
1054
1076
1041
1140
1149
1192
1192
1214
1284
1315
1315
1408
1408
1408
1408
1517
1560
1557
1584
1576
2186
2224
2251
2236
2258
2270
2394
2399
2413
2613
2656
2668
1
1
1
1
13
53
53
53
65
60
60
60
60
72
79
84
79
79
91
103
103
98
98
115
115
122
122
122
122
122
122
122
127
122
127
117
117
117
117
134
134
134
134
134
134
149
149
151
151
151
151
141
141
158
183
153
170
190
195
172
172
172
182
172
172
179
179
189
191
216
191
191
233
233
240
210
210
205
215
262
227
259
229
229
229
241
241
241
241
241
241
241
236
236
236
236
246
251
278
248
253
253
305
305
260
260
260
260
260
260
260
265
267
272
272
272
272
301
291
313
310
310
362
381
403
398
415
400
405
427
427
424
424
424
446
446
441
441
458
458
468
484
511
511
527
527
565
620
620
652
652
656
661
678
680
690
690
697
697
704
716
716
743
733
740
762
752
747
747
774
781
781
788
808
797
797
809
809
834
826
843
863
828
845
840
852
852
857
879
869
869
879
901
901
886
886
871
888
913
913
913
883
898
920
895
917
948
989
1011
1013
1018
1025
1030
1042
1042
1034
1066
1083
1053
1133
1161
1183
1204
1204
1221
1296
1327
1327
1408
1408
1408
1408
1420
1420
1529
1494
1572
1557
1596
2198
2236
2263
2248
2270
2282
2406
2406
2425
2625
2668
2680
1
1
8
13
13
25
34
34
34
53
53
65
72
72
72
72
79
79
79
91
103
103
103
115
115
115
115
110
110
122
122
127
122
117
117
117
117
134
134
129
129
146
146
146
151
156
156
141
153
153
158
158
158
158
153
153
160
160
170
195
172
172
172
172
182
182
182
202
207
172
172
209
189
191
228
208
245
245
210
210
215
215
247
252
217
217
217
217
227
227
274
229
229
229
229
239
234
271
271
236
236
251
253
248
248
248
290
290
260
260
260
260
260
260
260
317
317
272
272
272
272
272
267
272
279
301
301
291
291
291
291
291
310
310
393
363
415
410
427
412
417
436
436
436
458
458
453
453
470
470
480
499
499
496
518
518
539
539
577
632
632
664
664
668
668
690
687
702
702
709
709
719
716
728
728
755
740
740
752
774
759
759
781
793
793
820
804
804
804
809
834
846
845
850
850
875
857
852
864
864
864
901
886
898
913
898
900
920
920
920
895
912
907
907
902
927
929
934
960
1001
1023
1025
1030
1037
1042
1054
1054
1046
1078
1065
1140
1173
1202
1216
1216
1308
1334
1334
1416
1420
1420
1427
1427
1541
1506
1584
1576
1608
2210
2248
2275
2260
2282
2294
2418
2437
2637
2680
2692
1
1
1
13
15
25
25
37
34
34
60
60
60
60
60
60
72
72
72
79
79
79
79
79
79
91
103
98
115
122
134
134
134
149
149
146
141
141
141
141
136
158
153
158
158
168
153
153
153
153
153
172
172
172
172
182
182
207
172
172
172
184
184
179
179
189
189
189
214
219
221
191
208
208
240
210
215
257
257
227
259
264
239
239
286
241
241
241
241
236
236
236
236
251
241
283
283
248
248
248
253
260
260
260
255
255
270
260
302
302
272
267
272
272
282
272
272
329
329
284
279
279
279
286
301
291
291
310
363
363
405
427
422
424
424
439
424
429
443
443
448
470
470
465
465
482
482
492
511
511
508
530
551
551
589
649
644
644
671
671
681
668
680
702
699
709
709
716
716
731
728
738
738
735
735
762
747
752
769
759
759
781
766
771
788
805
805
802
827
809
846
828
828
828
858
845
845
845
845
882
869
864
864
879
886
876
876
876
898
920
920
920
902
924
919
919
934
941
950
945
945
972
1013
1035
1037
1022
1042
1049
1054
1066
1066
1083
1058
1090
1077
1185
1228
1228
1320
1346
1423
1423
1423
1427
1427
1553
1518
1596
1576
1620
2222
2260
2287
2272
2294
2306
2430
2449
2649
2692
2704
1
1
1
8
25
27
37
37
34
49
34
34
53
72
72
72
72
72
72
79
79
79
79
79
91
91
91
103
115
110
110
122
122
122
122
122
134
134
134
134
134
134
151
151
146
156
156
136
153
153
153
148
153
153
153
160
160
165
165
180
165
165
182
182
207
172
172
172
189
189
219
184
196
191
191
226
226
191
191
228
208
215
252
252
217
227
269
269
224
239
266
271
236
236
236
236
251
251
251
241
298
248
253
253
258
253
290
290
255
260
260
255
270
260
260
260
317
317
267
267
267
272
272
272
267
267
282
282
272
309
309
284
279
279
279
284
336
336
296
286
301
291
310
332
363
363
417
439
434
436
436
451
436
441
453
453
455
460
482
482
472
472
494
494
504
518
518
520
542
563
563
601
661
656
656
693
680
692
714
711
721
721
738
750
750
740
747
747
747
769
769
769
759
781
766
796
771
788
778
800
817
817
804
839
826
858
865
857
857
882
869
864
876
876
876
883
883
898
927
902
902
927
914
936
953
957
957
957
957
984
1025
1047
1049
1034
1029
1054
1061
1066
1078
1078
1070
1102
1089
1140
1197
1240
1240
1332
1334
1334
1358
1423
1430
1430
1565
1525
1608
1632
2234
2272
2299
2279
2306
2318
2442
2461
2661
2704
2716
1
1
1
20
25
37
32
34
34
49
49
44
61
61
60
72
72
84
79
79
79
79
79
91
91
91
91
103
103
98
98
98
115
115
115
137
137
122
122
122
122
122
122
134
134
134
134
134
134
134
134
146
146
151
151
158
158
153
168
148
153
182
182
182
187
172
172
172
172
179
179
189
189
219
184
191
191
226
196
196
191
203
238
203
208
205
205
205
215
215
215
215
210
210
215
227
227
264
264
224
224
239
281
281
236
236
241
241
236
236
236
236
236
236
236
251
251
241
278
248
283
253
253
248
258
258
253
310
260
260
260
260
260
270
260
260
267
267
267
267
272
272
282
272
272
329
329
284
279
279
279
284
321
321
296
301
301
301
296
348
303
332
363
363
429
429
451
446
443
443
463
448
448
448
465
465
467
467
494
494
484
506
506
516
530
532
554
575
575
613
668
668
668
690
700
700
700
687
692
704
714
711
726
721
723
733
733
738
738
745
745
757
757
752
759
759
766
766
793
808
778
800
815
815
785
785
802
812
824
824
824
824
846
828
865
877
864
864
869
888
895
934
914
914
921
946
948
965
964
964
984
984
996
1037
1059
1061
1046
1066
1073
1078
1090
1090
1082
1114
1101
1140
1183
1207
1209
1252
1252
1344
1346
1370
1408
1430
1430
1475
1577
1620
1644
2241
2284
2311
2291
2318
2330
2413
2454
2473
2673
2716
2728
1
34
34
44
34
56
56
56
53
68
68
72
72
72
72
79
79
79
91
91
91
98
103
103
98
98
110
115
115
110
122
122
122
122
149
149
134
134
134
134
134
141
141
146
146
146
136
153
153
158
153
158
158
148
148
160
160
180
160
182
182
182
182
182
172
179
189
189
189
189
189
191
226
191
196
196
196
203
238
203
203
208
203
203
208
250
205
215
215
215
215
215
215
227
227
227
269
269
224
229
229
239
271
276
241
241
236
236
236
236
236
251
241
241
288
288
248
253
248
258
253
290
295
260
255
260
260
260
260
255
255
255
270
270
270
260
260
260
322
267
272
272
272
267
267
282
272
272
279
279
284
284
336
336
296
301
301
301
296
333
333
303
303
360
332
344
363
363
363
441
441
463
458
455
475
460
460
472
472
479
479
506
506
496
518
518
523
542
544
561
587
587
625
668
668
680
680
702
712
712
707
707
699
704
709
709
711
726
716
716
723
733
733
733
733
730
745
745
750
750
740
740
764
764
759
766
771
771
788
805
820
785
785
812
827
827
824
834
809
836
836
846
845
877
884
883
883
900
907
921
921
960
977
964
991
991
1008
1049
1071
1073
1058
1078
1085
1090
1102
1102
1094
1126
1113
1202
1221
1264
1264
1356
1358
1382
1408
1408
1420
1487
1494
1589
1632
1656
2279
2296
2323
2303
2330
2342
2406
2425
2466
2485
2685
2728
2740
1
1
1
1
34
34
34
56
53
68
80
80
60
60
72
72
72
72
72
79
79
79
101
91
91
110
120
110
110
110
122
122
134
134
161
161
141
146
146
146
136
136
153
153
158
158
158
153
148
165
160
182
182
182
207
192
192
172
172
167
172
179
179
179
189
189
189
189
189
189
189
191
191
191
191
196
196
196
203
203
203
208
203
208
208
203
215
250
250
205
205
215
215
215
215
262
227
227
227
239
239
239
239
229
239
281
281
236
236
236
251
241
251
248
283
288
253
248
258
253
253
300
260
260
260
260
260
302
307
272
272
272
267
267
282
282
272
272
334
284
284
279
284
284
291
296
286
286
301
301
301
286
291
296
348
303
303
313
345
345
372
332
344
344
363
363
448
448
475
470
467
487
467
472
484
504
486
491
518
518
508
530
530
542
554
556
573
599
599
637
680
680
687
687
697
714
719
719
719
711
711
721
721
731
731
733
728
728
730
740
745
745
740
742
752
752
757
757
752
752
764
774
796
766
766
788
778
778
800
785
817
827
824
839
839
836
841
841
848
848
845
845
857
884
891
891
920
895
912
902
934
919
972
984
984
964
991
991
991
991
1003
1015
1015
1061
1083
1080
1070
1090
1092
1102
1114
1114
1106
1138
1125
1233
1276
1276
1368
1370
1394
1408
1420
1432
1499
1501
1501
1601
1644
1668
2241
2291
2308
2335
2315
2342
2354
2437
2478
2497
2697
2740
2747
1
1
1
1
1
1
1
8
27
27
34
34
34
34
34
46
53
53
53
68
60
75
92
92
72
72
72
72
72
79
79
91
91
113
110
110
110
110
110
122
122
122
134
141
141
141
146
136
173
173
153
153
153
160
160
165
180
182
172
172
172
167
167
167
172
189
189
189
189
189
219
204
204
184
191
201
191
191
191
191
196
203
203
208
208
215
215
215
215
215
262
262
222
222
227
227
227
227
222
274
224
234
239
239
229
229
236
251
246
246
251
236
288
288
253
248
248
258
253
295
295
260
255
312
272
267
267
267
267
282
267
272
272
314
314
284
284
284
341
291
296
286
291
291
301
301
286
291
291
301
296
296
303
298
303
313
360
357
357
332
332
379
344
487
477
479
499
479
484
496
516
498
518
518
503
530
530
515
542
542
554
566
568
585
587
587
606
606
649
687
687
699
709
726
716
731
726
726
726
723
733
733
740
740
735
735
735
742
752
752
752
747
759
759
764
764
759
759
754
764
766
786
808
778
793
793
815
815
785
785
812
829
839
809
836
846
846
848
828
828
845
860
860
857
869
864
884
898
898
920
907
924
931
984
1003
1003
1010
1027
1027
1073
1095
1082
1102
1104
1114
1126
1126
1113
1113
1150
1132
1132
1245
1288
1288
1380
1382
1406
1432
1439
1506
1506
1513
1513
1613
1656
1675
2303
2320
2347
2327
2354
2366
2449
2490
2509
2709
2747
2747
2759
1
1
8
15
27
27
34
34
34
34
34
34
34
34
53
53
65
65
60
80
80
87
72
99
104
104
79
79
91
91
98
98
98
103
98
98
98
98
125
110
110
110
110
110
122
122
122
122
122
122
129
129
134
134
134
134
134
161
161
141
151
151
136
153
153
153
153
153
153
180
180
165
165
182
187
172
167
167
167
167
172
172
189
184
179
179
191
201
226
211
211
191
191
191
191
191
191
191
196
213
203
208
210
210
215
210
215
222
222
222
222
222
227
227
217
217
217
217
227
222
269
269
234
234
234
229
229
239
239
286
241
236
246
246
251
236
300
260
260
260
260
307
267
282
282
272
272
324
279
326
326
291
291
296
286
291
291
301
296
303
298
303
303
372
369
369
391
458
499
511
496
491
491
491
491
508
523
530
530
510
510
510
542
542
527
549
549
561
566
578
580
585
597
599
599
618
661
695
697
697
699
711
726
716
733
728
738
740
745
745
735
735
747
742
742
759
759
754
771
771
766
766
766
788
788
798
820
815
785
785
805
805
827
827
797
797
824
841
846
848
858
858
828
828
828
828
845
860
855
840
872
872
869
864
884
876
876
898
902
902
919
936
943
996
991
991
1010
1010
1039
1039
1085
1107
1094
1114
1116
1126
1138
1138
1157
1144
1144
1257
1300
1300
1392
1394
1394
1418
1439
1501
1506
1525
1525
1525
1625
1668
1675
1687
2315
2332
2359
2339
2366
2378
2461
2502
2521
2721
2747
2759
2771
1
1
1
8
20
27
34
53
72
72
92
92
72
72
72
72
79
99
99
79
79
79
116
111
111
116
111
98
98
98
98
110
115
115
110
110
110
137
127
127
122
129
129
129
129
129
134
141
141
141
146
146
136
173
173
153
153
158
158
160
165
165
192
172
182
182
172
172
167
189
179
179
191
191
191
191
191
191
191
191
191
196
203
213
213
238
203
203
210
210
210
220
210
210
210
210
205
215
215
215
210
210
210
215
222
227
222
274
234
234
234
229
239
281
281
276
241
236
236
236
236
241
241
246
293
253
248
295
260
322
312
312
282
282
272
272
319
319
279
279
279
331
291
291
301
291
291
301
338
338
338
303
303
360
384
384
381
381
403
403
429
470
467
511
523
508
503
503
503
520
520
542
542
522
522
522
554
554
539
539
561
573
578
585
592
597
604
606
606
630
657
659
673
707
714
714
709
709
711
723
723
723
740
735
745
745
752
752
747
747
747
759
754
769
769
769
769
766
796
783
783
773
815
785
805
827
827
797
817
817
839
839
809
809
836
853
845
860
865
865
865
840
840
857
872
862
847
884
884
864
876
876
898
914
914
931
948
955
1008
1003
1051
1051
1080
1092
1097
1119
1106
1126
1128
1138
1150
1150
1157
1156
1156
1269
1307
1307
1404
1406
1401
1430
1439
1451
1518
1532
1532
1562
1637
1675
1687
1699
2327
2344
2371
2351
2378
2390
2473
2514
2533
2733
2771
2783
1
1
1
1
1
1
15
27
27
34
34
46
53
72
72
99
99
79
91
91
106
106
123
118
118
123
98
98
123
110
122
122
127
127
127
122
122
149
129
134
129
141
141
141
141
141
146
136
153
153
153
153
158
153
180
180
160
160
165
165
177
177
172
182
172
172
204
189
189
189
191
186
196
213
198
198
203
203
203
210
210
210
220
220
220
250
210
210
215
215
215
210
210
210
210
210
215
227
227
217
222
222
227
222
234
224
239
239
286
246
236
236
236
236
236
236
236
246
293
293
288
253
253
260
260
260
260
307
272
272
282
334
324
324
279
279
279
331
331
301
301
343
350
350
350
372
396
396
393
393
415
415
441
477
472
479
491
523
535
515
515
515
510
510
532
532
549
549
534
534
529
529
566
566
551
551
573
585
585
592
604
604
616
618
630
642
669
676
676
671
685
697
714
726
726
716
716
716
716
716
723
730
740
752
742
759
759
759
759
759
754
769
769
764
754
769
769
761
766
781
781
773
808
795
795
780
827
817
814
839
839
809
824
824
831
846
846
846
821
821
848
828
828
865
865
872
847
847
869
884
874
874
896
896
876
902
921
921
921
943
960
967
991
1020
1010
1063
1063
1104
1109
1131
1118
1138
1140
1145
1162
1162
1168
1168
1281
1319
1411
1401
1418
1437
1439
1463
1525
1569
1649
1675
1699
1711
2339
2356
2383
2363
2390
2397
2485
2526
2545
2745
2783
2795
1
1
1
8
27
34
34
34
41
68
53
53
72
72
92
79
91
98
98
118
118
98
98
135
135
110
135
127
122
122
134
134
134
134
129
129
161
141
141
141
141
141
151
151
153
153
153
158
153
160
160
165
165
165
165
165
192
172
172
182
172
172
167
177
177
184
184
189
184
179
189
216
191
191
186
196
196
196
213
213
198
198
203
210
220
220
220
210
210
205
205
205
205
210
215
222
262
227
227
222
224
224
224
239
239
239
241
236
236
236
236
241
246
293
253
305
305
295
260
255
255
255
270
270
260
260
260
272
272
282
282
282
314
279
279
279
341
331
336
291
301
338
338
355
362
357
357
379
381
381
403
403
400
400
422
422
448
484
486
503
535
535
547
527
537
527
527
539
539
561
556
546
546
541
541
573
578
578
558
558
585
597
604
611
616
628
630
642
652
649
676
688
688
678
678
692
714
714
709
721
721
716
733
733
723
723
728
728
728
730
760
737
742
742
759
769
769
771
771
771
761
766
761
761
781
788
788
788
780
820
807
807
792
839
824
846
846
821
836
836
838
838
833
833
858
858
833
833
860
840
877
884
876
876
896
881
881
881
881
908
908
907
914
955
962
972
979
991
991
1003
1032
1075
1075
1116
1121
1143
1130
1145
1152
1174
1174
1180
1180
1293
1307
1307
1331
1401
1430
1449
1439
1451
1470
1569
1661
1711
1723
2351
2368
2395
2375
2397
2409
2497
2538
2552
2757
2795
2807
1
1
1
1
1
8
20
27
27
34
34
34
34
34
34
53
53
75
72
84
99
79
91
91
98
98
115
115
110
130
130
110
110
110
122
147
147
122
122
147
129
134
134
129
129
146
146
168
148
158
158
165
160
160
177
172
172
172
182
182
167
177
177
177
204
184
184
189
179
179
179
191
191
191
186
196
196
196
196
196
223
203
203
198
198
198
198
203
208
208
220
220
210
215
210
222
232
222
222
222
227
222
222
229
229
229
229
274
239
239
239
239
236
236
236
236
236
246
236
241
241
246
251
251
253
253
260
255
260
260
255
255
260
270
260
317
317
267
272
272
279
326
286
286
301
343
348
367
374
369
369
391
393
393
412
434
434
491
498
510
547
547
559
539
549
534
534
573
568
553
553
553
553
585
590
590
570
570
597
609
611
628
640
642
649
664
661
683
683
690
690
690
695
695
695
685
685
690
692
692
699
699
726
726
716
728
740
740
735
735
735
737
742
772
749
759
764
769
769
779
779
771
761
781
783
783
783
788
792
827
819
814
804
846
846
838
858
833
828
843
843
843
865
865
840
840
872
862
847
889
876
896
881
881
888
888
908
893
893
920
920
939
914
914
921
921
967
969
969
969
979
991
986
1003
1015
1044
1088
1087
1087
1128
1133
1155
1142
1164
1186
1186
1192
1192
1305
1319
1343
1442
1439
1461
1451
1458
1501
1501
1506
1673
1723
1735
2363
2380
2407
2397
2387
2421
2509
2545
2552
2564
2769
2807
2819
1
8
15
34
34
34
41
41
53
53
53
72
72
87
84
91
91
91
91
111
98
98
98
113
98
110
110
122
122
122
142
142
117
117
159
159
129
129
134
134
134
134
159
129
129
129
146
158
153
158
158
160
172
172
172
172
182
182
182
167
177
177
184
189
189
179
184
216
191
186
191
196
196
196
196
213
198
198
198
198
203
208
208
208
235
210
210
210
210
210
210
210
210
210
210
210
205
205
205
220
220
215
215
232
222
227
229
229
229
244
229
239
239
286
241
236
236
236
236
246
251
241
241
246
253
260
260
260
260
270
270
270
260
267
267
272
329
329
279
291
291
338
298
298
355
360
379
386
381
381
403
400
400
424
446
446
510
537
522
559
559
566
551
556
556
556
585
575
565
565
565
565
597
602
602
582
582
604
621
640
652
654
654
661
671
673
673
673
702
702
702
707
702
702
697
704
704
736
733
733
723
740
735
742
742
742
749
769
769
784
761
761
781
781
791
791
783
788
788
795
795
795
780
804
839
824
826
826
846
816
838
858
853
853
828
828
843
865
845
840
852
884
876
901
888
908
893
903
903
895
895
920
900
900
932
932
932
946
933
933
979
976
976
998
1015
1022
1056
1095
1099
1099
1140
1145
1167
1154
1176
1198
1198
1204
1204
1317
1331
1355
1401
1428
1454
1451
1473
1458
1506
1513
1518
1581
1581
1685
1735
1747
2375
2397
2392
2419
2409
2399
2433
2521
2545
2564
2576
2781
2819
2831
1
1
1
8
13
20
27
34
34
34
34
34
34
53
53
53
53
72
72
72
99
91
91
91
91
123
98
98
120
110
125
110
110
110
122
122
117
149
134
134
154
154
129
129
129
171
171
146
146
171
141
148
148
153
160
165
165
165
165
172
172
172
182
182
182
167
167
167
177
204
184
184
189
189
189
189
189
184
184
191
191
186
196
196
228
228
198
198
208
220
210
210
210
205
220
220
220
247
247
222
217
222
222
217
227
227
227
229
229
244
244
244
234
229
224
239
229
229
241
251
241
251
251
246
241
298
248
260
255
260
255
260
270
267
267
267
267
267
272
341
341
291
291
350
367
372
332
391
398
393
393
415
412
436
458
458
522
549
534
566
571
563
568
568
597
602
602
587
577
577
577
577
604
614
614
594
594
616
633
652
664
659
666
666
673
678
678
685
685
715
685
692
702
709
709
709
709
709
714
704
704
711
711
743
743
740
740
740
742
761
766
791
773
793
793
803
803
795
780
807
807
807
792
814
816
846
838
828
828
865
865
840
840
840
852
857
864
896
881
881
888
913
895
920
900
910
910
932
944
944
914
939
946
921
921
921
958
940
940
969
976
976
976
976
991
988
1010
1022
1068
1095
1111
1111
1152
1157
1179
1166
1188
1210
1210
1216
1216
1329
1343
1367
1411
1435
1466
1463
1485
1525
1525
1588
1588
1588
1588
1697
1747
1759
2387
2399
2431
2421
2411
2445
2533
2576
2588
2793
2831
2843
1
1
1
8
13
15
25
34
34
34
41
41
53
53
53
53
72
111
98
98
113
135
110
110
122
137
117
117
117
129
129
129
129
161
146
166
166
141
183
183
153
153
153
183
153
160
165
165
165
165
172
172
177
172
172
172
167
177
184
189
189
189
184
184
179
216
196
196
201
186
196
196
196
213
213
198
208
240
240
220
210
210
210
210
210
205
210
220
217
217
217
217
217
227
227
227
227
227
259
259
244
229
229
241
251
251
251
251
241
241
241
241
236
236
251
241
241
241
241
253
253
248
248
248
253
310
260
260
260
270
270
260
272
267
267
267
272
286
301
353
353
360
362
332
379
379
379
398
405
405
405
427
424
443
470
470
534
556
546
583
575
575
580
609
614
614
599
589
589
589
589
616
626
626
606
606
628
645
664
676
671
673
673
668
685
692
692
697
697
702
727
692
704
716
716
721
721
716
716
721
721
711
711
723
718
718
760
742
773
793
793
803
785
800
800
810
810
807
819
804
846
821
828
850
865
840
852
852
869
859
876
908
893
895
925
910
932
944
914
914
914
939
956
956
946
921
958
933
933
933
988
988
1003
995
1022
1022
1022
1034
1080
1123
1123
1164
1169
1191
1178
1195
1222
1222
1228
1228
1341
1355
1379
1423
1435
1435
1437
1439
1478
1470
1497
1532
1588
1588
1588
1588
1600
1600
1709
1759
1771
2399
2399
2411
2443
2433
2418
2457
2545
2588
2600
2805
2843
2855
20
25
27
37
34
34
34
34
34
53
53
53
72
84
91
91
91
91
98
123
98
98
110
125
147
127
117
149
168
148
148
153
153
153
153
153
178
178
148
195
195
160
165
195
160
160
160
177
177
172
167
177
184
189
184
184
184
184
179
184
201
191
191
191
191
196
196
191
191
191
191
196
223
213
203
203
213
198
198
198
208
198
198
220
220
210
210
210
210
205
215
210
210
247
247
217
222
222
217
227
227
227
244
234
229
234
229
229
239
229
229
266
266
251
251
251
241
241
236
236
241
241
241
241
241
248
248
253
253
260
270
260
265
322
272
272
272
301
298
365
365
372
332
332
374
391
391
410
417
417
439
436
455
482
482
546
558
595
587
587
592
609
621
626
626
611
601
601
601
601
628
628
633
633
618
618
633
640
657
649
676
668
688
678
680
692
692
697
704
704
709
709
739
699
699
711
728
728
723
723
723
740
740
740
760
772
759
774
766
785
800
800
800
785
785
810
797
822
822
819
831
816
821
833
835
865
862
847
864
859
881
881
881
888
920
900
910
937
944
956
968
968
933
945
945
940
979
976
976
995
995
1015
1034
1034
1034
1041
1092
1145
1145
1135
1135
1176
1176
1203
1190
1207
1234
1234
1240
1240
1353
1367
1391
1401
1435
1442
1442
1449
1451
1490
1509
1501
1532
1600
1600
1607
1607
1721
1771
1783
2411
2411
2418
2455
2445
2430
2469
2557
2600
2612
2817
2855
2867
1
1
37
37
34
49
49
34
34
41
41
53
53
53
53
53
53
72
91
91
103
103
98
98
98
110
110
110
110
135
122
127
127
127
137
117
117
117
159
129
129
129
156
153
153
153
153
183
160
160
165
165
165
165
190
190
160
207
207
172
172
202
177
177
189
184
184
184
184
179
179
191
196
191
191
191
191
191
196
196
196
196
203
203
213
213
213
198
198
208
208
198
235
220
220
220
210
210
210
210
215
220
210
210
210
210
217
217
217
217
217
217
217
222
227
229
229
234
229
229
234
229
251
241
251
236
236
241
241
241
241
278
278
263
253
253
253
248
248
253
253
260
270
270
270
270
260
265
265
267
267
272
272
334
301
377
377
332
379
386
398
403
422
429
429
451
448
448
467
467
494
494
558
570
607
599
599
599
621
601
601
633
633
633
618
613
613
613
613
640
640
645
630
630
645
652
652
652
652
669
654
654
661
671
673
688
680
695
685
685
687
704
704
709
716
716
746
716
716
718
723
735
735
735
740
730
730
737
772
742
759
784
771
781
781
800
785
785
785
785
810
792
797
804
814
829
829
826
821
843
838
838
828
833
865
874
859
859
859
881
881
876
871
893
893
893
900
932
949
939
956
926
951
968
980
980
940
952
952
991
986
988
1027
1041
1041
1046
1104
1147
1147
1152
1152
1188
1215
1202
1219
1246
1246
1252
1252
1365
1379
1403
1442
1442
1454
1461
1463
1502
1506
1521
1513
1607
1607
1733
1783
1795
2423
2430
2467
2457
2442
2481
2569
2612
2624
2829
2867
2879
1
1
1
27
34
34
34
44
44
34
34
34
56
56
53
60
60
91
91
91
98
98
110
110
110
127
127
122
122
147
117
149
149
129
171
148
148
158
153
148
148
160
160
165
165
165
195
160
160
172
177
177
172
172
202
202
177
177
177
219
219
214
184
184
184
184
191
196
191
191
191
191
191
191
196
196
196
191
213
213
203
208
208
208
198
220
220
220
220
220
210
215
220
220
210
210
210
247
217
217
217
222
222
222
229
234
234
224
224
239
239
236
246
241
241
241
251
251
251
236
241
241
241
241
263
253
253
253
253
290
290
275
260
270
270
260
260
260
265
265
282
282
272
272
272
346
313
365
365
332
384
384
386
398
410
415
424
434
441
441
463
460
460
479
479
506
506
580
570
582
619
619
599
611
611
633
613
613
640
645
630
620
620
625
625
635
652
652
657
657
642
642
652
659
664
664
664
676
671
666
666
668
683
685
695
687
702
694
716
711
711
716
723
723
758
728
728
718
740
760
737
737
737
767
742
749
759
759
759
759
759
759
759
784
791
783
792
797
797
804
804
829
829
816
838
855
850
850
840
835
847
886
881
876
876
871
871
871
888
878
905
905
905
912
944
961
946
968
933
933
958
980
992
992
976
1003
995
1022
1039
1058
1116
1152
1152
1159
1159
1164
1200
1227
1214
1231
1258
1258
1264
1264
1372
1372
1391
1410
1442
1442
1454
1461
1473
1470
1514
1533
1525
1530
1745
1795
1807
2435
2442
2479
2469
2454
2493
2581
2624
2636
2841
2879
2886
1
1
27
34
34
34
34
34
34
34
41
41
41
41
46
68
68
53
53
53
53
60
87
91
91
110
117
117
117
129
129
129
129
159
129
129
156
161
183
148
148
160
165
160
177
172
172
202
167
177
177
184
184
184
184
184
184
184
214
214
184
184
184
184
231
231
196
196
226
186
196
196
196
191
191
191
191
203
203
198
208
208
208
220
220
210
210
210
210
210
210
210
210
210
210
215
205
215
220
220
215
210
232
217
222
222
227
222
222
259
229
229
239
229
239
239
236
236
236
241
241
236
236
251
251
236
241
241
241
241
241
253
253
253
253
253
275
275
275
260
270
270
260
260
260
265
302
302
282
282
282
272
272
291
358
313
313
377
377
396
398
410
422
422
436
441
453
453
475
467
467
486
486
518
518
592
582
594
631
631
611
623
623
640
620
620
625
625
657
642
632
637
637
647
659
664
669
669
654
654
654
654
659
659
671
671
671
671
683
683
683
673
673
673
673
673
673
668
668
675
690
692
702
712
694
714
741
718
718
718
723
718
740
735
760
760
765
735
735
772
737
767
742
779
761
771
771
761
791
803
790
800
785
785
804
804
816
828
850
867
867
852
859
898
888
888
888
888
883
878
878
900
912
912
917
924
956
946
946
973
958
980
970
992
1004
1004
976
976
988
1015
1051
1070
1128
1152
1152
1152
1152
1164
1171
1171
1171
1212
1239
1226
1243
1265
1265
1276
1276
1384
1403
1410
1422
1454
1439
1461
1485
1470
1521
1521
1540
1540
1532
1537
1588
1757
1807
1819
2447
2454
2491
2481
2466
2505
2593
2636
2648
2848
2891
2898
27
27
27
34
34
34
34
34
34
34
34
63
53
53
53
53
80
80
65
65
60
60
82
99
91
98
98
110
110
110
117
117
117
117
129
171
148
148
148
173
148
195
160
160
160
160
160
160
172
172
172
202
202
167
167
167
167
167
167
167
177
219
219
184
214
174
184
184
184
196
196
196
191
191
221
221
186
186
196
196
196
191
196
191
191
238
238
238
208
208
203
203
215
210
210
210
210
210
210
210
210
210
205
205
205
205
205
215
220
220
215
210
232
222
222
217
222
227
227
227
244
244
244
234
234
239
229
239
271
236
236
236
236
241
241
246
251
253
253
253
253
253
260
260
260
265
260
270
270
282
282
282
267
267
272
272
272
282
272
314
314
291
313
370
384
384
408
405
422
434
443
453
465
465
487
498
498
530
530
599
604
594
606
606
643
643
618
623
628
635
635
635
642
632
637
637
652
652
652
669
654
644
644
644
644
654
654
649
671
676
681
681
666
666
666
666
683
678
678
678
675
690
680
680
685
685
685
685
680
680
697
699
699
699
714
724
716
726
718
753
748
723
738
765
735
772
737
772
742
742
759
784
779
791
773
778
778
803
800
810
797
828
840
862
879
874
864
859
871
910
895
895
895
912
924
929
946
936
946
946
968
958
958
958
985
970
992
952
977
974
1004
976
1016
1016
988
1000
1022
1022
1027
1063
1082
1140
1164
1164
1176
1171
1183
1183
1195
1224
1251
1238
1255
1277
1288
1288
1401
1415
1422
1442
1442
1434
1461
1451
1497
1532
1537
1552
1552
1549
1588
1588
1600
1769
1819
1831
2459
2466
2503
2493
2478
2517
2605
2648
2660
2903
2910
1
1
1
34
34
34
46
53
53
75
65
60
60
60
92
92
72
72
72
94
111
91
91
91
110
117
117
117
117
127
129
129
129
129
129
129
129
146
183
160
165
180
160
160
160
165
207
172
172
172
172
167
167
184
214
214
174
179
184
231
231
191
196
226
191
191
191
186
196
196
196
191
208
208
213
233
198
198
203
203
203
250
245
210
210
205
205
215
220
215
215
222
217
217
227
227
244
244
234
234
229
234
229
229
224
229
229
229
234
251
251
236
241
236
236
251
241
241
251
283
248
248
253
248
248
248
275
260
260
265
260
260
270
270
270
272
272
272
282
282
282
326
326
382
396
403
420
422
434
446
446
453
453
455
465
465
472
472
499
518
518
510
510
537
537
616
606
623
623
618
618
650
650
630
635
640
647
642
647
647
647
654
644
644
644
664
664
664
681
661
656
656
656
671
671
661
661
666
661
688
683
688
688
673
673
673
673
678
678
695
702
697
692
692
692
692
687
687
699
724
726
736
718
738
723
738
765
755
755
750
742
759
784
784
754
754
791
761
791
798
785
780
780
780
780
805
805
810
785
804
821
858
840
852
874
874
874
891
876
883
895
922
912
912
907
924
936
946
936
943
980
970
970
997
952
977
1004
981
1016
1028
1028
1000
1007
1034
1034
1039
1070
1070
1089
1089
1152
1171
1171
1195
1195
1207
1236
1263
1265
1265
1250
1267
1289
1300
1300
1427
1434
1454
1444
1446
1463
1509
1532
1537
1549
1564
1564
1556
1588
1600
1612
1781
1831
1843
2471
2478
2505
2510
2490
2529
2617
2660
2672
2915
2922
1
1
1
1
1
1
1
1
27
34
34
34
34
34
34
46
53
60
60
82
72
72
72
72
104
104
79
79
79
79
101
91
91
123
98
110
110
110
127
129
129
129
141
141
136
165
195
160
160
165
177
172
167
167
177
177
219
179
179
184
184
184
196
196
196
221
221
186
191
191
196
238
238
203
213
238
198
203
215
215
245
210
210
210
210
220
210
215
215
215
262
217
257
222
222
217
227
217
222
222
222
244
234
229
239
229
241
236
236
241
251
251
251
251
241
253
248
248
248
248
295
275
275
275
260
260
260
255
255
260
255
260
270
272
272
272
272
272
267
267
267
282
272
279
338
338
389
408
415
427
434
446
458
458
465
465
477
477
467
484
511
530
530
522
522
549
618
628
633
635
635
625
625
642
642
647
644
659
659
659
654
661
656
656
671
671
671
673
663
663
668
683
683
678
693
673
668
700
695
700
700
685
685
707
702
697
694
714
699
699
699
699
694
694
736
731
731
738
723
743
750
750
737
737
772
742
762
759
759
754
771
791
791
766
766
803
798
780
780
810
785
785
797
792
792
812
812
797
821
833
865
852
864
859
859
886
898
898
888
895
895
915
915
929
929
924
924
919
936
943
958
955
992
977
977
1009
981
1011
993
1023
1040
1040
1007
1007
1022
1041
1041
1041
1051
1101
1101
1152
1164
1207
1207
1219
1248
1275
1277
1262
1279
1301
1312
1312
1442
1439
1446
1461
1451
1451
1458
1470
1470
1521
1532
1532
1537
1549
1556
1576
1576
1612
1619
1793
1843
1855
2483
2490
2517
2522
2502
2536
2629
2672
2684
2886
2927
2934
1
1
1
27
27
34
34
34
34
46
46
46
53
53
53
75
60
60
60
72
72
72
72
72
94
84
104
104
79
79
91
91
111
111
91
113
135
110
110
110
110
127
129
129
141
161
136
146
148
148
148
148
148
160
165
207
167
172
167
167
167
177
177
179
179
179
189
189
231
196
196
196
191
196
226
191
191
186
186
191
191
191
191
233
198
198
198
198
203
250
215
250
250
210
210
205
210
210
220
215
215
215
257
222
217
222
222
222
222
274
244
244
269
269
234
229
229
229
229
239
229
229
229
229
241
241
236
236
236
236
236
241
251
253
248
248
248
248
248
260
260
260
260
255
307
272
272
272
267
282
282
282
272
279
279
350
350
370
408
420
422
439
441
458
465
465
472
472
484
484
479
496
523
537
537
534
534
561
609
630
625
640
645
635
647
647
647
654
644
654
654
649
654
656
666
666
666
671
661
661
673
668
668
678
678
678
673
675
675
680
690
690
685
680
705
680
680
675
675
707
697
697
697
712
712
712
719
694
726
748
743
743
750
755
737
737
762
762
749
759
784
769
771
766
771
783
803
803
778
778
810
780
780
810
785
792
817
812
797
809
799
799
809
821
864
876
871
871
898
900
912
907
922
922
941
941
931
931
931
946
948
967
957
957
1004
981
1021
993
1035
1007
1007
1052
1052
1027
1019
1034
1063
1113
1113
1152
1164
1176
1219
1219
1231
1260
1287
1289
1274
1291
1313
1324
1324
1442
1454
1451
1451
1451
1458
1470
1470
1470
1482
1482
1533
1532
1537
1544
1549
1574
1556
1588
1588
1619
1805
1855
1862
2510
2495
2502
2529
2514
2548
2641
2684
2696
2848
2898
2939
2946
1
1
34
34
34
34
34
34
58
58
58
58
60
82
72
72
72
84
101
96
111
111
123
98
98
125
110
110
110
110
147
122
122
127
129
129
129
129
148
148
173
148
195
160
165
167
167
167
177
177
179
179
179
214
179
184
179
179
189
186
186
196
196
238
208
208
238
198
198
198
203
210
245
245
210
210
210
210
210
210
210
210
262
262
262
222
222
217
222
222
264
229
229
229
229
229
239
241
281
281
281
241
236
251
251
241
241
253
248
248
260
255
260
267
267
319
279
338
338
357
357
382
420
432
432
451
451
453
470
484
496
496
491
523
508
535
549
561
546
546
573
621
628
628
630
630
642
637
647
652
647
659
659
659
649
654
654
656
666
666
661
666
663
673
673
678
668
678
673
680
680
685
680
685
687
687
687
702
702
697
697
697
717
709
709
724
724
724
719
731
738
755
755
755
737
762
762
749
759
774
769
756
786
791
781
783
778
778
790
810
810
810
790
790
792
817
812
799
809
821
816
833
865
859
876
888
878
878
878
910
912
912
922
922
922
922
919
934
946
953
953
943
938
960
979
964
964
981
1016
1033
1007
1047
1019
1019
1064
1064
1034
1034
1026
1041
1041
1075
1125
1125
1152
1164
1176
1188
1231
1231
1243
1272
1299
1301
1286
1303
1325
1336
1336
1466
1463
1470
1482
1482
1482
1489
1489
1545
1537
1544
1556
1556
1581
1600
1600
1631
1812
1867
1874
2522
2507
2514
2541
2536
2526
2560
2653
2696
2708
2910
2951
2958
1
1
1
1
27
34
34
46
53
53
60
60
60
60
65
65
65
65
60
72
72
84
84
79
79
91
91
113
103
103
123
98
98
135
132
154
134
129
129
129
129
136
148
148
180
160
207
167
167
177
177
179
179
179
189
191
191
186
191
191
191
196
198
198
198
245
210
205
210
210
210
220
215
215
257
257
217
217
274
269
269
229
229
229
239
241
241
276
241
241
241
241
241
293
288
288
248
248
253
260
260
272
272
331
350
350
369
389
427
444
444
463
463
465
477
496
508
508
503
535
515
542
534
561
553
573
558
558
580
611
628
630
640
640
642
642
649
644
654
659
659
654
666
666
666
661
666
666
663
673
678
678
678
668
668
673
670
685
680
685
685
687
687
697
692
694
699
699
704
724
699
694
716
716
736
736
736
731
743
750
737
737
737
737
767
762
762
762
749
759
774
756
771
786
791
781
793
778
788
790
790
810
780
810
810
790
790
797
797
799
816
833
874
864
871
888
900
922
912
924
924
934
934
931
941
936
958
965
965
950
945
945
972
1011
991
1023
1028
1045
1019
1059
1026
1026
1076
1076
1053
1053
1087
1137
1137
1152
1176
1188
1200
1238
1238
1255
1279
1279
1311
1313
1298
1310
1310
1337
1348
1348
1473
1475
1482
1494
1489
1489
1537
1557
1556
1581
1563
1612
1612
1619
1643
1862
1879
1886
2519
2526
2553
2548
2538
2572
2665
2708
2720
2922
2963
2970
1
1
1
34
34
34
34
34
51
53
53
53
53
60
60
60
60
60
72
77
77
89
79
79
91
91
91
91
91
91
91
91
103
125
135
142
129
129
129
166
141
141
136
136
148
148
148
148
148
160
165
165
165
165
172
172
167
167
167
219
214
189
191
186
186
196
191
196
198
198
198
198
198
198
198
210
210
210
210
210
205
205
210
210
220
220
215
262
257
222
222
217
222
222
264
269
239
239
239
241
286
286
241
241
241
241
241
288
253
253
305
305
300
300
260
260
260
343
357
357
381
439
451
451
458
470
470
477
496
508
520
520
515
542
527
546
573
565
580
570
570
592
628
628
623
635
635
642
647
647
654
649
649
649
679
649
649
644
644
656
656
651
666
661
661
673
673
673
673
668
683
683
678
673
673
670
685
685
680
675
685
680
692
697
687
697
692
694
694
704
699
699
694
706
706
706
711
736
723
723
743
743
743
743
745
745
755
737
737
737
762
749
749
774
774
774
761
786
783
798
778
788
805
805
810
780
780
790
792
817
802
809
816
816
828
845
874
871
871
878
878
900
912
922
922
934
924
936
931
941
941
943
948
943
958
977
977
962
984
1003
1035
1040
1057
1034
1026
1071
1041
1041
1041
1088
1088
1060
1060
1099
1149
1149
1188
1200
1212
1250
1267
1323
1325
1310
1322
1322
1349
1360
1360
1442
1451
1451
1487
1494
1506
1544
1569
1581
1563
1624
1624
1619
1619
1631
1650
1812
1874
1891
1898
2531
2538
2565
2560
2550
2584
2677
2720
2732
2934
2975
2982
1
1
1
27
27
27
27
34
34
34
34
34
34
53
53
53
53
53
60
60
60
60
65
72
89
89
79
91
91
101
91
91
103
98
98
135
115
137
137
147
147
127
154
141
136
146
178
178
148
148
148
153
158
158
160
160
165
165
165
165
165
165
172
167
167
167
167
167
167
167
177
177
177
179
179
179
179
179
174
174
184
179
231
191
186
191
191
191
186
186
186
196
191
191
196
191
196
198
198
198
198
210
210
210
210
210
210
210
220
210
215
222
217
222
222
222
227
222
274
269
229
229
229
239
239
241
241
241
276
281
251
241
253
298
298
253
300
270
317
317
312
312
272
272
272
272
272
301
355
369
393
451
451
470
470
482
482
489
508
520
532
532
527
539
553
585
585
590
572
592
582
582
604
604
628
628
640
640
630
630
625
649
654
654
651
661
656
656
691
661
661
656
656
673
673
685
685
675
680
680
675
705
692
702
697
692
692
687
704
694
699
699
706
706
711
718
713
713
723
743
723
735
735
760
755
755
755
750
752
752
762
749
764
764
774
774
761
756
781
781
768
798
788
790
790
810
780
812
812
812
812
792
817
797
797
804
814
821
828
828
835
857
893
890
890
912
912
924
934
946
936
931
943
950
955
960
989
989
974
964
981
981
996
1015
1047
1052
1069
1034
1034
1034
1041
1083
1053
1053
1053
1100
1100
1100
1111
1161
1161
1200
1207
1224
1238
1238
1262
1279
1335
1337
1322
1334
1334
1361
1372
1372
1440
1442
1454
1473
1463
1463
1475
1470
1470
1494
1506
1513
1544
1581
1636
1636
1631
1638
1886
1903
1910
2543
2550
2577
2572
2562
2596
2689
2732
2744
2946
2987
2994
1
1
34
34
34
39
34
34
53
53
77
72
89
79
79
91
101
101
91
91
91
113
98
125
115
147
127
127
149
149
159
159
141
141
166
166
136
153
153
153
153
158
158
190
190
165
165
165
165
165
167
167
167
172
172
172
167
167
167
167
177
177
177
177
177
189
189
184
184
191
186
191
186
186
191
186
191
191
196
196
191
191
196
238
198
198
198
198
198
208
208
208
210
210
210
210
210
205
205
210
210
215
222
222
227
222
229
234
234
229
229
234
239
229
229
229
239
229
239
239
241
241
281
281
241
236
251
241
241
253
288
293
253
260
305
305
260
255
255
270
270
312
272
272
282
282
324
324
324
324
279
301
362
381
400
463
463
482
477
494
494
501
515
520
532
532
532
534
539
544
544
539
551
553
553
597
597
582
582
602
584
604
594
594
604
609
616
616
640
640
630
630
647
647
637
637
642
637
654
656
656
673
668
678
703
668
668
663
663
685
680
705
680
697
697
692
717
694
694
694
699
699
711
731
718
723
730
725
725
735
755
752
747
747
767
767
762
762
762
762
774
756
786
766
781
781
768
793
788
790
810
802
802
822
812
812
817
817
824
824
804
809
811
826
833
835
835
869
874
871
878
878
878
900
900
900
922
897
897
924
924
936
941
958
943
943
962
967
972
964
1001
1001
986
993
993
1008
1007
1007
1027
1059
1064
1081
1053
1095
1065
1065
1060
1112
1112
1112
1123
1173
1173
1207
1236
1250
1274
1291
1342
1349
1334
1346
1346
1368
1384
1384
1447
1447
1466
1482
1482
1482
1494
1513
1518
1525
1563
1593
1648
1648
1638
1898
1915
1922
2555
2562
2589
2584
2574
2608
2701
2744
2756
2958
2999
3006
1
1
1
1
27
34
34
34
34
46
51
53
53
53
53
60
60
72
72
72
89
101
91
91
91
103
113
113
98
98
98
103
125
132
122
154
134
129
129
156
156
166
166
136
153
173
173
148
148
153
158
165
160
160
165
165
165
165
197
197
167
172
172
172
167
167
167
167
167
177
177
177
177
177
172
184
179
179
174
189
189
184
189
191
191
186
196
196
196
196
203
198
208
208
210
210
210
210
210
205
220
220
215
210
210
215
222
222
222
222
222
217
222
222
227
222
234
234
234
234
229
229
239
239
239
239
229
239
241
241
241
236
236
241
241
246
293
293
253
253
248
265
260
300
305
260
260
270
260
272
267
267
282
282
324
279
336
336
336
336
301
393
412
451
475
470
470
470
489
506
506
513
527
532
539
544
544
546
551
551
551
551
558
565
565
604
604
594
594
609
596
616
601
601
616
621
611
623
623
625
620
635
647
647
642
642
654
654
654
649
644
670
675
675
680
710
675
675
670
670
697
692
702
712
717
709
709
694
719
729
711
711
743
723
743
723
730
735
742
737
737
752
747
762
742
742
759
759
774
774
774
769
781
798
773
790
802
822
809
809
834
824
824
824
831
831
811
821
816
823
838
845
881
871
871
871
878
890
890
890
907
907
917
922
922
934
936
936
948
970
974
979
984
1013
1013
998
1020
1012
1019
1019
1039
1071
1076
1046
1093
1060
1107
1072
1072
1124
1124
1119
1135
1185
1185
1207
1219
1248
1262
1286
1303
1361
1346
1358
1358
1380
1396
1396
1459
1459
1473
1473
1482
1489
1489
1525
1530
1537
1563
1605
1619
1660
1660
1910
1927
1934
2567
2574
2601
2596
2586
2620
2713
2756
2768
2970
3006
3018
1
1
1
34
34
34
34
34
34
34
53
53
53
60
60
60
60
65
72
72
72
79
79
91
91
91
101
91
91
113
98
103
135
125
125
115
137
129
166
136
136
136
158
185
185
160
160
160
160
160
165
165
167
167
167
172
167
167
167
167
167
177
177
172
172
172
209
209
184
174
189
184
189
184
184
184
191
191
186
186
186
186
186
186
196
196
196
191
191
191
191
196
191
191
196
208
208
198
208
198
198
210
210
210
210
220
220
220
220
220
215
210
210
215
222
222
217
227
227
217
227
222
234
229
234
229
229
229
239
239
239
229
239
239
239
241
241
236
236
236
236
236
241
246
293
253
253
253
248
305
305
260
270
260
272
312
312
312
272
272
282
272
282
282
279
331
301
348
348
348
348
405
405
424
424
463
487
482
482
501
518
518
525
539
539
551
551
553
558
563
563
570
590
572
577
601
601
606
601
611
616
616
608
613
623
623
623
628
623
628
623
635
635
625
620
637
632
647
654
654
679
649
649
656
656
656
651
651
670
675
722
709
724
729
699
721
721
711
731
736
713
713
723
723
755
735
742
747
762
742
742
742
742
754
749
749
759
769
774
754
771
771
786
786
786
781
773
793
778
810
802
812
812
809
834
824
846
831
811
811
833
835
870
850
857
893
900
890
907
907
907
907
922
902
902
897
919
924
924
934
946
948
943
943
960
982
969
969
986
991
996
1025
1025
1010
1027
1027
1019
1026
1026
1046
1046
1083
1088
1053
1053
1105
1119
1119
1136
1136
1147
1197
1197
1207
1231
1260
1274
1298
1315
1373
1358
1370
1370
1392
1408
1408
1447
1473
1485
1485
1489
1489
1537
1542
1549
1581
1617
1619
1631
1672
1672
1922
1939
1946
2579
2586
2613
2608
2598
2632
2725
2768
2780
2982
3006
3018
3025
1
1
27
34
34
34
34
34
34
34
34
53
53
53
53
53
53
68
68
77
79
79
101
113
98
98
98
125
110
122
122
137
142
137
137
122
129
134
149
129
129
141
178
148
148
160
165
165
165
197
197
167
167
167
167
172
177
177
172
172
172
172
172
174
189
184
179
179
184
184
184
184
184
184
184
184
221
221
191
191
186
191
186
186
186
186
186
186
196
196
191
191
196
196
191
196
191
191
191
196
191
191
196
198
198
208
198
198
198
198
208
203
203
210
210
210
210
205
220
210
210
210
210
210
210
215
217
217
217
217
217
227
227
217
217
227
222
234
229
229
229
229
239
239
239
229
229
239
239
239
241
241
241
236
236
236
241
241
241
246
248
305
260
255
270
270
270
260
272
317
317
272
282
282
282
282
282
282
282
282
324
324
279
279
301
343
343
360
360
360
360
381
417
417
436
436
470
499
489
494
513
530
530
537
537
551
563
570
575
575
575
582
602
584
589
606
606
606
613
618
613
628
628
623
625
635
635
630
630
635
635
630
630
635
640
630
620
637
632
642
642
647
647
644
639
654
654
654
664
691
656
656
656
676
676
705
705
707
707
694
729
721
736
736
743
748
725
735
762
747
762
749
759
774
754
754
761
761
761
771
761
768
773
778
778
778
778
798
798
798
793
778
805
790
822
809
824
824
846
811
811
816
816
858
823
845
842
877
862
869
883
905
897
919
919
924
909
909
926
946
943
953
960
955
955
950
972
994
976
976
998
1003
1008
1037
1037
1022
1019
1026
1026
1038
1058
1058
1095
1100
1117
1119
1126
1148
1148
1159
1207
1209
1209
1219
1238
1272
1286
1310
1327
1385
1370
1382
1382
1404
1420
1420
1447
1473
1485
1492
1492
1549
1554
1561
1581
1629
1631
1643
1684
1684
1934
1951
1958
2591
2598
2625
2620
2610
2644
2737
2780
2792
2994
3018
3025
3037
1
1
34
34
34
34
34
34
34
34
34
53
53
53
53
60
60
65
65
80
80
79
89
79
79
91
91
101
91
113
98
120
137
137
122
134
149
154
149
149
156
190
165
165
165
160
160
167
167
167
172
172
167
167
172
167
177
172
172
172
209
209
184
184
184
184
184
184
191
186
191
186
196
191
191
191
191
196
196
196
191
196
196
191
191
196
191
196
196
191
233
233
198
198
198
208
198
198
203
203
203
203
203
203
203
210
210
220
210
210
210
210
210
220
215
210
210
215
217
217
217
227
222
222
227
222
222
229
229
229
229
239
229
239
239
239
241
241
241
251
241
251
251
246
251
251
253
253
248
248
253
260
270
270
270
270
270
270
312
267
282
272
329
329
331
336
301
355
355
372
372
372
372
393
424
424
443
443
511
501
506
525
542
542
549
549
566
563
575
585
582
587
587
587
587
594
609
596
601
618
623
623
618
618
625
625
620
640
640
630
630
630
637
642
642
642
642
642
657
647
637
637
632
644
639
644
644
654
654
654
654
659
659
651
646
666
666
661
661
676
688
703
683
688
683
688
683
683
675
670
695
717
717
694
714
714
729
706
733
743
748
750
755
737
747
742
742
749
774
759
761
766
786
761
761
773
768
773
768
778
773
778
790
790
810
810
810
805
812
812
817
834
831
858
823
823
828
828
870
830
877
857
889
874
881
890
890
917
907
907
924
926
926
943
953
955
972
962
962
957
957
984
1006
1010
1015
1020
1049
1049
1019
1034
1026
1038
1045
1070
1070
1107
1107
1072
1129
1138
1160
1160
1171
1207
1219
1221
1221
1226
1284
1298
1322
1342
1339
1397
1382
1394
1394
1416
1432
1432
1485
1492
1561
1566
1573
1641
1643
1650
1696
1696
1946
1963
1970
2603
2610
2637
2632
2622
2656
2749
2792
2804
3006
3037
3049
1
1
34
34
34
34
34
34
34
34
53
53
53
77
72
92
92
79
79
79
101
91
113
98
98
98
125
110
110
122
122
137
134
149
149
161
166
161
161
168
148
148
148
148
148
165
202
167
172
172
167
172
172
172
179
179
179
184
184
221
221
191
191
191
186
191
196
196
196
196
196
203
198
198
203
208
203
203
203
203
203
245
245
210
220
210
220
220
215
215
215
215
210
215
215
215
215
215
215
215
227
222
222
222
222
229
229
229
229
229
229
229
239
236
236
236
241
251
241
241
241
246
248
260
270
270
260
260
270
270
272
272
279
341
341
343
348
362
367
384
384
384
384
400
455
455
523
513
513
532
554
554
556
556
578
575
585
587
597
592
594
594
594
599
604
599
606
616
616
606
608
613
625
635
635
625
625
625
625
625
637
632
627
647
647
637
637
657
642
642
644
649
649
649
654
649
649
649
669
654
639
651
646
656
656
661
661
666
666
673
673
688
683
695
695
710
685
685
695
675
670
700
695
700
695
695
707
729
729
718
755
755
752
752
762
749
759
754
781
771
773
773
798
785
780
780
790
790
812
812
802
802
822
822
822
817
824
824
829
846
816
870
835
830
835
835
835
882
877
889
869
886
893
929
919
924
924
953
953
955
965
962
984
996
1018
1022
1027
1032
1019
1061
1061
1026
1046
1038
1045
1072
1082
1082
1119
1119
1141
1150
1172
1172
1183
1219
1226
1233
1233
1296
1310
1334
1354
1351
1368
1409
1394
1406
1406
1428
1444
1444
1492
1573
1578
1585
1653
1650
1708
1708
1958
1975
1982
2615
2622
2649
2644
2634
2663
2761
2804
2816
3018
3049
3061
1
1
1
1
1
1
34
34
34
34
34
34
34
34
46
53
53
53
53
53
60
60
72
79
84
104
104
79
79
91
91
91
91
113
98
98
98
98
120
110
115
137
122
134
149
156
161
146
146
173
178
173
173
148
180
160
160
160
167
167
167
167
167
167
167
167
167
167
172
214
179
184
184
191
191
191
186
186
186
196
233
233
203
198
198
203
210
210
210
210
220
215
215
215
210
210
210
215
215
257
257
227
222
222
222
222
222
222
222
229
239
236
236
241
241
246
253
253
253
272
272
272
272
353
353
355
355
374
396
396
396
396
412
467
467
494
513
535
525
544
566
566
566
566
585
587
597
599
604
619
604
606
606
606
606
616
606
606
618
618
625
620
620
632
627
632
632
642
642
637
632
632
637
637
644
654
654
654
654
669
654
649
649
651
656
656
656
681
666
656
646
663
663
673
673
673
668
668
673
673
680
680
680
695
695
722
707
707
707
707
707
707
719
716
736
736
730
755
762
742
764
764
769
761
771
766
761
773
778
783
785
780
795
790
790
810
797
792
802
814
814
834
834
834
829
836
836
841
821
858
828
882
842
894
881
893
900
907
909
941
926
936
936
948
943
943
965
965
962
972
996
976
1008
1030
1034
1034
1044
1073
1073
1038
1058
1045
1094
1094
1131
1153
1162
1179
1179
1195
1231
1245
1245
1303
1303
1322
1341
1363
1380
1421
1406
1418
1418
1440
1447
1456
1456
1568
1585
1590
1597
1619
1665
1650
1720
1720
1970
1982
1994
2627
2634
2656
2656
2646
2675
2773
2816
2828
3030
3061
3073
1
1
1
1
1
1
1
1
1
27
27
27
34
34
34
34
34
34
34
34
34
34
53
53
53
65
65
79
79
79
84
111
116
98
98
98
98
125
110
110
110
115
115
122
122
122
122
134
149
129
129
129
129
129
161
161
161
136
146
146
146
146
168
173
148
148
158
185
190
180
180
192
167
167
167
167
167
179
179
179
184
226
191
191
186
191
191
196
191
191
198
198
198
208
203
198
198
245
245
210
210
210
210
210
210
220
210
210
222
222
222
222
222
222
222
222
222
269
269
241
241
241
236
241
241
241
241
260
260
365
365
367
384
384
386
408
408
403
403
424
479
479
506
525
547
537
556
578
578
578
578
585
585
592
582
599
604
611
611
631
611
606
606
618
613
613
618
618
623
613
613
618
630
625
637
632
627
649
649
649
649
644
654
644
644
651
656
656
681
656
656
656
663
668
688
673
658
670
670
680
685
685
692
707
707
714
729
729
714
719
714
719
714
714
726
723
748
748
755
742
762
742
742
754
773
798
783
780
790
795
797
802
802
802
802
822
809
804
814
811
826
826
846
841
846
841
843
843
853
828
828
870
835
835
894
906
893
907
907
912
919
909
953
955
955
955
955
972
972
976
1008
1020
1042
1026
1046
1056
1085
1085
1045
1065
1077
1077
1106
1106
1143
1165
1174
1191
1207
1207
1238
1257
1257
1315
1334
1341
1353
1375
1392
1433
1418
1430
1430
1452
1459
1473
1468
1468
1549
1581
1568
1575
1597
1602
1609
1631
1677
1732
1732
1982
1982
1994
2001
2639
2646
2663
2668
2658
2687
2785
2828
2840
3042
3073
3085
1
1
39
34
34
34
39
34
34
34
34
34
34
34
46
53
53
53
53
60
60
72
72
79
79
79
79
84
84
104
79
91
91
96
91
128
123
115
115
122
137
122
117
122
122
122
134
129
129
161
136
136
146
146
146
146
146
173
173
173
158
158
180
180
160
160
170
197
202
192
167
167
167
167
167
199
179
174
179
179
179
191
191
186
186
191
191
191
191
191
238
198
208
208
203
198
210
210
210
210
210
210
210
210
220
220
210
210
257
257
222
217
217
222
281
281
241
241
241
241
241
236
236
241
241
241
253
253
260
260
260
260
272
336
355
377
377
379
379
396
396
398
398
420
420
415
436
491
491
513
532
537
559
549
556
566
566
568
585
585
585
585
592
597
597
587
594
601
596
611
611
611
631
601
601
596
618
643
618
618
618
618
630
630
630
630
630
625
642
632
649
644
639
651
646
656
651
651
651
663
673
668
688
673
675
700
685
670
697
697
694
694
694
714
714
714
726
726
726
726
726
726
723
713
723
723
723
723
728
738
755
755
772
742
754
769
754
766
773
785
805
795
802
807
809
809
809
834
821
816
826
823
838
838
853
853
853
858
855
865
882
847
847
906
918
905
905
907
919
924
931
953
965
962
962
1020
1032
1054
1019
1034
1026
1038
1058
1068
1097
1097
1107
1084
1084
1119
1126
1118
1118
1155
1177
1179
1179
1186
1203
1219
1219
1269
1269
1346
1353
1365
1387
1404
1445
1430
1442
1442
1464
1485
1480
1480
1556
1575
1609
1614
1624
1621
1643
1689
1744
1744
1994
1994
2001
2013
2656
2651
2658
2675
2680
2670
2699
2797
2840
2852
3054
3085
3097
1
27
27
34
34
34
34
34
34
34
34
51
51
58
58
53
53
65
65
72
72
72
72
79
79
79
79
91
91
96
111
103
103
135
130
115
115
122
122
122
117
122
134
134
134
134
149
149
129
136
146
146
146
146
146
168
148
148
158
158
185
185
180
180
170
170
165
192
167
167
167
167
167
177
177
204
214
204
179
174
184
211
191
191
191
186
186
186
196
191
198
198
198
208
208
198
198
198
198
250
210
210
210
210
210
210
210
210
210
210
210
220
210
222
222
222
222
217
217
217
217
217
222
269
269
269
269
241
241
241
251
288
288
253
253
253
253
260
270
260
272
272
272
272
272
348
367
389
389
391
391
403
403
410
410
432
432
427
448
503
503
544
549
556
571
568
578
578
575
585
585
585
597
597
582
577
587
604
604
604
599
601
596
611
601
613
608
623
623
643
613
613
608
625
630
630
650
625
625
637
637
642
632
632
657
632
632
627
649
649
654
651
646
651
646
675
700
687
692
707
697
682
694
694
714
709
709
706
711
711
711
711
726
726
726
713
723
723
733
733
733
733
725
755
735
735
735
745
762
779
766
781
766
768
773
780
805
805
797
807
809
814
819
829
829
821
846
833
828
843
843
838
828
835
850
850
865
870
865
835
835
835
867
877
877
894
854
854
918
930
912
917
914
914
931
936
938
977
962
1032
1044
1019
1066
1038
1050
1065
1065
1065
1080
1109
1109
1138
1130
1130
1167
1189
1191
1198
1215
1231
1231
1281
1281
1358
1365
1377
1399
1416
1447
1452
1452
1442
1454
1454
1471
1471
1492
1487
1487
1487
1556
1621
1626
1631
1633
1650
1701
1756
1756
2006
2013
2025
2663
2670
2687
2692
2682
2711
2809
2852
2864
3066
3097
3109
25
37
27
34
34
34
34
34
34
34
34
34
34
34
34
46
58
58
53
53
53
60
65
65
72
77
72
72
72
72
72
84
79
79
91
91
103
98
103
103
103
103
103
123
115
115
147
122
134
129
129
134
129
146
146
161
161
161
146
146
146
146
146
158
158
180
160
160
155
170
170
165
165
197
197
192
177
172
177
177
204
204
179
184
184
179
179
179
191
216
226
216
191
191
191
191
186
186
186
186
186
196
196
186
191
191
223
223
203
198
208
208
198
198
198
198
198
208
210
210
210
210
210
262
222
222
222
217
217
217
222
234
229
229
229
229
281
281
281
281
241
241
236
236
236
251
241
241
241
253
300
260
270
270
260
272
282
282
272
355
374
401
401
398
398
420
420
415
417
417
439
439
439
460
515
515
556
556
583
575
585
585
587
582
597
597
582
582
597
577
594
589
599
609
609
604
606
606
611
611
611
616
606
596
613
608
608
620
615
630
630
655
620
620
615
637
642
642
632
662
632
632
644
644
649
654
669
669
656
651
646
683
658
670
687
707
699
694
709
694
706
711
711
721
721
713
713
713
713
713
723
723
723
723
743
733
733
733
733
755
735
735
745
737
742
742
762
747
781
778
773
780
792
809
809
819
826
811
831
836
836
833
858
828
828
828
845
840
855
855
850
835
842
862
862
877
877
882
877
847
847
847
874
889
889
906
893
925
895
912
937
924
929
921
921
938
938
953
953
948
962
989
1044
1056
1031
1078
1050
1057
1092
1121
1121
1150
1142
1142
1179
1201
1203
1210
1227
1243
1238
1293
1293
1370
1377
1389
1411
1428
1459
1454
1466
1466
1473
1483
1483
1499
1494
1494
1494
1575
1631
1633
1638
1645
1650
1662
1713
1768
1768
2018
2025
2037
2675
2682
2699
2704
2694
2723
2821
2864
2876
3078
3109
3121
1
37
37
27
27
49
49
34
34
34
34
34
34
34
34
34
41
41
41
53
65
65
77
77
72
72
72
72
72
84
84
79
79
116
98
103
110
115
135
135
115
117
122
149
159
159
129
129
129
129
141
141
146
136
136
146
146
146
153
153
173
168
168
158
158
148
155
170
170
165
160
192
167
167
177
177
172
177
177
204
209
204
204
179
179
184
184
184
216
216
191
191
191
186
186
186
196
191
191
191
228
238
223
198
198
208
208
198
208
208
235
235
210
210
210
210
220
210
220
215
210
210
210
210
222
222
222
217
217
217
217
274
269
269
229
229
234
234
229
229
239
239
239
241
236
241
241
288
288
288
288
253
253
260
270
312
282
282
272
386
413
408
432
432
427
429
429
451
446
472
491
510
527
527
561
566
568
563
563
580
580
590
587
582
592
592
592
594
604
604
599
594
594
604
589
601
596
606
621
621
616
618
618
623
613
613
608
620
615
625
627
622
637
637
637
637
662
627
627
622
664
649
649
669
669
656
656
656
651
681
681
651
646
668
683
658
695
670
699
694
694
694
694
694
711
706
711
711
721
706
713
723
723
723
733
733
728
728
725
725
730
730
735
735
742
747
744
779
769
773
773
773
790
780
785
804
821
831
836
836
836
836
843
838
823
843
848
845
870
857
852
862
862
862
877
847
874
874
889
894
889
859
859
854
901
918
905
900
912
902
902
924
949
941
938
938
950
965
965
960
962
1001
1056
1068
1038
1090
1057
1084
1104
1133
1133
1162
1154
1154
1191
1213
1215
1222
1207
1239
1238
1255
1305
1305
1382
1389
1401
1423
1440
1466
1478
1478
1478
1485
1495
1495
1492
1494
1511
1501
1501
1575
1631
1645
1650
1650
1657
1662
1669
1725
1780
1780
2030
2037
2049
2687
2694
2711
2716
2706
2735
2833
2876
2888
3090
3121
3133
1
1
13
27
44
44
39
34
34
34
34
56
56
60
60
72
72
72
89
89
84
84
91
91
123
128
110
115
115
127
147
147
117
117
129
129
161
171
171
141
136
146
146
146
153
153
153
148
153
148
158
153
153
153
153
180
160
160
155
155
170
170
160
167
167
177
177
172
172
177
199
179
179
184
179
179
184
179
184
184
184
184
191
216
221
216
216
191
186
186
186
196
191
191
191
191
191
196
191
196
191
191
223
223
203
198
198
198
208
198
208
208
208
203
203
240
250
235
210
210
210
210
210
220
220
220
210
220
220
215
222
242
242
222
217
227
227
222
222
234
234
229
229
229
239
239
239
239
286
281
281
236
241
236
241
241
241
241
300
300
260
270
260
270
270
282
282
324
389
398
425
427
439
439
439
441
441
463
458
484
503
522
539
539
558
573
578
575
580
580
585
585
580
575
582
592
592
597
594
599
599
601
606
606
611
611
631
611
601
601
611
601
601
596
608
603
613
613
628
628
623
608
625
625
630
615
627
622
674
651
676
656
656
656
651
646
668
668
668
693
688
670
680
700
695
690
670
707
682
694
694
694
706
706
706
718
718
723
723
723
733
718
730
735
735
740
732
732
742
769
781
785
785
785
802
792
816
816
841
833
843
843
848
848
850
835
855
855
840
857
842
882
869
864
874
889
854
886
886
901
906
901
866
866
913
930
912
917
961
938
953
953
950
950
957
972
972
972
972
969
1013
1068
1080
1102
1057
1084
1119
1116
1145
1145
1174
1166
1166
1203
1225
1227
1234
1219
1251
1267
1317
1317
1394
1401
1413
1435
1452
1478
1490
1490
1485
1492
1507
1507
1487
1487
1501
1501
1523
1631
1650
1657
1662
1662
1669
1669
1737
1792
1792
2042
2049
2061
2699
2706
2723
2728
2718
2747
2845
2888
2900
3102
3133
3145
1
1
1
13
25
27
34
34
34
34
34
51
41
41
41
41
68
68
60
72
84
84
101
101
91
91
96
91
91
103
110
110
130
135
115
110
110
122
122
117
127
127
134
154
154
129
129
146
146
153
153
153
168
178
178
148
148
148
148
158
153
153
153
153
160
160
170
165
165
165
165
160
160
177
177
177
177
172
172
167
167
167
179
179
174
184
179
184
184
184
179
184
184
184
184
191
211
191
191
186
186
196
191
196
191
191
191
196
191
191
196
196
196
191
228
228
223
228
198
198
198
198
198
208
208
198
208
208
203
203
203
203
203
210
210
210
210
220
210
215
215
222
222
222
247
262
247
217
227
227
222
234
254
254
234
229
234
229
229
234
229
239
239
239
239
236
251
241
241
293
288
288
253
253
253
270
270
270
270
270
270
312
312
272
282
282
282
272
282
282
282
331
401
425
410
437
439
451
451
463
453
453
475
470
496
510
542
542
529
539
539
551
551
561
570
580
585
577
577
582
592
592
592
597
597
592
597
582
587
587
582
594
599
599
599
609
601
601
601
611
611
611
608
608
603
618
618
643
618
608
608
613
613
628
603
628
635
635
630
632
632
657
632
627
622
644
644
669
654
651
661
656
656
681
656
663
688
680
680
680
700
700
692
707
707
697
697
682
714
694
706
706
711
718
713
718
728
713
728
728
730
725
730
745
730
747
747
752
785
805
792
792
792
814
836
836
828
843
823
853
853
845
855
855
855
855
862
842
867
847
847
869
894
881
876
881
898
898
913
918
913
925
925
937
942
929
921
973
958
950
960
965
965
957
957
984
981
981
1025
1080
1092
1057
1114
1128
1152
1152
1186
1178
1178
1210
1210
1237
1212
1239
1241
1241
1231
1263
1279
1329
1329
1406
1413
1425
1447
1464
1485
1485
1490
1502
1502
1492
1492
1504
1519
1519
1499
1535
1631
1662
1669
1674
1669
1681
1749
1804
1804
2054
2061
2073
2711
2718
2735
2740
2730
2759
2857
2900
2912
3114
3145
3157
1
1
25
27
27
37
34
34
34
39
34
34
34
34
34
41
63
53
53
80
80
72
72
72
72
72
72
72
91
91
96
91
91
113
113
103
103
103
103
98
98
122
147
117
127
127
129
129
129
129
146
146
146
153
148
148
148
148
153
148
153
158
148
148
148
148
165
190
190
170
165
165
165
165
167
167
167
167
167
167
177
177
172
167
177
177
179
179
179
179
184
184
184
184
191
191
191
191
186
191
196
191
196
196
191
191
191
191
196
191
196
196
191
196
223
203
198
208
208
203
203
203
198
203
203
203
203
240
235
240
210
210
210
220
210
210
215
220
210
210
210
210
210
215
215
215
215
222
222
217
227
222
222
222
222
222
222
234
259
274
259
234
229
239
241
266
266
241
241
241
236
236
251
251
251
251
241
251
251
253
300
270
270
270
270
270
270
270
324
324
343
408
437
422
444
446
451
463
463
475
470
465
465
482
482
504
491
508
510
510
537
554
554
541
551
551
561
561
558
558
573
568
580
582
587
587
592
592
582
582
589
589
589
599
599
604
604
599
589
589
609
599
599
594
601
606
611
611
606
611
611
608
613
613
618
618
625
625
655
625
630
620
620
640
640
635
632
647
647
632
627
647
647
627
647
659
669
656
656
681
656
681
646
668
668
675
695
692
692
692
712
707
707
704
719
719
714
694
711
711
726
706
713
713
713
723
730
725
735
725
740
742
762
762
757
742
754
754
764
773
805
792
826
823
823
848
840
855
865
852
852
867
862
842
842
874
854
879
881
906
893
883
883
893
910
910
925
930
925
937
949
954
941
921
985
965
965
957
967
967
967
967
972
972
977
996
988
988
988
988
1037
1038
1092
1104
1089
1089
1126
1140
1164
1198
1190
1190
1249
1219
1219
1251
1253
1253
1238
1238
1275
1291
1341
1341
1418
1425
1437
1459
1476
1502
1514
1514
1504
1504
1511
1531
1531
1511
1547
1631
1643
1655
1650
1669
1681
1686
1693
1761
1816
1816
2066
2073
2085
2723
2730
2747
2752
2742
2771
2869
2912
2924
3126
3157
3169
1
1
25
37
32
27
34
34
34
34
34
34
44
34
34
34
41
41
51
60
75
60
60
87
92
92
72
72
72
72
72
84
84
91
91
91
98
103
103
103
103
103
125
125
122
122
117
134
159
129
129
129
129
129
136
136
148
148
153
148
148
153
148
148
148
158
165
160
160
170
172
172
172
172
202
202
177
167
167
177
177
209
179
179
184
184
179
191
186
186
186
186
191
191
191
191
196
196
196
196
228
203
203
203
203
198
203
203
235
210
210
210
210
210
220
210
215
215
215
220
210
215
215
215
215
215
215
215
215
222
252
252
247
252
222
217
227
222
222
222
222
222
222
222
222
234
229
229
229
246
241
271
271
281
271
241
241
241
251
241
241
241
278
278
253
260
260
270
270
270
270
260
312
331
336
336
355
355
444
434
458
463
475
470
465
465
482
482
477
477
494
489
516
503
520
522
522
542
549
561
561
553
558
558
573
573
563
570
575
575
580
580
577
587
592
587
589
594
599
594
594
601
601
606
606
611
611
611
606
606
606
621
606
606
601
613
608
608
618
628
628
603
620
620
625
625
627
622
632
632
632
662
637
627
627
652
622
652
647
659
659
654
659
659
659
681
668
668
678
678
693
673
673
680
687
707
707
704
699
704
719
716
726
726
726
726
711
726
706
713
723
733
718
735
725
735
735
742
737
762
762
752
754
754
774
774
769
754
776
807
836
838
843
855
852
867
862
877
874
854
854
881
886
861
891
866
893
918
905
895
895
905
912
912
922
922
937
942
937
949
961
966
953
997
974
974
984
984
984
984
969
1003
1003
988
988
1000
1000
1049
1070
1104
1116
1096
1096
1138
1152
1152
1152
1176
1210
1202
1202
1219
1219
1256
1263
1238
1238
1265
1265
1250
1250
1282
1303
1353
1353
1425
1437
1444
1471
1488
1485
1492
1514
1526
1526
1511
1511
1543
1543
1523
1559
1643
1650
1662
1662
1693
1698
1705
1773
1828
1828
2078
2085
2097
2735
2742
2759
2764
2754
2783
2881
2924
2936
3138
3169
3181
1
1
1
1
27
34
34
34
34
44
34
34
39
34
34
34
56
63
60
87
72
72
72
72
72
72
104
99
99
104
84
91
91
91
91
91
91
91
98
103
103
103
103
98
98
110
115
137
137
117
134
129
171
141
153
153
153
153
153
153
153
158
165
160
160
160
160
172
172
172
172
167
167
167
167
167
167
167
177
167
214
214
179
184
184
189
189
179
221
191
186
196
191
191
198
198
198
198
203
198
240
210
210
210
210
210
210
210
210
210
210
210
215
215
210
210
215
215
247
262
222
227
222
222
222
222
222
222
222
274
264
264
259
264
229
229
241
236
241
241
253
283
283
283
253
253
253
290
290
260
312
312
272
272
324
343
348
348
367
367
446
470
470
487
487
477
477
494
489
484
484
506
506
501
523
510
532
547
529
534
554
556
558
563
568
568
565
570
580
580
575
582
577
587
587
587
587
582
582
602
587
589
599
599
601
606
606
611
606
606
601
601
613
613
613
608
633
613
613
608
608
625
625
635
640
640
630
627
622
627
627
637
627
674
649
659
659
659
656
656
671
671
671
671
646
671
688
673
673
673
673
680
700
685
692
707
697
699
714
719
711
711
716
726
726
713
728
738
738
733
743
718
735
735
730
737
742
762
762
747
754
744
754
764
766
786
786
781
766
788
773
773
805
814
814
814
836
836
823
848
850
855
842
864
874
874
889
861
861
866
893
898
903
905
930
917
907
907
917
924
924
934
934
949
954
949
961
926
926
938
938
973
978
965
965
972
972
972
1009
974
991
991
1015
1015
1000
1007
1007
1061
1077
1077
1116
1128
1150
1164
1164
1188
1222
1214
1214
1275
1250
1250
1277
1277
1257
1257
1294
1315
1365
1365
1425
1444
1449
1456
1483
1500
1492
1504
1526
1538
1538
1555
1555
1535
1571
1580
1662
1662
1669
1705
1710
1717
1785
1840
1840
2090
2097
2109
2747
2754
2771
2776
2766
2795
2893
2936
2948
3150
3181
3193
1
1
1
1
1
27
27
34
34
34
34
34
41
41
56
51
58
68
75
60
60
60
72
72
72
99
111
106
106
111
91
91
91
91
103
115
115
115
122
122
127
149
149
134
129
129
141
136
136
136
146
146
183
148
153
148
148
148
153
153
153
165
160
155
160
172
172
167
172
172
172
167
167
172
172
184
179
189
189
179
179
226
226
191
186
186
186
186
191
228
203
198
198
198
208
198
198
210
210
210
210
210
210
210
210
220
210
210
247
252
222
222
222
217
222
222
222
222
222
222
222
259
274
229
286
271
271
271
271
271
241
241
241
241
241
253
253
290
290
290
260
302
302
272
324
324
336
336
355
355
355
355
374
374
458
482
499
499
484
484
506
501
496
518
518
513
530
530
520
544
544
559
541
546
561
558
563
563
583
570
575
582
582
582
587
587
602
582
577
594
589
594
594
594
594
614
594
594
596
606
606
606
611
606
608
608
613
613
618
618
608
608
608
620
620
625
625
635
640
627
647
652
652
622
649
651
651
681
681
661
671
671
666
683
683
678
678
678
700
685
685
692
712
707
692
704
704
714
711
713
723
728
738
725
725
740
745
745
735
730
742
742
744
744
754
784
774
766
776
778
793
793
793
778
800
785
785
792
821
821
836
848
848
860
862
867
854
876
901
905
910
915
917
942
907
929
919
919
929
946
946
961
966
961
943
973
933
933
950
950
985
990
965
965
965
972
977
974
984
984
984
1021
988
988
1027
1027
1007
1073
1128
1140
1162
1176
1176
1200
1234
1226
1226
1287
1257
1257
1289
1289
1306
1327
1377
1377
1456
1461
1468
1495
1485
1492
1512
1504
1511
1538
1550
1550
1567
1567
1547
1561
1583
1580
1587
1669
1717
1722
1729
1797
1852
1852
2102
2109
2121
2759
2766
2783
2788
2778
2807
2905
2948
2960
3162
3193
3205
1
1
1
1
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
41
46
68
63
80
70
75
60
87
72
111
123
123
103
103
103
98
98
110
115
115
122
122
127
134
134
129
129
129
129
161
161
136
136
136
136
146
146
146
146
148
148
148
148
158
153
153
153
195
160
155
155
155
165
165
172
172
167
172
172
167
167
167
172
184
179
179
179
179
179
179
179
179
191
191
186
186
186
191
191
238
238
203
198
198
208
208
210
210
210
210
210
210
210
210
210
210
220
220
210
222
222
222
222
217
222
222
259
264
271
281
241
241
241
293
283
283
253
302
302
302
272
314
314
331
331
348
348
367
367
386
386
470
470
494
504
506
506
496
518
513
508
508
525
525
525
542
537
532
539
556
556
566
566
566
561
561
553
558
568
568
583
558
558
558
570
595
577
582
594
594
594
614
589
589
589
601
596
601
601
606
601
601
626
608
603
608
613
613
620
625
625
625
627
627
627
637
637
632
637
652
627
659
659
659
651
651
661
646
663
673
673
673
678
678
678
690
690
690
690
690
690
690
707
692
692
699
704
719
704
716
726
726
723
733
725
735
740
745
737
752
742
742
747
742
754
766
791
781
778
788
773
790
805
790
792
812
792
792
792
814
821
821
821
821
833
823
855
855
860
867
874
874
874
861
871
871
888
913
917
922
927
929
954
914
914
941
931
931
941
958
958
973
973
973
950
985
957
957
997
1002
984
989
996
996
991
1033
1000
1039
1039
1085
1062
1096
1140
1152
1174
1188
1188
1212
1219
1219
1246
1238
1238
1299
1301
1301
1318
1339
1389
1389
1468
1473
1480
1485
1507
1504
1524
1516
1550
1562
1562
1579
1579
1559
1568
1590
1587
1669
1729
1729
1736
1809
1864
1864
2114
2121
2133
2771
2778
2795
2800
2790
2819
2917
2960
2972
3174
3205
3217
1
1
13
13
27
27
27
27
27
27
27
34
34
34
34
39
34
34
39
34
41
41
41
41
58
80
80
75
60
60
60
87
82
72
87
72
72
99
84
91
91
91
123
103
103
135
135
115
122
122
122
127
134
129
129
129
129
136
146
146
146
146
173
173
153
148
148
158
158
160
155
155
155
155
155
160
170
165
165
172
207
167
167
167
167
167
172
172
177
177
172
172
179
179
179
184
179
179
179
179
179
179
179
179
191
191
191
191
186
186
186
186
191
196
186
191
191
191
203
198
198
198
208
208
198
250
250
210
210
210
210
210
210
210
210
220
210
217
229
229
229
229
271
271
241
241
241
241
241
241
283
253
290
295
260
270
260
314
314
314
326
326
343
343
355
355
374
374
398
398
405
424
482
482
506
516
508
523
525
520
520
520
530
537
537
537
542
542
554
549
539
534
551
561
561
556
556
563
563
578
578
573
573
573
573
565
570
595
570
570
570
577
582
582
607
584
589
589
601
601
601
621
626
596
608
603
608
608
633
613
625
627
632
632
627
644
639
639
649
659
651
656
671
671
671
663
673
678
678
670
685
685
685
707
702
702
702
697
697
697
704
716
706
706
728
738
733
735
730
747
752
742
742
744
744
764
754
754
791
766
773
803
778
790
800
785
802
817
797
824
833
833
823
840
855
847
842
867
852
874
886
886
886
878
878
900
925
929
934
939
941
966
953
943
943
953
950
970
970
980
985
980
957
957
977
997
969
1009
1014
991
1001
1003
1003
988
988
1040
1007
1051
1051
1043
1097
1074
1096
1152
1159
1186
1200
1200
1224
1256
1231
1231
1258
1243
1238
1238
1250
1250
1311
1313
1313
1330
1351
1401
1401
1480
1485
1492
1497
1519
1499
1516
1536
1523
1523
1557
1574
1574
1591
1591
1571
1568
1602
1669
1741
1748
1821
1876
1876
2126
2133
2145
2783
2790
2807
2812
2802
2831
2929
2972
2984
3186
3217
3229
1
1
1
1
25
25
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
51
51
53
53
70
60
87
92
92
87
99
89
99
99
106
91
91
91
91
103
103
103
103
98
135
110
110
110
115
147
147
122
122
122
134
134
161
161
146
146
146
153
153
153
148
148
158
180
180
160
155
160
170
170
165
165
160
160
172
172
172
167
172
172
167
177
172
167
177
177
219
179
179
179
184
184
179
179
184
179
191
191
191
191
186
196
196
191
191
191
191
198
203
198
198
198
198
198
208
198
198
208
210
210
210
262
262
222
217
217
222
222
222
229
234
234
229
229
234
241
241
283
253
253
253
295
270
270
302
307
272
272
326
326
326
338
338
355
355
386
386
410
410
417
436
448
467
489
489
518
523
520
535
537
527
527
537
537
532
542
549
554
554
539
539
549
549
561
556
546
546
546
558
558
563
573
573
568
568
563
563
553
553
570
570
570
570
585
585
580
580
577
597
597
587
607
577
577
577
577
584
584
594
594
614
621
608
608
608
633
633
613
608
603
620
645
627
632
632
644
639
651
651
651
651
656
651
651
661
663
673
683
678
678
673
670
680
685
692
692
697
697
697
699
719
704
714
714
709
709
711
706
726
726
728
730
740
745
747
737
762
762
762
759
744
764
754
754
759
759
756
756
776
761
791
766
803
778
785
785
802
812
792
792
814
824
821
821
831
840
840
855
842
867
867
874
879
859
859
886
898
893
893
912
937
941
946
951
953
973
973
933
965
955
955
950
965
980
957
972
982
982
992
997
969
984
984
1009
976
1021
1021
1013
988
988
1000
1000
1052
1063
1063
1055
1062
1109
1086
1159
1171
1198
1212
1212
1236
1268
1270
1250
1250
1250
1282
1262
1262
1323
1325
1325
1342
1363
1413
1413
1492
1497
1504
1504
1531
1506
1506
1506
1523
1548
1586
1586
1603
1603
1583
1587
1614
1753
1760
1833
1888
1888
2138
2145
2157
2795
2802
2819
2824
2814
2843
2941
2984
2996
3198
3229
3241
1
27
27
27
27
27
37
37
34
34
34
34
34
34
34
34
46
46
63
63
65
60
60
60
60
60
82
87
82
99
99
99
99
111
106
106
91
91
118
103
103
110
110
110
110
115
115
110
115
147
122
122
122
122
159
159
134
134
134
134
134
129
129
146
146
146
146
141
146
146
173
173
153
148
148
153
148
148
158
160
165
170
165
165
160
160
192
172
172
172
172
167
167
167
177
177
167
167
167
177
177
172
184
179
179
184
184
179
191
231
191
196
191
191
191
191
198
198
203
198
198
198
198
208
208
208
210
210
210
210
210
210
210
220
210
210
220
210
210
210
210
210
222
217
217
222
222
222
222
274
274
234
234
234
239
239
241
241
251
251
241
241
295
270
307
314
314
338
338
333
350
350
367
367
398
398
405
422
422
424
424
424
443
460
479
518
530
530
530
532
537
537
537
542
549
539
539
549
549
539
549
544
539
561
561
561
556
551
551
561
561
568
568
563
568
558
558
553
565
570
575
580
580
575
575
575
575
565
565
592
592
592
587
587
587
584
614
584
584
589
584
601
601
601
626
608
633
608
620
645
645
615
632
632
652
644
644
644
644
659
651
651
651
651
656
663
663
668
663
663
673
673
673
675
680
695
685
704
706
726
726
726
726
723
738
738
740
737
752
762
767
759
744
774
774
771
756
776
766
761
766
766
763
763
788
778
785
814
824
804
804
826
833
843
855
855
879
879
886
886
893
910
924
949
953
958
963
973
933
965
950
985
980
977
967
967
957
977
992
969
979
979
979
979
994
994
1004
1009
976
1021
1033
1025
1012
1012
1064
1075
1075
1067
1069
1121
1093
1183
1210
1224
1224
1248
1250
1282
1257
1257
1294
1274
1274
1335
1337
1337
1354
1375
1425
1425
1504
1509
1516
1506
1543
1523
1513
1513
1560
1598
1598
1615
1615
1595
1587
1626
1765
1772
1845
1895
1895
2150
2157
2169
2807
2814
2831
2836
2826
2855
2953
2996
3008
3210
3241
3253
1
27
27
34
34
34
34
34
34
34
44
34
34
34
46
41
41
49
53
53
68
53
75
75
60
60
60
60
72
72
89
99
94
106
91
91
111
123
103
103
118
118
130
110
110
115
115
110
110
122
122
122
122
159
134
134
129
129
129
129
171
171
146
146
146
146
146
146
141
146
148
148
158
158
148
148
158
160
180
180
160
160
170
165
172
172
177
167
177
172
172
172
204
184
179
179
179
184
179
179
179
179
184
184
184
191
191
191
191
186
186
186
196
191
191
191
191
191
191
191
191
203
243
198
198
208
208
208
208
208
210
210
220
220
220
210
210
220
220
220
220
210
222
217
227
222
222
222
222
222
229
234
229
239
239
239
286
286
241
241
251
241
241
253
270
307
282
319
326
338
338
350
350
345
357
357
379
379
410
410
417
434
434
436
436
455
467
499
499
486
518
530
542
544
549
549
549
549
549
539
551
551
556
556
561
556
546
556
556
551
553
573
568
568
583
568
563
568
558
558
568
568
558
558
553
565
570
570
560
577
577
577
582
587
587
582
582
592
582
582
572
572
609
626
596
618
603
608
608
608
628
633
625
645
632
652
652
627
644
659
656
656
663
663
678
673
675
670
680
675
675
675
685
680
685
682
692
707
697
716
738
738
735
750
750
752
764
774
771
756
766
786
781
783
763
788
773
800
785
790
792
792
792
797
826
821
836
811
811
838
840
855
867
867
879
874
874
886
886
893
878
922
936
961
965
965
975
977
997
989
979
979
969
989
1004
974
976
986
986
1006
1006
1016
1021
1003
1033
1045
1037
1019
1019
1076
1087
1087
1069
1074
1081
1133
1159
1195
1217
1217
1236
1236
1255
1257
1257
1294
1306
1286
1286
1347
1349
1349
1366
1387
1437
1437
1504
1516
1521
1528
1513
1513
1555
1572
1610
1610
1627
1627
1607
1638
1736
1777
1784
1857
1907
2162
2169
2181
2819
2826
2843
2848
2838
2867
2965
3008
3020
3222
3253
3265
1
27
27
37
34
34
34
34
34
34
34
34
34
34
46
56
53
53
61
65
75
60
60
60
60
72
87
82
72
72
84
111
101
91
118
103
103
123
98
135
130
130
110
110
110
115
142
122
122
122
134
129
129
129
129
171
146
146
146
146
183
183
153
153
148
158
158
148
148
148
153
148
148
160
160
160
160
160
170
170
165
165
160
170
165
160
192
167
167
167
167
167
167
177
177
167
167
167
177
172
172
172
179
184
189
184
179
184
184
184
184
184
184
191
191
216
191
191
191
191
191
196
196
196
191
191
191
196
191
191
191
196
191
191
203
198
208
208
208
203
203
210
255
210
210
220
210
210
210
210
210
222
227
227
274
274
234
239
239
239
239
239
239
241
251
251
241
293
293
253
253
253
253
253
295
270
270
270
282
282
282
319
314
331
338
338
350
350
362
362
357
357
369
391
391
422
422
424
446
446
448
443
448
480
467
467
467
489
511
511
498
513
523
530
537
539
534
554
551
556
556
556
556
551
553
563
563
563
563
573
563
568
568
563
558
565
580
595
575
575
565
565
575
575
570
570
565
580
587
582
582
582
577
577
589
589
584
584
589
589
589
589
584
579
579
601
621
621
606
621
603
628
633
633
603
625
640
635
635
635
635
652
644
664
639
656
661
661
666
663
663
678
670
675
682
712
697
697
704
719
704
728
740
750
750
747
757
757
742
764
774
776
766
786
783
763
793
795
800
785
785
785
812
792
804
804
804
821
821
838
833
848
850
867
867
886
886
886
886
878
934
948
973
957
977
987
989
1009
1001
991
991
976
986
996
1016
981
1018
1018
1003
1028
1033
1045
1057
1049
1031
1088
1082
1074
1069
1074
1099
1099
1081
1093
1145
1159
1171
1207
1229
1248
1248
1255
1267
1306
1318
1298
1298
1359
1361
1361
1378
1399
1444
1444
1528
1533
1540
1567
1557
1584
1590
1622
1622
1639
1639
1619
1650
1729
1748
1789
1796
1869
1919
2174
2181
2193
2831
2838
2855
2860
2850
2879
2977
3020
3032
3234
3265
3277
27
27
27
34
34
34
34
34
34
34
34
34
44
34
41
41
41
41
53
53
53
53
63
75
68
72
77
82
87
94
94
84
79
96
91
91
103
123
113
98
130
110
135
115
147
122
122
142
142
122
122
149
134
134
136
146
146
178
153
153
153
148
148
158
195
195
160
160
160
155
170
170
165
165
160
165
172
172
167
167
167
177
177
177
167
167
167
167
167
172
167
177
177
172
172
172
172
204
179
184
179
179
184
184
184
184
191
191
191
186
191
191
191
186
186
186
186
191
196
191
196
196
191
196
196
191
196
191
196
196
191
223
208
208
203
208
203
203
203
203
203
203
215
210
210
210
210
210
220
210
210
210
210
215
220
215
267
222
222
227
222
222
222
222
222
239
286
286
251
251
241
251
251
253
253
305
270
270
270
270
270
270
307
331
326
343
350
350
357
357
374
374
369
369
381
403
403
434
434
458
458
460
455
460
492
479
479
479
501
508
508
518
518
510
520
525
535
532
532
542
542
537
539
534
544
544
534
551
546
561
546
558
563
563
563
563
558
573
553
565
570
570
580
575
575
570
570
565
560
572
587
587
607
582
582
582
587
587
577
577
572
592
584
594
594
584
584
584
599
599
596
596
608
608
633
633
608
633
633
603
625
640
635
635
615
642
652
647
647
652
632
644
664
656
671
666
651
668
668
668
678
687
719
709
704
704
716
731
740
737
762
762
762
747
759
769
754
774
776
791
781
788
793
793
795
785
807
812
819
824
824
804
821
816
816
811
833
850
845
860
862
879
893
893
946
960
950
965
985
957
969
999
1001
1021
986
1021
981
981
1013
1003
1003
1028
1040
1030
1030
1040
1045
1057
1069
1019
1019
1061
1043
1100
1089
1086
1111
1111
1093
1100
1157
1183
1219
1260
1260
1267
1279
1318
1330
1310
1310
1366
1366
1373
1373
1385
1385
1411
1456
1540
1545
1552
1579
1596
1602
1634
1634
1651
1651
1631
1667
1662
1760
1801
1808
1881
1895
1895
1931
2186
2193
2205
2843
2850
2867
2872
2862
2891
2989
3032
3044
3246
3277
3289
1
1
1
1
1
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
56
53
53
53
53
60
60
60
60
65
82
80
84
84
84
94
99
79
101
91
103
103
103
103
103
103
135
110
110
110
125
115
142
122
147
122
122
122
159
134
154
154
129
134
129
129
129
134
134
129
161
136
136
136
136
136
146
146
183
183
153
153
153
148
148
148
158
158
153
160
155
170
160
160
165
202
202
172
172
167
167
167
167
167
167
167
177
177
167
172
177
177
172
172
172
172
179
179
179
179
179
184
179
216
191
191
191
191
191
191
186
186
191
191
196
191
191
191
196
196
196
196
203
208
203
203
203
203
203
203
235
210
210
220
210
215
215
215
220
210
215
215
215
215
215
222
222
222
222
227
222
222
222
222
279
239
239
251
241
293
293
253
270
270
270
270
317
314
343
343
333
355
357
357
369
381
386
386
376
376
393
415
415
446
446
470
470
467
467
467
499
486
491
486
513
518
520
520
515
520
525
525
522
532
532
542
534
544
544
539
539
539
554
554
544
544
551
546
546
558
553
563
568
568
568
563
570
565
575
565
565
585
565
572
577
577
587
582
587
592
592
584
579
599
614
589
589
599
599
584
584
584
579
579
604
606
601
601
611
611
608
603
603
603
608
608
603
645
645
625
625
625
625
640
635
635
615
652
647
652
627
644
644
649
649
659
654
654
639
656
671
666
663
678
663
675
719
719
704
704
706
706
721
716
728
743
737
757
757
752
762
774
774
774
771
781
766
791
781
783
783
803
793
800
805
807
797
797
797
814
814
824
826
836
836
831
811
823
823
845
862
852
867
867
872
874
891
893
883
883
919
958
950
972
997
969
981
996
1011
1013
1008
1008
1033
1025
1015
1015
1040
1052
1042
1042
1052
1057
1069
1081
1031
1031
1073
1050
1112
1101
1101
1093
1123
1123
1100
1169
1195
1231
1272
1272
1279
1291
1330
1342
1322
1322
1385
1385
1397
1397
1423
1468
1552
1557
1564
1591
1608
1614
1646
1646
1663
1663
1643
1674
1674
1674
1772
1813
1820
1893
1907
1943
2198
2205
2217
2855
2862
2879
2884
2874
2903
3001
3044
3051
3051
3258
3289
3301
1
1
1
1
27
27
27
39
34
34
34
34
34
34
34
34
34
34
49
41
41
53
63
53
53
53
53
53
53
68
68
65
60
60
75
72
72
72
72
72
84
92
92
91
91
91
91
106
111
91
91
91
91
91
103
103
103
113
130
110
135
110
115
115
147
122
122
122
132
122
117
122
122
159
154
154
134
134
134
134
154
129
129
129
129
134
134
129
171
166
166
141
146
146
146
146
173
173
153
148
148
148
148
148
148
148
158
158
148
195
195
165
160
160
155
155
155
155
170
160
160
165
160
167
167
177
177
177
172
172
172
172
172
172
172
172
172
214
204
189
189
184
179
191
191
191
191
191
186
191
186
186
186
191
191
196
191
191
191
191
191
196
191
228
228
203
198
203
208
203
203
210
210
210
210
210
220
220
215
215
210
210
215
215
222
247
247
222
217
227
222
222
222
222
222
222
222
291
241
241
241
305
329
355
355
345
362
381
393
398
398
388
388
400
427
427
458
458
448
470
470
467
482
482
487
479
506
506
506
496
498
503
498
525
530
520
527
532
532
537
537
537
537
532
539
539
539
539
549
549
554
534
546
551
551
551
551
551
561
561
558
553
558
568
573
553
565
560
565
565
582
587
597
572
579
589
589
599
599
589
604
604
579
611
626
611
611
611
608
608
608
608
603
623
623
620
625
625
635
635
627
627
627
652
652
637
637
652
647
627
644
659
654
639
656
671
671
651
651
663
668
675
675
687
682
714
716
716
718
718
733
748
723
740
755
742
742
749
744
744
769
769
764
786
786
791
786
781
783
788
773
793
805
812
812
819
804
804
804
804
826
826
826
836
838
848
848
852
852
874
879
879
884
864
886
893
903
890
890
926
970
962
984
989
1009
981
988
1023
1025
1015
1015
1045
1037
1027
1027
1052
1064
1054
1054
1064
1069
1019
1081
1093
1038
1038
1085
1124
1093
1108
1108
1108
1108
1135
1135
1181
1207
1243
1284
1284
1291
1303
1342
1354
1334
1334
1397
1397
1409
1409
1435
1444
1444
1480
1564
1569
1576
1603
1620
1626
1658
1658
1675
1675
1655
1674
1674
1681
1686
1784
1825
1832
1905
1919
1955
2210
2217
2229
2867
2874
2891
2896
2886
2915
3013
3051
3051
3063
3063
3270
3301
3313
1
1
1
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
51
56
53
61
60
60
75
80
80
60
60
72
72
87
84
79
96
104
104
91
91
103
113
103
103
123
103
98
98
115
135
110
110
110
110
110
110
110
110
125
125
115
115
115
142
147
117
122
154
134
129
134
129
129
171
166
166
146
146
166
136
146
146
146
146
146
183
178
178
153
148
148
153
158
158
153
153
148
185
185
165
160
160
155
155
165
160
160
202
202
172
172
172
172
172
172
172
167
167
177
172
167
177
172
172
179
179
179
179
179
189
189
184
184
179
179
179
226
191
216
191
191
191
186
191
191
196
191
191
191
198
203
198
198
203
240
240
210
210
210
210
210
220
220
210
222
222
222
222
222
222
222
259
259
239
241
298
253
253
317
336
362
367
357
386
386
393
400
405
405
400
400
412
439
439
470
470
470
470
460
480
482
482
479
489
489
494
499
491
506
518
518
518
508
510
510
535
515
515
515
532
537
532
547
534
544
544
549
549
549
549
539
554
539
539
546
551
566
546
553
558
558
558
558
558
568
568
563
573
565
560
560
585
560
587
582
602
587
589
584
584
604
579
601
601
611
611
616
616
603
623
633
633
608
623
623
623
625
625
635
635
630
630
632
637
647
647
644
664
664
644
644
659
654
639
671
671
651
668
668
678
658
658
685
675
687
682
687
699
704
721
721
723
723
745
755
742
757
752
767
747
749
754
756
756
756
756
776
776
776
771
771
798
798
803
793
795
805
812
824
804
804
831
826
816
838
838
838
848
860
860
852
852
867
864
886
886
886
886
896
871
871
898
915
938
938
982
969
996
996
996
1021
988
1035
1037
1057
1049
1039
1039
1064
1019
1076
1066
1066
1076
1081
1093
1105
1097
1069
1089
1136
1108
1108
1120
1120
1147
1147
1193
1219
1255
1296
1296
1303
1315
1354
1366
1346
1346
1409
1409
1421
1421
1447
1456
1492
1576
1581
1588
1615
1632
1638
1665
1665
1687
1687
1667
1681
1698
1796
1832
1832
1839
1839
1917
1931
1967
2222
2229
2241
2879
2886
2903
2908
2898
2927
3025
3075
3075
3282
3313
3325
1
1
1
27
27
34
39
34
34
34
34
34
34
34
34
34
46
46
41
41
63
53
63
53
68
60
72
87
87
87
84
94
79
79
96
106
91
108
111
111
103
98
115
135
110
110
110
115
115
115
127
147
122
122
132
137
117
117
149
154
129
129
166
136
141
141
141
146
146
146
146
146
146
178
173
173
153
153
153
153
153
153
153
178
148
148
148
153
148
148
158
158
158
153
195
190
190
160
155
160
165
165
165
160
192
192
172
172
172
172
172
172
172
172
172
167
167
167
167
172
167
167
167
214
179
179
179
184
184
191
191
196
191
191
191
191
191
191
238
223
198
203
198
208
203
210
210
210
210
210
210
210
210
210
210
210
247
247
222
222
222
279
266
266
241
317
329
348
379
369
398
398
405
405
412
417
412
412
424
424
451
451
482
482
482
482
467
492
489
489
494
499
499
499
486
491
501
506
506
503
518
513
513
513
518
510
520
525
525
530
530
520
515
522
522
547
527
527
527
539
544
544
539
559
546
541
551
551
556
556
556
556
546
566
551
551
558
558
568
563
578
553
570
560
565
565
565
585
577
577
587
597
599
609
609
584
584
584
616
613
613
623
608
623
623
623
603
635
630
630
630
627
637
642
642
644
644
644
659
659
639
656
671
671
651
668
678
678
678
663
658
658
675
675
670
687
692
699
704
699
711
755
757
757
747
749
764
779
766
781
763
763
788
773
778
778
793
793
810
810
805
807
812
804
804
826
836
816
843
823
823
850
850
860
852
872
872
872
864
864
879
871
898
908
910
927
945
945
945
945
994
981
1008
988
1033
1047
1049
1069
1019
1061
1051
1051
1076
1031
1088
1078
1078
1088
1093
1105
1117
1074
1069
1074
1109
1081
1148
1120
1127
1127
1159
1159
1205
1231
1267
1308
1308
1315
1327
1366
1378
1358
1358
1421
1421
1433
1433
1459
1468
1504
1528
1588
1593
1573
1600
1627
1644
1650
1677
1699
1699
1674
1674
1681
1705
1705
1808
1851
1851
1929
1943
1979
2234
2241
2253
2891
2898
2915
2920
2905
2939
3037
3087
3087
3294
3325
3337
1
1
1
27
27
34
34
34
34
34
34
34
34
34
34
34
51
41
41
41
58
53
53
53
53
53
75
60
60
60
72
80
84
99
79
96
91
91
103
103
113
103
115
123
123
110
110
110
110
110
115
122
147
134
154
134
129
129
149
129
129
129
129
129
129
161
166
136
136
141
146
146
146
178
153
153
153
153
148
153
153
153
158
158
158
165
190
160
155
160
160
160
170
165
165
160
160
202
172
172
202
202
167
167
172
172
172
167
167
167
204
204
184
179
179
179
179
179
179
179
179
179
179
189
226
191
186
191
191
191
191
191
198
198
198
208
208
203
245
235
210
210
210
222
222
222
222
222
222
222
222
291
241
241
241
278
278
329
341
360
391
381
405
405
417
417
424
429
424
424
439
436
436
463
463
470
475
475
475
489
489
489
489
499
494
501
506
511
511
511
498
503
513
513
513
513
510
530
525
525
525
525
525
522
532
532
537
537
532
522
522
529
539
539
539
559
534
534
534
534
541
551
546
546
546
571
558
558
558
563
563
563
563
568
578
558
558
570
565
585
560
560
597
579
589
604
579
611
623
630
625
625
630
635
625
635
635
635
630
647
642
644
659
649
649
656
671
666
666
666
668
663
658
658
675
670
687
692
677
694
719
711
711
723
755
757
769
769
754
776
791
763
773
778
793
795
805
805
822
822
812
819
816
848
823
823
855
862
862
872
864
884
879
879
884
871
871
891
886
886
910
915
915
890
922
934
934
926
945
945
957
957
984
1006
981
988
1020
1015
1045
1059
1061
1081
1031
1073
1063
1063
1088
1043
1100
1090
1090
1100
1105
1112
1124
1124
1069
1086
1121
1093
1108
1108
1155
1155
1127
1171
1171
1217
1243
1255
1279
1320
1320
1327
1339
1378
1390
1370
1370
1433
1433
1445
1445
1471
1480
1509
1516
1528
1535
1535
1600
1605
1580
1580
1612
1639
1656
1665
1665
1662
1689
1711
1711
1681
1717
1717
1820
1863
1863
1941
1955
1991
2246
2253
2265
2903
2905
2927
2932
2917
2951
3049
3099
3099
3306
3337
3349
1
1
1
1
1
1
13
27
27
34
34
34
34
34
34
34
34
34
46
41
41
63
53
53
53
53
53
53
53
53
70
60
65
60
60
60
60
60
60
87
72
72
84
92
79
91
91
111
91
91
103
103
103
103
110
110
110
110
110
110
110
115
135
135
159
129
129
166
161
141
141
146
146
146
173
153
153
153
178
148
153
148
148
153
148
153
148
158
158
158
148
148
148
148
153
148
148
158
190
160
165
165
165
160
160
170
170
165
160
202
172
172
167
167
167
167
167
172
177
184
214
214
179
179
179
179
179
179
179
179
179
189
189
189
216
216
191
191
191
191
191
186
186
186
191
191
191
191
191
191
238
203
198
198
208
210
210
210
210
210
210
210
257
247
222
234
229
229
229
239
239
239
241
298
253
253
290
290
336
336
341
353
355
360
372
391
403
393
417
424
424
429
424
424
436
441
436
436
456
451
443
443
475
475
482
487
487
487
494
499
501
501
506
506
506
496
496
496
513
508
508
513
518
518
518
510
510
525
515
525
520
537
532
532
532
532
547
529
539
544
544
539
541
551
551
566
556
541
541
546
541
558
563
578
565
570
570
565
585
565
565
587
587
597
572
579
604
584
601
616
608
608
623
603
625
625
630
630
637
637
632
637
637
647
637
647
642
642
659
654
649
649
671
666
666
668
678
675
675
675
670
687
677
694
719
704
704
723
723
735
755
769
754
754
781
776
763
788
773
773
803
778
793
793
793
785
805
807
812
812
834
834
804
804
831
823
860
867
874
874
879
871
891
896
898
898
898
898
898
898
890
922
934
946
946
957
969
964
964
991
991
991
1018
1015
1032
1057
1019
1071
1073
1093
1043
1085
1075
1075
1100
1050
1112
1102
1102
1112
1112
1074
1124
1081
1093
1133
1100
1100
1120
1167
1167
1183
1183
1229
1255
1262
1262
1262
1291
1332
1332
1339
1351
1390
1402
1382
1382
1445
1445
1457
1457
1483
1492
1516
1528
1535
1612
1617
1624
1651
1668
1677
1674
1701
1723
1723
1729
1729
1832
1875
1875
1953
1967
1998
2258
2265
2277
2915
2905
2939
2944
2929
2963
3061
3111
3111
3318
3349
3361
13
25
27
34
34
34
34
34
34
34
34
34
34
53
53
53
53
53
53
60
60
75
65
65
60
60
60
60
60
60
60
82
77
72
99
79
104
91
91
91
91
103
103
118
103
103
103
115
110
110
110
110
115
115
115
122
122
122
122
134
129
129
129
147
147
129
129
171
146
146
146
146
141
146
146
146
178
153
173
153
153
148
148
158
158
158
153
158
153
153
158
158
185
165
190
165
160
160
160
155
165
165
165
165
165
165
170
160
165
172
172
197
202
202
167
167
177
177
177
167
167
167
167
167
177
177
172
172
172
172
214
179
179
179
179
179
191
221
221
191
191
191
186
191
191
186
186
191
191
191
191
191
191
191
191
191
191
228
228
198
198
198
208
208
208
208
203
250
250
210
210
210
210
210
210
210
210
210
210
210
222
222
222
222
259
269
269
234
234
229
239
241
241
241
253
302
302
348
348
353
360
367
372
379
403
410
405
429
441
436
436
448
448
443
443
468
458
455
455
487
487
477
472
489
489
494
494
494
496
506
511
513
513
518
518
513
508
508
513
508
525
515
510
520
520
515
520
525
525
520
520
525
525
515
515
510
522
532
527
532
532
534
544
544
539
539
539
539
559
541
546
546
546
541
566
566
558
558
558
563
553
578
553
565
560
570
565
565
590
582
582
597
604
584
579
616
608
608
613
623
623
620
635
625
637
637
637
642
644
644
659
649
659
671
666
666
666
658
658
680
675
687
687
687
677
699
716
716
735
755
735
747
757
749
781
776
781
788
793
795
800
785
785
815
805
805
805
792
812
819
804
804
826
826
846
846
816
843
828
828
872
879
879
886
886
886
886
886
903
908
905
905
905
905
934
946
958
958
945
945
964
981
998
998
1030
1044
1069
1031
1083
1085
1105
1050
1050
1097
1087
1087
1112
1124
1114
1114
1124
1136
1093
1098
1108
1108
1145
1127
1179
1179
1195
1195
1241
1267
1262
1269
1269
1303
1339
1344
1351
1358
1402
1414
1394
1394
1457
1457
1469
1469
1495
1504
1511
1535
1540
1624
1629
1636
1663
1680
1689
1686
1713
1735
1735
1741
1741
1844
1887
1887
1960
1979
2010
2270
2277
2289
2905
2927
2917
2951
2956
2941
2975
3073
3123
3123
3330
3361
3373
27
27
37
27
34
34
34
34
34
34
34
34
46
53
53
65
60
60
60
60
60
60
60
60
72
87
72
72
72
72
72
72
72
94
84
84
79
84
111
91
91
116
103
115
110
115
115
115
110
122
129
134
129
129
129
134
129
129
129
129
129
134
141
159
159
161
136
136
136
136
146
146
146
146
146
146
183
183
148
158
158
148
158
153
153
160
190
165
180
160
155
160
160
165
165
165
170
160
165
197
202
202
172
172
172
167
167
167
167
167
172
177
177
177
167
167
172
177
172
172
172
172
172
172
209
214
214
179
179
179
179
179
189
189
189
179
184
184
226
191
191
221
191
191
191
191
191
191
191
191
191
191
233
203
208
208
208
203
208
240
240
210
210
220
210
210
210
262
262
222
222
222
222
222
222
222
222
222
229
239
239
239
239
271
281
281
241
253
314
314
336
355
355
355
360
360
374
379
391
410
417
441
448
443
443
460
460
455
475
465
465
467
467
494
494
494
489
484
491
496
496
501
501
501
501
501
508
513
513
513
518
510
525
515
515
525
525
530
530
520
520
515
515
515
515
515
510
510
532
527
522
527
527
527
532
527
527
522
539
534
534
534
539
539
539
546
551
556
541
541
571
568
568
563
553
578
578
560
565
565
565
565
585
575
575
560
582
597
594
594
604
611
596
608
623
603
620
625
627
637
647
642
654
649
654
656
671
656
671
683
678
678
658
658
675
670
692
687
694
694
719
704
699
711
723
723
723
755
747
747
759
749
769
754
788
788
773
805
807
812
792
792
827
817
812
817
809
831
816
816
838
838
858
858
823
855
835
835
852
852
884
879
879
879
891
886
898
898
898
898
898
915
905
920
946
958
970
970
957
991
998
998
998
998
1010
1020
1020
1042
1024
1056
1081
1043
1095
1097
1117
1109
1099
1099
1124
1136
1126
1126
1136
1108
1108
1148
1100
1105
1100
1105
1120
1120
1157
1191
1191
1207
1207
1253
1279
1269
1269
1310
1339
1356
1358
1363
1370
1414
1426
1401
1401
1469
1469
1481
1481
1507
1516
1516
1518
1547
1592
1592
1636
1641
1648
1675
1692
1701
1698
1725
1747
1747
1753
1753
1856
1899
1899
1991
2022
2282
2289
2301
2939
2929
2963
2968
2953
2987
3085
3135
3135
3342
3373
3385
1
1
1
1
27
27
27
34
49
34
34
34
34
34
34
34
34
34
34
46
46
41
53
53
60
72
72
72
72
72
94
99
84
84
84
79
101
91
123
103
103
98
98
115
128
110
115
115
122
122
127
117
134
129
129
129
129
141
141
146
146
146
146
178
148
171
171
173
148
148
148
148
158
158
148
153
148
148
148
195
160
160
195
155
155
155
155
170
170
160
160
170
160
165
202
202
172
172
172
167
167
167
167
167
167
177
172
172
172
172
172
172
172
172
172
172
172
209
214
214
179
179
179
179
179
189
189
189
179
184
184
184
184
221
221
221
221
191
191
186
191
186
191
191
196
196
196
191
191
191
191
191
191
196
191
191
191
191
196
191
191
238
233
208
208
198
203
245
220
220
210
210
252
252
222
222
222
222
222
269
269
234
239
239
239
239
241
241
251
283
288
288
270
326
326
348
367
367
372
386
391
403
405
424
429
429
453
460
455
475
467
467
482
482
472
472
472
479
479
501
501
506
496
501
496
491
491
491
503
508
508
508
513
513
513
513
515
520
520
525
525
525
525
525
510
522
527
527
547
532
532
537
537
522
522
532
522
527
527
522
522
539
534
529
534
534
534
539
539
544
534
534
529
551
541
546
546
546
551
553
558
578
565
585
575
575
575
575
565
560
590
590
587
572
597
587
572
594
606
606
608
608
608
608
618
608
620
627
637
642
659
661
656
666
668
683
668
683
695
690
687
677
704
694
694
709
716
711
723
762
759
754
771
781
798
785
817
819
824
839
824
824
804
804
816
816
843
828
828
870
870
867
857
864
864
879
891
896
903
898
910
910
905
910
910
905
927
932
958
970
945
945
982
982
964
1001
1010
1010
1017
1027
1027
1054
1031
1031
1068
1093
1050
1050
1107
1109
1129
1106
1106
1136
1116
1148
1133
1133
1148
1160
1117
1117
1132
1132
1169
1203
1203
1219
1219
1260
1291
1322
1368
1370
1375
1382
1426
1438
1413
1481
1481
1493
1493
1514
1528
1518
1518
1559
1599
1599
1599
1599
1599
1599
1648
1653
1660
1687
1704
1713
1710
1737
1759
1759
1765
1765
1868
1911
1911
2003
2034
2294
2301
2313
2951
2941
2975
2980
2965
2999
3097
3147
3147
3354
3385
3392
1
1
1
1
13
27
27
34
34
34
34
34
34
34
34
61
46
46
46
41
53
53
58
53
60
60
60
60
87
72
72
72
72
94
84
91
91
111
96
91
91
91
91
113
98
98
98
135
115
110
115
140
122
117
117
117
129
134
129
129
134
129
129
129
141
136
141
141
146
146
148
148
153
148
148
158
153
153
153
153
153
153
153
148
160
190
183
183
180
160
155
155
170
170
165
160
160
160
160
165
202
207
167
167
177
177
172
177
167
177
172
172
172
172
214
214
179
179
179
179
179
179
179
179
179
179
184
184
184
221
221
226
191
191
191
191
191
196
196
196
191
191
191
191
191
191
191
196
191
196
191
196
196
191
233
233
233
208
208
208
203
208
203
203
203
245
245
220
215
220
257
222
222
264
264
251
251
253
253
295
300
300
270
270
270
338
338
355
374
379
384
398
403
415
417
436
441
441
456
465
467
487
472
479
479
494
484
484
494
494
484
496
496
501
491
491
491
491
513
508
513
503
503
503
503
498
498
510
520
520
515
515
520
525
525
525
525
515
515
510
510
525
522
532
532
522
529
534
534
559
539
539
544
544
539
544
534
534
529
529
551
541
536
541
546
541
541
536
563
558
553
563
553
573
558
560
565
565
565
560
590
577
572
587
587
572
597
597
579
614
604
594
584
606
608
608
608
613
618
620
620
620
632
649
671
656
656
673
673
678
658
658
680
695
680
695
707
702
694
694
716
716
716
723
723
723
735
769
769
754
771
783
788
788
793
805
792
824
831
836
851
855
840
840
882
882
879
864
871
871
891
876
903
908
915
905
922
922
917
917
939
944
970
945
945
982
957
957
994
994
998
998
993
1008
1008
1017
1017
1066
1031
1080
1105
1050
1112
1062
1062
1119
1094
1141
1116
1118
1148
1128
1160
1100
1100
1100
1105
1145
1160
1172
1124
1124
1139
1139
1181
1215
1215
1231
1231
1303
1334
1380
1382
1387
1394
1438
1450
1425
1493
1493
1505
1505
1518
1540
1525
1525
1571
1599
1599
1611
1611
1611
1660
1660
1667
1699
1716
1725
1722
1749
1771
1771
1777
1777
1880
1923
1923
2015
2046
2306
2313
2325
2963
2953
2987
2992
2977
3011
3109
3159
3159
3366
3392
3392
3404
27
27
27
34
34
34
34
34
46
53
68
58
58
58
58
65
60
60
60
60
65
60
60
72
72
72
94
84
79
79
101
96
91
91
91
91
91
91
91
103
103
118
108
103
103
103
125
115
110
147
122
122
117
117
117
117
117
122
127
127
129
134
129
129
152
129
129
134
129
129
141
136
136
146
141
148
148
148
148
148
158
153
158
153
153
153
153
153
153
148
160
160
160
155
170
160
165
165
160
165
165
160
165
172
197
195
195
172
172
172
167
177
177
172
167
167
177
172
172
172
214
179
179
184
221
221
191
191
191
191
191
191
196
191
196
196
233
233
238
198
208
208
208
203
203
203
203
240
240
245
210
210
215
215
215
220
257
257
222
222
222
264
239
239
276
276
251
270
270
307
312
312
350
350
386
391
396
410
415
427
424
443
448
448
468
463
463
475
475
475
477
472
479
494
484
486
486
506
501
491
491
506
506
496
491
508
508
503
503
503
503
520
520
515
510
510
522
517
527
527
532
532
532
532
527
527
522
522
522
537
539
539
539
539
544
539
529
544
544
536
541
541
541
571
551
551
546
541
541
536
536
563
573
575
575
560
565
560
560
585
565
575
575
560
577
587
597
589
579
604
594
594
584
609
609
591
621
621
596
618
618
620
632
627
632
632
632
632
639
644
661
656
656
671
671
683
668
680
680
680
680
690
692
707
687
707
699
719
714
726
728
735
735
735
752
742
769
754
779
761
781
783
788
778
773
795
800
800
805
805
843
848
863
835
867
852
852
864
894
894
891
871
871
883
898
898
883
915
920
927
934
934
951
956
982
994
974
969
969
1006
1006
1010
1005
1031
1078
1050
1092
1117
1112
1062
1124
1069
1069
1106
1106
1131
1101
1133
1133
1153
1130
1105
1105
1100
1105
1160
1140
1172
1112
1112
1117
1157
1172
1184
1151
1193
1227
1227
1243
1243
1315
1346
1392
1394
1399
1406
1401
1401
1450
1462
1437
1505
1505
1517
1517
1525
1525
1552
1537
1583
1611
1618
1618
1618
1672
1679
1711
1728
1737
1734
1761
1783
1783
1789
1789
1892
1935
1935
2027
2058
2318
2325
2337
2975
2965
2999
3004
2989
3023
3121
3171
3171
3378
3392
3404
3416
1
27
27
39
34
34
34
46
53
53
53
53
65
65
65
65
65
60
60
60
60
60
60
80
72
72
72
72
72
72
84
84
79
91
91
91
91
91
91
91
113
103
103
115
115
110
110
110
110
110
110
115
132
122
122
117
122
122
127
127
129
129
154
134
129
129
134
129
129
129
129
129
129
134
134
164
141
141
141
141
146
146
146
148
148
148
148
153
153
148
158
153
153
160
160
195
160
160
155
170
165
160
160
165
165
160
160
160
165
172
172
172
172
167
167
167
177
172
167
177
177
177
177
172
172
172
172
172
179
209
207
207
179
179
179
179
189
189
184
191
191
191
191
191
196
196
198
198
208
203
203
245
245
245
245
210
220
220
215
215
252
252
257
222
222
222
222
222
264
269
229
229
276
288
288
319
324
324
362
362
398
398
408
405
425
417
427
424
424
439
451
451
455
470
475
475
475
487
487
487
489
479
491
501
501
501
491
498
498
513
498
518
498
513
513
508
498
498
515
515
510
510
510
510
517
522
522
537
517
517
534
534
534
534
539
539
539
539
544
534
534
529
529
549
541
536
556
556
578
563
563
575
560
585
565
587
582
577
577
577
577
597
587
597
601
591
596
616
616
603
618
623
608
627
642
637
637
639
644
656
661
673
668
668
678
678
695
680
680
675
692
692
702
699
704
719
719
706
731
726
716
733
723
723
723
740
742
742
747
769
764
754
786
786
768
768
768
788
773
783
783
795
800
807
807
807
817
824
855
860
875
835
864
879
859
859
871
906
906
903
883
903
890
895
895
927
932
939
946
946
931
963
968
994
1006
986
976
976
998
993
1018
1018
1017
1017
1027
1031
1031
1090
1062
1104
1129
1069
1101
1101
1136
1116
1118
1143
1145
1165
1142
1117
1172
1152
1184
1124
1124
1124
1169
1139
1139
1184
1196
1163
1205
1239
1239
1255
1255
1327
1358
1404
1406
1411
1418
1413
1462
1474
1449
1517
1517
1529
1529
1525
1525
1537
1564
1544
1595
1618
1684
1679
1691
1718
1718
1740
1749
1746
1768
1795
1795
1801
1801
1904
1947
1947
2039
2070
2330
2337
2349
2987
2977
3011
3016
3001
3035
3133
3183
3183
3390
3416
3428
1
1
13
27
27
34
34
34
34
49
34
34
34
34
34
34
34
34
34
34
53
53
53
60
60
65
65
60
60
60
60
72
72
72
72
77
77
72
72
92
92
84
79
79
79
79
79
91
91
91
91
91
91
103
103
103
98
98
98
98
125
115
115
115
115
110
110
110
110
115
115
122
122
122
122
122
122
122
134
134
134
134
129
129
129
129
134
129
166
141
136
141
141
146
146
146
148
148
148
176
148
148
153
148
148
148
148
153
153
153
148
148
148
148
158
153
158
153
160
160
160
160
160
160
160
207
167
172
172
167
177
172
172
172
167
172
177
177
177
172
172
184
179
179
179
179
179
179
189
189
184
184
179
184
184
221
219
219
191
191
191
191
191
191
196
191
198
203
203
210
210
220
220
210
257
257
257
222
222
264
264
269
269
239
276
281
241
241
288
288
300
300
331
336
336
374
374
379
398
410
420
417
432
437
429
439
436
436
451
451
451
451
451
463
463
470
470
475
467
482
482
482
482
482
494
494
479
499
494
499
491
496
491
506
503
498
498
510
510
520
520
510
530
510
520
520
515
522
522
517
517
517
517
537
539
539
549
541
541
541
541
541
536
536
556
558
558
558
558
568
568
560
590
575
575
565
575
560
587
582
592
592
597
599
589
589
579
604
594
616
616
608
603
623
608
615
620
649
649
649
656
668
678
685
680
675
675
680
675
697
707
692
699
699
714
706
716
731
726
716
716
716
743
733
723
735
735
735
752
769
769
771
798
798
775
775
800
790
790
807
807
819
824
824
824
867
872
887
864
871
891
871
883
918
918
915
890
910
910
910
910
917
902
902
902
902
939
944
951
958
958
938
975
980
1006
1018
998
998
998
988
1010
1000
1030
1030
1027
1024
1043
1043
1055
1050
1050
1102
1069
1116
1141
1116
1148
1128
1130
1105
1155
1157
1177
1154
1124
1184
1164
1196
1131
1131
1181
1151
1151
1196
1208
1170
1217
1251
1251
1260
1267
1267
1310
1339
1370
1416
1418
1423
1430
1425
1474
1486
1461
1529
1529
1514
1541
1541
1547
1537
1544
1576
1607
1696
1686
1703
1730
1752
1761
1768
1758
1780
1807
1807
1813
1813
1916
1960
1959
1959
1998
2051
2082
2342
2349
2361
2999
2989
3023
3028
3013
3145
3195
3190
3402
3428
3440
1
1
1
1
13
13
25
27
27
27
34
34
34
39
34
34
34
39
34
34
34
34
34
34
41
41
41
41
46
61
41
53
53
53
53
58
53
60
65
60
60
60
60
60
72
72
77
77
72
72
72
72
72
89
89
91
91
104
104
96
91
91
91
91
91
91
91
103
103
98
98
98
98
103
103
135
115
115
110
110
110
115
115
115
137
137
127
127
122
122
122
122
134
134
134
129
129
134
134
129
129
129
134
146
146
141
136
141
146
146
146
146
178
178
148
153
153
148
148
153
148
158
158
153
158
188
160
165
165
167
167
167
172
167
167
167
167
172
167
172
172
177
172
172
214
207
207
179
179
179
179
184
184
189
189
184
184
179
191
226
191
191
191
191
191
191
191
191
191
191
196
233
226
226
203
203
203
245
210
210
210
210
210
210
210
210
222
269
264
269
269
276
276
281
281
288
288
288
288
293
300
300
307
307
343
348
348
362
362
381
381
391
410
415
422
422
432
424
444
444
441
446
451
443
448
463
463
458
463
463
463
448
470
470
470
470
470
482
472
482
487
479
489
494
494
489
489
491
501
501
491
511
501
501
511
503
503
503
518
518
510
510
522
522
522
522
522
542
517
522
522
517
517
517
539
534
534
539
539
529
529
549
541
536
541
551
541
561
536
536
573
568
575
575
575
575
597
587
587
587
594
599
599
579
604
589
606
596
596
591
616
615
620
627
632
649
678
668
680
680
680
697
687
687
687
687
687
719
699
704
726
728
743
733
755
745
735
747
747
742
742
764
781
781
786
771
771
768
793
788
788
775
775
775
775
790
790
790
790
787
807
802
819
824
824
831
836
836
840
840
879
879
899
859
859
883
903
883
883
890
930
930
927
917
917
917
902
902
914
914
951
956
963
938
938
970
970
987
992
996
976
976
1018
998
1030
1010
1000
1005
1000
1022
1012
1042
1042
1062
1062
1062
1062
1114
1128
1153
1160
1140
1142
1112
1112
1167
1169
1189
1166
1196
1176
1208
1193
1158
1158
1208
1220
1229
1263
1263
1279
1279
1322
1351
1382
1428
1430
1435
1442
1437
1486
1498
1473
1541
1541
1553
1553
1525
1525
1559
1544
1588
1619
1667
1686
1708
1715
1764
1773
1780
1770
1792
1819
1819
1825
1825
1928
1971
1971
2010
2063
2094
2354
2361
2368
3011
3001
3035
3025
3152
3207
3202
3414
3440
3452
1
1
1
25
25
37
37
39
34
34
34
34
51
51
41
53
53
53
53
58
58
53
53
68
53
53
60
65
65
72
77
72
72
72
72
84
84
84
84
79
101
101
91
91
91
91
91
91
91
91
111
111
103
103
103
103
125
115
110
110
115
115
115
115
147
122
122
127
127
127
127
149
149
134
134
129
129
129
129
129
134
141
141
136
136
136
141
141
146
146
153
153
148
153
148
153
148
148
148
148
148
153
153
153
153
158
153
153
153
190
190
160
160
160
165
165
160
160
160
167
167
167
167
200
167
167
167
172
172
177
172
172
172
177
177
179
179
179
179
179
189
189
179
189
191
219
219
191
191
191
191
191
191
191
191
191
191
238
203
208
203
203
245
238
210
210
210
210
257
222
222
222
222
229
281
276
281
281
288
288
288
288
300
300
300
300
305
307
307
319
355
360
360
374
374
393
398
417
422
427
434
434
444
441
441
441
451
451
451
453
458
463
453
453
455
460
470
465
465
470
470
470
470
470
470
470
460
482
477
477
482
482
489
484
489
494
499
496
496
496
501
491
491
506
506
491
503
503
498
498
523
518
523
510
510
510
530
530
517
522
522
522
517
517
539
529
529
539
534
549
529
551
536
541
541
541
561
541
561
541
536
536
558
563
568
580
580
575
560
575
577
597
587
587
587
594
594
594
594
594
599
606
616
596
618
603
623
627
632
639
639
644
656
680
692
692
709
694
694
731
738
728
740
755
767
757
742
754
754
754
754
776
800
800
800
800
787
787
802
802
794
809
831
836
821
843
843
843
847
847
871
891
911
871
871
890
910
890
917
942
942
939
914
921
921
963
968
975
982
982
994
1004
1003
988
988
1030
1005
1000
1005
1042
1022
1012
1007
1029
1024
1054
1054
1069
1069
1126
1140
1165
1172
1152
1154
1179
1181
1201
1178
1208
1188
1220
1205
1220
1232
1241
1275
1275
1291
1291
1334
1363
1394
1440
1442
1447
1454
1449
1498
1510
1485
1553
1553
1540
1565
1565
1537
1571
1600
1631
1660
1679
1720
1727
1776
1785
1792
1782
1804
1826
1826
1837
1837
1940
1983
1983
2022
2075
2106
2366
2368
2380
3013
3018
3047
3037
3190
3219
3214
3426
3452
3464
1
1
1
1
1
27
37
37
34
49
34
34
49
51
58
58
53
53
65
65
60
60
60
60
60
60
60
60
72
80
72
72
84
84
79
91
91
91
91
91
91
103
103
113
113
103
103
103
103
103
98
103
98
103
103
103
123
123
115
115
110
110
115
115
132
122
117
117
127
122
122
127
127
127
127
127
127
154
134
134
134
129
129
134
134
129
129
129
129
139
139
156
156
136
146
146
153
153
153
153
153
148
153
148
148
148
153
148
153
158
153
153
153
153
148
153
153
160
160
155
155
160
165
165
165
160
160
197
197
167
172
167
167
172
172
167
167
167
172
172
172
172
172
172
172
172
172
172
172
172
172
172
177
177
177
179
179
212
179
189
189
189
191
191
191
191
191
191
191
191
191
191
191
191
191
191
226
226
203
208
245
210
257
250
222
222
264
241
293
288
288
288
300
300
307
307
307
307
317
319
319
331
367
372
372
381
381
405
429
434
434
429
429
434
441
446
451
453
453
453
458
458
453
448
448
460
465
470
465
465
467
477
477
477
477
477
477
472
482
482
477
477
477
467
467
467
472
489
489
489
496
491
491
491
501
496
501
501
496
496
511
511
508
508
503
503
513
513
503
510
510
510
530
530
520
530
517
522
522
537
542
529
539
539
534
536
536
546
561
541
541
536
536
563
553
553
568
568
575
580
577
577
589
599
594
594
606
606
606
618
618
623
608
608
630
615
639
634
644
646
656
668
680
680
692
704
694
699
706
716
716
743
750
735
735
747
747
767
779
769
761
761
788
775
775
790
790
807
807
794
794
809
809
843
843
828
828
855
864
879
859
871
883
923
878
878
917
922
922
902
902
954
954
951
921
975
975
987
994
994
1006
1016
976
1003
1015
995
995
1042
1017
1054
1029
1029
1024
1031
1066
1066
1069
1138
1152
1177
1139
1139
1184
1164
1166
1131
1191
1193
1213
1190
1220
1200
1232
1217
1232
1244
1253
1287
1287
1303
1303
1346
1375
1406
1452
1454
1459
1466
1461
1510
1522
1497
1521
1565
1565
1525
1547
1577
1577
1544
1583
1612
1599
1643
1691
1686
1686
1732
1739
1788
1797
1804
1794
1816
1838
1849
1849
1952
1995
1995
2034
2082
2082
2113
2113
2378
2368
2392
3025
3030
3044
3152
3202
3231
3226
3438
3464
3476
1
1
27
27
27
37
34
34
34
34
34
44
34
34
49
44
34
34
41
61
56
53
60
60
60
65
77
77
72
72
72
72
72
72
72
72
79
92
91
91
91
91
91
91
91
91
98
98
98
98
98
98
115
125
125
110
110
110
115
110
110
110
115
110
135
135
127
122
122
117
127
127
127
134
134
134
134
129
129
129
129
129
129
139
139
139
166
141
141
141
141
141
136
136
136
136
141
141
146
146
146
146
153
153
153
148
153
148
148
148
148
148
153
153
158
153
153
148
148
148
153
158
158
160
160
160
155
155
160
160
165
165
160
165
167
167
172
177
172
172
172
172
172
177
209
209
179
179
179
179
179
179
179
191
224
191
186
186
186
191
191
191
191
191
191
191
191
191
191
191
191
198
203
238
210
210
222
222
269
262
239
276
293
305
300
312
312
319
319
319
329
331
331
331
343
367
379
384
384
391
393
405
417
432
441
441
451
441
441
441
441
446
458
458
458
458
460
465
465
470
470
470
470
470
465
460
460
472
477
472
472
472
477
477
472
472
472
472
472
472
467
467
467
467
479
484
484
489
484
484
484
489
489
479
479
474
474
484
501
496
501
501
496
496
498
503
503
508
508
523
523
518
518
515
515
510
510
520
520
520
510
517
517
517
522
542
542
542
529
529
539
549
549
546
541
548
548
558
568
553
568
575
565
565
580
580
560
575
577
587
587
589
599
601
626
606
623
618
618
630
615
615
642
627
644
656
658
668
680
680
680
692
692
694
704
704
706
716
726
755
762
759
759
779
791
781
761
761
773
800
787
807
802
855
867
864
859
883
903
895
910
935
929
929
914
966
966
963
987
999
1006
1006
976
1018
1003
1013
1028
1015
1054
1029
1029
1024
1066
1041
1031
1078
1078
1069
1101
1150
1164
1139
1189
1131
1151
1196
1176
1178
1203
1205
1225
1202
1232
1212
1244
1229
1244
1251
1265
1267
1299
1299
1315
1315
1358
1387
1418
1464
1466
1471
1478
1473
1522
1534
1504
1528
1540
1525
1577
1577
1547
1537
1589
1589
1595
1599
1599
1624
1611
1655
1703
1693
1693
1693
1693
1744
1751
1800
1809
1816
1806
1828
1850
1861
1861
1964
2007
2007
2046
2125
2125
2368
2390
2380
2404
3037
3056
3214
3243
3238
3450
3476
3488
1
1
1
27
39
34
34
34
34
34
34
34
34
44
34
34
56
41
41
56
53
73
53
68
72
72
72
72
72
72
77
72
89
89
84
84
84
79
79
79
91
91
104
91
91
91
91
91
91
91
91
103
103
103
98
115
110
110
110
115
137
137
122
122
117
122
122
117
117
117
117
117
117
147
147
134
134
134
134
129
129
129
139
134
146
141
141
146
146
141
146
146
146
146
178
153
153
153
148
148
148
148
148
148
148
153
153
165
155
160
160
165
160
160
160
160
160
160
165
172
172
172
167
167
167
167
167
172
177
172
172
172
179
184
184
221
221
191
191
191
186
191
191
191
191
191
191
191
191
191
231
198
198
208
210
210
210
250
222
281
269
288
305
312
312
324
324
331
331
331
341
343
343
343
350
379
384
384
386
396
396
403
405
415
417
427
427
424
444
446
451
451
451
451
451
453
463
448
448
453
448
465
465
470
470
472
477
477
482
482
482
477
477
482
482
472
467
467
484
489
484
479
479
484
484
484
484
479
479
479
479
501
491
491
501
496
491
496
496
496
486
486
491
491
498
498
498
510
510
520
515
515
530
535
530
530
522
522
517
517
517
534
549
549
549
536
536
556
561
553
568
560
560
565
565
580
587
587
577
577
577
587
599
599
594
601
606
606
596
608
623
633
633
618
630
630
615
615
642
627
654
644
639
634
651
646
656
683
683
668
670
680
687
704
704
711
728
738
733
767
774
754
771
771
791
786
786
761
761
771
803
793
773
775
790
780
812
807
794
809
829
824
867
847
879
859
876
871
895
910
910
902
947
902
902
921
978
978
938
975
999
1011
976
1018
1018
1003
988
1030
1020
1040
1029
1024
1066
1041
1041
1048
1073
1090
1090
1101
1162
1139
1171
1171
1151
1201
1163
1208
1188
1190
1210
1217
1232
1209
1244
1224
1256
1236
1256
1251
1263
1277
1274
1311
1311
1327
1327
1370
1394
1394
1425
1425
1471
1478
1483
1490
1485
1534
1546
1516
1547
1589
1589
1549
1601
1601
1607
1599
1611
1631
1631
1623
1662
1662
1693
1693
1693
1693
1715
1705
1705
1756
1763
1812
1821
1826
1826
1828
1818
1840
1862
1873
1873
1976
2019
2019
2058
2137
2137
2402
2392
2416
3049
3068
3226
3255
3250
3462
3488
3500
1
37
34
34
34
34
34
34
34
34
51
41
41
68
53
53
53
68
85
80
72
72
79
79
84
89
84
79
79
101
101
91
91
91
91
91
91
91
91
91
91
116
103
103
98
98
98
98
115
110
110
110
110
110
110
115
110
110
110
122
117
122
117
117
117
122
149
149
134
134
129
129
134
129
129
129
159
159
146
146
146
141
141
141
141
146
146
141
141
141
146
153
153
153
153
148
148
148
158
148
148
190
165
160
160
160
160
160
160
160
160
155
160
160
160
160
160
160
165
172
172
172
172
172
172
167
167
172
172
212
179
179
179
179
184
179
184
186
191
191
191
196
233
233
198
198
208
203
250
222
222
222
222
262
239
239
293
281
300
312
324
336
336
343
343
343
353
350
355
355
362
386
396
396
403
403
410
417
427
427
427
424
439
439
436
446
451
458
463
463
463
453
463
463
453
465
470
470
470
465
455
455
460
460
460
472
477
477
482
477
477
467
467
484
484
489
484
489
489
489
489
489
479
479
474
474
474
474
496
491
491
501
496
496
496
496
491
491
491
491
486
486
486
486
513
498
498
493
493
493
503
498
520
517
517
517
522
522
542
542
542
542
539
539
549
549
529
536
536
536
546
561
568
560
572
572
577
577
577
599
594
589
589
589
594
611
608
608
618
618
618
625
615
615
642
642
627
654
634
666
651
666
651
658
668
690
690
680
682
692
711
711
740
750
779
754
786
771
783
783
803
798
773
775
775
815
790
790
810
805
780
787
802
824
829
824
836
836
847
879
891
871
883
883
902
902
902
959
914
914
938
990
990
987
1011
1023
988
1030
1030
1000
1000
1042
1032
1032
1052
1041
1048
1048
1073
1085
1102
1102
1101
1174
1136
1136
1151
1183
1163
1213
1170
1170
1220
1200
1202
1232
1209
1229
1221
1256
1236
1268
1248
1268
1263
1275
1289
1274
1274
1323
1323
1339
1339
1382
1437
1437
1490
1495
1502
1497
1546
1558
1528
1547
1596
1596
1556
1613
1613
1619
1623
1630
1674
1674
1705
1705
1727
1712
1712
1763
1763
1770
1770
1824
1833
1838
1840
1830
1852
1874
1885
1885
1988
2031
2031
2070
2149
2149
2414
2404
2428
3061
3080
3238
3267
3262
3474
3500
3512
1
1
1
27
27
27
27
34
34
34
34
44
34
34
34
46
63
53
75
65
60
80
72
72
72
72
92
92
84
79
91
101
91
91
91
91
91
91
91
91
91
91
91
91
113
113
103
103
103
103
103
98
98
98
128
115
115
115
115
110
110
110
110
110
110
115
110
110
110
122
117
122
117
122
134
134
134
134
134
134
134
134
129
129
129
129
129
129
129
129
129
129
129
161
161
146
141
136
146
146
146
153
153
153
153
153
171
171
153
153
153
153
153
158
148
148
153
153
153
148
153
153
153
153
160
160
160
160
170
160
160
165
202
172
172
172
172
172
172
172
172
179
179
179
179
179
179
179
179
179
184
224
191
191
191
191
191
191
191
191
191
196
198
198
208
208
208
203
208
245
245
210
210
262
274
305
293
312
336
348
348
355
355
355
355
365
362
367
367
374
374
403
403
408
408
415
420
420
427
427
417
429
429
429
434
439
439
436
446
446
446
448
448
458
458
458
453
465
470
470
470
465
470
470
465
467
472
477
477
482
482
477
477
472
472
467
467
484
484
489
489
484
484
479
489
479
479
496
491
491
491
496
496
496
496
496
496
496
498
498
513
503
498
498
498
498
493
493
493
493
525
510
517
517
517
517
517
539
539
539
539
539
539
549
554
549
549
551
536
556
541
548
563
558
568
594
584
584
589
589
611
601
601
601
623
625
625
627
654
654
634
666
661
678
673
663
670
680
690
687
692
694
699
723
738
752
762
791
761
761
773
798
795
795
775
810
790
780
787
822
802
817
817
799
814
836
836
836
843
859
891
903
883
890
902
929
971
926
926
975
1002
1002
999
994
976
1023
1035
1005
1000
1005
1000
1037
1037
1012
1007
1054
1039
1039
1039
1039
1064
1048
1067
1097
1114
1114
1117
1144
1186
1143
1143
1163
1170
1225
1232
1212
1214
1221
1241
1233
1268
1248
1280
1260
1280
1275
1287
1274
1301
1281
1281
1335
1335
1351
1351
1394
1449
1449
1502
1507
1514
1509
1558
1570
1540
1525
1608
1585
1625
1625
1631
1630
1630
1686
1686
1712
1712
1739
1782
1782
1836
1845
1850
1852
1842
1864
1886
1897
1897
2000
2043
2043
2082
2161
2161
2426
2416
2440
3018
3073
3092
3250
3279
3274
3486
3512
3524
27
27
27
34
34
34
34
34
34
34
34
34
41
41
56
41
46
53
53
53
53
53
75
72
72
72
72
87
72
79
79
84
104
79
104
91
91
91
91
91
98
113
125
125
115
110
110
110
110
110
110
110
110
110
115
110
110
110
110
110
110
110
140
127
127
117
122
117
117
122
117
117
122
122
127
127
129
129
129
129
129
129
129
129
129
129
134
134
146
146
136
146
146
141
153
153
173
173
153
153
148
148
148
148
148
148
153
158
148
148
148
153
158
153
153
153
153
153
153
165
183
183
165
165
160
160
160
170
160
165
165
165
172
172
172
172
172
177
167
167
172
177
172
172
172
172
172
214
184
179
179
179
179
179
179
184
191
191
191
191
191
191
191
191
191
191
191
196
231
198
198
208
208
208
203
203
257
257
222
269
239
239
269
274
288
286
293
317
305
324
336
336
348
355
355
355
355
367
367
367
367
377
374
379
379
386
386
391
401
415
420
420
427
417
432
432
439
439
429
441
441
441
441
446
446
446
446
448
458
448
453
453
460
460
465
465
467
467
467
472
477
477
477
477
472
477
477
477
477
472
479
484
489
489
484
479
484
484
479
474
491
491
501
496
486
486
503
503
503
498
493
498
493
498
493
525
510
517
517
537
522
517
517
539
544
539
539
549
551
551
551
561
561
561
558
568
553
560
570
570
560
570
579
579
579
579
596
591
601
601
606
623
608
608
613
613
635
615
615
634
666
666
678
673
673
668
690
675
690
682
687
704
711
711
706
711
735
745
764
774
759
759
761
761
771
803
773
780
805
810
807
807
817
799
834
814
829
806
821
848
843
871
903
888
915
915
890
890
902
929
983
938
933
933
1014
1014
1011
1006
1003
1003
988
1035
1000
1020
1047
1017
1007
1007
1049
1024
1039
1039
1066
1051
1051
1076
1073
1074
1074
1074
1074
1109
1126
1126
1124
1124
1151
1151
1198
1170
1170
1237
1244
1224
1226
1233
1253
1245
1280
1260
1292
1272
1292
1287
1299
1281
1281
1313
1293
1347
1347
1358
1358
1406
1461
1461
1514
1519
1526
1521
1528
1523
1570
1525
1582
1552
1537
1596
1596
1620
1592
1637
1637
1643
1642
1698
1698
1693
1693
1751
1794
1794
1848
1852
1862
1864
1854
1871
1898
1909
1909
2012
2055
2055
2094
2173
2173
2438
2428
2452
3030
3044
3085
3104
3262
3291
3286
3498
3524
3536
13
27
34
34
34
34
34
34
34
34
34
34
34
34
73
53
53
68
68
65
65
80
87
72
72
72
72
72
72
72
84
79
79
84
79
99
91
116
116
91
91
91
91
91
91
91
91
91
91
116
91
125
110
110
115
110
115
137
137
122
122
122
122
122
122
117
122
122
122
122
127
127
129
129
152
134
134
134
129
129
129
134
134
134
129
161
161
141
136
146
146
146
141
141
141
141
146
146
146
153
153
153
148
153
153
148
148
153
148
153
158
148
148
148
148
148
153
153
158
153
153
153
153
165
180
180
160
160
160
160
170
160
160
165
165
160
160
165
195
195
172
172
172
177
167
167
172
172
177
177
172
177
172
177
177
172
172
172
172
172
184
179
179
179
189
189
189
179
184
226
191
191
191
191
191
191
191
191
191
191
196
203
203
198
203
208
203
208
203
210
210
210
210
210
220
220
269
269
281
281
286
300
293
305
329
312
336
336
348
348
355
360
367
367
367
374
374
374
374
389
386
391
391
393
393
403
413
427
422
427
432
427
439
429
429
439
439
446
441
446
451
441
448
448
448
458
458
453
453
448
460
465
460
470
467
467
472
472
477
477
477
472
467
467
467
467
467
479
479
479
479
479
479
489
486
491
491
496
496
496
491
491
491
491
486
503
513
498
498
498
493
493
493
493
515
515
510
510
537
522
522
517
517
517
539
539
539
539
549
539
539
529
551
551
561
558
563
563
558
558
553
568
568
568
568
570
585
565
572
582
587
579
579
591
591
603
603
608
613
613
635
620
620
625
625
615
615
647
627
654
651
668
668
678
678
690
702
692
687
687
687
694
699
723
723
718
745
740
742
757
776
786
786
766
766
773
773
780
815
780
792
812
812
812
812
817
817
819
819
806
806
846
821
836
836
836
843
860
864
883
883
915
895
927
922
922
922
995
945
1026
1026
981
1023
1018
1015
1015
1005
1000
1037
1037
1047
1012
1029
1029
1024
1059
1061
1031
1031
1051
1078
1058
1058
1088
1073
1085
1081
1081
1121
1138
1138
1210
1210
1182
1182
1249
1256
1236
1238
1245
1265
1257
1292
1267
1304
1284
1304
1299
1311
1281
1281
1293
1325
1300
1359
1359
1370
1418
1471
1473
1473
1504
1526
1531
1538
1533
1530
1530
1582
1594
1564
1549
1608
1632
1592
1649
1649
1630
1655
1654
1691
1693
1693
1710
1710
1705
1705
1763
1806
1806
1860
1874
1876
1866
1883
1910
1921
1921
2024
2067
2067
2106
2185
2185
2450
2440
2464
3056
3097
3116
3274
3303
3298
3510
3536
3548
13
25
27
34
34
34
34
34
34
34
34
41
41
41
41
68
53
85
65
60
60
72
80
80
72
72
72
87
72
99
79
79
84
84
79
91
91
91
91
91
111
91
91
98
128
128
103
103
103
128
98
98
98
98
103
110
110
110
110
110
110
110
110
110
115
110
115
115
115
137
117
117
117
122
122
122
149
149
129
134
134
134
129
129
134
129
129
129
129
129
129
129
129
134
134
134
164
141
141
141
136
146
146
146
146
146
146
153
153
173
173
153
153
153
153
153
153
148
148
148
158
153
153
158
153
158
153
148
153
153
153
158
165
160
160
170
160
160
172
192
172
167
172
172
172
172
177
167
172
177
172
172
172
172
177
177
172
172
172
172
172
172
172
172
172
172
177
177
172
172
172
172
207
207
184
189
189
189
189
189
184
184
184
184
191
186
186
191
191
191
191
191
191
191
191
191
191
191
191
191
196
238
203
208
203
210
210
210
210
220
220
217
217
269
239
281
281
288
288
288
293
293
307
312
341
324
348
348
355
355
370
367
372
379
374
374
386
401
398
403
403
403
403
405
405
410
405
420
439
434
434
434
434
444
434
434
424
429
424
424
446
451
441
441
451
446
446
451
453
448
448
453
453
463
448
455
455
465
465
470
460
472
467
477
477
482
472
479
479
479
479
479
479
474
479
479
489
486
486
486
491
496
496
511
496
501
493
498
498
498
498
498
498
493
515
525
510
527
527
522
522
517
539
539
539
549
534
539
539
529
551
551
561
551
541
546
563
558
568
568
568
568
570
565
565
580
592
587
577
584
579
579
594
591
606
606
608
598
598
615
620
625
625
647
627
627
637
637
659
634
651
661
690
690
702
714
699
699
699
699
699
699
699
711
706
706
730
730
730
745
757
747
747
761
761
788
798
798
780
810
785
785
792
822
827
819
819
824
831
831
806
806
821
821
836
818
858
833
848
848
833
872
871
871
895
895
890
890
927
939
929
929
934
934
933
933
1007
957
1038
1038
988
988
1035
1030
1007
1007
1049
1059
1034
1024
1029
1039
1039
1041
1041
1071
1073
1058
1090
1100
1097
1081
1133
1150
1150
1143
1222
1217
1189
1189
1236
1261
1268
1248
1250
1257
1277
1269
1304
1279
1316
1296
1316
1311
1323
1293
1300
1337
1371
1371
1382
1430
1485
1485
1516
1538
1543
1550
1545
1542
1542
1594
1606
1576
1556
1556
1620
1592
1644
1661
1661
1630
1642
1667
1661
1698
1722
1722
1717
1717
1775
1818
1818
1872
1886
1888
1878
1895
1922
1933
1933
2036
2079
2079
2118
2197
2197
2462
2452
2476
3068
3109
3128
3286
3315
3310
3522
3548
3560
25
37
27
34
34
34
34
34
34
34
34
34
46
53
53
75
65
72
72
72
72
72
92
77
72
72
72
79
84
84
84
84
87
87
99
111
91
91
116
91
91
91
98
103
103
118
98
98
98
98
98
98
98
103
135
135
110
110
110
110
110
110
110
110
135
110
110
115
115
115
137
137
122
122
117
117
117
117
122
122
122
122
129
129
129
134
134
134
129
129
149
129
129
129
129
129
129
129
129
129
134
134
134
134
129
129
156
156
141
141
141
141
141
141
141
136
146
146
141
146
146
146
146
146
141
176
153
148
148
148
148
153
148
148
148
153
153
148
158
158
158
153
148
158
158
153
153
158
158
148
148
148
158
180
180
160
160
160
160
160
170
165
165
160
172
172
172
167
172
172
172
167
172
177
167
177
172
177
177
172
172
172
172
172
172
204
184
179
189
189
184
184
189
189
179
184
184
219
219
191
191
191
191
191
191
191
191
191
191
191
191
191
191
191
196
203
198
198
208
203
250
210
222
217
222
217
229
229
281
293
293
300
300
305
319
341
324
353
336
355
360
360
367
382
374
379
384
391
386
398
398
408
408
410
415
415
415
415
417
417
427
427
427
427
417
417
417
427
427
424
446
441
441
441
446
446
446
451
436
446
446
441
436
436
453
453
448
458
458
453
453
453
463
448
448
463
448
448
443
443
443
443
463
460
460
470
455
470
470
455
455
467
472
472
482
467
474
494
484
479
506
491
496
496
486
486
506
491
491
496
486
486
486
501
493
493
493
523
518
518
498
493
513
510
510
527
537
522
522
517
539
539
534
539
539
529
551
561
546
551
551
541
563
558
573
558
568
553
553
570
577
604
604
589
596
591
606
598
618
618
620
615
615
627
627
637
637
659
649
649
656
671
668
687
702
702
714
726
711
711
706
706
711
711
706
706
718
742
800
780
810
797
797
834
839
819
829
806
836
843
843
818
818
833
833
825
870
840
860
860
840
884
871
915
890
922
902
902
939
929
929
929
929
951
941
941
941
945
945
1019
964
988
1045
1045
1047
1042
1007
1019
1019
1061
1071
1041
1031
1036
1031
1036
1051
1048
1048
1083
1085
1102
1112
1109
1081
1145
1162
1162
1151
1151
1151
1143
1170
1248
1273
1280
1260
1262
1269
1289
1281
1316
1291
1281
1281
1328
1308
1328
1323
1335
1300
1349
1383
1383
1358
1358
1394
1442
1497
1497
1528
1550
1555
1530
1562
1557
1606
1556
1556
1618
1588
1568
1568
1632
1656
1673
1673
1630
1642
1649
1679
1698
1734
1734
1724
1724
1787
1830
1830
1852
1884
1871
1898
1900
1890
1907
1929
1945
1945
2048
2091
2091
2130
2209
2209
2474
2464
2488
3080
3121
3140
3298
3327
3322
3534
3560
3572
1
1
1
37
49
34
34
34
41
53
53
65
60
60
60
72
72
72
72
72
72
79
79
79
84
104
84
91
91
91
91
96
96
111
111
91
91
123
98
98
128
98
103
103
103
115
110
110
110
110
110
110
110
115
115
115
115
147
147
147
117
117
117
117
117
117
117
117
122
122
122
122
122
149
149
129
129
134
134
129
129
129
129
129
129
129
134
129
134
134
141
146
141
141
161
141
136
136
136
141
141
146
141
141
146
146
146
146
141
146
168
148
153
153
148
148
148
153
148
153
148
158
153
153
158
158
153
153
153
153
188
160
160
160
170
165
165
165
160
160
160
160
160
160
192
167
172
172
172
167
167
167
167
172
177
177
172
177
172
172
207
207
179
189
189
189
189
189
216
196
191
191
191
191
191
191
191
191
226
226
203
208
203
262
234
234
236
236
288
305
305
307
312
317
336
331
353
336
355
355
360
348
372
372
379
389
389
386
391
396
391
386
386
398
398
403
403
410
410
415
415
420
410
422
422
422
422
427
427
422
427
422
427
429
429
429
439
439
439
439
424
436
453
453
453
448
448
453
458
458
458
453
453
453
443
463
458
458
448
443
463
443
465
460
465
465
470
455
455
455
475
470
460
460
455
455
455
455
475
477
467
467
467
472
477
482
482
482
474
479
479
494
474
496
501
491
513
493
493
513
513
503
503
498
493
493
493
493
513
510
535
530
530
520
517
522
522
517
539
549
529
536
546
558
573
558
563
563
553
570
585
580
565
565
565
599
579
589
611
611
611
611
606
601
608
598
618
625
625
625
627
639
649
649
671
656
656
656
663
673
683
699
699
714
714
709
726
706
706
706
706
711
738
718
723
723
718
718
730
749
766
812
822
819
809
809
846
851
836
818
843
855
855
825
825
840
840
882
872
872
852
852
896
871
890
922
922
902
909
909
951
941
941
963
948
933
952
952
1031
988
1057
1007
1059
1054
1039
1039
1019
1041
1026
1026
1073
1078
1078
1048
1048
1048
1058
1060
1095
1097
1109
1109
1124
1121
1157
1174
1174
1151
1163
1163
1175
1170
1170
1170
1182
1260
1285
1292
1272
1274
1281
1301
1293
1328
1303
1293
1340
1320
1340
1335
1347
1361
1395
1395
1370
1406
1454
1509
1509
1540
1562
1567
1574
1569
1618
1568
1630
1600
1575
1575
1592
1644
1668
1685
1685
1642
1649
1691
1724
1724
1746
1746
1799
1842
1842
1891
1883
1910
1912
1902
1919
1941
1957
1957
2060
2103
2103
2142
2221
2221
2476
2481
2500
3092
3133
3152
3310
3339
3334
3546
3572
3584
1
1
1
1
1
1
37
27
34
49
44
34
34
34
34
34
34
56
41
41
72
72
72
72
72
72
72
84
84
91
116
91
91
91
91
91
103
103
103
103
118
123
98
103
103
103
135
110
110
110
110
135
110
110
110
115
115
115
115
115
122
117
117
117
117
122
122
122
122
127
127
127
129
159
159
129
159
129
129
129
134
134
134
129
129
129
129
156
156
146
141
141
141
141
141
141
141
141
146
146
146
146
141
141
146
146
153
148
148
148
168
153
153
148
148
148
153
148
148
148
148
153
153
158
158
158
153
153
153
153
153
180
160
160
160
160
160
160
160
165
165
165
165
165
165
160
160
200
167
172
167
167
167
177
172
172
177
204
179
179
189
189
189
219
219
186
191
191
191
223
198
198
203
203
208
238
210
274
241
241
293
293
248
248
312
312
319
324
329
348
343
360
348
367
367
360
367
379
379
384
391
401
396
396
398
398
403
408
398
398
410
410
415
415
417
417
422
427
427
427
422
434
434
439
439
429
434
439
434
434
439
429
429
441
441
441
446
446
446
446
441
441
431
446
448
453
458
453
443
463
465
460
460
460
460
465
465
465
465
450
475
465
465
455
455
450
450
475
450
450
477
472
472
472
467
472
472
472
477
482
482
467
467
462
462
462
462
482
479
479
474
474
474
479
494
494
494
486
501
513
513
498
498
498
510
510
520
542
542
542
517
532
534
536
551
561
548
558
585
570
570
570
565
597
592
577
572
572
579
579
606
591
611
611
591
601
611
603
623
623
638
618
613
620
630
651
661
661
661
683
663
673
668
668
695
706
726
726
721
738
718
718
723
718
718
750
725
735
730
730
742
761
766
824
834
821
836
816
816
858
863
843
825
855
867
867
894
884
884
859
859
859
859
871
871
908
907
902
929
929
909
963
948
948
933
975
1043
988
988
1045
1045
1069
1039
1039
1019
1071
1066
1041
1031
1031
1031
1036
1051
1051
1026
1048
1085
1060
1055
1055
1067
1107
1109
1121
1121
1136
1133
1169
1186
1186
1148
1148
1182
1182
1182
1182
1182
1189
1272
1297
1304
1284
1286
1281
1293
1313
1305
1340
1315
1300
1352
1332
1352
1347
1359
1373
1407
1407
1382
1418
1466
1521
1521
1552
1574
1574
1581
1581
1630
1575
1642
1612
1656
1680
1697
1697
1654
1703
1758
1758
1811
1854
1854
1895
1922
1924
1914
1931
1953
1969
1969
2072
2115
2115
2154
2233
2233
2488
2493
2507
3104
3145
3164
3322
3346
3346
3558
3584
3596
1
1
1
1
1
1
34
44
34
34
34
34
56
41
68
53
53
72
72
72
72
84
84
84
79
79
91
91
91
91
91
91
91
91
91
91
91
91
91
91
103
103
103
128
103
103
110
110
110
110
110
110
135
110
110
110
115
115
147
122
122
122
122
147
122
117
117
117
122
122
127
127
127
127
127
127
127
134
149
129
129
129
129
129
129
129
129
134
134
139
171
171
141
171
141
136
141
141
146
146
168
148
148
153
153
148
148
148
148
153
153
153
153
153
153
158
158
148
148
153
158
158
160
160
160
160
160
165
165
165
160
160
160
165
192
172
172
167
167
172
172
177
177
177
177
212
204
179
179
179
216
191
191
191
226
226
198
235
210
210
215
210
250
222
286
236
241
236
241
305
305
260
260
324
331
331
341
355
350
360
374
379
372
379
396
396
396
403
408
408
403
403
410
410
410
420
405
405
422
422
422
422
422
422
422
429
429
434
434
434
439
439
429
429
446
446
441
441
446
446
446
446
441
431
446
446
441
441
448
453
453
453
453
453
453
453
453
460
450
475
470
477
472
467
467
467
477
472
472
477
472
472
487
472
472
487
482
489
474
479
479
474
494
494
474
474
469
469
474
469
469
494
486
501
506
501
493
493
493
498
513
503
498
493
520
510
517
517
532
554
549
549
539
536
536
536
536
546
573
553
560
570
570
565
570
597
577
577
572
572
609
579
589
584
606
591
623
603
613
618
618
615
630
630
645
625
625
625
632
637
637
656
656
663
668
668
668
673
695
695
695
680
692
687
707
706
706
711
738
738
718
718
728
750
725
725
735
730
745
730
762
742
737
749
754
773
780
780
836
836
846
843
828
870
875
855
840
862
879
879
859
859
906
896
896
871
871
888
883
883
920
895
895
890
890
919
909
941
941
933
975
945
987
1055
1000
1000
1057
1012
1007
1007
1036
1036
1031
1036
1081
1026
1083
1078
1048
1048
1043
1043
1048
1063
1063
1060
1097
1067
1079
1119
1121
1133
1133
1148
1145
1129
1181
1198
1198
1155
1155
1217
1189
1189
1189
1267
1284
1309
1316
1296
1281
1293
1293
1305
1320
1320
1312
1352
1327
1364
1339
1339
1364
1359
1371
1385
1419
1419
1394
1430
1478
1533
1533
1552
1564
1586
1593
1588
1588
1642
1654
1619
1619
1668
1630
1692
1709
1709
1661
1715
1770
1770
1823
1866
1866
1907
1934
1936
1926
1943
1965
1981
1981
2084
2127
2127
2166
2245
2245
2500
2519
3116
3157
3171
3334
3346
3358
3353
3570
3596
3608
1
1
1
1
1
1
27
27
27
34
34
34
34
34
34
34
41
68
53
80
65
60
72
72
72
72
84
79
79
96
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
103
103
103
110
110
110
140
110
110
110
110
110
110
110
110
110
110
110
122
142
122
117
117
122
122
127
127
127
127
154
134
129
129
129
159
134
129
129
129
129
129
134
134
129
129
139
139
139
134
146
161
141
141
141
146
146
183
183
178
148
148
148
153
148
180
160
160
160
160
160
160
160
165
165
160
160
167
167
167
172
172
172
172
172
172
177
177
177
199
212
179
179
179
179
184
224
216
191
191
191
191
228
228
203
238
250
247
247
227
217
217
217
217
262
229
298
253
253
312
312
312
267
267
267
267
336
331
343
353
365
362
367
377
372
384
389
386
391
384
386
403
403
408
408
415
420
415
415
415
415
417
427
422
422
422
412
412
422
434
434
434
434
429
429
434
441
441
441
446
446
441
436
436
453
453
448
448
453
453
458
458
453
448
453
453
448
448
455
455
460
460
455
460
460
450
467
477
487
482
489
479
479
479
494
474
469
494
469
494
501
491
491
491
501
501
501
493
493
493
493
498
498
498
513
513
513
498
493
510
520
510
517
522
522
517
517
529
529
539
561
561
561
548
548
558
570
585
565
570
567
582
582
572
572
609
589
589
584
621
611
611
601
591
613
608
608
603
630
610
625
627
637
637
637
644
673
668
675
680
680
685
707
687
702
702
692
719
718
723
728
728
750
750
745
730
762
742
742
757
737
774
761
766
771
771
785
792
792
817
806
806
821
821
841
836
816
816
848
843
843
858
855
840
882
887
862
891
891
871
918
908
908
878
878
900
895
932
907
902
902
902
902
929
931
941
948
945
987
957
999
1025
1067
1069
1019
1019
1019
1019
1041
1048
1048
1093
1095
1090
1060
1055
1055
1055
1070
1070
1067
1109
1086
1086
1086
1086
1131
1133
1145
1145
1160
1157
1136
1136
1193
1210
1210
1279
1296
1321
1293
1328
1308
1305
1312
1317
1324
1364
1339
1376
1351
1351
1376
1371
1383
1397
1431
1431
1406
1442
1490
1530
1530
1545
1545
1576
1556
1598
1605
1592
1649
1649
1666
1631
1631
1680
1642
1699
1721
1721
1727
1782
1782
1835
1878
1878
1919
1946
1948
1938
1955
1977
1993
1993
2096
2139
2139
2178
2257
2257
2512
2531
3128
3164
3171
3183
3346
3358
3353
3370
3582
3608
3620
1
34
34
34
34
34
39
34
46
41
53
53
80
65
60
60
60
87
72
72
72
72
72
72
72
72
72
84
84
79
79
91
91
91
91
91
91
91
91
103
98
98
103
103
98
98
103
110
110
110
115
110
110
110
110
110
110
152
117
117
129
129
129
129
129
129
134
129
129
129
129
129
129
129
129
129
129
134
129
129
139
139
141
171
141
141
141
141
141
146
146
146
153
168
153
153
148
153
148
153
153
195
195
190
160
160
160
160
160
192
172
172
172
172
172
172
172
172
172
179
179
184
179
211
224
191
191
191
191
191
191
191
191
231
223
203
240
240
250
262
259
259
234
269
241
298
310
260
260
324
324
279
279
279
279
336
348
343
355
365
365
377
374
384
384
384
379
389
381
396
384
401
391
398
396
393
393
403
405
415
410
410
405
405
415
415
422
427
427
427
417
422
422
434
434
434
434
434
441
441
441
441
441
448
453
453
453
453
453
448
448
455
465
465
460
460
455
460
450
455
455
467
482
482
467
467
467
467
474
474
479
474
469
469
494
494
501
501
506
506
501
506
513
493
493
493
498
513
493
493
510
520
525
520
522
517
529
529
529
561
541
541
568
568
570
555
555
570
565
597
577
572
584
621
601
601
591
633
623
618
613
620
620
620
620
610
645
625
625
625
622
637
639
644
644
649
656
663
680
687
702
702
702
702
692
692
697
719
714
704
706
716
731
718
718
725
735
745
762
762
752
737
774
786
773
778
778
778
797
822
824
824
824
824
811
841
836
818
818
833
833
848
843
828
828
860
855
855
870
862
847
894
899
859
859
903
903
878
925
920
920
912
944
929
929
914
909
909
941
938
933
957
999
964
1011
1032
1079
1041
1041
1036
1081
1026
1026
1048
1060
1055
1105
1102
1102
1102
1072
1062
1062
1082
1121
1093
1093
1143
1140
1157
1157
1172
1169
1205
1222
1222
1291
1308
1333
1340
1320
1312
1324
1329
1336
1376
1351
1388
1363
1363
1388
1383
1395
1409
1443
1443
1418
1454
1502
1542
1557
1557
1556
1588
1568
1610
1617
1661
1678
1643
1643
1692
1699
1654
1711
1733
1733
1739
1794
1794
1847
1890
1890
1931
1958
1960
1950
1967
1989
2005
2005
2108
2151
2151
2190
2269
2269
2524
2543
3140
3164
3183
3195
3358
3370
3382
3594
3620
3632
1
1
1
27
27
27
27
27
27
34
34
34
34
34
34
34
34
51
41
41
41
60
60
60
92
92
72
72
72
72
72
72
99
84
84
91
91
91
91
91
91
91
91
91
103
123
103
98
98
98
110
115
110
110
110
110
110
122
122
122
122
122
117
117
117
122
122
164
129
129
129
129
159
129
129
129
129
129
129
141
141
141
141
141
146
146
183
183
153
148
148
153
148
148
153
153
153
148
148
148
153
153
153
153
153
153
153
153
153
153
153
153
153
153
165
160
160
160
160
160
160
207
207
202
202
172
172
172
172
172
172
172
172
172
172
172
172
172
172
172
172
179
179
179
179
204
204
191
191
191
191
191
191
191
191
231
198
198
203
223
223
208
208
235
247
247
262
229
234
269
266
266
281
253
310
317
267
267
336
331
286
286
286
286
348
355
350
355
367
377
374
377
384
386
396
396
396
386
396
386
393
403
396
408
398
403
410
400
400
403
410
405
415
405
400
417
422
417
417
422
422
429
424
424
439
439
434
434
434
429
429
429
429
429
429
446
441
441
441
441
453
448
448
448
448
463
453
453
448
448
448
460
460
455
455
467
472
472
472
467
472
474
489
489
479
479
491
491
506
501
508
498
513
513
513
520
510
520
510
520
517
532
517
529
529
529
529
529
529
536
541
541
568
568
553
553
575
582
572
572
572
609
589
611
611
591
633
613
618
618
618
613
645
630
610
610
625
625
627
627
637
637
637
634
649
651
661
663
668
692
699
714
714
704
704
709
731
706
706
721
716
718
723
723
743
718
718
730
742
742
757
774
774
759
759
786
798
785
790
809
829
831
831
821
836
816
818
848
825
825
840
840
840
855
835
835
872
867
862
882
906
906
871
915
915
895
937
927
932
932
929
914
919
909
956
941
926
953
945
964
964
1011
1023
1032
1032
1091
1026
1043
1043
1093
1060
1070
1070
1072
1117
1114
1114
1079
1094
1133
1093
1140
1155
1152
1169
1169
1184
1181
1155
1217
1189
1234
1234
1281
1303
1320
1345
1352
1332
1336
1341
1348
1388
1363
1400
1375
1375
1400
1395
1407
1421
1455
1455
1430
1461
1514
1569
1569
1581
1568
1600
1575
1622
1629
1690
1655
1655
1704
1711
1661
1723
1740
1740
1751
1806
1806
1859
1902
1902
1943
1970
1972
1962
1979
2001
2017
2017
2120
2163
2163
2202
2281
2281
2481
2536
2555
3152
3195
3207
3370
3382
3394
3606
3632
3644
27
27
27
27
34
39
34
34
34
34
39
34
34
34
39
34
46
46
41
63
60
60
72
72
72
72
104
104
84
111
111
91
91
91
91
91
91
91
91
103
103
103
103
103
103
103
98
98
98
98
103
98
98
103
103
98
135
110
110
135
115
115
115
110
110
122
122
122
122
117
117
117
117
117
117
117
117
122
122
122
122
122
122
127
127
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
134
134
129
129
176
141
141
171
146
146
141
141
141
141
153
153
153
153
148
148
148
153
153
153
153
153
153
148
148
153
153
153
153
153
153
180
195
195
160
160
160
160
160
160
160
160
160
165
165
172
172
172
172
167
167
172
177
172
172
172
172
172
172
172
172
172
172
172
172
219
219
214
214
179
179
191
191
216
216
191
191
191
191
191
191
191
191
198
198
208
208
210
210
210
210
235
235
247
274
274
246
281
278
278
293
293
260
260
317
279
279
348
293
293
293
293
355
367
362
367
374
384
386
384
391
393
403
408
408
403
403
393
393
403
403
398
410
405
403
415
415
405
410
410
405
412
412
410
422
422
422
412
417
422
422
417
412
429
424
429
429
429
429
429
424
424
429
424
424
424
424
424
424
419
419
436
436
446
446
441
441
441
441
453
448
453
448
448
448
448
448
465
460
470
470
460
460
455
467
467
467
472
467
472
484
484
479
484
479
491
491
508
518
518
513
513
513
513
520
520
525
532
522
536
536
541
541
548
548
553
575
565
565
582
572
572
572
594
584
621
611
611
601
623
623
645
625
610
610
625
627
657
622
637
637
649
649
644
641
661
663
668
675
675
702
702
704
704
706
706
706
721
721
716
716
721
743
718
723
728
730
755
730
730
742
737
754
754
786
786
798
810
797
802
829
831
821
826
816
818
833
848
825
825
837
867
884
874
894
859
859
918
878
927
927
949
934
919
914
919
944
944
909
926
968
953
938
938
960
957
1023
1030
1026
1053
1103
1105
1067
1082
1082
1079
1079
1129
1126
1101
1093
1145
1152
1167
1164
1181
1181
1196
1193
1155
1189
1224
1246
1246
1279
1281
1293
1315
1332
1357
1364
1344
1348
1353
1360
1400
1375
1412
1387
1387
1412
1407
1419
1428
1467
1467
1442
1473
1526
1533
1574
1581
1581
1593
1575
1612
1634
1641
1630
1702
1667
1667
1716
1661
1723
1735
1752
1763
1818
1818
1871
1891
1914
1914
1929
1955
1982
1984
1974
1991
2013
2029
2029
2132
2175
2175
2214
2293
2293
2493
2507
2548
2567
3164
3207
3219
3382
3394
3406
3618
3644
3656
27
27
27
27
39
34
34
34
34
39
34
34
46
51
46
51
51
41
58
58
58
53
75
60
60
60
72
72
72
72
84
79
79
111
111
91
91
91
91
118
118
98
103
103
103
103
103
103
103
110
110
110
110
110
115
110
110
110
110
110
110
115
115
115
115
110
110
110
110
115
147
122
122
117
117
142
127
122
117
117
117
117
117
122
127
127
127
127
122
122
122
122
122
122
122
127
127
129
129
129
134
129
129
129
129
129
129
129
129
129
134
129
129
129
129
134
134
134
134
129
134
129
141
141
146
141
146
141
141
141
146
146
188
153
178
153
148
153
148
148
148
148
153
148
148
148
153
148
153
153
153
153
153
153
153
153
148
165
160
160
160
160
160
160
160
165
165
192
202
202
167
172
172
177
177
177
177
172
172
172
172
172
172
172
172
172
172
177
172
177
177
179
179
184
179
179
189
231
231
221
221
191
191
191
191
191
191
191
191
191
191
223
223
210
210
217
217
242
242
259
286
286
253
293
290
290
305
305
272
272
267
267
346
360
360
305
305
305
305
370
367
367
362
362
379
379
374
374
391
381
381
386
381
393
391
391
403
405
410
420
420
410
410
400
405
417
410
417
412
417
417
417
417
417
417
424
424
422
429
429
434
434
424
424
429
429
424
434
429
424
424
424
419
431
431
441
441
431
431
436
436
436
436
436
436
431
431
448
443
443
448
453
453
453
448
453
448
448
448
455
460
460
460
477
472
467
479
479
479
491
496
496
491
491
491
503
503
513
525
510
510
510
510
525
525
520
520
532
532
532
544
529
529
529
529
539
536
548
548
548
560
575
575
565
582
572
572
572
606
591
633
613
635
635
630
627
657
637
622
622
637
669
629
644
649
656
656
673
675
714
711
716
718
718
723
728
728
733
718
718
728
755
730
740
737
742
767
742
742
754
761
761
798
798
778
810
822
809
814
831
816
818
833
833
833
848
828
825
840
840
855
837
844
874
859
859
896
906
871
871
930
927
939
939
934
961
946
931
956
956
938
980
960
960
945
945
945
964
964
1030
1042
1060
1115
1062
1117
1089
1089
1141
1138
1157
1164
1174
1176
1193
1193
1208
1205
1187
1236
1258
1258
1286
1286
1305
1327
1344
1369
1376
1351
1351
1360
1365
1372
1412
1382
1382
1424
1399
1399
1424
1419
1431
1479
1479
1454
1485
1538
1530
1552
1593
1593
1605
1575
1592
1624
1646
1653
1642
1714
1679
1679
1728
1703
1735
1747
1764
1775
1830
1830
1883
1926
1926
1941
1967
1994
1996
1986
2003
2025
2041
2041
2144
2187
2187
2226
2305
2305
2519
2560
2579
3176
3219
3231
3394
3406
3418
3630
3656
3668
27
27
27
27
34
34
34
34
34
51
51
41
58
63
53
58
58
80
70
65
65
72
72
72
87
72
72
72
84
84
84
84
84
84
79
91
91
91
91
91
91
91
98
98
98
98
98
103
98
103
103
98
130
130
110
110
110
110
110
115
110
110
110
110
110
115
115
115
122
122
117
117
117
117
122
127
127
127
127
127
127
122
122
122
122
122
122
154
129
129
134
129
129
134
129
129
129
129
129
129
129
129
129
129
129
139
139
129
134
134
134
134
134
134
134
134
129
129
129
129
134
134
129
141
141
136
136
141
141
141
141
141
141
141
146
146
146
141
141
141
141
141
146
153
148
148
153
153
148
153
148
148
153
158
158
153
158
153
158
148
158
200
190
160
160
160
160
160
172
172
167
172
167
167
167
172
172
172
177
177
177
177
172
172
177
172
177
177
177
177
199
189
189
189
184
184
191
191
191
191
191
191
191
243
243
233
233
203
217
217
217
217
217
217
229
229
254
254
271
293
293
260
305
302
302
312
312
279
279
358
343
343
365
372
372
317
317
312
312
360
360
382
379
379
384
379
384
384
384
384
384
374
374
384
391
391
386
391
391
398
398
393
393
398
393
398
405
415
405
405
415
410
405
405
400
417
427
427
422
412
412
412
424
422
424
424
429
429
424
424
424
436
436
434
436
436
441
441
436
436
441
441
431
431
441
436
436
431
431
426
426
448
448
448
453
463
448
453
448
448
443
443
443
443
443
443
438
438
450
450
455
455
455
455
472
472
467
472
489
489
484
474
491
491
508
508
503
525
510
510
515
515
520
520
520
522
522
532
544
539
556
536
541
541
541
560
567
597
582
582
577
572
572
584
618
645
625
642
642
637
637
669
649
634
629
649
681
656
685
687
702
711
721
723
723
723
728
728
730
730
740
740
745
767
737
737
752
754
779
754
754
761
778
810
810
822
834
821
826
818
848
828
825
845
855
840
837
852
852
844
908
918
883
883
942
934
934
951
951
946
973
938
968
968
960
960
945
945
992
972
964
976
976
1054
1062
1122
1129
1148
1150
1169
1176
1188
1205
1205
1220
1217
1194
1194
1194
1194
1248
1270
1270
1298
1298
1312
1312
1339
1356
1381
1388
1372
1377
1384
1424
1394
1394
1436
1411
1411
1436
1431
1443
1491
1491
1466
1497
1550
1542
1556
1605
1605
1617
1636
1658
1665
1635
1654
1726
1691
1691
1740
1740
1740
1710
1747
1759
1729
1729
1776
1787
1842
1842
1895
1938
1938
1953
1979
2006
2008
1998
2015
2037
2053
2053
2156
2194
2194
2238
2317
2317
2531
2572
2591
3188
3231
3243
3406
3418
3430
3642
3668
3680
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
41
63
63
75
70
60
87
82
77
77
72
72
72
84
99
79
79
79
79
79
96
96
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
98
98
98
103
98
110
110
110
110
110
110
110
110
110
110
110
115
115
115
115
142
142
122
122
122
122
122
117
117
117
127
127
122
122
122
127
122
122
122
122
122
122
122
129
129
129
129
129
129
129
134
139
139
139
134
134
134
134
134
129
134
134
141
141
136
136
141
141
141
141
141
146
146
146
141
146
146
146
141
146
146
146
148
148
148
148
148
148
148
153
148
158
158
153
153
153
153
158
158
158
158
158
148
148
158
158
148
158
160
160
160
160
160
165
160
160
212
202
167
172
177
177
172
177
177
172
177
177
184
189
189
189
189
184
184
189
189
211
231
231
191
191
191
203
198
198
250
250
245
245
217
217
229
229
241
241
266
266
283
272
317
314
314
324
324
286
286
341
346
293
293
293
293
293
293
365
365
355
355
377
372
372
379
379
379
324
324
324
324
372
372
384
379
379
389
379
379
391
391
396
386
396
396
396
396
396
381
381
396
396
398
398
398
398
398
403
403
415
410
410
405
410
400
400
405
400
410
410
417
417
417
422
422
422
417
417
412
422
429
424
434
434
434
419
429
434
431
434
436
431
436
436
431
448
443
443
446
448
448
443
443
448
448
448
448
448
443
443
450
455
455
475
470
460
450
450
450
450
450
450
445
445
467
467
482
472
489
484
484
474
484
501
496
491
503
503
498
510
510
520
520
515
522
527
527
529
529
529
529
529
529
556
536
568
548
548
548
548
567
567
582
572
572
604
589
596
630
657
637
654
681
661
641
661
666
693
668
702
702
697
699
714
711
723
735
735
740
742
742
737
737
747
742
742
752
752
752
779
749
759
761
791
766
766
822
822
834
846
816
833
833
833
840
840
840
845
840
837
857
847
844
859
859
874
906
920
925
930
890
890
907
954
934
946
946
963
963
938
985
960
980
980
945
972
972
1004
979
964
976
983
983
1030
1024
1066
1070
1070
1079
1141
1160
1162
1181
1188
1200
1217
1217
1232
1229
1201
1201
1260
1282
1282
1286
1312
1312
1324
1324
1351
1368
1393
1400
1384
1389
1396
1436
1406
1406
1448
1423
1423
1448
1443
1455
1503
1503
1478
1509
1562
1561
1568
1617
1617
1629
1648
1670
1677
1642
1642
1661
1661
1738
1703
1703
1710
1752
1752
1759
1771
1736
1736
1788
1799
1854
1854
1907
1950
1950
1965
1991
2013
2013
2020
2010
2027
2044
2044
2060
2060
2168
2206
2250
2329
2329
2543
2584
2603
3200
3243
3255
3418
3430
3442
3654
3680
3692
27
27
27
34
34
34
34
34
34
39
34
34
46
46
53
75
75
60
60
60
87
82
72
72
99
94
89
89
79
111
91
91
91
91
91
91
91
91
91
91
91
91
91
103
103
98
98
98
103
103
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
115
115
115
115
115
115
122
122
122
117
117
122
127
122
122
122
154
154
134
134
134
129
129
129
129
129
129
129
129
129
139
134
134
134
134
134
134
129
129
134
134
134
129
134
129
129
141
141
141
141
146
146
146
146
146
141
146
146
146
146
146
146
146
148
153
148
153
158
158
158
153
148
158
158
153
148
153
153
153
160
160
160
160
160
165
165
160
165
160
172
167
167
167
177
177
172
177
224
214
189
189
189
189
189
189
189
243
243
203
223
208
210
205
205
262
257
257
224
224
224
224
236
236
278
278
248
248
295
260
260
260
267
267
329
326
326
341
336
336
298
298
293
293
341
353
358
353
360
305
305
305
305
360
360
360
377
372
372
362
362
379
384
384
384
384
379
391
336
336
379
379
396
391
391
396
396
391
391
398
403
393
398
403
403
403
403
403
398
398
403
403
388
388
408
403
403
398
410
410
410
410
410
410
410
415
415
415
415
415
415
417
417
410
417
407
407
422
412
412
407
427
417
422
424
429
424
429
429
429
424
424
419
434
434
434
431
436
436
431
446
426
446
453
453
443
446
453
443
443
443
443
448
450
450
450
458
455
450
450
455
455
455
450
460
450
450
450
445
487
482
472
479
494
474
496
496
491
491
491
496
513
508
515
515
522
522
527
527
527
527
527
529
529
539
539
529
529
541
541
541
541
568
580
560
582
582
604
604
584
611
601
608
610
650
642
642
642
669
649
666
656
693
673
678
705
702
714
709
711
711
726
728
737
752
754
754
749
749
754
754
754
754
764
764
791
756
771
803
773
773
834
834
846
858
833
833
833
828
825
845
840
852
852
852
852
847
847
844
864
874
932
937
942
902
914
914
914
914
914
966
953
953
953
953
970
970
945
945
997
972
992
992
979
979
976
1016
983
1030
1032
1042
1031
1031
1031
1031
1078
1060
1070
1067
1067
1082
1153
1172
1174
1141
1193
1200
1212
1229
1229
1244
1241
1272
1289
1289
1324
1331
1331
1363
1380
1405
1412
1396
1401
1408
1448
1428
1418
1418
1460
1435
1435
1460
1455
1467
1461
1510
1510
1490
1521
1574
1568
1575
1629
1629
1641
1660
1677
1677
1642
1642
1684
1684
1661
1661
1673
1673
1750
1715
1715
1764
1764
1771
1736
1736
1783
1800
1811
1866
1866
1919
1962
1962
1977
2003
2032
2022
2039
2056
2056
2072
2180
2194
2194
2218
2262
2341
2341
2555
2596
2615
3212
3255
3267
3430
3442
3454
3666
3692
3704
1
27
27
34
34
34
34
34
34
34
46
46
51
41
41
53
53
53
82
82
72
72
72
99
89
111
101
91
101
101
91
91
91
91
91
91
91
91
91
91
91
103
103
103
123
98
98
103
103
103
110
110
110
110
110
110
110
110
115
115
115
110
115
115
115
117
117
117
122
117
122
122
122
122
122
127
127
127
134
134
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
134
134
129
129
166
166
141
141
141
146
146
146
141
146
146
141
146
146
146
146
148
148
148
148
148
153
153
158
158
158
153
148
148
153
158
158
153
153
153
153
153
153
165
165
165
165
165
165
160
160
165
165
167
167
177
172
172
172
177
184
189
189
189
236
226
228
208
250
250
210
210
210
235
205
205
222
247
217
217
274
269
269
243
243
290
290
255
255
307
267
267
274
274
341
338
338
293
293
293
293
293
293
293
293
353
341
348
348
360
310
305
360
353
360
365
365
372
317
317
317
317
372
372
372
384
384
369
369
369
369
391
391
396
391
391
391
398
348
348
398
398
386
386
403
393
398
398
398
398
398
410
405
410
410
410
410
415
415
410
410
410
410
410
410
420
415
410
410
415
417
417
417
427
427
427
422
422
422
422
407
427
424
424
424
434
439
424
434
431
436
431
431
436
436
431
431
431
426
446
446
431
446
453
453
453
443
443
458
448
458
465
450
458
455
450
450
455
450
460
450
445
462
462
477
470
467
467
467
472
494
494
484
491
506
508
503
498
508
503
525
510
515
515
527
522
517
517
529
529
529
539
539
539
529
541
551
551
541
553
553
548
553
580
592
582
567
567
572
596
613
618
620
622
657
654
654
654
681
661
656
656
673
700
680
685
712
726
721
723
733
749
764
766
766
756
756
761
761
776
776
803
783
815
785
846
846
821
858
818
833
870
825
840
837
852
852
852
864
864
859
890
890
944
949
919
914
919
934
954
914
926
921
921
978
953
953
965
965
982
957
957
1009
979
1004
1004
969
964
964
983
1028
1032
1054
1048
1038
1038
1070
1090
1082
1084
1074
1074
1094
1091
1165
1184
1174
1186
1148
1205
1212
1224
1224
1241
1241
1256
1253
1284
1301
1331
1375
1392
1417
1424
1408
1413
1420
1460
1430
1430
1472
1447
1447
1472
1467
1479
1473
1522
1502
1533
1586
1568
1575
1587
1641
1641
1653
1672
1696
1696
1673
1673
1680
1680
1762
1727
1727
1776
1776
1783
1795
1812
1823
1878
1878
1931
1974
1974
1989
2015
2044
2034
2051
2068
2068
2060
2060
2084
2192
2206
2230
2274
2353
2353
2567
2608
2627
3224
3267
3279
3442
3454
3466
3678
3704
3716
1
1
1
1
1
1
1
1
34
34
34
34
34
34
34
34
46
53
53
53
53
53
63
75
60
75
82
72
72
72
72
94
79
79
79
101
111
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
103
123
103
103
103
113
113
113
98
98
98
98
98
103
103
135
110
110
110
110
115
110
110
115
115
117
122
122
117
122
122
122
127
127
127
127
127
127
127
129
134
134
129
129
129
129
134
129
139
136
136
136
136
141
141
141
141
141
141
146
141
146
146
178
178
148
148
153
153
148
148
153
148
158
153
153
153
158
153
153
153
153
153
158
148
153
153
153
158
158
160
160
160
165
165
165
165
165
160
160
165
167
177
172
172
172
172
172
172
172
172
172
177
177
177
177
179
179
236
191
248
238
240
210
262
222
247
274
234
259
269
269
286
281
281
255
255
302
302
267
267
267
267
319
286
286
286
353
343
350
350
305
305
305
305
365
360
353
372
317
317
372
360
367
372
360
360
372
379
329
324
329
324
379
379
379
379
381
386
391
396
391
391
381
381
398
403
398
398
398
405
360
360
410
410
405
410
410
405
405
405
405
405
410
410
417
422
422
417
417
427
422
417
427
424
424
424
424
434
434
439
439
439
434
434
429
429
439
434
434
431
431
446
431
426
451
453
446
443
448
443
458
453
448
458
465
450
455
450
450
465
455
450
450
465
472
462
470
472
474
474
482
474
484
496
496
506
501
496
503
513
510
510
520
520
510
537
522
527
522
517
517
517
517
534
534
529
534
529
551
551
551
548
563
563
553
560
560
560
592
587
567
604
579
579
608
625
625
642
657
632
634
669
661
661
661
668
668
693
673
685
685
692
724
733
733
735
764
756
761
776
778
778
788
788
773
773
815
795
827
797
829
818
858
858
828
828
870
845
882
837
847
847
849
864
859
871
871
902
902
934
934
914
956
961
931
966
921
921
938
970
970
990
965
972
972
994
1021
1016
1016
976
976
976
976
1040
1032
1066
1038
1055
1055
1122
1082
1102
1084
1094
1091
1101
1101
1098
1098
1098
1177
1196
1198
1160
1160
1217
1224
1236
1201
1236
1253
1253
1268
1265
1296
1313
1387
1404
1429
1436
1420
1425
1432
1472
1442
1442
1484
1459
1459
1479
1479
1491
1510
1510
1485
1534
1514
1545
1568
1598
1575
1587
1594
1653
1653
1665
1684
1708
1708
1680
1680
1774
1739
1739
1783
1788
1795
1802
1824
1835
1890
1890
1943
1986
1986
2001
2027
2056
2046
2063
2080
2080
2072
2096
2204
2218
2242
2286
2365
2365
2579
2620
2634
3236
3279
3291
3454
3466
3478
3690
3716
3728
1
1
1
1
1
1
1
1
1
1
34
34
34
34
34
41
41
41
53
53
53
75
60
60
82
82
72
89
84
79
91
91
101
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
123
113
103
103
103
103
98
98
98
98
135
115
125
110
110
110
110
110
110
110
110
125
125
110
110
115
110
110
110
147
122
117
117
117
117
122
127
127
127
127
134
129
129
129
129
129
129
129
129
129
134
134
134
129
139
139
139
134
141
141
141
146
146
141
141
146
146
148
148
153
153
153
148
148
148
148
148
153
153
153
153
158
153
153
153
153
190
190
160
165
165
165
160
160
172
172
172
172
172
172
172
172
172
172
172
172
172
172
172
172
177
177
177
184
186
186
191
191
248
228
198
198
198
250
255
250
247
247
247
217
217
269
274
259
229
279
286
266
281
281
241
293
288
288
253
260
262
262
262
262
314
314
274
274
274
274
331
286
298
298
360
355
362
362
362
362
312
312
312
312
312
312
377
372
367
360
367
362
362
379
324
324
329
379
367
367
384
384
372
372
379
379
386
341
341
386
386
391
386
386
393
398
403
398
398
388
393
393
405
405
405
405
410
410
405
410
400
400
405
400
400
372
372
417
417
417
424
424
429
429
429
424
424
429
439
429
424
439
446
446
446
441
441
431
426
446
446
446
453
453
453
453
448
453
458
465
458
475
455
450
455
465
465
450
450
465
472
467
467
477
477
474
482
484
486
486
494
496
513
513
508
530
515
510
525
530
522
532
522
522
522
532
549
529
534
539
534
529
529
546
541
541
536
563
563
563
575
575
560
587
567
604
594
579
616
586
586
610
620
632
632
632
642
657
637
669
644
661
641
661
661
705
680
685
675
675
704
711
711
736
733
733
745
745
747
752
761
771
788
790
790
800
800
785
785
827
807
839
804
836
836
836
828
830
870
870
882
852
852
847
894
849
859
859
856
890
919
909
909
946
946
926
921
968
973
938
953
953
978
960
960
945
945
982
1002
972
1006
1033
1028
1028
983
983
1052
1038
1078
1065
1075
1134
1094
1114
1091
1091
1101
1148
1105
1105
1189
1148
1208
1210
1167
1167
1167
1167
1224
1236
1201
1243
1248
1265
1265
1280
1277
1289
1289
1286
1286
1308
1325
1312
1399
1416
1441
1448
1432
1437
1444
1479
1479
1454
1454
1496
1471
1471
1491
1491
1503
1522
1497
1546
1526
1557
1568
1575
1575
1610
1587
1594
1665
1665
1677
1642
1642
1696
1720
1720
1786
1751
1751
1800
1807
1814
1836
1847
1902
1902
1955
1998
1998
2013
2039
2068
2058
2075
2092
2092
2084
2108
2216
2230
2254
2298
2377
2377
2591
2627
2634
2646
3248
3291
3303
3466
3478
3490
3702
3728
3740
1
27
34
34
34
34
34
34
34
34
34
34
34
41
53
53
53
53
53
53
53
53
65
60
65
60
60
60
87
72
72
79
101
91
91
91
91
91
91
91
91
91
91
91
103
113
103
98
98
98
98
98
98
103
103
103
103
130
120
115
110
110
110
115
110
110
110
110
110
110
110
110
110
110
147
132
122
122
137
137
122
122
117
117
117
122
122
122
122
122
122
122
122
122
122
122
122
122
154
134
134
129
129
129
129
129
134
134
129
129
129
129
139
139
141
141
141
141
141
141
146
146
146
148
148
153
148
153
153
153
153
153
158
153
153
153
153
155
155
160
160
160
160
160
160
160
160
165
160
202
202
172
172
172
172
172
172
172
172
172
172
184
191
191
198
198
198
255
240
210
205
205
205
205
262
262
259
259
281
286
271
236
291
293
278
288
288
243
243
248
305
300
260
267
267
267
322
326
326
286
286
286
286
286
286
286
286
341
341
343
293
293
293
293
338
338
310
310
355
367
367
367
362
362
357
362
374
374
374
374
384
379
367
374
379
374
374
386
336
336
341
386
386
396
396
379
379
386
386
376
353
353
398
391
391
386
388
400
400
400
405
410
410
410
410
410
405
405
410
405
405
400
400
417
417
412
412
412
412
384
384
424
424
424
424
424
429
424
434
429
429
429
431
446
441
446
453
453
453
443
448
458
458
458
448
448
448
458
458
458
465
465
450
455
465
470
477
470
482
467
477
472
477
479
484
484
486
494
496
496
498
498
506
513
508
520
520
537
527
532
537
537
522
517
517
534
544
534
544
529
529
561
541
551
536
536
558
575
575
575
560
560
572
587
587
587
587
572
594
579
604
616
586
628
618
642
622
632
642
639
639
654
649
656
668
668
700
675
675
712
717
692
697
687
716
723
723
748
745
745
737
737
752
757
759
764
759
783
783
773
800
802
802
812
812
792
792
839
819
851
843
843
828
837
882
882
847
894
859
906
856
866
866
890
938
943
980
985
965
965
990
972
972
994
1009
1009
1018
983
1040
1040
1040
1040
1064
1090
1072
1082
1082
1074
1101
1101
1126
1098
1160
1105
1105
1105
1105
1117
1201
1220
1222
1167
1167
1224
1179
1179
1243
1248
1255
1260
1277
1277
1292
1289
1301
1298
1320
1337
1312
1324
1411
1428
1453
1460
1444
1449
1479
1456
1491
1466
1466
1508
1483
1483
1503
1503
1515
1534
1509
1558
1538
1569
1568
1575
1587
1587
1622
1594
1677
1677
1689
1654
1654
1666
1661
1661
1708
1732
1732
1798
1763
1763
1812
1819
1826
1843
1859
1914
1914
1967
2010
2010
2025
2051
2080
2070
2087
2104
2104
2096
2120
2228
2242
2266
2310
2384
2384
2384
2384
2603
2627
2646
2658
3260
3303
3315
3478
3490
3502
3714
3740
3752
1
1
1
1
27
27
34
34
34
34
34
34
34
41
41
46
53
53
53
53
53
60
60
60
60
60
65
65
60
60
77
72
72
72
72
99
79
91
91
91
91
91
91
91
91
91
91
113
103
103
103
98
98
98
98
98
98
103
98
98
115
135
125
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
142
117
117
117
117
122
122
122
122
122
122
117
122
122
122
122
122
122
122
159
134
149
149
134
129
129
129
129
129
129
129
129
129
129
129
134
134
129
129
129
129
129
129
134
134
134
134
134
134
134
129
129
134
129
166
141
141
141
141
141
141
141
146
146
148
153
148
153
153
153
153
153
153
148
153
160
155
155
165
160
167
167
172
172
172
172
172
172
214
214
186
186
191
210
210
205
205
205
205
247
217
217
217
217
217
217
269
274
274
266
271
288
283
248
243
243
243
243
298
298
305
290
300
260
255
255
255
255
260
255
255
255
255
312
312
267
267
317
334
319
338
338
293
293
293
293
293
293
298
298
336
336
298
298
298
298
353
353
355
305
305
305
305
355
360
360
360
365
365
360
360
350
350
367
322
317
367
367
367
374
374
374
369
369
369
381
381
381
381
386
391
391
391
386
379
386
386
381
381
381
381
376
381
381
348
348
353
403
403
386
386
398
398
398
388
420
360
360
360
360
405
405
410
410
405
412
412
407
407
410
412
412
417
417
417
417
407
417
417
407
407
407
407
424
424
424
424
424
434
429
419
419
424
419
419
391
391
391
391
431
448
443
448
448
448
458
465
455
460
465
465
465
465
460
460
465
465
465
477
472
467
472
472
472
472
472
477
484
482
494
494
479
484
484
491
498
506
503
503
508
518
520
520
510
537
532
532
539
529
529
529
541
556
556
541
573
553
563
570
560
587
587
587
572
572
604
594
594
599
599
579
586
628
640
615
632
639
639
639
639
654
634
644
649
649
651
666
641
661
668
675
675
687
724
729
704
709
694
728
760
742
752
752
749
749
769
771
776
773
790
790
790
790
812
814
814
824
824
834
851
836
831
843
843
843
843
863
828
828
855
852
894
894
879
859
906
856
871
866
918
890
902
953
953
945
950
945
950
992
997
972
972
1002
979
979
1006
983
1030
1052
1052
1052
1052
1076
1102
1074
1113
1113
1138
1172
1117
1117
1124
1213
1167
1167
1232
1234
1179
1186
1186
1255
1260
1267
1272
1289
1289
1304
1301
1313
1332
1349
1324
1331
1423
1440
1465
1472
1456
1461
1468
1503
1478
1478
1520
1495
1495
1515
1515
1527
1546
1521
1570
1545
1545
1576
1576
1568
1587
1599
1594
1634
1689
1689
1701
1673
1673
1673
1720
1744
1744
1783
1805
1775
1775
1802
1824
1831
1838
1855
1871
1926
1926
1979
2022
2022
2037
2063
2092
2082
2099
2116
2116
2108
2132
2240
2254
2278
2322
2396
2396
2615
2658
2670
3272
3315
3327
3490
3502
3514
3726
3752
3764
27
27
27
27
34
34
34
34
34
34
39
34
34
34
46
46
46
46
53
53
53
53
53
53
58
53
53
60
60
60
60
60
60
60
60
60
72
72
72
72
72
72
84
79
79
79
79
91
91
91
91
111
91
91
91
91
91
91
91
91
91
91
91
91
98
98
98
103
103
103
103
103
103
103
115
125
110
125
125
110
110
110
110
110
110
110
110
110
110
110
110
110
110
122
147
137
137
122
122
122
122
122
122
117
122
122
122
122
122
122
122
122
129
134
154
154
134
134
129
129
129
129
129
134
134
129
129
129
171
161
161
141
141
141
141
141
141
141
141
141
141
141
141
178
178
148
148
148
153
148
148
148
153
153
160
160
160
160
160
167
172
172
172
179
179
226
226
191
191
198
198
250
217
217
269
269
224
224
224
224
224
224
224
224
224
224
286
286
236
241
236
241
278
283
243
243
300
295
255
255
255
255
305
305
310
302
312
272
272
322
267
267
267
267
267
267
267
267
317
324
324
274
274
317
329
317
341
346
341
331
338
338
293
293
343
338
338
348
348
350
350
305
305
305
305
305
348
348
310
310
310
310
360
360
317
317
317
317
317
367
372
372
367
372
377
377
372
372
357
357
357
357
334
374
374
379
379
374
379
386
386
381
381
376
393
393
386
398
398
386
393
398
393
393
393
393
393
393
388
388
388
360
360
365
405
410
410
410
398
398
405
405
395
427
407
424
419
419
424
424
424
424
424
424
429
431
431
431
431
446
426
426
426
426
403
403
403
403
448
448
448
448
448
460
465
465
460
465
465
472
467
467
472
472
472
472
472
477
477
477
484
479
484
484
494
501
501
501
501
491
503
503
510
518
515
515
520
522
530
517
532
534
544
529
529
551
541
541
536
541
568
568
548
585
565
575
560
582
599
599
594
599
579
579
606
606
640
652
642
622
651
651
666
641
656
658
673
668
675
685
687
694
736
741
716
721
733
740
772
749
759
756
756
781
771
783
788
773
790
790
785
802
802
824
826
826
836
836
841
863
843
855
855
875
860
840
840
862
852
852
847
847
879
856
906
906
871
886
866
918
930
902
914
953
953
965
965
972
962
962
1004
1009
979
1014
991
1018
1042
1064
1064
1064
1064
1036
1088
1114
1091
1120
1120
1105
1105
1150
1184
1124
1124
1225
1179
1244
1199
1246
1186
1267
1272
1279
1284
1301
1301
1316
1308
1308
1325
1339
1339
1361
1331
1435
1452
1477
1484
1468
1473
1480
1515
1490
1490
1532
1507
1507
1527
1527
1539
1558
1533
1582
1588
1588
1580
1599
1606
1646
1696
1696
1713
1673
1680
1680
1732
1756
1756
1787
1787
1814
1836
1843
1850
1867
1883
1938
1938
1991
2034
2034
2049
2075
2104
2094
2111
2128
2128
2120
2144
2252
2266
2290
2334
2408
2408
2627
2670
2682
3284
3327
3339
3502
3514
3526
3738
3764
3776
27
27
34
34
34
34
34
34
34
46
41
41
41
41
51
53
53
53
58
58
58
58
53
53
65
65
60
70
60
60
72
72
72
72
72
72
84
79
79
84
84
111
91
96
91
91
91
91
91
91
123
98
103
98
103
103
103
98
110
110
110
110
110
110
110
110
110
115
110
110
110
115
127
122
132
122
137
137
122
122
122
122
122
122
122
122
154
149
149
134
134
134
134
129
129
129
129
134
129
129
129
134
129
129
129
129
134
134
134
129
129
129
129
134
136
166
166
146
141
141
141
141
146
141
141
146
146
141
141
141
183
173
173
148
148
153
148
148
153
148
190
190
160
160
160
172
172
172
177
214
214
179
189
186
186
233
233
198
198
198
198
205
205
262
217
217
224
224
224
224
281
281
236
293
293
248
243
248
243
243
243
290
290
260
255
255
312
307
267
267
317
309
324
279
279
279
279
334
279
274
274
279
274
274
279
279
329
319
329
319
331
331
336
286
286
329
341
341
336
329
353
358
348
348
338
350
350
355
355
360
355
350
350
360
360
360
357
357
317
317
355
355
322
322
322
322
367
367
324
324
329
324
324
324
324
374
379
379
379
379
384
384
379
379
364
364
379
369
369
386
346
386
386
381
381
391
391
381
386
386
393
388
388
388
388
383
388
410
410
405
405
405
405
405
405
398
400
400
400
400
400
395
427
372
372
377
410
410
410
412
412
402
424
424
426
426
426
431
431
431
431
431
426
426
415
415
415
415
460
465
467
467
467
467
482
472
472
472
472
472
479
484
479
484
484
484
484
484
484
491
501
501
491
491
506
513
513
498
503
510
530
527
517
517
532
529
529
542
529
544
546
541
541
556
541
563
553
548
580
560
580
597
572
587
594
594
604
594
611
611
611
618
652
622
622
657
664
639
639
654
641
641
658
658
673
673
653
668
668
675
675
685
687
694
748
753
728
733
752
749
784
756
756
766
766
766
766
768
793
795
800
785
802
797
809
809
841
836
838
838
843
843
848
848
875
855
862
862
837
887
867
859
859
859
859
886
918
918
930
890
942
914
921
945
945
945
950
972
977
977
979
969
969
1016
1021
991
1026
998
1030
1054
1076
1076
1076
1076
1043
1043
1043
1043
1100
1072
1082
1082
1082
1079
1079
1101
1126
1117
1162
1196
1232
1232
1186
1251
1251
1206
1206
1258
1279
1284
1291
1296
1286
1313
1313
1328
1337
1351
1351
1331
1373
1447
1464
1489
1496
1480
1485
1492
1527
1502
1502
1544
1519
1519
1539
1539
1551
1570
1545
1594
1600
1600
1587
1606
1658
1708
1725
1680
1680
1715
1744
1768
1768
1799
1799
1826
1848
1855
1862
1879
1895
1950
1950
2003
2046
2046
2061
2087
2116
2106
2123
2140
2140
2132
2156
2264
2278
2297
2346
2420
2420
2639
2682
2694
3296
3339
3351
3514
3526
3538
3750
3776
3788
27
27
34
34
34
34
34
34
34
34
46
46
53
53
53
53
53
63
65
65
65
65
60
60
60
60
60
72
72
72
72
82
72
72
72
84
84
84
79
79
79
79
84
84
84
91
91
91
91
91
91
91
91
91
91
91
91
91
91
113
123
103
98
98
98
98
103
103
103
103
103
103
103
103
103
98
110
110
110
135
110
110
110
110
110
115
115
115
110
110
110
115
115
115
115
110
110
115
110
122
117
122
117
122
117
127
127
122
122
122
122
122
122
134
129
144
144
134
134
134
129
129
129
129
129
129
129
129
134
134
134
129
134
134
166
156
156
161
161
136
146
141
141
146
146
146
141
141
141
141
141
141
146
148
173
173
153
148
148
148
153
153
153
153
158
148
195
180
180
160
160
197
197
167
172
172
177
177
177
172
177
177
189
189
189
226
226
191
193
193
193
193
198
198
245
210
205
205
210
210
205
205
205
205
212
212
217
217
217
217
217
217
269
224
224
271
236
241
236
241
236
236
236
236
288
293
243
243
248
248
243
243
243
243
248
248
290
260
302
317
322
267
267
322
324
319
279
279
274
274
324
321
336
336
286
286
286
336
341
291
291
291
291
336
336
336
336
331
341
331
343
343
348
298
298
336
353
353
343
336
336
336
343
360
360
355
365
345
345
357
357
367
367
372
362
357
357
372
367
367
369
324
324
324
324
324
324
362
362
334
334
334
334
379
386
341
336
336
336
336
381
386
386
386
386
386
391
391
386
386
381
391
376
376
353
353
393
393
393
393
398
398
393
393
383
388
410
415
405
400
417
417
412
412
410
412
407
407
407
407
402
384
384
384
384
422
422
431
426
426
448
453
448
450
450
450
427
427
427
427
472
472
467
472
479
479
484
479
484
484
484
484
484
491
491
496
496
498
513
503
503
518
520
520
522
522
517
542
539
529
544
529
529
541
541
554
541
556
558
553
553
568
548
575
560
565
565
572
567
567
592
592
609
594
599
606
606
606
623
623
623
630
647
657
664
669
676
651
666
653
653
668
660
680
675
675
687
699
733
733
760
765
740
745
749
764
756
796
768
773
773
773
775
805
790
790
807
812
797
809
804
843
843
850
850
855
860
860
887
862
862
867
852
899
876
876
866
866
930
930
942
902
954
939
919
921
921
950
950
945
950
957
957
962
979
979
984
984
991
981
1028
1033
998
1038
1042
1066
1088
1088
1088
1088
1060
1050
1050
1082
1112
1094
1094
1086
1086
1106
1101
1101
1101
1113
1138
1105
1124
1174
1208
1206
1206
1263
1263
1270
1291
1296
1303
1308
1298
1325
1325
1340
1312
1349
1363
1363
1385
1459
1476
1501
1508
1492
1497
1504
1539
1514
1514
1556
1531
1531
1551
1551
1563
1582
1557
1606
1612
1612
1587
1670
1696
1696
1720
1737
1722
1756
1741
1741
1780
1780
1811
1811
1838
1860
1867
1874
1891
1907
1962
1962
2015
2058
2058
2073
2099
2113
2135
2152
2152
2144
2163
2271
2290
2309
2358
2432
2432
2651
2694
2706
3308
3351
3363
3526
3538
3550
3762
3788
3800
27
34
34
34
34
34
34
34
34
46
53
53
58
60
60
65
60
60
70
70
60
72
72
72
77
77
72
72
72
84
89
79
79
79
79
79
84
96
91
91
91
91
91
91
91
91
91
91
91
91
91
91
103
98
98
98
98
98
98
98
98
98
98
98
103
103
103
103
103
103
103
98
98
120
130
115
110
110
110
115
115
110
110
115
115
115
115
115
115
110
110
115
115
115
110
110
110
147
122
122
117
127
127
127
127
127
127
127
127
127
122
122
122
122
122
122
122
122
134
129
129
129
134
129
129
129
129
129
139
134
134
129
134
134
129
129
129
129
134
134
141
141
146
146
146
141
146
146
141
146
146
146
178
173
173
153
153
148
148
153
153
158
158
153
153
158
148
153
153
153
148
153
153
153
153
158
158
160
185
185
207
192
177
177
177
177
177
177
177
172
172
177
177
209
209
179
189
189
233
233
198
210
210
257
217
217
212
212
217
217
217
229
234
224
224
224
224
224
224
279
224
224
224
224
236
236
236
283
248
248
248
243
248
243
248
248
248
300
305
265
260
255
255
255
255
255
255
255
255
260
260
302
312
267
317
314
329
279
279
334
274
274
324
334
319
331
286
336
341
336
336
336
336
333
348
348
298
348
348
303
303
303
303
348
343
348
348
338
348
338
355
355
355
310
310
343
343
360
360
355
355
355
348
348
343
343
360
360
355
362
372
367
367
367
372
372
357
369
324
324
374
374
379
369
369
364
364
379
374
374
381
336
336
381
381
346
346
346
346
386
391
381
381
353
343
343
343
343
393
398
383
383
400
400
400
400
405
405
400
415
415
427
412
407
407
402
424
424
434
434
424
424
439
429
422
396
396
396
396
426
434
434
460
472
472
472
472
484
439
439
439
439
484
484
486
486
501
501
491
496
503
498
503
503
520
510
510
530
522
534
534
529
529
554
551
546
541
556
541
566
548
568
570
565
560
580
560
560
587
572
572
579
579
579
579
604
599
621
611
618
618
635
635
635
622
657
642
639
654
654
676
641
688
658
673
673
660
660
685
692
687
687
694
711
745
745
772
777
752
757
749
756
776
768
808
773
775
785
817
802
819
824
804
804
843
853
853
862
862
862
857
872
872
899
874
874
911
886
866
883
883
895
942
942
954
914
946
961
926
926
926
972
962
979
969
969
969
991
996
998
988
988
988
988
1035
1035
1045
1050
1054
1073
1100
1100
1100
1100
1050
1067
1067
1124
1113
1113
1113
1113
1113
1120
1105
1105
1150
1117
1181
1220
1213
1213
1213
1213
1275
1275
1282
1303
1308
1315
1320
1337
1337
1352
1317
1324
1361
1375
1375
1392
1471
1488
1513
1520
1504
1509
1516
1551
1526
1526
1563
1563
1543
1543
1563
1563
1575
1594
1569
1613
1624
1624
1606
1682
1708
1732
1722
1749
1768
1748
1748
1792
1792
1823
1823
1850
1872
1879
1886
1903
1919
1974
1974
2027
2070
2070
2085
2111
2164
2164
2156
2175
2302
2321
2370
2444
2444
2663
2706
2718
3320
3363
3375
3538
3550
3562
3774
3800
3812
27
27
34
34
34
34
34
34
41
53
63
53
70
60
72
72
72
72
72
82
72
72
89
89
79
79
79
79
91
91
91
101
91
91
91
91
91
91
91
91
103
103
98
98
98
98
98
98
98
98
103
103
98
103
110
110
110
110
110
110
115
115
115
110
110
110
115
115
115
115
110
110
110
110
110
115
142
122
122
117
122
117
117
117
117
117
117
127
127
127
127
122
122
122
127
127
127
127
127
122
122
122
122
122
129
129
129
129
159
129
139
139
139
134
134
134
134
134
134
134
134
134
134
134
129
134
141
146
146
141
146
141
146
146
146
141
146
146
146
141
146
146
146
146
153
153
148
148
153
153
158
153
153
153
153
158
153
158
158
158
190
160
160
180
180
160
160
165
207
197
197
167
172
177
177
177
172
172
177
172
172
172
172
172
177
219
204
189
189
189
189
221
221
186
186
186
191
245
210
205
257
217
217
212
212
212
212
217
217
217
217
217
269
224
224
224
224
241
236
236
236
291
236
243
243
248
290
260
255
260
255
260
260
260
312
272
272
317
317
267
267
267
267
272
267
267
317
309
314
324
329
326
331
331
336
341
341
331
333
343
348
353
348
348
343
353
343
348
348
338
338
345
355
355
310
355
355
355
360
360
355
315
315
315
315
355
355
355
355
345
345
355
355
345
345
355
355
362
367
367
317
317
317
367
367
367
367
367
355
355
367
372
372
362
374
379
374
364
367
367
369
381
336
336
381
381
381
381
386
381
386
386
376
376
386
393
343
343
396
393
393
393
358
358
358
358
398
398
393
393
365
400
405
405
400
405
407
407
407
407
402
422
422
424
424
439
446
446
431
431
446
446
431
434
408
408
408
408
448
446
446
450
467
484
479
479
451
451
451
451
496
496
513
508
515
515
510
522
522
522
542
546
566
563
553
553
548
568
548
578
580
582
572
587
587
572
572
599
586
586
616
633
618
618
630
630
647
647
647
639
639
654
669
654
651
688
673
653
668
673
673
700
685
685
675
675
704
699
699
733
723
752
752
752
784
789
764
764
768
773
788
778
775
815
790
790
797
829
809
831
836
843
843
855
860
860
860
860
874
874
864
864
884
884
911
886
886
886
866
923
902
902
949
949
946
946
921
921
961
973
933
933
950
972
972
979
969
984
984
991
976
976
1003
1008
995
995
1047
1057
1062
1066
1073
1085
1050
1112
1112
1112
1112
1096
1131
1103
1120
1120
1120
1105
1117
1162
1129
1193
1167
1167
1232
1213
1213
1225
1225
1287
1287
1294
1315
1320
1327
1332
1349
1349
1359
1324
1331
1373
1387
1387
1404
1483
1500
1525
1532
1516
1521
1528
1563
1538
1538
1575
1555
1555
1575
1575
1587
1606
1581
1613
1625
1636
1636
1606
1694
1720
1744
1761
1748
1748
1805
1780
1804
1804
1843
1835
1835
1862
1884
1891
1898
1915
1931
1986
1986
2039
2082
2082
2097
2123
2176
2176
2168
2187
2314
2333
2382
2456
2456
2675
2718
2730
3332
3375
3387
3550
3562
3574
3786
3812
3824
1
27
34
34
39
34
34
34
41
53
53
60
60
70
60
60
60
60
60
72
72
82
84
79
84
89
79
101
101
91
91
91
91
91
91
103
113
98
98
98
98
98
98
98
103
103
103
103
103
103
103
103
103
103
103
115
110
110
110
110
110
110
110
110
115
110
110
110
110
110
115
115
110
115
115
115
122
122
122
122
117
117
122
122
122
122
127
127
122
122
122
122
122
122
122
122
122
127
127
129
134
154
129
129
129
129
129
134
129
139
139
134
134
134
134
134
134
134
134
129
141
141
171
141
146
146
146
141
141
141
146
146
141
146
146
141
141
141
146
146
146
146
153
158
158
153
153
153
153
153
153
153
158
158
153
153
158
158
153
158
160
160
165
165
165
165
165
202
172
172
192
177
172
172
177
172
172
172
177
219
179
179
209
209
174
174
189
189
226
216
186
233
233
193
193
193
193
193
198
198
198
198
198
210
210
257
217
217
269
229
234
224
224
224
224
224
224
224
224
224
224
276
236
236
236
248
248
248
248
298
298
255
255
260
272
272
272
267
324
329
329
284
274
274
274
274
314
314
329
321
326
336
336
333
343
343
343
348
348
343
343
348
348
338
338
338
338
345
355
355
360
355
355
365
360
355
355
355
350
350
352
362
362
317
317
317
367
367
362
362
372
372
367
367
327
327
327
327
362
367
367
362
362
362
362
357
367
367
374
374
329
329
362
374
374
379
364
362
362
362
379
379
379
369
369
379
381
381
386
386
381
391
381
381
386
376
386
393
343
343
393
393
398
388
388
398
400
403
403
400
400
400
370
370
370
370
405
410
405
400
400
377
429
446
431
458
458
443
443
448
448
448
446
420
420
420
420
460
458
458
460
467
467
489
479
479
479
479
479
501
501
491
463
463
463
463
503
503
503
503
520
520
510
527
527
522
534
534
529
529
554
541
558
548
548
578
575
560
560
580
590
587
594
579
579
579
606
606
586
628
645
630
630
637
637
637
622
642
639
654
659
659
659
654
651
666
663
673
700
685
660
680
675
680
680
712
692
692
716
711
711
738
745
735
756
796
796
776
775
795
790
790
785
785
827
802
802
804
804
841
841
843
843
848
855
860
860
860
860
867
872
872
886
886
861
896
896
923
898
898
935
902
961
921
926
933
933
933
933
933
933
985
945
957
957
991
996
996
1003
1010
1015
995
1069
1074
1078
1085
1097
1077
1124
1124
1124
1124
1096
1086
1103
1103
1110
1129
1174
1136
1205
1167
1167
1179
1179
1244
1213
1213
1225
1232
1232
1299
1299
1306
1327
1332
1339
1344
1324
1361
1361
1331
1343
1385
1399
1399
1416
1495
1512
1537
1544
1528
1528
1535
1575
1550
1550
1567
1567
1587
1587
1599
1618
1593
1625
1637
1648
1648
1706
1732
1756
1773
1792
1816
1816
1855
1847
1847
1874
1896
1903
1910
1927
1943
1998
1998
2051
2094
2094
2109
2135
2188
2188
2180
2199
2297
2326
2345
2394
2468
2468
2687
2730
2742
3344
3387
3399
3562
3574
3586
3798
3824
3836
1
1
1
34
34
34
34
34
34
34
51
53
53
53
60
60
60
72
72
72
72
72
72
84
79
79
79
94
79
79
91
91
91
91
96
91
101
91
91
91
91
91
91
91
91
96
91
91
113
113
103
98
98
98
98
98
98
103
103
103
103
110
110
125
110
110
110
110
110
110
110
110
115
110
115
115
115
122
122
122
117
122
117
122
122
122
122
122
122
122
122
122
122
122
122
127
127
127
127
127
127
127
134
129
134
129
129
129
129
129
129
129
129
129
134
134
134
134
134
134
134
134
129
134
134
134
139
141
166
146
146
146
141
141
141
141
146
141
141
141
141
141
153
178
148
148
148
148
153
153
153
153
153
158
153
153
158
153
153
158
153
158
158
165
165
165
165
165
165
165
177
172
177
172
172
172
177
177
177
214
204
226
191
191
221
221
223
193
193
193
193
193
203
245
245
205
205
205
205
205
205
205
205
255
217
212
212
217
217
217
217
217
217
217
217
269
229
224
224
224
224
229
274
274
276
241
241
236
236
241
236
241
236
236
288
248
248
248
248
260
260
305
305
310
295
272
267
267
267
284
284
274
274
336
336
336
336
336
296
336
341
341
336
336
326
326
336
336
333
333
343
348
343
343
355
355
355
360
350
350
350
345
345
360
352
362
317
362
362
367
367
367
362
362
362
362
367
377
372
362
357
357
357
362
362
357
357
357
357
364
374
329
374
374
362
379
379
374
339
339
339
339
379
364
374
374
374
369
374
374
381
381
336
336
381
381
386
381
391
386
391
391
386
386
386
391
388
388
393
393
386
386
386
383
383
398
400
400
400
410
405
395
395
410
407
432
407
407
382
382
382
382
417
407
407
389
424
431
443
443
443
443
458
448
465
465
455
455
460
458
467
432
432
432
432
472
470
470
489
479
496
491
501
501
491
491
513
513
503
503
498
475
475
475
475
515
542
532
539
539
546
566
553
570
565
560
560
590
587
572
572
567
592
602
599
606
586
623
640
657
622
642
642
649
649
644
654
654
654
646
641
671
671
671
661
661
663
678
670
685
712
692
692
724
728
723
723
745
745
752
752
747
749
764
756
768
808
785
839
814
814
804
816
816
848
853
855
860
867
842
872
872
874
879
879
898
898
873
883
908
908
935
910
910
947
902
949
949
921
961
973
933
940
940
945
945
997
952
984
998
1003
1003
1010
1010
995
1081
1086
1090
1097
1109
1084
1136
1136
1086
1136
1136
1103
1110
1122
1136
1186
1217
1191
1191
1256
1213
1213
1225
1232
1311
1311
1318
1339
1344
1324
1351
1356
1331
1373
1373
1343
1350
1397
1411
1411
1428
1507
1524
1549
1556
1540
1547
1587
1562
1562
1579
1579
1599
1599
1611
1630
1605
1637
1649
1660
1660
1718
1744
1768
1785
1804
1828
1828
1867
1859
1859
1886
1908
1915
1922
1939
1955
2010
2010
2063
2106
2106
2121
2113
2200
2200
2192
2211
2271
2309
2338
2357
2406
2480
2480
2699
2742
2754
3356
3399
3411
3574
3586
3598
3810
3836
3848
1
1
1
1
27
27
27
34
34
34
34
34
53
53
65
60
60
60
65
60
60
60
72
72
72
72
72
72
72
72
79
84
79
79
79
91
91
91
101
91
91
91
91
91
91
91
91
91
91
103
113
98
98
103
103
103
103
103
103
103
103
103
103
125
125
110
110
110
110
110
110
110
110
110
110
110
110
110
110
115
110
115
132
122
122
117
122
122
122
122
122
122
122
122
127
127
127
127
127
122
159
134
129
129
129
129
129
129
129
129
134
134
134
129
134
134
134
134
129
139
139
139
146
141
141
141
141
141
141
146
146
141
141
146
146
141
146
153
153
178
153
153
148
148
158
153
158
153
153
158
160
165
165
165
167
172
172
177
177
179
179
204
226
216
186
186
236
198
198
233
233
193
193
235
210
205
210
210
257
257
212
212
217
212
212
222
222
217
267
224
224
224
224
224
224
281
281
236
241
286
286
288
253
248
243
248
243
243
248
243
248
248
298
298
298
300
300
260
260
272
272
317
322
317
307
279
279
279
279
274
274
314
314
296
296
331
331
338
343
343
348
348
348
308
343
348
353
353
348
348
333
333
348
343
333
333
345
355
355
355
355
355
362
367
367
357
362
367
372
362
362
357
357
357
372
364
369
369
329
369
369
374
384
384
362
364
374
369
369
369
369
369
374
369
369
364
364
379
379
336
381
381
386
386
386
376
381
351
351
351
351
381
391
381
381
376
381
381
393
393
403
398
403
400
400
410
407
407
407
407
417
402
402
417
419
439
422
394
394
394
394
429
429
401
431
431
443
443
448
448
448
455
455
465
460
467
477
477
467
467
467
470
444
444
444
444
479
479
482
482
479
479
496
491
498
503
498
498
525
525
542
487
487
487
487
527
549
544
551
551
558
578
565
582
572
572
572
567
567
602
599
599
599
579
579
614
618
635
652
669
644
654
654
661
661
656
666
666
641
666
678
673
673
683
683
683
670
670
690
692
724
704
736
740
730
730
749
764
764
759
771
776
768
780
820
795
785
804
851
821
821
816
848
823
823
860
865
867
872
874
874
854
879
879
864
861
883
910
910
885
920
920
922
922
902
902
947
959
961
961
933
973
933
933
985
940
952
952
984
1009
991
976
1093
1098
1102
1109
1121
1148
1148
1148
1148
1120
1110
1122
1136
1136
1153
1148
1198
1229
1211
1198
1198
1268
1213
1213
1225
1225
1232
1323
1323
1330
1324
1351
1356
1331
1363
1368
1343
1385
1385
1350
1409
1423
1423
1440
1519
1536
1561
1568
1552
1559
1599
1574
1574
1591
1591
1611
1611
1623
1642
1617
1649
1661
1672
1672
1730
1756
1780
1797
1816
1840
1840
1879
1871
1871
1898
1920
1927
1934
1951
1967
2017
2017
2075
2118
2118
2133
2125
2163
2212
2212
2204
2223
2321
2350
2369
2418
2492
2492
2711
2754
2766
3368
3411
3423
3586
3598
3610
3822
3848
3860
1
1
1
1
1
1
13
34
34
34
34
34
39
34
34
34
41
53
53
60
65
60
60
60
60
77
72
72
72
72
72
72
72
72
72
84
79
79
79
79
79
79
79
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
103
103
98
103
103
103
103
103
103
103
98
103
125
110
110
110
110
110
110
110
110
110
110
110
110
115
110
137
137
122
122
122
122
122
122
122
122
122
122
127
122
144
134
129
129
134
134
129
134
134
134
134
129
139
139
171
141
141
141
141
141
141
141
146
146
146
153
153
148
153
153
148
153
153
158
158
153
160
160
165
160
190
160
160
165
165
172
172
179
179
174
174
216
191
238
228
193
193
193
193
248
210
210
245
245
205
205
247
217
217
217
217
217
269
269
229
224
229
224
229
224
229
229
224
229
229
274
241
274
293
293
248
243
248
243
243
248
243
253
293
293
293
300
260
260
310
310
310
295
295
312
312
312
312
267
267
312
284
284
329
279
279
279
279
334
324
324
314
291
291
291
291
336
326
326
308
308
343
343
343
350
355
355
355
355
320
355
360
360
355
355
340
340
355
345
345
362
362
357
357
367
367
367
367
362
362
329
324
324
329
324
324
374
374
369
379
384
374
374
364
364
364
364
364
364
384
336
381
386
386
376
381
381
381
396
391
376
376
376
386
376
376
391
391
388
363
363
363
363
398
386
388
388
383
383
405
405
410
410
405
410
407
407
407
407
402
417
419
439
422
434
429
434
429
431
431
406
406
406
406
436
413
443
443
443
448
448
448
448
455
465
460
467
487
462
462
472
479
484
484
479
479
482
456
456
456
456
494
494
491
498
498
532
532
499
499
499
499
539
549
541
556
563
563
548
570
590
572
587
594
614
606
606
611
591
591
626
630
642
644
664
681
656
666
666
673
673
678
670
670
685
685
685
685
695
695
695
680
682
702
736
716
748
745
752
752
752
752
742
761
771
771
771
778
778
778
778
783
780
785
785
832
787
816
863
848
833
823
860
877
879
874
874
884
886
866
871
871
871
871
868
922
922
892
932
932
934
934
914
914
959
971
926
921
921
973
940
985
945
997
984
984
976
1021
1105
1110
1114
1121
1131
1133
1160
1160
1120
1160
1160
1181
1148
1148
1160
1155
1210
1241
1218
1218
1210
1280
1237
1237
1335
1335
1342
1359
1331
1363
1368
1343
1375
1380
1350
1397
1397
1392
1421
1435
1435
1452
1531
1548
1573
1580
1564
1571
1611
1586
1586
1603
1603
1618
1623
1635
1654
1629
1661
1673
1684
1684
1678
1742
1768
1792
1809
1828
1852
1852
1891
1883
1883
1910
1927
1927
1939
1946
1958
1958
1979
2029
2087
2125
2125
2145
2175
2224
2224
2216
2235
2333
2362
2381
2430
2504
2504
2723
2766
3380
3423
3435
3598
3610
3622
3834
3860
3872
1
1
13
13
25
27
27
27
27
34
34
34
34
34
34
34
34
34
34
46
46
46
51
41
41
41
53
60
60
60
60
60
60
60
60
60
82
72
72
72
72
72
72
72
72
89
79
79
79
79
79
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
103
103
103
113
98
98
98
98
98
103
103
98
103
103
110
110
110
110
110
110
110
110
115
115
110
110
110
110
110
137
137
122
122
122
122
122
122
122
122
122
122
149
149
134
134
129
129
129
129
134
134
129
129
134
134
129
129
156
156
141
141
141
141
141
141
146
146
178
153
148
153
153
153
153
153
153
153
165
160
160
165
165
172
202
184
174
174
191
191
186
223
228
198
198
193
198
198
198
198
198
250
240
255
210
210
255
217
217
247
257
257
217
217
217
259
229
234
224
224
224
224
224
224
281
281
241
236
236
281
281
274
286
293
248
248
286
300
300
260
265
293
293
300
300
293
305
312
312
312
272
272
317
267
317
317
312
312
307
307
319
319
324
324
314
314
324
296
296
336
331
336
286
286
286
286
341
321
321
348
333
333
343
320
320
350
350
355
362
362
357
362
362
362
362
362
362
332
362
362
367
367
362
362
362
362
352
352
374
369
369
374
374
374
374
364
364
381
381
336
336
336
336
381
381
381
336
336
336
336
376
386
381
391
391
381
381
386
381
391
388
388
388
403
403
388
383
383
383
383
398
383
383
403
403
395
375
375
375
375
417
417
407
422
417
407
402
422
429
431
441
441
436
441
436
443
453
418
418
418
418
425
455
455
460
460
462
467
494
484
484
479
479
479
491
486
486
486
486
494
468
468
468
468
503
506
506
498
510
544
549
511
511
511
511
551
553
568
575
575
582
577
577
572
599
599
602
579
579
579
606
606
606
606
606
626
618
623
598
598
638
642
642
642
644
676
693
678
678
685
685
670
690
680
682
682
692
692
707
707
702
689
709
748
728
760
745
745
745
730
730
752
764
764
764
759
759
754
796
768
778
778
783
783
815
785
785
787
797
797
844
809
804
804
821
821
848
823
875
860
845
874
889
891
886
886
896
891
893
868
873
888
888
878
878
880
929
929
944
944
946
946
946
946
971
983
933
933
933
933
933
985
997
952
1009
996
996
993
1033
1010
1048
1117
1122
1126
1133
1103
1118
1145
1172
1172
1172
1172
1193
1160
1160
1155
1155
1222
1198
1198
1253
1222
1292
1244
1244
1347
1347
1354
1324
1331
1343
1375
1380
1350
1387
1392
1409
1409
1404
1433
1447
1447
1464
1543
1535
1560
1580
1592
1576
1583
1623
1598
1598
1615
1615
1630
1635
1647
1666
1641
1673
1685
1696
1696
1685
1685
1685
1749
1780
1799
1821
1840
1864
1864
1903
1895
1895
1922
1951
1958
1970
1970
1991
2017
2017
2041
2099
2137
2157
2187
2236
2236
2228
2247
2345
2374
2393
2442
2516
2516
2735
3392
3435
3447
3610
3622
3634
3846
3872
3884
1
1
1
13
25
25
37
27
27
27
27
34
34
34
34
34
34
39
34
34
41
41
41
46
41
58
58
58
58
53
53
63
60
60
60
60
72
72
72
72
72
72
72
72
72
72
72
79
79
79
79
79
79
79
79
94
79
79
79
79
79
79
79
79
101
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
103
98
98
98
98
98
98
98
103
103
103
103
98
115
115
125
110
110
110
110
110
115
110
110
110
110
110
110
110
137
122
122
117
117
117
122
122
149
149
134
134
129
134
129
134
134
129
161
161
141
141
141
141
141
141
178
168
168
153
153
153
153
153
165
172
177
167
167
179
214
191
198
198
193
193
235
240
205
205
205
205
205
215
205
205
205
205
262
247
212
212
267
217
217
217
217
217
217
262
229
229
259
269
269
274
229
266
236
241
236
293
293
293
293
248
248
293
253
298
293
286
298
293
305
293
293
305
305
295
295
272
272
277
305
305
317
267
305
312
312
324
324
284
284
324
324
324
324
324
324
314
324
314
331
331
331
331
331
286
286
336
336
326
326
331
338
308
308
343
348
343
343
343
348
348
355
340
340
332
332
357
357
362
362
364
374
374
369
369
344
374
359
359
381
376
376
381
381
381
381
386
381
393
393
393
343
343
343
343
383
403
403
403
388
388
388
383
383
383
403
395
410
410
410
410
402
387
387
387
387
417
407
429
429
434
429
436
451
436
443
443
448
448
453
453
455
460
460
430
430
430
430
437
462
467
467
467
494
494
479
479
496
491
491
491
498
498
498
498
506
480
480
480
480
518
518
510
532
532
522
556
546
523
523
523
523
558
563
548
548
565
580
587
572
572
572
572
587
594
584
584
579
614
591
591
591
606
606
613
618
618
633
625
635
645
654
688
705
690
690
697
697
682
692
702
689
689
719
719
721
760
740
772
742
742
764
776
776
771
761
785
790
790
827
787
856
816
816
816
816
833
833
860
860
887
872
872
852
869
886
901
891
903
893
893
873
868
873
908
898
878
880
895
895
892
941
956
956
958
958
983
933
933
995
940
940
945
997
984
1009
991
981
981
1021
1008
1008
1000
1000
1000
1000
1045
1055
1055
1055
1072
1129
1134
1138
1145
1125
1125
1125
1125
1157
1184
1184
1184
1184
1136
1205
1234
1198
1210
1210
1265
1229
1304
1244
1359
1359
1324
1366
1343
1355
1387
1392
1399
1404
1421
1421
1416
1445
1459
1459
1476
1528
1555
1547
1572
1604
1588
1595
1635
1610
1610
1627
1627
1642
1647
1659
1678
1653
1685
1697
1708
1708
1685
1692
1692
1792
1811
1833
1852
1876
1876
1915
1907
1907
1934
1963
1970
1982
1982
2003
2029
2053
2111
2125
2125
2149
2169
2199
2248
2248
2240
2259
2357
2386
2405
2454
2528
2528
2747
3404
3447
3459
3622
3634
3646
3858
3884
3891
1
25
25
37
32
27
27
37
27
44
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
41
46
46
46
51
41
53
53
53
53
53
53
53
58
53
65
65
65
65
60
60
60
60
75
60
60
60
65
60
60
72
72
72
72
72
72
72
72
79
79
79
79
79
84
79
91
91
101
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
113
98
98
98
98
98
103
103
98
110
110
110
110
110
110
115
110
115
110
110
110
110
110
110
110
110
110
127
122
122
132
122
117
122
122
117
117
122
117
117
122
149
129
134
129
134
129
134
134
134
129
134
141
156
156
146
141
141
141
173
173
153
153
153
153
190
175
175
172
172
172
172
179
179
184
179
174
174
191
226
198
198
203
198
198
198
210
205
217
217
247
247
217
222
222
262
274
269
269
224
224
274
234
234
224
224
224
224
241
241
266
281
281
286
236
241
236
241
278
248
253
248
253
298
298
298
305
305
305
305
305
265
310
305
293
305
305
312
312
312
312
312
300
272
272
312
312
305
317
317
307
307
319
284
284
289
312
312
329
324
319
312
319
319
319
324
319
314
314
331
331
296
296
336
336
286
286
331
331
321
321
336
321
321
338
338
343
343
338
343
343
343
348
348
333
333
338
350
320
320
355
350
340
322
317
317
362
362
362
364
344
344
369
369
374
381
381
381
381
356
381
386
393
343
343
383
383
383
393
393
383
383
383
405
405
405
415
410
410
402
407
407
422
422
422
414
399
399
399
399
429
441
436
446
441
436
443
443
458
458
455
460
455
455
455
465
460
460
460
467
442
442
442
442
449
479
479
479
479
479
496
491
498
508
508
498
498
503
510
510
510
510
518
510
492
492
492
492
525
525
544
544
549
563
553
535
535
535
535
565
565
575
560
560
572
592
584
594
599
606
606
606
591
606
606
626
603
603
598
618
625
625
625
647
657
666
700
717
692
702
702
709
709
689
714
731
731
733
730
772
757
752
784
749
749
771
783
783
785
787
802
802
839
821
868
823
823
860
840
840
872
899
884
879
876
876
893
913
898
878
915
885
920
892
929
929
899
946
931
953
968
968
933
970
970
940
995
945
962
1007
957
1009
996
1021
988
988
1033
1015
1015
1015
1015
1007
1007
1057
1062
1062
1079
1084
1141
1146
1150
1110
1157
1132
1132
1169
1196
1196
1191
1191
1217
1246
1217
1217
1277
1244
1316
1371
1371
1378
1355
1362
1399
1404
1411
1416
1433
1433
1428
1457
1471
1471
1488
1567
1559
1584
1616
1618
1600
1607
1647
1622
1622
1639
1639
1654
1659
1671
1611
1690
1665
1697
1709
1720
1720
1692
1692
1804
1823
1845
1864
1888
1888
1927
1919
1919
1946
1975
1982
1994
1994
2015
2041
2065
2123
2137
2161
2181
2211
2260
2260
2247
2247
2266
2266
2369
2398
2417
2466
2540
2540
3416
3459
3471
3634
3646
3658
3870
3891
3903
1
1
37
37
27
27
44
34
34
34
34
49
49
34
34
34
34
34
34
34
56
46
41
53
53
53
53
53
58
53
53
53
63
60
60
60
65
65
60
60
70
60
60
60
60
65
60
77
77
72
87
72
72
72
72
72
84
84
79
79
84
84
79
79
91
91
91
91
91
91
91
91
91
91
91
103
103
98
98
98
98
98
98
98
98
98
98
103
103
103
98
98
103
103
125
110
110
110
115
115
115
110
110
115
110
110
110
110
110
110
110
110
137
122
122
122
122
122
117
117
122
122
127
127
122
122
122
122
122
122
122
122
122
122
134
144
129
129
134
129
129
134
134
134
129
161
161
156
141
141
146
146
141
141
141
178
178
153
148
148
158
153
153
153
153
153
153
153
180
180
155
155
197
187
187
167
172
177
177
172
172
184
179
184
179
191
191
203
238
210
210
210
210
210
205
205
255
217
217
217
217
262
229
229
259
224
224
224
224
286
281
281
241
281
241
241
241
241
278
288
288
293
253
248
248
290
310
310
310
312
312
312
312
312
277
317
312
300
312
317
317
312
319
324
324
324
324
319
279
279
324
324
324
312
324
324
314
314
314
314
331
301
319
319
336
331
291
291
291
291
319
331
331
331
326
326
338
338
308
308
348
348
338
338
338
338
338
338
343
343
338
338
343
338
338
338
338
333
350
350
355
340
355
355
355
355
340
340
357
327
327
362
357
362
367
362
362
329
329
329
329
351
351
381
381
386
348
348
343
348
348
343
383
388
388
388
368
398
398
405
408
407
417
417
417
407
407
427
414
434
429
429
426
411
411
411
411
441
441
441
436
441
436
448
448
443
458
448
460
455
460
460
462
467
472
467
472
474
454
454
454
454
479
501
461
491
491
491
491
498
503
510
515
515
510
517
517
532
522
522
530
522
504
504
504
504
537
551
551
553
553
548
542
542
542
542
572
572
587
567
567
567
594
584
584
599
591
591
591
606
606
606
613
618
618
598
618
638
610
610
625
637
644
644
659
669
678
712
729
714
714
721
721
726
743
743
745
730
784
764
764
764
796
768
814
814
851
821
848
848
823
880
884
879
911
891
925
927
892
932
899
941
938
965
980
980
940
982
982
1007
957
969
969
1019
989
964
1021
1008
1033
1015
1045
1022
1007
1069
1055
1062
1062
1062
1062
1074
1091
1091
1153
1158
1110
1157
1122
1169
1176
1136
1136
1208
1208
1203
1229
1198
1258
1289
1328
1336
1383
1383
1390
1362
1411
1416
1423
1428
1445
1445
1440
1469
1483
1483
1500
1580
1579
1571
1596
1628
1630
1612
1619
1659
1634
1634
1651
1651
1666
1671
1611
1683
1618
1697
1677
1709
1716
1732
1732
1816
1835
1857
1876
1900
1900
1939
1931
1931
1958
1987
1994
2006
2006
2027
2053
2077
2135
2149
2173
2193
2223
2272
2272
2278
2278
2381
2410
2429
2478
2552
2552
3428
3471
3483
3646
3658
3670
3882
3891
3915
13
13
27
27
27
27
27
34
34
34
34
34
44
44
34
34
34
34
34
56
56
56
41
41
68
53
60
60
60
65
60
75
60
60
60
60
60
60
60
65
72
72
72
72
72
72
82
72
72
72
72
89
89
79
99
79
84
84
84
79
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
96
91
91
96
103
98
98
98
103
103
98
98
98
98
98
103
103
98
103
103
110
110
110
110
115
115
110
110
110
115
115
110
110
110
137
122
117
122
117
122
117
122
122
122
127
127
127
127
127
127
127
122
122
122
122
122
122
122
122
149
134
134
129
129
129
129
134
129
139
134
134
134
134
134
134
134
134
134
134
134
129
129
134
156
146
141
141
141
141
141
141
146
173
173
148
148
158
158
153
153
153
153
153
153
190
190
160
160
160
160
192
162
162
177
177
177
177
177
172
209
199
199
184
191
196
186
186
186
186
186
186
231
198
198
193
198
198
210
210
250
210
210
222
217
217
217
217
267
217
217
229
229
224
224
229
229
274
274
224
224
274
271
241
241
236
241
236
281
236
236
288
288
298
290
300
300
300
265
255
255
302
300
317
312
312
312
317
317
300
317
317
324
324
319
319
319
289
324
319
279
324
319
319
329
329
319
331
331
331
331
331
331
331
331
331
319
331
331
321
321
326
326
321
321
338
313
343
343
338
338
298
298
298
298
343
343
343
338
338
338
333
333
333
333
333
320
320
355
355
350
350
350
350
350
360
355
340
350
350
350
350
350
345
357
357
357
362
367
362
367
362
362
362
362
364
372
336
336
383
363
363
388
388
398
355
355
355
355
380
410
410
410
410
410
407
417
415
402
419
444
429
429
429
429
439
426
446
436
438
423
423
423
423
448
448
460
470
460
460
460
462
467
472
472
474
474
484
479
486
501
466
466
466
466
491
508
473
503
503
503
498
510
515
510
517
532
525
525
534
534
542
516
516
516
516
549
553
560
554
554
584
584
584
599
591
606
591
591
598
598
618
618
633
625
630
625
625
645
650
642
649
656
656
671
666
681
690
670
670
702
724
741
726
726
733
733
738
755
755
730
757
742
796
776
808
783
846
826
826
821
863
833
823
860
860
892
874
874
891
923
898
895
892
937
939
944
953
938
950
977
992
992
994
994
1019
964
996
1026
996
996
1033
1015
1015
1045
1022
1022
1052
1007
1081
1079
1074
1074
1081
1098
1098
1098
1098
1108
1165
1170
1110
1157
1176
1181
1188
1148
1148
1220
1220
1160
1215
1241
1198
1210
1265
1265
1296
1296
1340
1343
1395
1395
1402
1423
1428
1435
1440
1457
1457
1452
1476
1476
1495
1495
1507
1507
1591
1583
1608
1640
1642
1592
1624
1631
1671
1646
1646
1663
1663
1678
1683
1618
1695
1689
1721
1728
1727
1744
1744
1749
1828
1847
1869
1888
1912
1912
1951
1943
1943
1970
1999
2006
2018
2018
2039
2065
2089
2147
2161
2185
2205
2235
2284
2284
2290
2290
2393
2417
2417
2436
2436
2490
2564
2564
3440
3483
3495
3658
3670
3682
3894
3891
3903
3927
13
27
27
27
27
27
27
27
27
34
34
34
39
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
46
41
68
53
68
68
53
53
75
65
60
65
60
60
72
72
72
77
87
72
72
72
72
72
72
72
72
72
72
72
72
72
84
84
84
79
79
94
79
84
84
84
79
101
101
111
91
91
91
91
91
91
91
91
96
91
91
91
91
91
96
98
98
103
103
103
103
103
103
103
98
98
103
108
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
115
115
115
110
110
110
115
122
122
122
117
127
127
127
127
127
122
122
122
122
122
122
122
122
122
122
122
122
122
149
134
129
129
129
129
129
134
134
134
129
129
129
139
139
139
134
134
134
134
134
134
156
141
146
146
146
146
141
141
141
141
141
168
153
153
158
158
158
153
180
180
197
172
202
177
177
177
172
204
191
221
191
211
211
191
203
193
193
193
193
243
210
210
210
210
210
205
222
222
262
217
217
227
217
217
252
234
224
224
274
224
224
224
224
274
274
274
241
246
236
236
236
236
286
286
281
283
248
248
248
248
243
243
293
298
300
310
300
290
290
295
302
312
277
267
267
312
312
312
314
324
314
324
324
319
279
324
329
329
319
324
324
324
324
314
314
314
301
319
331
336
336
331
331
319
336
336
338
338
343
343
338
338
338
338
338
298
298
338
338
338
338
343
333
333
345
325
350
345
345
355
340
350
345
345
345
345
345
345
345
340
340
332
332
362
362
357
362
357
357
357
357
357
372
367
362
357
357
362
357
357
352
364
379
379
374
369
369
341
341
336
379
391
391
388
355
355
355
355
355
355
355
355
375
375
410
410
367
367
402
392
422
422
429
427
427
414
434
429
431
451
441
436
431
431
431
431
451
438
448
458
450
435
435
435
435
460
472
482
472
472
472
494
474
484
484
479
486
486
498
508
478
478
478
478
498
485
515
515
510
510
510
510
517
532
522
544
537
546
546
554
528
528
528
528
553
561
560
560
542
542
542
542
572
567
567
584
566
566
591
591
591
606
606
611
606
606
598
598
598
598
618
610
630
625
637
642
642
657
662
661
683
673
675
693
690
702
682
682
714
709
736
753
738
738
745
745
750
767
767
742
769
754
808
783
788
783
820
853
838
838
833
875
845
899
899
879
886
886
868
903
898
930
930
895
949
951
956
938
965
950
989
1004
1004
964
964
1006
1006
1031
976
1003
988
1045
1027
1027
1057
1064
1093
1062
1062
1081
1081
1098
1098
1110
1110
1177
1132
1182
1122
1191
1191
1136
1188
1193
1200
1160
1155
1155
1155
1232
1232
1227
1253
1223
1210
1222
1308
1308
1352
1343
1407
1407
1362
1414
1435
1440
1447
1452
1464
1464
1464
1507
1507
1519
1519
1603
1595
1620
1652
1654
1599
1631
1631
1638
1638
1683
1653
1653
1675
1675
1690
1695
1697
1707
1716
1701
1733
1740
1734
1756
1756
1761
1799
1840
1859
1881
1900
1924
1924
1963
1955
1955
1982
2011
2018
2030
2030
2051
2077
2101
2159
2173
2197
2217
2247
2296
2296
2302
2302
2405
2448
2448
2502
2576
2576
3452
3495
3507
3670
3682
3694
3906
3915
3939
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
39
34
34
34
34
46
41
41
51
46
46
41
41
51
53
53
53
80
80
60
60
60
60
80
80
60
60
60
60
60
60
87
72
72
72
72
72
72
72
72
72
72
72
72
72
84
79
94
79
79
84
84
79
79
91
91
91
101
91
91
91
91
91
91
91
91
91
91
91
91
96
91
91
91
91
91
91
96
113
113
123
98
98
98
103
103
103
103
103
103
103
103
103
108
110
110
110
110
110
110
110
110
110
110
110
110
110
115
115
115
115
110
110
110
120
122
122
122
127
122
122
122
122
127
122
122
122
122
122
122
122
149
134
129
129
129
129
139
139
134
134
134
134
134
134
134
129
134
134
161
136
146
146
146
141
146
146
141
141
146
146
153
148
153
158
158
158
158
153
158
180
165
192
162
162
177
177
204
209
214
179
179
216
231
231
203
233
223
223
198
203
198
198
210
210
205
250
222
217
217
217
217
217
274
229
229
224
224
274
234
234
264
274
236
236
281
281
241
286
286
271
271
271
276
286
248
248
293
293
288
288
293
293
295
260
260
260
260
255
255
305
310
300
312
317
302
302
312
307
314
324
289
324
279
279
324
324
284
284
319
314
319
326
319
326
331
331
331
331
336
336
331
319
331
326
326
326
338
338
308
333
333
338
348
348
338
338
303
303
298
303
303
298
343
343
338
338
338
343
343
338
345
350
350
345
350
350
340
340
340
340
340
362
362
362
327
327
332
362
357
362
362
357
352
352
352
369
344
344
364
364
364
364
364
384
374
369
364
364
364
364
359
359
381
341
341
336
351
351
391
391
381
381
348
348
398
398
367
367
367
367
387
387
422
374
374
404
434
434
429
451
441
434
434
434
434
426
436
431
431
441
443
453
443
443
463
450
470
460
460
462
447
447
447
447
472
484
494
474
474
494
479
479
491
491
498
498
510
485
485
485
485
497
527
522
522
544
554
529
556
549
558
558
566
540
540
535
535
573
554
554
584
579
579
606
606
606
578
578
618
623
618
610
610
630
610
617
642
649
654
669
674
673
695
685
685
682
705
697
697
697
697
714
689
689
726
748
765
750
750
730
757
757
762
779
779
754
781
761
783
820
800
832
821
853
850
850
845
887
852
886
891
891
893
893
873
868
873
880
915
942
942
961
963
968
938
977
1001
996
1016
1016
976
976
988
1018
1018
1043
983
1015
1057
1034
1034
1069
1076
1105
1089
1074
1098
1098
1110
1117
1117
1132
1189
1194
1141
1203
1148
1200
1205
1212
1244
1244
1239
1198
1265
1230
1230
1222
1229
1249
1249
1320
1320
1364
1419
1419
1426
1447
1452
1459
1464
1476
1476
1519
1519
1531
1531
1615
1607
1632
1664
1599
1666
1618
1650
1650
1695
1665
1687
1687
1702
1707
1719
1728
1713
1745
1752
1768
1768
1753
1753
1811
1852
1871
1893
1912
1936
1936
1975
1967
1967
1994
2023
2030
2042
2042
2063
2089
2113
2171
2185
2209
2229
2259
2308
2308
2314
2314
2417
2460
2460
2514
2588
2588
3464
3507
3519
3682
3694
3706
3918
3927
3951
1
34
34
34
34
34
34
34
34
34
34
34
34
46
46
46
53
53
53
53
53
53
53
53
58
60
60
60
60
60
60
65
65
60
60
60
60
60
60
60
65
60
60
72
72
87
92
92
72
72
87
92
92
72
72
72
72
72
72
72
72
72
72
72
72
84
84
84
79
79
79
94
99
99
84
84
96
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
96
96
96
91
91
91
96
103
103
103
113
98
98
98
103
103
103
103
103
103
103
103
103
103
98
103
103
108
125
125
135
110
110
110
110
110
110
110
110
110
115
110
110
110
110
110
115
110
120
115
122
122
122
122
122
122
122
122
127
122
122
122
122
127
134
134
129
134
134
134
134
134
134
134
134
134
161
146
146
146
141
141
146
168
143
153
158
158
158
160
165
165
192
167
167
212
177
177
177
204
189
189
216
221
221
231
186
186
223
223
223
193
193
198
198
198
198
243
243
240
235
235
210
210
210
210
210
205
205
222
222
217
222
217
217
257
257
224
224
224
224
229
274
286
236
236
236
236
286
271
286
243
243
248
293
293
288
288
283
283
288
288
283
288
293
260
260
300
300
290
290
290
290
305
305
307
267
267
267
267
262
262
312
317
317
312
312
324
314
314
324
324
324
309
309
324
314
326
331
301
286
286
331
331
291
291
331
331
331
331
326
338
338
333
338
338
338
338
338
343
343
338
338
343
333
333
333
343
345
345
345
345
345
355
355
350
350
350
350
310
310
310
310
350
350
340
340
350
340
357
357
357
362
357
357
357
362
369
344
364
364
369
364
364
359
359
359
359
381
356
356
391
379
381
393
348
348
363
363
403
403
393
393
355
355
355
355
355
355
398
398
398
398
415
410
374
374
374
374
399
399
434
436
434
434
436
431
431
416
446
441
446
448
446
446
438
443
453
455
465
460
460
450
450
475
460
460
457
482
472
469
474
474
459
459
459
459
479
496
486
506
510
505
522
532
497
497
509
539
529
529
556
561
563
553
561
570
570
578
560
552
552
547
585
567
567
567
599
566
566
591
586
586
598
598
618
618
590
590
630
610
635
625
617
617
637
642
654
661
666
681
686
685
682
707
692
692
692
692
689
689
717
704
704
726
701
738
760
777
762
762
742
769
769
774
791
791
761
761
783
793
783
832
792
812
844
821
853
833
862
862
852
852
899
886
891
876
893
868
903
905
885
892
922
954
954
973
975
980
945
945
945
945
989
996
996
996
1013
1023
1023
983
983
1015
1030
1030
1055
1022
1027
1069
1081
1088
1062
1112
1081
1108
1110
1117
1201
1206
1148
1148
1160
1215
1155
1155
1212
1217
1224
1256
1256
1251
1210
1277
1229
1229
1256
1256
1332
1332
1376
1362
1431
1431
1438
1464
1464
1459
1459
1466
1476
1488
1488
1531
1531
1543
1543
1627
1619
1644
1676
1678
1653
1653
1662
1662
1707
1677
1694
1694
1714
1719
1731
1740
1725
1757
1764
1734
1780
1780
1760
1760
1823
1864
1883
1905
1924
1948
1948
1987
1974
1974
2006
2035
2042
2054
2054
2070
2101
2120
2183
2197
2221
2241
2271
2315
2315
2315
2315
2326
2326
2429
2472
2472
2526
2600
2600
3476
3519
3531
3694
3706
3718
3930
3939
3963
1
1
1
27
27
34
34
34
34
41
41
41
41
46
53
53
58
70
60
60
65
60
60
72
72
72
72
77
72
72
72
72
72
72
72
72
72
84
84
104
99
99
104
79
79
79
79
79
94
99
99
79
79
79
79
79
84
84
84
79
91
91
91
91
96
96
91
101
91
91
106
106
91
91
91
91
91
91
91
96
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
96
91
108
98
103
103
98
98
98
98
103
103
103
103
103
103
103
108
103
110
110
110
125
110
110
110
110
110
110
110
110
110
110
115
115
115
115
115
115
110
110
110
110
110
115
115
110
120
137
137
147
122
122
122
122
122
122
122
122
122
122
122
127
134
134
134
129
134
129
134
134
134
134
134
146
146
146
146
146
146
146
168
158
153
158
153
165
202
177
204
174
174
224
189
189
216
221
191
186
186
223
233
198
193
193
243
235
235
235
210
210
205
205
205
205
250
250
252
242
242
217
217
217
217
217
217
217
217
217
229
229
274
269
269
236
236
236
236
236
286
246
246
281
271
271
271
293
248
248
248
248
248
248
248
248
293
293
278
293
293
295
300
255
255
255
255
260
300
300
300
300
290
290
300
300
290
300
295
300
300
267
267
312
312
302
302
302
302
312
312
314
319
319
319
324
324
324
329
324
324
331
326
326
336
291
316
316
336
321
331
338
338
338
313
298
298
338
338
343
343
343
338
343
333
338
338
350
340
345
345
310
310
310
310
310
310
310
310
345
340
340
340
352
352
362
362
357
357
357
357
322
322
357
357
362
364
334
364
364
364
364
364
364
359
359
381
381
381
381
381
381
381
356
353
348
353
348
348
348
348
348
368
368
403
393
405
355
355
360
375
375
410
410
405
405
407
407
367
367
367
367
410
410
417
411
411
436
431
431
441
446
446
443
463
428
458
453
458
460
453
453
450
450
467
477
472
472
482
482
494
479
479
494
479
481
486
486
471
471
471
471
491
508
508
503
498
498
493
513
513
485
485
485
485
510
510
522
534
544
509
509
521
551
561
563
563
553
573
535
535
573
560
560
560
577
572
582
582
590
567
564
564
559
597
579
579
579
611
606
606
606
578
578
610
630
630
602
602
637
647
666
673
678
673
693
698
682
697
692
692
689
704
719
704
704
701
729
738
708
750
735
772
789
774
774
754
781
781
786
773
803
803
788
788
790
790
790
805
844
804
824
856
826
828
828
828
828
845
874
874
911
886
893
893
873
903
883
883
883
905
880
910
912
892
899
899
966
966
985
987
992
952
952
964
1001
1026
1003
993
993
1008
1008
1025
1020
1015
1015
1035
1027
1042
1042
1062
1034
1081
1093
1100
1062
1062
1074
1124
1117
1213
1218
1227
1167
1167
1224
1229
1236
1268
1268
1203
1263
1222
1289
1256
1344
1344
1388
1443
1443
1450
1476
1471
1478
1488
1500
1500
1543
1543
1555
1555
1639
1631
1656
1688
1618
1690
1665
1674
1674
1719
1689
1706
1726
1731
1743
1752
1737
1769
1776
1760
1760
1792
1792
1772
1835
1876
1895
1917
1936
1960
1960
1999
1986
2018
2047
2054
2066
2066
2113
2132
2195
2209
2228
2253
2283
2327
2327
2338
2338
2441
2484
2484
2538
2612
2612
3488
3531
3543
3706
3718
3725
3942
3951
3975
1
1
1
27
27
27
27
27
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
41
41
41
41
53
53
53
53
53
80
65
70
70
60
60
60
60
60
60
60
60
72
72
72
72
72
82
82
72
72
72
72
72
72
72
72
72
84
79
79
79
79
79
79
89
79
79
79
79
79
84
84
84
79
79
79
79
91
91
91
91
111
106
106
111
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
96
96
91
91
91
91
91
91
91
91
91
91
96
103
103
98
98
98
113
118
118
98
98
98
98
98
103
103
103
103
103
108
103
110
110
110
115
115
110
110
110
110
110
110
110
115
110
110
110
110
110
115
110
110
110
110
115
120
122
122
122
132
122
122
122
122
122
127
127
127
149
149
154
134
134
134
134
134
134
134
134
134
146
146
143
158
153
153
158
158
153
165
165
165
172
177
214
212
216
191
231
228
228
233
198
198
198
235
245
210
210
250
205
205
247
247
242
242
217
217
217
217
257
257
250
250
264
254
229
274
224
224
224
224
269
274
241
241
286
281
281
248
243
248
243
243
243
243
288
293
253
253
293
283
283
283
300
300
295
260
255
260
260
260
260
300
305
255
255
255
255
300
300
295
305
305
300
295
300
300
295
290
290
307
312
312
267
267
272
262
262
307
307
297
297
307
307
297
297
312
302
302
314
324
324
309
309
309
309
319
319
324
326
331
286
286
296
296
291
341
321
331
331
338
333
333
308
343
343
343
343
343
350
350
325
310
310
355
355
355
345
345
340
350
362
357
357
332
357
322
322
322
322
362
362
364
364
359
359
364
374
374
364
364
329
329
364
364
359
359
374
341
393
393
368
398
355
355
360
360
360
360
380
380
410
398
398
405
407
407
412
367
387
387
422
422
417
417
419
379
374
379
374
417
417
434
434
431
431
418
418
443
443
458
453
450
440
470
470
470
470
460
460
472
462
457
472
479
489
469
491
491
506
508
493
498
493
483
483
478
478
498
520
510
510
510
510
520
520
525
525
510
537
497
497
534
546
556
521
521
561
533
563
573
570
547
572
585
594
594
602
579
571
571
571
571
571
609
591
591
586
598
623
590
590
615
615
617
637
637
642
642
609
609
649
659
678
685
690
682
705
710
689
704
709
704
701
731
711
711
708
741
750
762
742
742
784
769
801
786
786
761
761
793
793
793
793
785
815
815
795
795
797
797
792
812
812
856
816
836
868
833
833
835
835
852
852
881
891
886
886
923
893
905
910
890
890
912
892
897
978
978
938
997
952
994
994
974
1004
1013
1038
1000
1000
1005
1032
1052
1027
1027
1027
1027
1047
1034
1054
1054
1093
1060
1105
1112
1062
1074
1086
1136
1130
1148
1225
1230
1155
1155
1155
1239
1174
1174
1236
1241
1248
1280
1280
1210
1210
1275
1229
1229
1301
1256
1356
1356
1400
1455
1455
1462
1488
1483
1490
1500
1512
1512
1555
1555
1567
1567
1651
1643
1668
1700
1702
1677
1686
1686
1731
1701
1718
1738
1743
1750
1764
1749
1781
1788
1760
1760
1772
1804
1804
1779
1847
1883
1883
1902
1902
1929
1948
1972
1972
1974
1974
2011
1998
2030
2066
2078
2078
2125
2144
2202
2221
2240
2265
2295
2339
2339
2350
2350
2453
2496
2496
2550
2624
2624
3500
3543
3555
3718
3725
3737
3954
3963
3987
1
1
1
1
1
1
1
27
34
34
34
34
39
34
34
39
34
34
34
34
34
34
34
34
41
41
51
68
53
53
53
53
53
53
53
60
65
60
60
60
60
60
60
60
60
60
87
72
82
82
72
72
72
72
72
72
72
72
72
72
72
84
79
94
94
79
79
79
79
84
79
79
79
79
79
79
96
101
91
91
91
91
91
91
91
91
91
91
96
91
91
91
91
103
103
103
123
123
98
98
98
98
103
103
98
98
98
98
98
98
98
103
103
103
103
103
103
108
103
115
125
135
110
110
130
130
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
115
110
110
120
122
122
122
127
122
122
122
122
122
117
117
122
122
122
122
122
122
122
127
127
127
134
134
134
134
134
134
134
134
134
161
161
166
146
146
148
153
153
158
160
165
165
165
177
179
179
174
179
212
219
221
226
224
231
191
191
228
228
198
238
238
240
240
240
245
250
205
205
205
205
205
205
250
247
257
217
217
217
222
222
217
250
250
257
259
259
264
254
224
224
224
224
224
224
224
262
262
276
266
266
236
236
236
236
236
241
286
236
281
286
281
248
248
293
243
243
243
243
288
288
278
288
293
293
293
293
255
255
255
255
255
300
300
300
300
300
290
290
290
307
267
267
267
267
267
267
312
267
267
267
267
307
317
317
312
307
307
302
302
314
324
324
279
279
279
314
314
314
314
314
314
314
314
319
314
314
314
314
319
324
326
331
331
316
316
316
316
336
333
338
338
298
298
338
303
303
338
343
343
348
338
338
350
340
340
340
310
310
310
310
310
310
345
355
355
340
355
362
357
337
322
322
357
367
362
362
362
362
364
344
359
364
364
329
329
329
329
381
386
386
381
348
348
348
383
400
400
355
355
360
360
380
405
405
407
367
367
367
367
372
372
387
387
410
417
419
399
399
429
429
424
424
426
386
386
446
430
430
455
455
470
452
482
472
482
484
474
484
491
501
481
498
498
513
505
505
495
495
490
510
510
532
517
517
527
527
537
537
544
544
509
509
554
546
558
563
563
533
533
545
575
577
572
559
597
606
606
614
596
586
583
598
598
583
583
621
598
598
610
635
602
602
622
622
609
609
649
649
654
654
621
621
656
671
690
697
697
692
692
717
722
701
721
711
708
743
748
762
742
774
796
776
776
761
813
798
798
773
773
805
805
790
797
797
797
797
797
827
827
809
799
824
824
868
823
853
848
833
875
835
852
864
864
886
886
893
893
888
903
898
898
883
935
905
890
890
890
890
912
902
899
904
899
904
938
990
990
950
952
1009
964
964
1006
981
981
1016
1023
1023
1025
1032
1012
1012
1012
1044
1064
1034
1034
1059
1066
1066
1105
1067
1117
1124
1086
1093
1148
1137
1137
1148
1148
1148
1155
1237
1242
1167
1167
1167
1251
1248
1253
1260
1210
1292
1292
1287
1229
1241
1241
1313
1368
1368
1412
1467
1467
1474
1500
1495
1502
1512
1524
1524
1567
1567
1579
1579
1663
1655
1680
1712
1694
1694
1714
1689
1698
1698
1738
1713
1730
1750
1750
1750
1762
1776
1761
1793
1800
1772
1779
1816
1816
1859
1914
1914
1941
1960
1984
1984
1986
2023
2010
2042
2090
2090
2070
2137
2156
2233
2252
2277
2307
2351
2351
2362
2362
2465
2508
2508
2562
2636
2636
3512
3555
3567
3730
3725
3749
3966
3975
3999
1
1
1
1
1
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
46
51
41
46
41
41
53
53
53
53
53
58
53
75
60
60
60
60
60
60
60
60
60
60
60
60
60
60
72
72
72
72
72
72
72
72
72
99
79
89
89
79
79
79
79
79
79
91
91
91
91
91
101
101
91
91
91
91
91
91
91
91
96
91
91
91
91
91
91
91
91
103
113
103
103
103
98
98
98
98
98
98
98
98
98
103
103
103
103
103
103
103
110
115
115
135
135
110
110
110
110
125
110
110
110
110
110
110
110
110
110
115
110
110
110
115
110
120
115
122
147
137
122
122
142
142
122
122
122
122
122
122
122
122
122
122
127
129
129
129
129
129
129
134
134
134
134
134
124
124
124
124
129
129
134
134
134
134
134
134
134
134
141
141
141
146
141
141
146
146
173
173
178
153
153
158
155
155
155
155
165
167
167
167
167
207
204
174
179
191
186
186
186
186
224
231
223
238
203
198
231
243
198
198
245
245
240
240
210
205
205
250
250
210
210
247
247
252
257
262
217
257
262
262
262
259
264
224
269
269
229
229
229
229
229
262
262
224
224
274
239
269
269
274
269
269
266
266
276
266
236
236
236
269
269
283
278
278
248
248
248
248
248
248
248
293
248
248
243
243
288
258
253
258
253
293
293
293
293
300
255
255
255
255
255
255
300
295
300
295
295
295
295
305
305
305
305
267
267
267
307
297
307
297
297
297
297
297
297
314
279
279
279
319
319
274
274
274
274
314
329
324
319
314
314
319
309
309
321
321
331
331
291
291
291
326
326
326
326
316
326
326
326
326
326
336
333
338
338
338
303
303
303
303
338
343
343
348
340
340
345
345
310
310
310
310
315
355
360
340
362
362
322
322
322
322
362
362
362
374
364
349
334
334
359
364
364
374
374
374
374
364
369
381
346
341
376
356
348
398
398
393
360
360
360
360
410
398
407
407
407
407
372
372
392
419
379
379
417
429
426
386
386
386
386
411
411
434
434
436
398
398
453
442
442
462
462
472
482
474
464
494
479
494
496
486
503
513
493
478
478
515
515
517
517
527
507
507
502
522
522
544
544
549
549
521
521
566
558
563
570
575
575
545
545
557
587
589
589
579
579
571
596
609
598
618
618
621
603
603
595
610
628
622
647
614
614
621
621
656
656
661
661
633
633
683
702
689
709
704
729
729
708
728
755
760
742
774
786
761
808
773
825
810
810
780
780
817
817
809
809
799
804
839
839
816
811
836
836
833
860
875
835
852
887
864
886
891
871
871
905
905
900
900
915
910
910
947
917
902
902
909
916
916
938
1002
1002
1021
976
976
1028
1035
1037
1027
1044
1019
1019
1056
1076
1071
1078
1078
1117
1067
1079
1129
1136
1098
1098
1093
1160
1137
1137
1167
1249
1254
1179
1179
1174
1263
1260
1265
1210
1272
1304
1304
1229
1294
1241
1248
1248
1325
1380
1380
1424
1479
1479
1486
1466
1512
1507
1514
1524
1536
1536
1579
1579
1591
1591
1675
1667
1692
1724
1706
1726
1701
1710
1710
1690
1750
1750
1725
1742
1757
1762
1774
1788
1773
1805
1760
1760
1812
1779
1828
1828
1871
1926
1926
1953
1972
1996
1996
1998
2035
2022
2054
2102
2102
2082
2120
2149
2168
2245
2264
2289
2319
2363
2363
2374
2374
2477
2520
2520
2574
2648
2648
3524
3567
3579
3725
3742
3737
3761
3978
3987
4011
1
1
1
1
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
46
46
46
46
41
41
41
41
53
63
53
53
53
53
53
60
60
60
65
65
60
60
70
60
60
60
60
60
60
60
60
60
72
87
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
79
79
79
79
79
79
79
79
84
79
79
79
91
91
111
91
91
91
91
91
91
91
91
91
96
91
91
91
91
91
91
91
91
91
91
103
103
103
103
103
113
113
98
98
103
108
103
103
103
98
115
125
110
115
110
110
110
110
110
115
110
110
110
110
110
110
110
110
110
127
147
147
122
122
122
132
137
117
117
122
122
117
122
122
122
122
122
122
122
122
122
122
122
127
134
154
149
134
154
154
134
134
134
134
134
134
141
141
141
141
141
141
161
161
146
141
141
141
153
153
153
178
158
180
180
190
165
162
162
174
174
179
179
179
179
219
216
191
198
203
198
198
238
231
238
235
210
205
250
238
238
250
250
250
250
257
257
247
247
217
217
217
262
262
217
217
257
264
264
269
224
224
224
224
269
229
229
229
229
224
224
274
274
274
269
271
236
236
236
236
281
281
241
241
269
269
236
236
286
246
281
281
266
266
286
281
281
271
278
278
283
278
248
248
248
248
276
276
295
285
285
260
260
260
260
295
295
300
260
255
295
295
265
265
305
305
300
300
290
290
290
305
267
267
267
267
267
267
267
267
307
307
297
312
312
312
312
279
314
314
274
274
279
314
329
314
314
321
291
291
291
321
321
336
336
316
326
321
321
321
321
316
316
338
338
303
303
303
333
333
333
333
333
333
333
333
348
340
340
310
310
315
315
350
340
355
322
322
362
322
367
367
374
374
334
329
334
329
364
364
374
386
381
381
376
361
346
346
381
381
381
381
393
348
353
388
368
383
360
360
360
360
410
410
398
398
400
407
407
407
372
367
402
402
402
402
410
419
419
399
429
424
424
431
386
386
386
386
434
434
436
441
441
398
398
398
398
446
446
423
423
448
405
405
462
454
454
484
494
486
476
506
496
501
508
498
515
520
520
505
490
510
517
527
522
522
544
529
514
514
514
529
529
529
551
551
561
561
563
533
533
573
570
575
582
582
582
552
552
564
564
599
596
596
596
596
583
603
621
630
630
622
602
637
640
629
659
626
626
633
633
673
645
645
690
690
682
702
697
692
692
689
709
709
701
711
741
767
742
742
772
786
798
773
820
795
780
837
797
797
822
822
829
829
804
799
804
816
816
811
851
851
823
853
848
848
833
833
872
884
864
899
871
903
890
890
917
912
907
907
907
907
922
922
922
959
924
899
899
899
904
909
909
923
923
950
1014
1014
964
1008
1033
983
983
983
1000
1040
1027
1047
1012
1062
1049
1034
1034
1034
1019
1019
1019
1019
1056
1031
1068
1088
1083
1090
1090
1067
1112
1129
1079
1141
1098
1098
1148
1093
1093
1110
1110
1105
1172
1144
1144
1144
1144
1160
1174
1261
1261
1186
1186
1210
1210
1275
1235
1272
1277
1284
1316
1316
1241
1306
1248
1337
1392
1392
1367
1436
1459
1491
1491
1498
1478
1524
1519
1526
1536
1548
1548
1591
1591
1603
1603
1687
1679
1704
1736
1718
1738
1738
1713
1722
1722
1697
1737
1754
1769
1774
1786
1800
1785
1817
1772
1824
1840
1840
1883
1938
1938
1965
1984
2008
2008
2010
2047
2034
2066
2114
2114
2132
2161
2180
2228
2257
2276
2301
2331
2375
2375
2386
2386
2489
2532
2532
2586
2660
2660
3536
3579
3591
3754
3749
3773
3985
3999
4023
1
1
27
27
27
39
34
34
34
34
34
34
34
41
58
58
58
58
58
53
53
53
60
75
60
60
60
60
60
60
72
72
72
72
82
72
72
72
72
72
72
72
99
79
79
79
79
84
84
79
79
79
79
79
91
91
91
91
91
91
91
91
91
91
91
91
96
91
91
91
91
91
91
91
103
103
103
123
98
98
98
98
98
98
98
103
108
103
103
103
103
103
103
103
103
103
98
103
115
115
110
110
110
110
110
125
125
110
110
110
120
110
110
110
110
110
110
110
110
115
110
115
110
110
115
110
127
137
122
122
122
122
122
122
122
117
122
122
122
122
134
134
159
159
129
129
149
134
134
129
129
129
129
129
129
134
134
134
134
134
134
134
141
166
156
166
166
141
141
146
146
141
153
153
153
173
173
153
153
160
160
160
190
165
192
197
172
207
207
179
179
186
186
186
186
226
223
198
198
203
198
198
250
210
210
250
250
238
238
245
245
242
262
217
257
257
217
217
262
262
257
247
252
262
269
269
269
269
269
269
229
229
269
269
269
276
281
236
236
276
276
276
236
236
286
281
281
276
283
248
248
288
288
288
248
248
276
276
248
293
293
293
288
288
288
278
278
293
288
288
283
290
290
295
290
260
255
300
260
260
295
265
265
295
290
297
297
272
267
267
267
307
307
307
272
307
277
277
312
312
307
302
302
302
312
279
279
279
279
274
274
274
274
314
314
314
314
314
314
319
319
319
319
321
291
326
326
291
336
336
326
326
326
316
316
316
303
298
298
338
338
303
303
303
348
343
338
315
315
315
340
340
340
340
310
310
340
340
340
340
340
355
322
322
322
322
362
367
374
364
334
334
374
374
386
381
386
341
341
384
381
381
398
393
348
353
388
368
353
353
388
405
360
365
400
380
398
372
372
402
402
417
417
417
417
410
419
379
414
414
429
422
431
426
386
386
386
386
411
436
441
438
398
398
453
453
405
405
405
405
458
458
435
435
460
462
479
479
466
466
506
498
488
518
503
503
513
520
510
515
527
517
502
522
544
544
541
526
561
563
563
573
573
573
573
575
545
545
582
582
577
594
564
564
576
611
596
596
603
608
608
598
595
615
633
602
642
642
622
614
629
629
652
671
661
661
638
638
645
645
685
657
657
682
692
692
709
709
709
709
704
704
701
721
721
713
728
753
779
754
754
784
766
761
761
798
795
810
780
832
849
809
834
834
841
841
816
823
863
863
830
860
860
845
845
875
857
852
852
884
891
871
911
898
888
915
907
907
902
924
924
904
904
899
904
919
919
934
934
971
911
911
916
950
969
1026
1026
976
1000
1015
1045
1052
1034
1034
1059
1061
1031
1031
1068
1038
1080
1100
1095
1102
1102
1124
1136
1136
1153
1155
1155
1105
1105
1122
1122
1112
1184
1144
1144
1156
1156
1167
1167
1273
1222
1222
1287
1242
1242
1284
1289
1234
1229
1229
1296
1261
1261
1328
1328
1248
1318
1349
1348
1367
1404
1404
1448
1503
1503
1510
1490
1536
1531
1538
1548
1560
1560
1603
1603
1615
1615
1623
1699
1691
1716
1748
1730
1750
1750
1725
1697
1697
1757
1734
1734
1749
1766
1781
1786
1798
1760
1812
1797
1829
1779
1836
1852
1852
1895
1950
1950
1977
1996
2020
2020
2022
2059
2046
2126
2126
2144
2173
2202
2192
2240
2269
2288
2313
2343
2387
2387
2398
2398
2501
2544
2544
2598
2672
2672
3548
3591
3603
3766
3761
3785
3997
4011
4030
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
51
46
41
41
41
53
60
60
70
65
65
65
65
60
60
60
72
72
72
72
87
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
84
79
94
79
84
84
84
79
79
91
91
111
91
91
91
91
91
91
91
91
96
91
91
91
91
91
91
91
98
98
98
108
98
98
103
103
103
103
103
103
103
103
103
103
103
103
103
115
110
110
110
135
110
110
105
105
110
110
120
115
110
110
110
110
115
115
110
122
122
122
137
137
122
117
122
122
127
122
122
122
122
134
149
134
134
129
134
134
134
141
146
171
171
141
141
156
141
136
136
136
136
136
146
146
141
153
153
178
178
178
148
188
180
180
160
160
160
160
160
160
165
172
172
172
197
207
204
204
209
179
179
179
179
219
219
186
186
223
223
198
198
198
233
233
210
262
217
262
257
254
269
229
229
269
269
269
269
269
269
264
264
264
264
259
264
269
281
281
281
281
276
276
236
236
236
271
251
246
281
271
271
271
271
281
281
288
243
243
243
288
288
288
243
243
248
248
248
288
293
288
288
255
255
255
255
295
295
300
295
260
300
260
305
305
300
300
300
265
265
295
295
295
285
285
300
300
295
295
290
302
302
302
267
272
307
267
267
277
277
307
302
309
309
284
314
314
319
284
314
314
319
319
314
314
319
309
309
309
324
286
286
286
286
286
286
321
321
326
326
316
316
316
338
303
333
333
338
303
338
338
303
333
333
338
315
340
315
315
355
350
340
340
327
322
322
367
367
364
334
334
369
369
374
381
381
376
346
346
341
341
341
341
386
386
381
393
353
398
353
353
391
405
405
365
400
365
365
412
372
412
392
420
387
387
402
402
379
379
414
429
429
422
426
456
391
391
391
421
421
429
441
438
398
398
418
418
423
448
405
405
465
447
447
465
465
472
474
491
491
478
478
505
500
530
532
522
522
522
539
529
514
529
529
556
556
561
568
563
563
553
538
573
575
575
585
585
582
557
557
594
606
576
576
603
623
608
598
615
615
615
607
637
637
645
622
614
629
629
654
654
626
641
664
683
673
673
650
650
657
657
692
669
669
694
716
716
716
716
713
733
733
720
765
791
796
773
773
773
773
810
797
822
844
816
846
846
861
853
853
823
830
875
875
875
872
872
887
864
864
864
864
891
896
923
905
890
922
919
909
916
926
926
946
946
983
923
923
923
957
957
957
957
976
976
1038
1038
983
983
1057
1064
1019
1019
1071
1073
1038
1038
1080
1092
1112
1107
1084
1114
1114
1136
1093
1165
1167
1167
1112
1112
1129
1129
1144
1144
1196
1156
1163
1163
1285
1299
1296
1301
1241
1241
1241
1241
1308
1268
1268
1340
1340
1330
1361
1416
1416
1460
1515
1515
1517
1517
1502
1548
1543
1550
1560
1567
1572
1610
1610
1627
1627
1604
1623
1630
1706
1703
1728
1760
1697
1742
1762
1737
1704
1704
1769
1746
1746
1756
1778
1793
1798
1810
1760
1772
1824
1809
1841
1848
1864
1864
1907
1962
1962
1989
2008
2032
2032
2034
2071
2058
2138
2138
2156
2185
2204
2252
2281
2300
2325
2355
2399
2399
2410
2410
2513
2556
2556
2610
2684
2684
3560
3603
3615
3778
3773
3797
4023
4042
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
41
63
53
53
53
53
53
60
60
60
60
60
60
60
60
60
60
60
60
72
72
72
82
77
77
72
72
72
72
72
72
84
99
79
79
79
79
84
84
84
84
84
84
79
79
91
91
106
91
91
91
91
91
91
91
96
91
91
91
91
91
91
91
91
98
98
123
98
108
103
103
103
103
103
103
103
103
103
103
103
103
103
103
110
110
110
110
120
110
110
110
110
115
115
115
110
110
115
115
115
115
115
115
110
127
122
122
147
122
122
122
122
122
127
122
122
122
122
122
134
134
149
134
129
129
149
149
134
129
134
134
134
134
146
161
146
146
146
153
183
183
153
153
143
160
160
160
165
160
190
190
190
160
160
155
200
192
172
172
172
172
172
172
172
162
162
172
172
204
179
179
179
179
179
179
209
219
209
216
216
221
186
186
186
186
231
226
226
198
198
198
233
235
235
210
210
210
210
250
205
205
250
245
245
250
217
252
269
224
224
269
264
264
266
236
236
276
271
241
276
236
236
281
281
281
281
276
276
276
276
276
276
266
276
271
266
266
276
276
288
288
288
288
248
248
283
288
258
283
283
283
283
288
288
295
290
295
300
295
300
255
255
255
255
260
260
290
300
300
300
267
307
307
267
267
267
267
272
267
312
312
307
307
292
292
297
309
279
284
319
274
274
314
324
324
314
314
314
319
309
321
321
296
321
321
326
296
321
321
336
326
316
316
316
331
338
298
298
338
333
333
303
343
348
350
340
315
340
340
315
340
355
340
340
340
340
327
322
322
327
322
339
374
374
374
369
369
369
369
374
381
381
341
341
381
393
393
353
353
388
353
358
353
358
353
353
353
353
393
393
391
388
405
360
360
410
360
360
403
417
412
412
412
377
377
379
379
424
404
427
414
391
391
421
436
441
441
429
398
398
398
453
463
405
405
430
430
435
460
477
459
459
477
484
479
486
501
498
498
498
490
490
507
542
522
544
534
551
541
526
561
541
541
575
575
575
575
565
545
587
587
597
597
569
569
606
596
596
618
603
588
588
621
635
615
619
629
649
649
657
626
641
641
666
666
661
638
648
676
678
695
680
680
657
657
669
669
676
676
729
716
701
723
723
748
720
745
745
777
803
808
800
800
780
780
822
797
797
809
834
856
823
858
858
873
860
860
882
882
884
884
899
891
871
871
908
935
890
890
907
907
902
924
904
926
923
958
958
995
930
930
964
964
1050
1050
995
995
1032
1069
1076
1031
1083
1085
1092
1104
1124
1119
1091
1126
1126
1148
1177
1179
1179
1144
1144
1141
1156
1208
1163
1261
1186
1297
1294
1311
1308
1313
1248
1248
1268
1320
1352
1352
1342
1373
1428
1428
1472
1527
1527
1529
1514
1560
1555
1567
1562
1572
1579
1584
1622
1639
1639
1611
1630
1715
1740
1772
1704
1704
1754
1774
1749
1716
1781
1758
1758
1768
1790
1805
1810
1822
1784
1836
1821
1853
1860
1876
1876
1919
1974
1974
2001
2020
2039
2039
2046
2083
2070
2150
2150
2168
2197
2216
2264
2293
2312
2337
2367
2411
2411
2422
2422
2525
2568
2568
2622
2696
2696
3572
3615
3627
3790
3785
3809
4035
4054
1
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
41
41
53
53
53
53
53
53
75
60
60
60
60
60
60
60
60
60
65
60
60
60
60
60
60
72
72
72
72
72
72
72
72
72
72
72
72
72
84
94
89
89
79
79
79
84
84
84
84
79
79
79
79
79
79
91
111
91
91
91
91
91
91
91
91
91
91
91
91
91
91
96
91
91
91
91
91
91
91
91
91
91
91
118
98
98
98
108
103
103
103
103
103
103
103
103
103
103
135
110
110
110
110
110
115
120
110
110
110
115
115
115
115
115
110
110
110
122
122
122
117
117
122
127
127
127
127
127
127
122
122
134
134
159
149
149
134
134
134
134
134
134
134
134
134
134
146
161
146
141
141
161
161
146
146
153
168
148
158
195
195
160
160
160
160
160
160
172
172
172
172
202
202
202
167
167
167
167
172
207
177
204
184
179
179
174
174
179
179
179
179
179
216
191
191
191
191
191
191
221
226
221
223
223
233
198
243
233
233
228
228
210
250
205
205
205
205
250
245
242
247
252
262
222
262
257
257
262
247
224
224
224
229
229
229
229
264
269
269
276
271
236
236
236
236
236
276
276
236
236
276
271
271
278
248
248
288
283
248
276
288
288
288
288
258
283
283
283
283
273
273
288
278
278
278
278
295
290
295
295
295
295
260
260
290
290
295
270
295
295
290
290
290
290
295
295
295
302
307
267
267
302
302
307
267
267
267
267
302
307
297
279
314
314
279
279
279
279
279
274
274
274
274
324
319
319
319
314
314
319
316
291
291
291
321
326
286
286
336
336
336
326
326
321
321
316
331
328
328
303
303
333
308
303
340
305
305
340
340
340
315
355
362
367
322
322
367
327
334
334
364
364
334
374
346
386
386
386
381
381
391
388
405
365
400
365
370
365
370
410
360
360
360
360
403
400
417
372
372
402
422
429
379
379
424
427
427
389
389
386
386
391
436
416
421
429
429
398
398
398
398
453
453
441
405
405
417
417
442
442
447
465
465
472
479
489
484
489
466
466
466
466
496
491
513
513
498
505
497
497
497
497
522
522
514
514
554
529
529
529
556
546
563
553
538
573
548
548
582
582
572
557
599
599
609
609
581
581
618
608
603
603
630
600
600
633
628
647
637
627
627
631
641
656
656
656
669
661
638
648
648
678
678
650
688
685
657
657
707
676
681
676
681
716
688
688
720
735
760
757
757
789
781
795
815
780
820
797
807
807
834
809
799
821
846
868
853
833
870
870
885
872
894
896
896
871
911
903
903
903
888
905
920
890
922
947
902
919
914
911
911
970
970
1007
964
976
983
1062
1062
1002
1002
1034
1039
1039
1039
1039
1019
1081
1088
1038
1095
1097
1067
1067
1104
1116
1091
1091
1136
1126
1138
1138
1093
1160
1142
1129
1129
1189
1144
1144
1191
1191
1156
1156
1153
1163
1220
1186
1309
1306
1248
1323
1268
1320
1325
1332
1364
1364
1354
1385
1440
1440
1484
1539
1539
1526
1572
1562
1562
1579
1569
1569
1584
1591
1596
1610
1610
1634
1651
1651
1611
1727
1752
1704
1704
1784
1716
1766
1786
1761
1723
1793
1770
1770
1780
1797
1817
1822
1834
1791
1848
1833
1865
1872
1888
1888
1931
1986
1986
2013
2027
2051
2058
2095
2077
2162
2162
2180
2204
2204
2223
2223
2276
2305
2324
2349
2379
2423
2423
2434
2434
2537
2580
2580
2634
2708
2708
3584
3627
3639
3802
3797
3821
3985
4047
4066
27
27
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
46
46
41
41
41
53
53
53
53
53
53
53
53
53
53
53
53
53
60
60
60
60
60
60
65
65
60
60
82
92
72
72
72
72
72
72
72
72
72
77
72
72
72
72
72
72
72
72
72
72
72
84
79
79
79
79
79
79
79
79
84
84
84
79
79
79
79
79
84
84
91
91
91
91
91
101
101
101
91
91
91
91
91
91
91
91
91
91
91
96
96
91
91
91
91
91
91
91
91
91
123
98
98
108
103
103
103
103
103
98
103
130
110
110
110
110
110
110
110
120
115
110
110
110
110
110
110
115
110
110
115
115
147
122
122
122
127
127
127
117
117
127
127
127
127
127
122
122
122
122
122
134
134
129
129
124
124
124
124
134
134
134
134
134
171
161
161
136
136
136
136
146
141
146
146
153
168
153
168
168
148
148
153
158
165
155
155
172
207
207
207
207
202
202
167
167
167
172
172
167
167
207
177
177
184
184
214
214
214
179
184
179
214
214
189
189
216
196
186
186
186
186
191
186
186
186
223
233
203
233
228
198
198
198
198
198
198
228
235
245
215
205
250
205
205
250
240
240
217
262
257
257
262
252
247
254
259
224
264
229
229
269
269
229
269
264
264
269
269
269
269
269
269
259
276
236
236
271
236
236
236
281
276
281
271
281
281
283
248
248
248
276
283
258
276
288
283
300
260
260
295
295
290
295
295
290
290
295
295
290
290
295
265
265
270
295
290
290
290
290
290
295
290
290
285
285
295
302
307
307
272
267
272
267
267
267
302
297
307
307
297
297
297
297
302
309
314
279
279
314
314
274
274
279
309
324
319
314
319
319
291
321
321
291
291
291
291
321
286
286
286
286
336
321
316
328
303
333
293
293
333
333
335
335
345
315
340
340
327
367
367
374
334
334
374
374
339
334
334
369
369
346
346
386
386
346
386
368
358
398
398
393
388
388
412
412
412
402
402
377
382
377
382
417
417
429
384
399
414
434
441
391
436
401
401
438
398
398
398
398
398
448
428
441
441
405
405
465
465
475
448
417
417
467
467
424
424
454
454
459
477
477
484
486
501
491
491
496
508
498
498
515
505
520
520
522
522
522
509
509
509
509
529
526
526
566
541
541
541
568
553
573
575
565
550
582
552
552
584
569
584
611
611
621
621
596
596
593
593
608
630
615
610
610
642
612
612
642
645
659
649
634
634
661
643
648
681
673
650
690
690
685
685
662
700
719
688
693
688
693
723
723
700
700
720
747
772
769
769
801
788
788
780
802
827
832
804
799
804
846
821
811
828
858
860
860
880
840
840
840
882
882
882
882
897
884
906
896
871
908
908
923
915
910
910
910
910
895
907
907
932
959
914
926
921
982
982
1019
964
986
976
983
983
983
995
1074
1074
1019
1019
1046
1046
1031
1088
1100
1107
1109
1079
1116
1128
1148
1138
1093
1150
1150
1105
1172
1129
1149
1149
1141
1141
1196
1196
1203
1203
1168
1168
1160
1227
1227
1321
1248
1318
1335
1332
1337
1344
1376
1376
1366
1397
1452
1452
1496
1551
1551
1538
1584
1591
1581
1581
1596
1603
1608
1622
1646
1663
1663
1630
1706
1739
1759
1716
1796
1723
1778
1798
1773
1805
1760
1782
1782
1792
1809
1829
1834
1846
1860
1845
1877
1884
1900
1900
1943
1998
1998
2025
2039
2039
2063
2070
2107
2089
2174
2174
2192
2235
2235
2288
2317
2336
2361
2391
2435
2435
2446
2446
2549
2592
2592
2646
2720
2720
3596
3639
3651
3814
3809
3833
3997
4030
4059
4078
1
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
51
41
41
41
46
41
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
60
60
75
65
60
60
60
60
60
60
60
60
60
60
60
60
65
65
60
60
65
65
72
72
72
72
72
72
72
72
72
77
77
72
72
72
72
72
72
72
72
72
94
99
104
84
79
79
79
79
79
79
79
79
79
79
79
84
84
84
79
79
79
79
84
84
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
96
91
91
91
91
91
91
91
91
96
96
113
113
113
98
98
103
98
98
103
103
103
135
110
110
120
115
110
115
110
110
110
110
110
110
115
115
110
115
115
142
122
117
117
127
127
127
122
122
122
159
134
134
134
134
134
134
134
134
134
134
134
134
134
141
136
136
136
136
146
146
146
153
183
168
168
148
153
148
148
143
143
143
143
143
148
148
148
158
153
165
165
180
160
155
155
160
160
188
160
160
160
172
172
207
177
219
219
219
219
214
214
179
174
179
179
179
219
179
179
207
207
189
189
226
221
221
191
186
226
186
186
226
226
191
191
191
186
186
186
186
186
228
228
233
198
203
198
198
198
235
245
210
210
250
250
245
245
235
235
245
205
205
205
205
205
205
250
240
247
247
257
222
222
262
257
257
247
247
252
247
269
269
229
269
269
269
259
259
259
266
271
281
276
276
276
271
276
276
271
271
271
271
281
276
281
281
281
281
271
271
276
276
266
248
283
248
248
248
248
293
293
276
278
278
288
288
283
300
290
260
255
255
255
295
295
290
265
265
295
290
295
267
267
267
307
297
267
297
302
302
302
302
277
277
292
302
302
302
292
292
302
309
319
319
314
279
279
279
279
274
274
309
314
319
314
314
314
316
316
291
291
291
316
336
321
316
303
298
298
298
298
298
298
298
293
298
293
348
333
315
345
345
340
345
315
340
340
340
340
347
347
357
362
362
362
362
374
334
379
374
374
374
386
346
346
346
351
341
341
346
346
381
358
358
353
353
393
370
405
405
412
402
424
424
424
414
389
394
389
394
441
391
411
426
446
453
438
398
398
398
448
413
413
463
405
405
405
405
460
440
448
448
417
417
465
477
477
482
424
424
474
474
466
466
471
484
484
486
486
496
513
505
505
520
510
510
520
520
522
522
522
517
532
532
527
527
532
521
521
521
521
541
553
578
553
553
548
573
580
587
582
572
577
562
564
564
596
581
596
596
591
591
623
623
603
603
633
633
608
608
600
600
600
600
615
615
642
654
619
619
619
619
649
649
657
671
656
656
673
650
693
685
662
702
702
669
712
701
731
723
700
705
700
705
735
735
712
712
754
784
781
781
813
802
814
799
839
844
816
858
828
828
823
870
872
892
847
847
894
894
894
909
896
918
903
920
920
910
910
910
910
935
895
907
907
922
922
922
907
929
919
919
944
971
921
930
994
994
1031
976
976
993
1015
995
995
995
1017
1002
1019
1086
1086
1031
1043
1112
1067
1119
1116
1128
1135
1160
1150
1105
1162
1162
1112
1184
1148
1148
1215
1215
1175
1175
1239
1239
1333
1330
1347
1344
1349
1356
1388
1388
1378
1409
1464
1464
1508
1563
1563
1550
1596
1603
1593
1593
1608
1615
1620
1634
1658
1675
1675
1630
1718
1704
1704
1739
1751
1756
1723
1808
1790
1810
1785
1760
1817
1772
1794
1794
1804
1821
1841
1846
1858
1872
1857
1889
1896
1912
1912
1955
2037
2051
2075
2082
2119
2101
2186
2186
2204
2247
2247
2300
2329
2348
2373
2403
2447
2447
2458
2458
2561
2604
2604
2658
2732
2732
3608
3651
3663
3826
3821
3845
4042
4071
4090
1
1
13
27
27
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
41
41
41
53
53
53
53
53
53
53
53
60
60
65
65
65
65
65
60
60
60
60
60
60
60
60
60
65
60
60
60
60
65
65
72
72
82
92
72
72
72
72
72
72
72
72
72
72
72
72
72
77
77
72
72
84
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
84
84
84
84
84
79
79
91
91
101
106
111
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
96
91
91
96
91
91
91
91
96
96
103
98
98
98
98
103
103
103
103
103
103
108
108
135
125
125
125
110
110
110
110
110
110
110
110
115
110
147
122
122
122
122
127
122
122
122
122
122
122
122
154
154
129
129
129
129
134
134
134
134
171
141
146
146
143
143
148
158
158
153
195
180
155
160
160
155
155
155
160
160
155
155
188
195
165
165
192
192
167
167
172
172
167
167
167
167
200
172
167
167
172
177
184
184
174
179
184
207
207
214
219
226
226
226
226
221
221
186
191
191
226
186
186
186
219
219
226
238
233
238
238
238
198
198
198
198
233
240
240
245
210
210
210
210
205
205
205
247
257
222
262
262
257
257
257
257
217
217
217
217
217
217
262
247
259
259
269
269
229
269
269
269
269
254
254
264
259
281
276
271
271
276
276
276
276
276
271
266
278
278
278
248
288
283
293
288
288
288
288
288
283
283
273
273
295
255
255
255
290
290
290
260
260
260
295
305
265
265
305
290
290
295
295
295
297
267
267
267
267
267
267
267
297
297
277
277
292
297
297
297
279
279
319
314
279
279
279
309
309
309
309
314
309
309
309
314
316
331
331
316
316
321
321
316
326
338
338
298
298
298
298
298
298
333
298
348
315
310
310
310
310
305
305
355
340
340
355
327
357
362
362
352
352
359
359
374
364
369
374
374
369
374
374
374
346
341
341
346
341
341
386
386
386
398
358
358
388
358
363
353
353
353
353
388
370
370
365
412
382
424
379
431
431
391
436
426
401
401
401
401
429
453
443
398
423
433
458
465
405
405
410
460
425
425
417
417
472
465
447
447
424
424
489
489
474
491
478
478
478
478
508
508
498
498
498
520
520
520
517
517
507
527
517
517
532
529
529
524
539
539
534
534
534
539
533
533
533
533
548
590
560
560
592
599
584
589
574
576
576
608
593
635
635
615
615
645
645
620
620
654
629
629
666
631
631
631
631
669
661
683
668
668
650
685
705
692
669
674
714
714
681
724
743
723
712
717
712
717
742
742
724
724
796
793
793
825
802
807
814
804
811
851
856
828
828
823
870
840
830
830
840
882
847
847
847
847
884
904
859
906
906
906
921
908
903
930
895
922
932
932
922
922
947
907
929
934
929
929
936
931
931
956
921
921
983
933
930
1006
1006
1043
1005
1005
1007
1007
1002
1024
1046
1098
1098
1043
1050
1124
1079
1116
1131
1093
1135
1140
1147
1172
1162
1112
1112
1129
1174
1174
1196
1175
1227
1227
1251
1251
1345
1342
1359
1356
1361
1368
1395
1395
1390
1421
1476
1476
1520
1575
1575
1562
1608
1615
1605
1605
1620
1627
1632
1646
1670
1687
1687
1716
1746
1746
1763
1768
1820
1802
1822
1797
1829
1784
1806
1806
1816
1833
1853
1858
1870
1884
1869
1901
1908
1924
1924
1967
2049
2063
2087
2094
2131
2113
2198
2198
2216
2259
2259
2312
2341
2360
2385
2415
2459
2459
2470
2470
2573
2616
2616
2670
2739
2739
3620
3663
3675
3833
3833
3857
4054
4083
4102
1
1
1
1
1
1
1
13
25
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
51
46
41
41
41
41
53
53
53
53
53
53
65
65
60
60
60
60
60
77
77
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
77
72
72
72
72
84
84
99
104
99
79
79
79
79
79
79
79
79
84
84
84
79
79
79
79
79
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
103
113
123
103
98
98
98
98
98
98
103
103
103
103
103
103
103
103
103
103
103
103
103
108
108
125
110
110
105
105
110
110
110
110
110
110
110
110
115
110
110
115
110
115
115
115
115
147
132
137
137
117
117
117
117
122
122
122
122
154
134
129
129
134
134
134
134
134
134
134
134
134
166
166
141
136
136
136
136
146
183
143
143
183
183
158
183
155
155
155
155
155
160
160
160
160
160
165
165
192
167
167
167
167
207
207
192
200
207
177
204
204
179
179
179
174
179
179
179
179
207
179
179
179
179
179
179
219
219
226
191
191
186
219
219
226
191
191
226
238
238
233
203
203
233
233
198
198
233
226
226
238
245
245
210
245
245
245
250
210
245
245
245
245
245
210
210
205
205
205
245
245
247
247
257
222
222
217
217
217
259
269
229
269
269
264
264
269
269
224
224
224
224
224
224
269
254
266
266
281
271
276
276
281
281
281
281
271
271
266
253
248
288
283
258
283
288
283
283
283
273
295
255
260
295
295
290
290
290
290
290
300
300
295
295
295
295
290
290
290
295
297
267
267
297
297
302
302
272
272
267
312
312
302
302
297
307
279
274
274
279
279
274
274
274
274
279
279
286
286
331
286
316
316
316
316
316
316
316
316
316
326
338
338
343
343
298
298
333
333
350
335
335
340
310
310
345
355
340
327
317
317
317
317
367
362
362
352
339
369
374
364
364
369
369
374
374
386
371
371
381
381
381
341
341
381
386
353
353
353
353
353
353
353
353
391
393
410
370
370
370
375
395
360
360
360
360
382
382
424
427
394
431
391
391
443
398
448
413
413
433
465
450
405
405
410
435
445
470
477
417
472
465
432
432
482
424
424
484
477
474
486
501
501
491
491
491
498
490
490
490
490
505
515
515
520
510
510
510
522
532
529
529
529
529
524
524
539
539
539
539
519
539
539
541
551
541
541
573
545
545
545
545
545
602
582
604
611
596
601
586
588
588
620
605
610
647
647
657
657
627
627
634
649
634
666
641
641
656
656
656
678
643
643
643
643
681
673
695
675
675
685
692
692
712
712
681
686
726
726
693
731
731
755
735
724
724
729
729
736
736
778
808
805
805
802
807
832
832
828
823
828
863
863
863
840
840
882
847
894
869
859
859
896
916
866
918
893
918
918
903
903
933
920
910
942
922
922
934
944
944
929
929
959
936
936
941
938
938
968
933
933
995
940
993
1018
1018
1055
1012
1012
1012
1012
1039
1024
1014
1014
1046
1036
1110
1110
1050
1091
1136
1143
1098
1105
1147
1152
1159
1129
1184
1174
1141
1186
1186
1208
1175
1239
1239
1191
1191
1263
1263
1246
1357
1354
1371
1368
1373
1380
1407
1402
1433
1488
1488
1532
1587
1587
1574
1620
1627
1617
1617
1632
1639
1644
1658
1682
1699
1699
1704
1723
1758
1758
1775
1780
1832
1814
1834
1809
1841
1791
1791
1791
1818
1818
1828
1845
1865
1870
1882
1896
1881
1913
1920
1931
1931
1979
2027
2061
2075
2099
2106
2143
2125
2210
2210
2228
2271
2271
2324
2348
2348
2367
2367
2397
2427
2471
2471
2482
2482
2585
2628
2628
2682
2751
3632
3675
3687
3845
3845
3864
4066
4095
4114
1
1
1
1
1
25
27
27
27
37
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
46
46
46
46
53
63
53
53
60
60
60
60
60
60
60
60
60
65
60
60
60
60
60
60
60
60
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
89
84
84
79
79
79
79
84
84
84
84
79
79
79
84
91
91
91
111
106
111
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
96
96
96
103
103
98
98
98
103
98
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
125
135
110
110
110
110
110
110
110
110
110
110
115
115
115
115
115
115
132
122
122
117
122
154
149
149
124
124
124
124
124
124
134
164
166
141
141
136
136
136
136
136
136
136
136
141
141
146
146
173
173
148
153
153
158
195
160
195
195
195
165
195
167
167
167
167
167
167
167
167
167
207
207
204
174
179
219
179
179
219
179
204
207
204
179
179
179
179
214
211
211
186
191
186
191
191
214
214
186
186
191
186
186
186
231
231
238
228
203
198
226
226
233
198
198
233
233
245
215
215
245
245
250
250
205
205
250
250
233
233
240
240
205
205
205
205
205
205
245
257
257
257
257
252
252
262
252
252
252
257
257
257
217
217
217
217
247
247
247
247
247
247
257
257
264
264
264
229
229
229
229
229
254
269
269
281
276
276
236
236
236
236
276
276
276
276
271
271
281
276
271
236
236
236
276
276
278
278
288
283
288
288
288
288
258
283
278
273
260
260
295
295
290
270
290
290
290
290
290
300
295
290
295
267
297
272
267
297
297
302
302
312
307
297
302
297
292
279
274
309
309
279
279
279
279
279
279
279
324
324
309
309
314
286
286
286
286
286
291
286
316
316
338
343
328
333
350
310
310
355
345
357
347
317
317
357
367
362
362
339
364
374
374
334
364
369
351
381
381
376
376
381
386
393
383
383
393
391
393
393
395
360
360
360
360
360
360
405
403
422
382
382
382
387
372
372
372
372
394
394
427
431
391
406
401
401
429
429
398
398
398
398
433
433
450
405
405
410
460
477
417
417
417
447
457
482
489
484
477
496
489
513
513
510
520
520
502
502
502
502
517
532
522
522
517
539
541
541
551
551
551
548
558
580
557
557
557
557
557
614
589
616
623
608
613
593
593
600
600
610
632
612
612
659
659
649
649
649
669
669
639
634
641
656
666
678
648
648
668
668
668
690
655
655
655
655
693
685
707
714
693
698
738
738
723
705
743
743
767
747
736
736
741
741
748
748
785
785
785
785
820
817
817
840
830
835
830
835
875
875
875
847
847
847
847
894
906
876
876
876
876
866
866
908
928
930
900
930
930
945
932
917
954
934
934
941
956
956
971
921
935
935
950
980
940
940
1007
988
1030
1030
1067
1012
1012
1024
1024
1024
1036
1088
1050
1050
1122
1122
1062
1091
1126
1148
1155
1105
1105
1112
1112
1159
1164
1171
1141
1196
1186
1153
1198
1198
1220
1251
1251
1198
1198
1275
1275
1247
1253
1253
1253
1253
1369
1366
1378
1378
1395
1395
1380
1385
1392
1419
1409
1409
1445
1500
1500
1544
1599
1599
1586
1632
1639
1629
1629
1644
1651
1656
1670
1694
1711
1711
1704
1716
1746
1787
1792
1844
1826
1846
1821
1791
1853
1803
1803
1830
1830
1840
1857
1877
1882
1889
1908
1893
1925
1932
1943
2039
2073
2087
2077
2111
2118
2155
2137
2222
2222
2240
2283
2283
2336
2379
2379
2409
2439
2483
2483
2494
2494
2597
2640
2640
2694
2739
2739
2763
3644
3687
3699
3857
3876
4078
4107
4126
1
1
1
27
27
27
37
39
34
34
34
34
34
34
49
34
34
34
34
34
34
34
34
34
46
46
53
58
53
53
53
53
58
58
58
58
65
75
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
65
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
84
79
79
79
79
84
84
79
84
79
79
79
79
84
84
84
101
96
91
91
91
91
91
91
91
91
91
91
91
91
91
91
96
96
103
103
103
123
123
103
103
125
115
110
110
110
110
110
110
110
110
110
115
115
110
115
115
115
110
110
115
115
115
115
137
137
122
147
122
122
122
122
122
122
122
122
154
134
124
129
134
166
161
161
136
136
136
136
176
178
178
148
148
143
143
143
143
148
148
148
148
148
183
158
155
155
155
155
160
160
160
160
155
155
160
160
160
165
207
167
167
167
167
207
202
202
202
179
179
179
179
209
219
219
216
191
186
226
186
186
226
186
226
211
214
214
221
216
186
186
186
186
186
186
221
221
226
223
223
198
203
203
198
223
223
198
238
238
228
228
245
240
245
245
233
233
245
245
240
240
210
210
205
205
205
205
205
205
205
205
205
205
205
205
245
257
227
227
252
252
257
257
262
262
262
262
252
252
217
217
217
252
252
264
264
264
264
269
264
264
264
264
229
229
254
224
224
224
224
224
224
259
259
259
259
259
259
264
264
271
266
266
266
276
276
276
276
241
241
241
241
241
266
281
281
288
258
288
288
283
248
248
248
278
273
295
290
260
295
295
295
295
295
270
290
290
290
295
297
297
302
302
297
297
307
297
297
292
274
279
279
279
279
279
329
309
309
319
319
309
316
286
316
316
291
291
291
291
291
291
316
331
331
316
316
316
326
338
338
338
338
303
298
298
303
298
298
298
298
298
298
298
350
355
340
345
357
317
317
362
362
362
352
359
369
374
374
374
339
334
334
374
374
351
381
346
376
393
363
388
353
353
388
388
391
393
393
395
390
400
395
360
360
360
360
360
360
405
400
434
394
394
394
394
379
379
379
379
406
406
398
398
398
418
433
433
441
441
410
445
417
417
417
472
465
432
432
489
429
429
459
464
494
501
496
489
486
508
496
503
525
525
520
520
517
532
529
529
514
514
514
514
524
539
539
534
544
529
529
548
548
558
558
563
560
587
587
587
587
569
569
569
569
569
589
589
626
628
635
620
625
612
612
627
627
644
624
624
671
671
641
681
681
651
648
648
668
673
673
690
660
680
680
675
685
702
667
667
667
667
705
692
692
719
721
721
721
705
710
725
750
750
735
717
755
755
779
754
748
753
748
753
760
760
792
792
832
829
829
847
847
847
887
887
887
859
906
903
918
883
883
920
940
900
900
910
942
942
942
957
944
936
916
966
941
941
938
938
968
968
983
942
942
962
992
962
1019
1020
995
995
1012
1012
1042
1042
1079
1024
1031
1031
1062
1062
1134
1134
1069
1138
1160
1105
1167
1112
1129
1124
1124
1171
1176
1183
1153
1208
1198
1160
1210
1210
1172
1232
1263
1263
1287
1287
1254
1273
1273
1260
1260
1381
1378
1407
1392
1392
1399
1431
1421
1421
1457
1512
1512
1556
1606
1606
1598
1644
1651
1641
1641
1656
1663
1668
1682
1706
1723
1723
1759
1728
1797
1799
1804
1851
1838
1858
1833
1803
1865
1810
1810
1842
1842
1852
1869
1889
1889
1894
1901
1920
1905
1937
1944
1931
1931
1955
2085
2099
2089
2123
2130
2167
2149
2229
2229
2229
2229
2252
2295
2295
2348
2391
2391
2421
2451
2495
2495
2506
2506
2609
2652
2652
2706
2751
2775
3656
3699
3711
3869
3888
4090
4119
4138
27
37
27
34
34
34
34
34
34
34
34
34
49
44
34
34
34
34
34
34
51
46
41
41
56
46
53
53
53
53
53
53
53
58
53
60
70
60
65
65
65
65
60
60
60
60
60
60
60
60
60
65
72
87
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
84
84
84
79
79
79
79
79
84
84
79
79
79
79
79
79
79
79
84
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
96
113
103
103
98
98
98
108
130
135
110
110
110
110
110
110
110
110
110
137
122
122
122
117
117
122
122
149
149
134
154
134
134
134
129
129
124
134
129
129
134
134
134
134
134
134
166
141
178
173
173
143
143
153
183
148
148
183
153
190
190
155
155
155
155
155
155
160
160
160
160
195
155
155
195
165
167
167
167
172
167
167
172
172
172
167
167
167
167
202
167
167
167
172
214
179
184
214
209
209
209
209
226
191
191
186
186
186
186
186
186
186
226
226
226
221
226
226
228
198
233
238
198
198
233
198
198
198
198
218
233
223
198
228
228
238
235
235
210
215
215
233
210
210
210
210
235
235
210
245
245
245
240
245
245
240
252
247
247
257
257
252
257
257
217
217
217
217
217
217
217
217
257
264
239
239
264
264
264
269
269
269
269
254
259
259
224
224
224
271
271
266
271
271
271
276
276
271
271
271
271
241
241
236
236
236
266
266
266
266
266
266
271
271
278
278
278
283
283
253
253
253
253
253
278
273
293
293
295
260
295
295
295
300
295
290
260
260
260
295
307
297
297
267
267
302
302
297
297
297
297
297
279
309
309
319
319
316
291
286
286
316
331
336
336
316
316
321
321
321
326
316
338
338
338
298
298
333
350
350
310
310
310
310
310
310
310
310
305
305
305
305
362
362
352
352
374
374
369
369
334
374
374
374
371
381
386
386
346
346
346
346
386
363
353
353
353
353
353
353
353
353
388
375
395
360
360
400
400
403
400
402
402
412
422
372
372
372
372
372
372
427
446
406
406
406
429
418
418
398
410
410
445
445
425
448
448
448
417
452
429
429
484
477
501
471
436
436
486
506
513
508
496
496
520
510
505
520
510
510
537
537
532
532
534
539
541
526
526
526
526
551
556
560
575
594
594
581
581
581
581
581
638
640
615
615
647
632
637
624
624
639
639
641
656
636
636
661
683
683
648
693
693
658
673
660
675
702
667
687
687
692
714
679
679
679
679
717
704
704
706
731
728
728
723
717
722
737
762
762
747
729
767
767
791
760
765
760
765
802
802
772
772
792
844
841
841
830
830
830
835
847
854
854
899
899
899
866
918
903
883
915
930
910
910
895
895
932
917
952
927
922
922
954
954
954
969
956
921
923
923
978
950
950
980
980
995
969
1004
969
969
969
1026
1024
1039
1054
1054
1014
1091
1031
1069
1069
1146
1146
1091
1150
1105
1172
1112
1112
1112
1179
1124
1154
1141
1131
1131
1183
1188
1195
1160
1160
1220
1210
1217
1217
1244
1179
1179
1275
1275
1299
1299
1260
1280
1280
1393
1390
1419
1404
1411
1443
1433
1433
1469
1524
1524
1568
1618
1610
1651
1663
1653
1653
1663
1670
1680
1635
1694
1713
1735
1735
1735
1809
1811
1851
1816
1850
1870
1840
1840
1810
1877
1854
1854
1859
1859
1881
1901
1901
1906
1913
1932
1917
1949
1956
1943
1967
2097
2111
2101
2135
2142
2179
2161
2241
2241
2264
2307
2307
2360
2403
2403
2433
2463
2507
2507
2518
2518
2621
2664
2664
2718
2763
2787
3668
3711
3723
3881
3900
4102
4131
4150
1
1
1
1
1
27
27
27
34
34
34
34
34
34
34
34
34
44
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
46
41
56
63
53
68
53
53
60
60
60
65
65
65
60
60
60
60
60
60
65
72
72
82
72
72
77
77
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
84
99
79
84
79
79
79
79
79
79
84
84
79
84
84
84
79
79
79
79
79
79
79
84
79
96
111
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
103
103
103
103
103
103
103
108
125
115
110
110
135
105
105
110
110
110
115
115
110
110
115
122
147
122
122
122
122
117
117
117
117
122
122
122
122
122
122
122
144
129
134
134
156
156
161
161
141
166
136
136
136
136
136
136
136
136
173
143
143
183
190
180
180
160
160
160
195
190
190
185
160
197
197
172
167
172
167
172
167
167
167
207
207
172
202
174
179
174
179
179
179
179
214
179
209
221
221
186
191
186
186
186
221
221
226
226
186
221
221
186
186
186
238
203
203
233
228
233
198
198
198
198
238
238
238
228
233
233
233
235
210
210
245
245
233
245
210
245
210
210
210
233
240
230
205
205
205
205
205
205
205
205
205
245
245
245
245
245
240
240
245
252
247
247
222
222
227
227
247
222
222
222
242
242
222
247
247
257
257
247
242
242
259
254
254
264
264
229
229
264
264
224
224
224
224
224
224
229
269
271
251
251
271
271
271
266
266
276
276
271
276
276
266
266
266
271
283
278
278
253
253
248
248
248
273
273
273
273
273
273
305
285
285
285
295
295
295
260
260
290
290
295
265
265
295
265
265
265
295
285
300
300
307
307
297
272
272
272
297
319
279
279
309
309
291
286
286
286
286
316
316
321
331
316
316
316
326
326
316
298
328
333
350
350
305
305
305
305
362
357
317
317
317
317
317
317
362
369
374
364
386
386
376
376
383
393
388
393
393
353
353
353
393
375
400
365
365
410
410
400
400
400
417
412
412
387
372
372
412
412
412
414
424
394
429
429
384
384
379
384
384
379
391
434
458
418
418
398
441
450
430
430
410
470
457
452
417
417
479
479
496
489
436
436
513
483
518
525
520
505
520
520
532
532
527
529
549
549
539
544
544
548
538
538
538
538
558
568
587
594
596
593
593
593
593
593
650
652
627
622
622
659
644
649
641
636
636
646
646
648
668
648
648
668
668
673
695
695
660
705
705
685
667
692
714
704
726
721
691
691
691
691
729
711
711
728
728
728
728
718
743
740
725
735
729
734
749
774
774
754
754
741
779
779
793
803
772
777
772
777
792
814
814
784
784
856
828
828
853
853
835
835
830
835
842
842
847
847
847
859
911
911
911
883
925
925
915
910
922
942
922
907
944
959
934
934
934
966
966
966
976
921
963
933
985
957
957
992
992
1007
1016
976
976
1038
1044
1031
1066
1066
1103
1050
1158
1158
1105
1105
1162
1134
1184
1124
1124
1124
1191
1131
1161
1161
1153
1195
1200
1180
1180
1207
1232
1222
1229
1256
1198
1287
1287
1254
1311
1311
1260
1280
1280
1280
1280
1292
1405
1402
1431
1416
1423
1455
1445
1445
1481
1536
1536
1580
1630
1622
1616
1675
1665
1665
1635
1682
1692
1642
1706
1725
1747
1747
1704
1746
1821
1791
1823
1828
1862
1882
1889
1866
1866
1871
1871
1893
1913
1913
1918
1925
1944
1929
1961
1968
1955
1979
2109
2123
2113
2142
2154
2191
2173
2253
2253
2276
2319
2319
2372
2415
2415
2445
2475
2519
2519
2530
2530
2633
2676
2676
2730
2775
2799
3680
3723
3735
3833
3893
3912
4114
4143
4157
4157
1
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
53
53
53
53
53
53
68
53
53
75
60
60
65
80
60
60
60
60
60
60
60
60
60
60
60
60
60
65
65
60
60
60
60
65
60
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
79
94
79
84
89
89
79
79
79
79
79
79
79
84
84
79
84
84
84
84
79
79
79
96
111
91
91
91
91
91
91
91
91
91
91
91
96
96
91
91
91
91
91
91
91
91
91
91
103
103
103
123
103
125
110
110
110
110
110
110
110
115
115
115
115
115
110
110
115
137
122
122
122
147
154
154
159
134
134
129
129
124
124
124
124
124
124
134
134
134
149
134
134
134
134
141
141
141
164
136
136
136
136
141
141
173
173
153
178
153
148
153
185
195
160
183
183
202
192
167
167
167
167
202
202
202
167
197
209
209
174
179
174
179
179
179
179
214
219
179
179
209
209
186
191
186
226
186
226
221
221
221
191
186
191
186
191
186
226
221
238
238
228
198
198
218
233
233
198
198
198
198
228
223
233
245
215
215
240
210
210
233
205
205
205
210
245
245
245
235
235
242
222
222
257
257
247
252
252
247
247
222
217
217
222
252
252
247
247
217
217
217
217
217
217
217
217
257
257
257
257
247
247
252
252
247
254
254
234
234
239
239
259
234
229
229
249
249
234
254
254
259
264
264
254
254
254
254
266
271
271
271
271
271
271
271
241
271
276
283
263
263
278
278
278
288
288
283
278
295
285
260
255
255
295
290
265
265
295
260
260
260
312
292
292
292
272
267
267
272
272
272
277
277
307
297
277
277
277
292
312
312
319
284
279
279
314
309
284
284
284
331
316
291
291
316
326
316
316
316
316
298
328
305
305
340
340
340
340
357
357
357
317
317
317
317
317
317
352
369
324
324
374
374
346
391
376
393
353
353
353
395
405
365
365
387
412
372
372
417
417
412
412
412
424
424
399
424
424
379
379
424
424
419
426
391
436
391
391
391
391
441
441
470
450
430
430
410
425
448
448
442
442
422
477
477
464
436
436
486
486
508
496
496
525
495
530
537
532
529
529
544
539
539
544
529
541
561
561
551
556
556
550
550
550
550
565
565
580
594
599
603
603
605
605
605
605
605
620
662
627
664
671
656
656
648
648
673
673
660
680
660
660
707
707
667
717
717
704
726
711
738
703
703
703
703
741
728
740
740
730
755
747
732
747
741
746
756
786
786
753
791
791
800
815
784
789
784
789
796
796
833
868
840
840
865
865
845
847
847
854
854
854
859
871
923
923
923
895
937
934
954
934
956
941
941
963
978
938
973
973
933
975
940
942
997
1004
1004
969
1019
976
976
976
976
1028
988
1050
1024
1014
1051
1051
1078
1078
1115
1170
1170
1174
1141
1141
1196
1136
1136
1131
1203
1160
1160
1207
1212
1217
1217
1187
1187
1219
1244
1234
1241
1268
1299
1299
1323
1323
1292
1292
1299
1417
1414
1443
1428
1435
1467
1457
1457
1493
1548
1548
1592
1606
1606
1642
1634
1651
1623
1670
1687
1677
1677
1642
1694
1704
1718
1702
1737
1704
1759
1759
1716
1746
1833
1803
1835
1840
1874
1894
1901
1878
1878
1883
1883
1905
1925
1925
1930
1937
1956
1941
1980
1967
1991
2116
2135
2125
2154
2161
2161
2203
2180
2180
2265
2265
2288
2331
2331
2384
2427
2427
2457
2487
2531
2531
2542
2542
2645
2688
2688
2742
2787
2811
3692
3735
3747
3845
3864
3905
3924
4126
4150
4150
4169
4169
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
41
41
41
41
41
53
53
53
53
53
53
53
53
53
53
53
65
65
80
60
60
60
60
60
60
60
60
60
60
60
60
65
65
60
60
65
60
60
60
60
72
82
72
72
72
87
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
84
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
84
84
79
84
84
84
84
79
79
101
101
101
91
91
91
91
96
96
91
91
91
91
91
96
91
91
91
91
91
123
103
103
103
98
98
108
108
103
103
103
103
115
110
130
110
110
115
110
137
122
122
122
122
122
122
122
122
122
122
122
149
134
134
134
154
159
124
134
166
166
171
141
141
141
141
161
164
171
148
178
148
148
148
148
176
143
143
143
143
148
148
148
148
148
180
180
160
190
155
155
183
183
160
160
160
160
160
155
155
160
160
160
190
185
160
160
160
160
160
160
160
197
202
172
172
195
195
177
202
214
204
179
214
214
179
209
209
209
204
179
214
214
204
204
221
221
221
191
226
226
226
186
186
221
221
226
238
198
198
238
233
233
228
198
198
198
238
228
245
245
245
245
240
210
245
245
240
240
230
205
205
205
210
210
240
235
252
252
227
227
247
247
217
222
217
252
252
252
252
247
254
264
264
259
259
259
234
229
264
264
249
229
224
229
224
229
224
229
264
264
264
264
254
254
259
271
261
261
271
251
251
266
276
246
276
246
266
271
271
261
261
273
278
253
283
273
273
288
295
295
295
275
275
290
285
285
300
300
285
307
312
292
267
267
267
267
307
277
277
272
272
272
279
279
279
279
279
289
289
284
284
284
319
319
316
331
316
291
291
291
291
286
286
286
286
316
316
291
291
291
316
316
343
298
298
328
328
335
315
315
310
305
310
305
340
317
317
352
352
324
324
324
324
374
346
346
346
393
353
398
398
388
365
365
365
407
417
372
372
372
372
399
424
424
419
419
411
431
431
436
436
438
403
448
433
468
455
482
442
442
422
422
422
487
460
460
454
454
477
429
436
436
486
496
520
508
508
537
527
507
542
549
529
544
539
529
541
556
551
546
556
553
573
573
563
568
568
562
562
562
562
572
572
592
589
611
617
617
617
617
617
627
627
674
639
676
683
648
668
660
660
685
685
667
687
672
672
687
697
692
692
719
719
729
729
711
738
728
728
750
715
715
715
715
753
735
735
735
747
747
732
737
767
744
754
754
754
753
758
798
798
765
803
803
812
812
827
796
801
796
801
808
808
840
835
880
847
847
877
877
852
854
861
861
896
871
878
935
935
935
907
934
941
966
941
941
921
968
938
938
975
990
985
940
940
987
942
1009
1016
1016
1031
988
988
1040
995
1062
1024
1051
1051
1036
1090
1090
1050
1050
1127
1182
1182
1117
1141
1186
1208
1143
1143
1160
1210
1172
1172
1187
1219
1224
1229
1231
1256
1241
1253
1198
1280
1311
1311
1335
1335
1280
1280
1299
1299
1429
1399
1426
1455
1440
1447
1479
1469
1469
1505
1560
1560
1604
1618
1654
1646
1623
1682
1699
1689
1689
1706
1716
1730
1709
1709
1749
1771
1771
1728
1758
1791
1845
1810
1847
1852
1881
1881
1906
1913
1890
1890
1895
1895
1912
1912
1937
1937
1942
1949
1968
1953
1979
2003
2147
2137
2166
2215
2192
2192
2277
2277
2300
2343
2343
2396
2439
2439
2469
2499
2543
2543
2554
2554
2657
2700
2700
2754
2799
2823
3704
3747
3759
3876
3917
3936
4138
4181
4181
27
27
27
34
34
34
34
39
34
34
34
39
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
46
41
41
41
41
41
41
53
53
53
53
53
53
53
53
53
75
65
60
60
60
60
60
65
60
60
65
65
72
72
72
77
77
92
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
94
99
79
79
79
79
79
79
79
79
79
79
84
84
79
84
84
84
84
79
79
79
79
79
79
79
91
91
91
91
91
91
91
91
91
91
96
91
91
113
103
113
113
103
98
108
108
98
103
103
103
103
103
103
103
103
103
135
115
115
110
110
110
115
115
110
110
110
110
115
115
110
110
110
110
110
110
115
122
122
117
117
122
122
122
144
149
134
129
129
129
129
134
134
134
124
129
129
129
159
159
134
134
134
134
134
159
149
161
141
166
141
171
141
141
161
141
146
173
178
178
153
153
143
143
183
153
183
168
176
183
183
160
190
183
165
155
155
195
195
192
172
197
202
202
167
167
195
195
167
167
167
167
167
167
202
197
167
167
167
167
167
167
177
177
209
204
179
209
209
179
179
179
209
202
202
179
214
216
221
191
221
221
211
226
226
226
221
221
216
216
233
233
233
238
238
238
198
198
198
198
233
233
198
198
198
198
198
198
228
228
245
210
210
210
210
245
240
240
205
205
205
210
210
210
245
235
235
242
252
252
257
257
247
217
257
257
247
247
217
217
217
217
217
247
242
239
239
254
259
229
249
259
271
271
271
271
266
271
266
266
276
246
276
271
271
266
241
236
236
236
271
271
271
271
271
266
273
273
273
263
263
278
273
288
258
258
273
273
273
268
268
265
295
295
307
287
287
292
292
312
312
292
319
274
274
319
314
279
279
289
289
284
284
284
286
286
301
301
316
343
298
298
333
333
333
333
298
298
328
303
303
303
335
355
305
305
310
340
340
340
347
322
322
322
322
322
322
322
322
317
317
352
374
364
376
398
390
395
365
400
400
402
377
377
372
419
429
411
431
436
436
423
448
448
441
455
450
460
445
410
448
448
448
480
462
417
417
494
454
454
477
434
434
429
494
467
467
466
466
441
441
486
496
508
520
532
515
515
549
534
519
554
561
556
553
568
563
553
553
568
560
585
585
570
575
575
574
574
574
574
589
604
623
622
629
629
629
629
629
639
639
639
641
656
686
651
688
648
695
660
672
672
687
684
684
704
704
704
704
731
731
741
741
750
740
735
762
737
732
737
727
727
727
727
765
744
779
754
756
766
766
766
765
770
810
810
777
815
815
819
819
819
819
839
808
813
808
813
840
820
820
847
842
842
852
892
859
889
889
864
881
903
878
900
900
947
947
947
941
941
941
976
926
978
953
933
980
950
950
987
1002
997
999
1021
976
976
1026
1028
1028
1043
995
995
1012
1012
1052
1024
1074
1019
1019
1058
1058
1058
1058
1058
1058
1102
1102
1062
1062
1139
1194
1194
1124
1124
1141
1198
1160
1220
1172
1187
1179
1179
1231
1236
1241
1243
1268
1253
1265
1292
1323
1323
1347
1347
1292
1392
1441
1411
1438
1467
1452
1459
1491
1481
1481
1517
1567
1567
1616
1630
1666
1658
1663
1642
1694
1711
1701
1701
1718
1728
1742
1721
1721
1761
1783
1783
1735
1735
1803
1857
1859
1864
1918
1925
1902
1902
1907
1907
1924
1924
1949
1949
1954
1961
1980
1965
1991
2015
2142
2159
2149
2178
2227
2204
2204
2289
2289
2312
2355
2355
2408
2451
2451
2481
2511
2555
2555
2566
2566
2669
2707
2707
2766
2811
2835
3716
3759
3771
3888
3929
3948
4150
4193
4193
27
27
34
34
34
34
34
34
34
39
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
51
51
41
41
41
46
41
46
51
41
41
53
53
58
58
53
53
53
53
53
53
53
53
53
53
60
60
60
60
65
65
60
60
60
82
72
92
72
72
72
72
72
72
72
77
72
72
72
72
72
72
72
72
72
84
89
104
79
79
84
79
79
79
79
79
84
84
84
84
84
79
79
84
84
84
84
79
79
79
79
91
101
111
91
91
91
91
91
91
91
91
91
96
96
91
91
91
91
91
91
91
91
91
91
91
96
91
91
91
91
91
91
91
91
91
91
103
103
103
98
98
103
98
98
98
98
103
103
103
103
103
103
103
103
103
103
135
125
115
110
125
125
110
110
105
105
115
115
110
110
110
140
110
110
115
115
110
110
115
115
115
115
115
147
122
127
122
122
117
117
117
117
117
117
117
117
117
117
122
129
129
129
129
129
134
134
134
161
141
141
141
141
141
141
171
136
136
136
136
136
171
171
146
146
146
171
161
168
153
148
178
178
153
153
143
143
173
148
173
158
158
183
183
185
190
160
160
160
195
160
160
160
160
195
160
160
175
183
195
190
172
197
202
167
167
190
190
207
167
172
172
207
207
177
204
184
209
214
214
179
184
202
202
179
209
204
184
179
216
191
196
221
221
209
209
216
216
221
221
223
233
228
228
228
228
228
228
238
228
198
228
198
198
198
233
233
228
233
233
223
223
240
245
245
245
210
210
245
245
210
210
210
210
210
240
240
252
252
222
222
252
252
247
247
247
247
247
252
252
252
254
264
264
254
269
264
264
229
229
229
254
249
249
251
251
271
271
266
266
236
236
236
236
236
236
271
271
266
273
273
273
273
258
278
278
253
248
248
248
273
285
285
295
295
270
270
300
270
270
292
277
297
319
274
294
294
324
324
319
331
286
331
286
286
301
301
296
296
296
316
298
333
333
298
313
313
335
335
335
335
355
345
345
310
310
340
315
315
315
367
317
352
352
362
369
359
329
329
329
329
324
324
364
376
376
358
405
372
417
412
414
384
384
431
431
441
396
396
391
396
396
391
423
448
448
441
441
441
435
460
460
448
462
462
472
457
460
460
460
487
477
477
429
494
506
466
466
441
446
441
446
506
478
478
448
448
508
515
527
534
544
534
534
561
546
531
566
573
568
560
560
580
570
580
592
597
597
587
586
586
586
586
611
611
630
630
627
627
622
641
641
641
641
641
641
651
646
646
646
646
698
658
700
660
707
672
687
684
684
696
696
711
711
743
743
728
753
753
762
747
774
749
739
739
739
739
777
756
791
766
763
773
773
773
800
777
782
822
822
789
819
819
827
827
831
831
851
840
820
820
820
820
847
847
827
827
852
859
864
904
866
901
901
903
888
888
888
888
878
878
890
922
959
959
959
959
941
941
948
948
938
973
973
933
933
990
965
940
940
992
947
947
962
962
999
1014
1009
1011
1033
988
1038
1040
1040
1055
1000
1012
1012
1024
1024
1064
1036
1086
1058
1058
1050
1070
1070
1070
1114
1114
1069
1069
1069
1151
1206
1206
1141
1141
1143
1210
1172
1232
1179
1243
1248
1253
1203
1203
1255
1280
1265
1277
1304
1335
1335
1280
1359
1359
1299
1448
1448
1423
1450
1479
1464
1471
1498
1493
1493
1529
1579
1628
1642
1678
1670
1675
1642
1706
1723
1713
1713
1713
1730
1740
1709
1754
1773
1735
1735
1795
1795
1747
1747
1810
1810
1869
1871
1876
1930
1937
1914
1914
1919
1919
1936
1936
1961
1961
1966
1973
1977
2003
2027
2116
2154
2171
2161
2190
2239
2216
2216
2301
2301
2324
2367
2367
2420
2463
2463
2493
2523
2567
2567
2578
2578
2681
2719
2773
2823
2842
3728
3771
3783
3900
3941
3960
4162
4205
4205
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
46
41
41
51
51
53
53
58
58
53
53
53
53
58
58
53
53
53
53
53
53
53
53
53
53
53
53
65
65
80
60
65
60
60
60
60
60
65
65
60
60
60
60
60
60
72
72
72
72
72
72
72
72
72
72
72
72
72
77
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
84
104
79
79
79
84
79
79
84
84
79
79
84
84
84
84
84
84
84
84
79
84
79
84
84
111
111
91
91
91
91
91
91
96
91
91
91
91
96
96
91
96
96
96
96
91
91
113
118
103
103
103
103
103
103
125
110
110
110
105
105
110
110
115
110
110
110
115
115
115
115
110
115
115
115
115
147
132
137
137
122
122
122
122
152
122
122
122
127
154
134
134
129
129
129
129
124
124
124
124
124
124
134
141
141
141
136
136
136
136
141
141
146
146
168
153
153
153
183
153
148
183
148
153
148
153
178
178
153
153
158
158
158
158
178
168
165
160
190
160
160
160
180
160
185
165
195
195
197
172
167
167
202
172
172
202
202
167
167
167
167
202
202
202
202
207
167
190
190
197
202
197
197
202
202
177
209
214
184
179
184
179
179
219
179
214
214
216
221
221
209
209
191
221
216
216
211
191
223
228
228
233
233
228
228
233
198
233
223
223
228
228
228
235
240
240
240
245
240
245
240
240
240
240
240
240
240
230
230
247
252
252
247
247
252
252
252
217
217
247
247
257
257
247
222
217
247
247
247
247
247
252
254
269
229
229
259
259
259
254
254
271
261
261
271
271
271
281
271
271
236
236
236
271
263
263
273
273
248
248
248
248
248
248
273
273
273
270
265
255
255
255
292
297
297
312
282
277
292
279
279
274
279
279
284
319
326
316
291
291
286
306
306
296
331
331
331
331
341
338
343
298
333
333
303
298
313
313
308
308
308
345
305
305
325
325
347
347
367
352
352
317
317
352
327
327
327
362
369
379
329
329
364
364
374
366
376
388
405
365
365
400
400
377
377
417
424
426
391
391
443
453
433
403
403
403
403
435
460
415
460
447
472
472
460
487
487
474
484
429
464
494
472
472
467
489
489
506
518
473
473
501
496
496
453
453
448
453
448
453
485
485
460
460
515
515
534
539
539
546
556
541
541
573
543
578
585
560
560
580
570
570
575
575
572
592
582
572
592
599
599
599
599
609
609
589
599
598
598
598
598
642
642
639
646
646
653
653
653
653
653
653
658
658
658
710
712
672
692
692
719
679
696
696
711
728
728
708
708
755
755
740
765
765
735
735
774
786
756
751
751
751
751
789
763
803
773
790
789
794
834
834
801
831
839
839
838
838
863
847
832
832
859
839
839
866
861
916
903
913
913
900
895
895
890
890
897
929
971
971
941
941
971
971
928
948
953
933
985
950
985
940
1002
972
952
952
1004
954
954
969
969
969
1011
1026
1021
976
1023
1045
995
1050
1052
1052
1067
1036
1036
1076
1098
1055
1070
1062
1077
1077
1077
1126
1126
1163
1218
1218
1153
1153
1143
1165
1160
1160
1222
1179
1244
1184
1255
1260
1265
1210
1210
1267
1292
1277
1289
1316
1258
1280
1280
1347
1347
1292
1371
1371
1460
1435
1462
1491
1476
1498
1483
1510
1505
1505
1541
1567
1567
1591
1640
1654
1690
1682
1718
1735
1725
1725
1725
1742
1752
1766
1746
1785
1747
1807
1807
1754
1754
1881
1883
1888
1942
1949
1926
1926
1931
1931
1948
1948
1973
1973
1978
1985
1984
2015
2034
2166
2183
2173
2202
2251
2228
2228
2313
2313
2336
2379
2379
2432
2475
2475
2505
2535
2579
2579
2590
2590
2693
2707
2707
2731
2835
2854
3740
3783
3795
3912
3953
3972
4174
4217
4217
1
27
27
27
27
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
46
41
41
41
41
53
53
53
58
58
58
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
60
60
60
60
60
60
65
65
65
65
60
60
60
60
65
60
65
65
60
60
65
65
72
77
77
87
72
72
72
77
72
72
72
72
72
72
72
72
72
77
77
72
72
72
72
72
72
72
72
72
72
72
79
79
79
84
84
84
84
84
84
79
84
84
79
79
79
79
79
84
84
84
111
91
91
91
91
91
91
96
91
96
91
91
91
91
96
96
96
91
91
91
91
118
98
103
103
103
125
130
110
110
115
110
110
110
110
115
115
132
122
117
117
117
117
122
117
117
117
117
117
122
122
127
154
149
149
134
134
154
134
124
129
159
134
134
134
134
134
166
146
136
136
136
136
171
161
146
148
148
153
153
143
143
143
143
148
148
148
148
148
148
148
158
158
180
190
160
160
160
155
195
160
160
160
155
155
160
160
160
160
160
155
155
160
160
160
185
185
175
160
160
165
165
185
185
175
175
167
167
172
167
202
202
187
187
167
202
172
167
167
172
172
207
197
192
177
202
202
209
179
179
204
214
179
179
179
179
209
179
214
214
214
214
219
209
209
209
209
209
204
204
214
214
204
204
204
221
191
191
191
191
209
186
221
221
226
221
191
221
221
221
221
221
228
228
228
198
233
228
198
203
235
240
240
240
235
235
245
210
240
235
235
240
247
247
252
247
252
257
217
247
247
247
252
247
247
247
247
247
247
247
259
259
229
259
264
264
259
259
229
259
259
254
254
254
271
276
276
271
271
281
271
266
271
266
266
271
283
273
273
273
293
278
273
273
268
275
275
255
255
255
255
255
255
292
292
292
282
277
297
309
309
324
294
284
284
284
326
286
286
296
316
338
298
298
318
318
303
303
303
303
298
343
343
348
348
350
355
345
310
325
325
320
320
320
327
327
352
337
337
362
374
354
354
379
329
329
364
339
339
339
391
371
371
398
398
388
395
400
412
412
384
384
384
384
436
438
455
465
445
410
453
447
472
427
472
459
434
479
479
467
486
496
479
479
453
448
453
453
448
453
530
485
508
508
508
508
465
465
460
460
497
472
472
522
522
534
546
546
546
546
568
585
560
555
590
575
597
572
572
587
582
582
572
587
587
579
599
589
604
606
606
621
621
606
610
610
610
610
632
654
654
651
646
646
673
658
665
665
665
665
660
665
665
665
722
724
679
699
699
731
726
711
728
708
708
740
720
720
767
767
752
777
777
747
747
759
754
754
786
756
798
763
763
763
763
801
815
797
797
797
819
819
801
806
841
841
813
838
851
851
840
840
875
847
847
859
844
844
866
851
851
861
903
928
925
925
895
897
897
943
983
953
953
933
983
983
935
935
960
940
997
962
997
952
1014
959
959
1016
976
976
1023
998
1038
1033
988
1035
1057
1062
1064
1064
1079
1043
1043
1088
1058
1058
1110
1062
1062
1077
1069
1069
1133
1133
1175
1166
1230
1230
1210
1172
1172
1172
1172
1234
1241
1256
1191
1191
1267
1272
1277
1279
1304
1289
1259
1301
1328
1265
1265
1265
1280
1292
1359
1359
1304
1383
1383
1447
1474
1503
1488
1510
1495
1522
1517
1517
1553
1579
1603
1652
1666
1702
1694
1730
1747
1737
1737
1737
1754
1764
1778
1758
1797
1754
1819
1819
1791
1893
1895
1900
1954
1961
1938
1938
1943
1943
1960
1960
1985
1985
1990
1997
2027
2046
2178
2195
2185
2214
2263
2240
2240
2325
2325
2348
2391
2391
2444
2487
2487
2517
2547
2591
2591
2602
2602
2705
2719
2743
2847
2866
3752
3795
3807
3924
3965
3984
4186
4229
4229
1
1
13
27
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
51
41
41
41
53
53
53
53
53
53
53
53
53
53
53
53
60
60
60
60
60
60
65
65
60
60
60
60
60
60
65
60
60
60
60
60
60
65
65
65
72
72
72
72
72
77
77
72
72
72
72
72
72
72
72
72
72
72
72
72
72
77
77
72
72
72
72
72
72
72
72
77
77
84
89
89
99
79
89
79
79
79
79
79
79
79
79
79
84
84
84
79
84
84
84
79
79
79
79
79
84
79
79
84
84
91
91
91
91
91
91
91
91
91
91
91
91
96
91
91
91
91
96
96
96
98
108
98
98
103
103
103
98
98
103
103
130
105
105
115
115
137
137
142
122
122
117
117
117
122
122
122
122
122
134
124
129
129
129
129
159
134
166
146
161
161
166
161
136
141
166
166
161
146
146
178
178
153
148
143
143
153
153
183
183
173
158
160
155
160
160
155
155
155
165
155
155
180
185
185
165
192
197
192
192
167
202
167
167
167
167
177
167
167
202
202
167
167
167
167
199
199
179
179
214
214
179
179
209
174
214
179
179
179
179
179
219
209
199
199
209
209
209
191
191
216
221
221
221
191
191
209
186
221
221
221
221
221
226
211
209
216
191
221
221
221
216
216
221
221
221
216
216
216
221
221
228
228
223
223
203
203
203
203
198
233
233
233
233
233
233
198
198
198
203
233
233
218
218
210
240
240
252
247
247
247
217
247
247
252
242
242
257
222
247
242
242
252
247
254
254
269
229
254
259
264
254
254
229
229
254
259
259
266
266
271
271
266
271
271
271
266
266
241
271
266
266
273
293
273
278
273
273
273
268
295
285
295
270
270
300
317
272
287
287
292
292
284
294
294
279
294
289
321
316
286
286
286
286
336
306
296
291
296
291
296
291
298
298
298
298
298
333
308
350
335
310
330
330
310
310
355
355
362
367
352
317
337
337
332
332
332
374
334
334
334
334
334
334
334
334
349
349
374
381
391
376
351
351
351
403
383
405
405
400
400
422
422
412
389
389
384
419
419
419
438
448
450
462
467
477
457
460
460
459
484
434
439
464
484
471
441
491
498
473
473
503
485
485
465
465
542
497
515
515
472
472
472
472
527
509
479
479
546
546
558
558
580
575
597
572
567
602
609
579
579
589
589
594
594
611
606
616
633
633
622
622
622
622
639
666
666
658
658
680
680
665
677
677
677
677
677
679
734
736
743
733
720
720
752
732
732
732
774
774
759
789
789
766
766
766
766
798
810
775
775
775
775
813
827
819
804
804
831
813
813
853
840
820
863
863
887
859
859
871
856
856
863
863
878
895
940
937
937
948
950
950
995
965
960
940
940
995
995
952
1009
969
969
1009
974
959
1026
976
1028
988
1035
1005
1050
1045
1000
1047
1069
1074
1076
1076
1091
1056
1058
1058
1055
1100
1070
1070
1122
1081
1081
1145
1187
1173
1173
1242
1242
1192
1192
1179
1179
1246
1253
1268
1279
1284
1289
1291
1316
1301
1266
1313
1340
1272
1272
1304
1371
1371
1311
1395
1395
1459
1486
1515
1495
1495
1522
1502
1502
1534
1529
1529
1565
1591
1615
1664
1678
1709
1706
1742
1759
1749
1749
1749
1766
1776
1790
1809
1831
1831
1796
1803
1905
1907
1912
1966
1973
1950
1950
1955
1955
1972
1972
1997
1997
2002
2009
2039
2058
2190
2207
2197
2226
2275
2252
2252
2337
2337
2360
2403
2403
2456
2499
2499
2529
2559
2603
2603
2614
2614
2717
2731
2755
2859
2878
3764
3807
3819
3936
3977
3991
4198
4241
4241
1
1
1
1
1
1
13
25
27
27
27
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
51
41
41
46
41
41
53
53
63
53
53
53
53
53
53
53
53
53
53
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
65
72
77
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
77
77
77
84
84
84
84
79
89
89
79
79
79
84
84
84
79
84
79
79
84
79
79
84
84
84
84
101
101
111
91
101
91
91
91
91
91
91
91
91
91
91
91
91
91
91
96
103
108
98
98
103
103
110
110
105
105
115
110
110
125
115
142
140
117
117
149
149
154
134
134
129
129
129
149
134
134
134
134
161
161
141
141
136
136
136
136
171
136
136
136
136
159
159
141
141
141
171
178
173
173
153
173
173
143
143
148
148
148
148
173
183
183
158
190
190
160
155
160
160
190
180
180
195
180
180
165
197
167
202
202
202
167
167
172
172
202
197
197
202
192
167
167
167
202
202
197
197
204
204
204
209
179
179
179
179
179
184
184
214
214
199
209
209
211
211
186
186
221
221
221
186
221
191
191
191
226
211
209
221
198
198
223
228
233
233
203
203
198
233
228
228
228
228
228
233
233
233
228
228
223
223
198
198
198
233
233
223
223
233
228
228
228
223
223
223
233
233
235
235
210
210
210
210
210
240
240
245
210
210
210
240
240
240
230
230
222
247
222
222
247
247
247
254
234
234
254
259
254
264
229
259
249
249
259
281
271
276
266
271
236
236
236
241
241
271
271
273
273
273
283
283
273
273
248
273
273
300
307
297
312
297
324
279
299
299
291
306
306
306
326
301
316
328
328
298
298
333
333
298
348
318
308
308
308
335
335
310
310
305
310
345
320
362
347
317
362
342
342
367
367
374
379
349
349
339
339
339
339
339
339
381
341
341
341
341
361
361
371
371
403
403
388
358
358
358
358
358
358
415
405
370
395
405
412
412
434
384
429
429
424
396
396
408
408
403
408
408
403
445
460
462
462
487
474
474
484
464
479
479
471
496
446
441
446
496
483
453
503
505
505
485
515
497
515
472
472
554
509
479
479
521
541
558
570
565
565
592
577
577
587
609
579
579
614
621
606
623
628
608
645
645
634
634
634
634
639
646
658
678
678
670
665
689
689
689
689
679
689
746
748
733
755
745
737
732
737
732
732
759
759
744
744
744
786
801
801
773
773
773
810
822
787
787
787
787
825
797
839
819
819
804
804
804
804
841
841
831
816
838
825
865
827
827
832
875
875
852
899
871
866
866
866
878
868
868
875
875
952
949
949
933
933
1007
972
952
952
1007
1007
954
959
1021
981
981
1021
981
1038
1040
1005
1005
1000
1047
1062
1057
1007
1059
1081
1086
1043
1043
1043
1088
1088
1103
1063
1063
1067
1112
1062
1082
1082
1069
1069
1069
1134
1088
1088
1157
1199
1254
1254
1179
1199
1199
1258
1265
1280
1210
1291
1296
1301
1266
1303
1328
1313
1278
1265
1320
1272
1272
1272
1272
1352
1284
1311
1383
1383
1407
1407
1471
1498
1527
1534
1514
1514
1546
1541
1541
1577
1603
1627
1671
1690
1721
1718
1754
1709
1709
1771
1761
1761
1761
1778
1788
1735
1797
1797
1816
1816
1843
1843
1803
1803
1810
1810
1917
1919
1924
1978
1985
1962
1962
1984
1984
2009
2009
2009
2021
2051
2070
2202
2219
2209
2238
2287
2264
2264
2349
2349
2372
2415
2415
2468
2511
2511
2541
2571
2615
2615
2626
2626
2729
2743
2767
2871
2890
3776
3819
3826
3948
3984
3991
4003
4210
4253
4253
1
1
1
1
25
37
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
51
41
41
46
41
41
41
41
41
63
53
53
53
53
53
53
53
53
53
53
53
53
53
53
75
65
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
77
89
79
79
79
79
79
79
79
79
79
79
99
79
79
84
84
84
79
79
79
79
84
84
84
84
91
91
96
101
101
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
113
113
123
98
113
98
98
98
98
103
103
103
103
103
110
110
135
115
110
110
110
110
122
122
117
117
117
122
137
140
147
122
154
129
129
152
124
124
159
129
156
156
166
136
136
159
159
141
136
141
141
166
161
136
136
136
161
173
173
148
148
148
153
183
148
153
171
171
148
148
148
178
190
180
180
160
180
180
155
180
160
160
160
185
180
190
190
195
195
165
197
197
172
197
167
197
197
167
187
187
202
192
187
167
167
167
202
197
209
214
214
179
179
174
204
214
174
174
179
214
209
209
214
199
214
214
204
204
204
186
186
221
211
211
216
191
191
191
191
191
191
186
221
221
186
186
186
186
221
221
221
221
211
221
198
198
223
223
228
228
228
228
193
228
203
203
198
198
233
233
228
198
198
198
210
210
230
230
240
240
210
210
205
240
240
240
210
210
210
240
240
240
230
230
240
230
230
230
230
245
245
247
242
242
247
217
247
252
247
247
237
237
254
254
259
229
229
229
254
254
254
241
241
266
271
276
241
236
236
241
236
236
241
236
236
271
271
288
273
273
283
273
273
248
248
248
248
248
278
278
300
300
295
295
295
312
277
319
324
309
319
286
286
286
311
311
298
298
298
318
318
308
333
318
333
313
335
340
305
305
310
345
360
330
345
345
320
320
320
347
317
317
357
332
374
359
354
354
369
379
379
386
391
341
341
361
361
373
373
383
415
405
410
410
400
370
370
370
370
370
370
427
377
377
407
412
412
429
389
389
419
419
424
441
436
403
403
445
445
415
415
415
415
467
474
484
464
464
494
476
446
441
446
491
491
491
479
483
503
508
458
448
448
453
508
495
465
515
517
517
497
515
527
509
534
534
566
521
546
546
541
533
558
565
575
587
599
604
584
584
599
621
591
626
633
635
640
615
657
657
639
646
646
646
646
646
646
658
658
658
660
670
690
690
677
699
709
701
701
701
701
701
733
758
760
745
767
732
774
774
759
759
749
744
744
771
756
756
756
798
813
813
773
822
799
799
799
799
819
837
829
851
831
816
816
853
843
823
820
820
852
837
847
877
852
839
839
844
887
887
864
911
878
878
873
873
878
878
880
880
887
887
929
964
941
961
961
950
954
969
1019
964
964
1019
1019
981
1033
988
988
1033
993
1050
1047
1007
1059
1069
1069
1069
1066
1088
1088
1098
1055
1055
1100
1100
1110
1110
1062
1062
1062
1074
1124
1069
1089
1089
1089
1081
1081
1081
1141
1141
1133
1133
1169
1211
1179
1199
1266
1266
1270
1210
1277
1287
1266
1303
1308
1313
1278
1315
1340
1325
1332
1284
1284
1364
1291
1311
1311
1323
1395
1395
1419
1419
1483
1510
1539
1546
1526
1526
1558
1553
1553
1589
1615
1639
1702
1733
1730
1766
1721
1783
1773
1773
1773
1790
1735
1800
1747
1828
1828
1803
1855
1855
1810
1822
1822
1929
1931
1936
1990
1997
1974
1974
1984
1996
1996
2021
2021
2028
2063
2082
2214
2231
2221
2250
2299
2276
2276
2361
2361
2384
2427
2427
2480
2523
2523
2553
2583
2627
2627
2638
2638
2741
2773
2755
2779
2883
2902
3788
3826
3838
3960
3984
4003
4015
4222
4265
4265
1
1
37
37
27
27
34
49
49
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
41
41
41
41
41
41
41
41
41
41
41
58
53
53
63
53
53
53
53
53
53
53
75
60
60
60
60
65
60
65
65
60
60
60
60
60
60
60
60
60
60
60
60
60
60
87
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
79
79
84
84
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
84
96
91
91
91
91
91
91
91
91
111
91
91
91
91
91
103
103
103
103
113
113
103
103
98
98
103
103
125
125
135
110
125
110
135
117
117
117
117
147
122
117
117
117
117
117
117
117
117
117
122
134
124
159
159
129
129
159
129
129
159
144
152
159
159
134
166
136
136
159
171
136
141
141
136
171
171
178
178
178
171
171
183
148
148
148
148
148
148
148
178
178
178
173
168
180
180
160
160
160
160
155
160
160
160
160
160
190
160
155
155
160
185
178
178
185
185
192
172
167
167
167
167
197
187
187
167
167
167
172
167
167
172
172
187
187
202
202
202
202
202
209
209
184
209
204
204
194
194
209
209
199
214
209
204
204
221
221
186
186
216
221
221
216
216
221
221
221
206
191
221
221
211
211
216
211
211
228
218
218
223
228
203
203
203
203
198
198
223
223
233
233
198
198
233
233
228
228
228
223
223
218
233
210
210
235
235
215
215
210
210
240
222
222
247
247
247
247
247
247
247
247
242
247
247
247
247
252
252
249
249
254
259
229
229
254
264
249
244
244
271
271
271
241
276
276
276
276
276
276
241
266
236
236
236
273
273
273
273
283
248
248
248
248
248
248
248
248
248
248
248
248
273
283
278
295
285
295
255
255
255
255
255
255
290
290
307
307
297
284
279
319
319
289
284
331
321
296
291
286
316
316
298
298
298
323
323
335
310
310
330
330
315
315
315
315
330
325
352
357
372
342
352
352
332
332
332
359
364
344
386
366
381
381
361
361
346
346
341
346
346
341
391
391
398
403
373
373
385
385
395
427
412
382
382
382
382
382
382
439
419
436
436
436
396
396
396
396
431
431
436
448
487
494
486
476
476
506
479
483
453
448
453
448
458
498
498
503
495
515
520
460
460
465
465
520
507
472
527
529
529
509
539
521
546
546
578
533
558
545
560
560
570
570
565
565
587
611
616
606
633
603
638
645
647
652
627
627
669
669
639
646
658
658
658
658
658
670
670
677
702
702
699
716
716
716
716
708
708
708
708
733
713
770
772
737
779
759
744
786
771
771
756
756
756
778
763
763
768
768
810
805
825
825
829
804
804
811
811
811
811
849
841
863
843
823
823
865
850
852
859
849
854
854
889
851
851
856
899
899
903
923
890
890
887
887
887
887
894
894
894
894
976
953
973
973
950
950
950
969
981
1031
981
971
971
1031
1031
993
1045
1045
1047
1062
1007
1007
1019
1066
1071
1076
1078
1043
1100
1100
1110
1062
1062
1112
1112
1089
1136
1081
1093
1093
1088
1153
1153
1145
1181
1223
1148
1148
1199
1278
1278
1282
1289
1315
1320
1325
1327
1272
1272
1352
1337
1344
1291
1291
1376
1323
1323
1330
1407
1407
1431
1431
1495
1522
1551
1558
1538
1538
1570
1565
1565
1601
1627
1651
1714
1745
1742
1778
1795
1785
1785
1785
1802
1747
1812
1754
1803
1840
1840
1810
1862
1862
1822
1829
1829
1941
1943
2009
2009
1986
1986
1996
2008
2008
2033
2040
2034
2075
2094
2226
2243
2233
2262
2311
2288
2288
2373
2373
2396
2439
2439
2492
2535
2535
2565
2595
2639
2639
2650
2650
2753
2785
2767
2791
2842
2895
2914
3800
3850
3972
4015
4027
4234
4277
4277
1
1
27
44
44
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
56
56
51
41
41
41
41
41
41
41
41
41
41
53
53
53
53
53
53
53
53
53
53
53
53
53
70
65
75
60
60
60
60
60
60
60
60
60
65
60
60
60
60
60
60
87
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
99
79
79
79
79
79
79
84
84
79
79
79
79
79
79
91
96
91
91
91
96
96
91
91
91
91
91
91
91
91
91
91
98
103
113
113
98
98
118
103
103
110
110
115
125
125
105
105
110
110
110
110
137
137
147
122
137
117
117
117
117
147
117
117
117
117
117
117
122
147
137
134
129
124
124
124
154
134
149
129
129
129
129
134
149
134
159
159
141
141
171
171
136
136
171
136
136
141
141
171
151
159
171
166
161
178
178
153
166
166
178
148
148
183
183
183
183
183
183
178
178
190
190
190
165
165
178
178
195
155
155
160
155
155
185
190
190
180
160
175
192
167
167
167
167
167
167
167
167
167
167
197
197
167
167
167
167
167
167
167
177
167
167
197
197
167
167
185
185
197
204
179
179
179
209
179
179
204
174
174
204
204
179
179
184
179
179
189
179
179
214
209
209
209
209
209
191
216
186
186
186
186
216
216
206
221
221
191
221
216
216
216
228
228
228
228
228
228
198
198
198
193
228
223
228
228
228
228
223
223
233
233
228
228
203
228
228
228
223
230
210
210
210
210
210
205
235
235
240
240
210
210
240
240
235
235
225
225
230
240
222
222
242
242
242
247
217
247
247
227
227
222
222
242
247
247
247
234
234
249
229
229
254
254
229
254
259
249
264
264
271
271
261
271
241
276
276
241
271
283
273
283
253
288
288
288
273
273
300
300
295
285
255
255
255
255
255
255
255
255
255
295
297
307
267
267
267
267
267
267
297
297
319
319
286
291
326
316
316
316
316
301
343
333
298
303
333
328
335
310
305
330
330
347
322
317
342
342
322
322
342
352
352
352
352
332
332
364
364
384
354
364
344
344
344
381
366
366
376
351
351
398
388
388
388
388
373
373
353
353
353
353
403
403
410
415
385
385
397
397
407
412
439
429
424
394
394
394
394
394
394
419
419
419
451
441
401
401
396
431
443
443
438
438
448
445
455
464
494
498
483
483
453
448
453
453
448
453
498
498
498
498
460
460
465
510
515
502
502
527
532
472
477
472
477
472
532
514
514
539
541
541
521
551
546
546
546
546
533
590
540
565
565
575
552
572
572
582
582
599
623
628
645
615
650
657
632
659
639
639
664
634
634
634
634
681
681
651
663
658
658
670
670
670
670
670
677
677
714
714
723
723
720
720
725
782
784
791
771
756
761
798
778
778
768
768
780
780
822
812
837
837
816
823
823
823
823
861
853
820
875
850
877
862
864
861
901
878
863
863
868
911
911
878
935
897
897
897
906
906
906
906
988
965
985
985
945
962
962
974
969
969
981
988
1038
1043
1043
1005
1057
1057
1074
1019
1019
1026
1078
1083
1088
1090
1055
1112
1112
1122
1124
1124
1074
1148
1088
1100
1100
1165
1165
1157
1193
1235
1155
1155
1285
1285
1215
1215
1287
1294
1301
1320
1327
1332
1337
1339
1284
1364
1349
1356
1388
1330
1330
1419
1419
1443
1443
1507
1534
1563
1570
1550
1550
1582
1577
1577
1613
1639
1663
1628
1726
1757
1754
1790
1807
1797
1797
1797
1814
1754
1824
1810
1810
1852
1852
1822
1874
1829
1953
1955
2021
1993
1993
2028
2020
2020
2045
2052
2046
2087
2106
2238
2255
2245
2274
2323
2300
2300
2385
2385
2408
2451
2451
2504
2547
2547
2577
2607
2651
2651
2662
2662
2765
2779
2803
2854
2907
2926
3812
3826
3862
3984
4027
4039
4246
4289
4289
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
41
41
41
41
41
53
53
68
68
63
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
60
60
65
60
68
60
60
82
72
87
72
72
72
72
72
72
72
72
67
67
67
67
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
99
84
79
79
84
79
79
79
79
79
84
79
79
84
84
79
111
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
108
98
98
103
103
115
125
125
110
110
110
105
105
110
110
125
125
115
115
125
122
122
132
132
122
122
117
117
122
122
117
117
117
117
117
117
149
149
129
129
149
159
159
124
124
149
159
149
129
129
129
129
154
149
141
141
141
136
161
136
161
136
136
136
136
136
136
141
141
141
141
161
171
171
148
148
178
178
148
178
178
178
178
148
148
148
148
148
148
148
178
166
166
178
173
173
178
173
190
160
190
185
155
155
195
195
155
195
195
160
190
190
175
185
185
190
190
167
167
167
167
197
197
202
172
172
185
185
202
167
167
167
167
167
167
192
192
197
197
187
179
179
204
179
179
179
204
174
174
209
209
179
179
179
179
184
184
179
209
209
216
186
186
191
216
191
191
191
191
216
186
186
186
216
216
191
196
191
191
196
196
206
221
191
216
216
203
223
228
198
198
198
228
223
223
233
233
203
228
223
223
223
230
210
210
210
230
240
240
230
230
230
230
242
222
222
247
222
242
242
247
247
222
222
247
247
252
252
247
247
242
242
252
234
234
249
249
249
259
229
234
234
239
239
234
234
234
229
229
254
259
246
246
271
261
281
241
246
246
241
271
271
271
283
273
283
253
288
273
273
283
248
248
248
278
290
295
265
295
295
295
255
255
255
255
255
255
255
255
255
307
307
297
307
319
309
319
274
274
274
274
274
274
321
316
286
291
326
331
331
328
298
298
303
303
353
328
328
313
355
345
310
315
335
317
322
359
329
354
354
369
339
339
364
364
354
364
364
381
376
396
366
371
356
356
356
388
388
353
353
353
353
353
353
353
353
388
363
363
410
400
400
385
385
365
365
415
415
422
427
397
397
382
412
412
412
409
409
429
419
419
436
451
396
436
406
406
406
406
406
406
431
431
431
443
443
443
443
463
408
408
443
455
415
415
460
467
487
476
441
506
484
484
510
513
465
465
510
510
472
472
472
472
517
527
527
514
539
544
479
484
479
484
479
484
479
484
544
526
546
546
551
553
553
533
563
558
558
553
553
545
540
570
602
552
552
572
587
564
579
579
589
589
589
584
606
606
635
640
615
657
627
662
669
639
634
634
671
651
676
646
646
693
693
658
670
670
670
682
682
682
682
677
704
704
689
726
726
708
708
708
708
733
723
732
732
737
794
796
803
778
763
768
763
768
810
780
780
792
792
812
812
834
849
849
829
804
813
823
830
830
830
830
850
850
873
865
832
887
859
889
874
873
873
913
893
883
875
875
880
923
923
890
947
939
946
918
918
918
918
953
1000
972
997
997
952
952
981
981
981
981
971
988
1055
1055
1069
1069
1086
1026
1026
1043
1090
1095
1100
1102
1067
1124
1124
1134
1136
1136
1081
1081
1160
1177
1177
1169
1129
1205
1247
1177
1196
1297
1222
1222
1306
1313
1272
1332
1339
1344
1349
1351
1291
1376
1361
1368
1400
1431
1431
1455
1455
1519
1546
1575
1582
1562
1562
1594
1589
1589
1620
1651
1670
1635
1738
1709
1769
1766
1802
1819
1809
1809
1754
1809
1826
1836
1803
1803
1862
1862
1822
1822
1864
1864
1829
1886
1965
1967
2005
2040
2032
2032
2057
2064
2058
2099
2118
2250
2262
2262
2257
2281
2281
2335
2312
2312
2397
2397
2420
2463
2463
2516
2559
2559
2589
2619
2663
2663
2674
2674
2772
2791
2810
2866
2919
2938
3824
3826
3838
3874
3996
4039
4051
4258
4301
4301
27
27
27
34
34
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
41
41
41
41
41
41
53
53
53
53
53
53
53
53
53
53
53
53
53
80
65
65
80
80
75
60
60
60
60
60
60
60
60
65
60
60
60
60
60
77
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
80
72
72
72
72
72
72
72
72
72
72
72
94
79
79
84
99
79
79
79
84
79
84
84
84
84
79
79
79
84
84
84
84
84
79
111
91
91
96
91
91
91
91
91
91
91
91
116
116
123
98
103
98
98
98
103
103
103
103
110
110
110
110
115
105
105
110
110
110
110
110
110
115
132
132
122
117
117
117
117
122
147
117
122
117
117
137
134
134
144
134
134
129
129
129
129
129
124
124
149
134
129
129
129
129
154
149
161
161
161
161
141
141
161
136
136
166
136
171
161
156
171
161
136
151
136
136
136
146
146
161
161
156
161
148
148
148
178
178
168
148
148
148
148
148
148
148
148
168
178
178
160
160
185
185
155
160
190
190
190
185
185
160
160
155
185
185
185
185
190
180
167
167
167
167
167
167
167
167
197
202
172
172
172
172
185
167
202
202
167
167
202
202
167
197
197
197
197
197
197
197
179
179
204
204
209
209
174
179
179
179
204
204
204
204
204
204
204
204
204
204
191
191
216
186
186
216
186
186
186
186
216
216
191
191
186
186
206
216
223
203
223
218
203
203
223
198
198
198
198
223
223
208
203
198
198
228
228
228
215
210
210
210
210
210
205
205
230
230
240
240
230
230
230
230
247
217
217
222
247
247
247
247
247
247
247
249
234
234
234
249
249
234
234
254
229
249
249
244
259
259
246
246
271
271
271
271
261
261
261
261
261
261
271
241
246
246
276
276
251
251
241
241
271
241
241
241
241
271
258
258
283
288
288
253
253
253
248
248
248
248
248
248
248
248
248
248
248
283
290
285
295
265
295
285
255
255
255
307
277
267
267
267
267
267
267
267
267
267
297
319
309
319
291
326
321
331
316
316
328
328
303
303
343
343
340
310
315
360
360
335
335
325
367
357
322
317
317
327
327
322
352
352
329
329
329
364
364
386
366
366
341
366
366
346
346
376
366
371
371
388
408
378
368
368
368
410
400
365
365
365
365
395
410
410
375
375
422
407
407
397
397
372
372
427
427
434
439
409
409
389
389
421
421
431
431
463
448
418
418
418
418
418
418
443
443
438
455
455
475
445
420
420
415
420
420
415
455
462
465
446
441
483
453
498
498
491
491
522
520
520
520
520
472
472
517
517
479
479
479
479
539
534
534
551
556
496
496
496
496
556
563
565
565
545
575
575
570
570
580
557
552
572
582
614
564
564
579
579
604
584
599
576
591
647
652
669
639
674
639
681
646
683
688
653
653
705
705
685
670
677
677
677
694
694
689
689
684
711
711
701
733
738
738
723
720
720
745
744
744
759
749
806
771
808
780
780
815
822
792
792
804
804
829
804
804
846
861
861
841
816
842
842
862
862
885
877
844
899
901
881
873
880
880
925
900
900
900
890
890
887
887
887
887
935
935
897
897
959
946
946
953
930
930
930
930
940
1012
1009
1009
988
988
1005
1007
1067
1067
1081
1081
1098
1055
1102
1107
1112
1114
1074
1136
1136
1146
1148
1148
1172
1189
1189
1181
1136
1136
1155
1217
1259
1184
1184
1184
1184
1203
1203
1309
1266
1318
1325
1272
1272
1284
1344
1351
1351
1361
1311
1358
1388
1373
1380
1412
1443
1443
1467
1467
1531
1558
1582
1594
1574
1574
1601
1601
1601
1663
1682
1750
1721
1781
1778
1735
1814
1831
1821
1821
1821
1838
1848
1874
1834
1834
1876
1876
1898
1977
1979
1993
1993
2017
2052
2044
2044
2069
2076
2070
2111
2130
2262
2269
2293
2293
2347
2324
2324
2409
2409
2432
2475
2475
2528
2571
2571
2601
2631
2670
2670
2686
2686
2803
2822
2878
2926
2945
3836
3850
3886
4008
4051
4063
4270
4313
4313
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
51
41
41
41
41
41
53
53
53
58
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
60
60
80
60
60
60
60
60
60
60
60
60
65
65
60
60
60
60
60
60
60
92
72
72
72
87
92
92
82
72
72
72
72
72
77
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
99
84
84
79
79
79
79
79
84
84
84
87
84
79
79
84
84
79
79
84
84
101
91
111
111
91
91
91
91
91
91
91
91
86
96
91
96
96
91
91
91
91
91
123
103
103
103
103
98
98
98
128
128
103
103
103
103
103
103
103
103
135
105
135
115
115
115
115
122
122
117
117
122
117
117
117
117
117
117
117
117
117
137
122
122
144
129
159
159
159
124
124
129
129
129
159
129
129
129
129
149
159
149
149
149
159
144
156
156
136
136
141
141
141
141
156
136
136
141
141
141
141
141
136
136
136
136
166
161
173
173
173
173
168
148
148
173
148
148
148
178
163
178
168
178
178
183
173
173
178
163
173
160
160
160
180
160
185
155
190
190
160
175
175
155
155
160
175
175
180
180
185
185
185
167
167
167
167
167
167
172
185
167
197
197
197
167
167
167
167
187
185
197
197
187
179
179
179
179
204
204
209
209
209
209
209
179
209
209
209
204
204
204
199
199
204
191
191
216
221
191
186
216
216
216
216
216
216
216
216
223
203
203
223
198
198
223
223
198
203
238
228
223
228
228
223
230
215
210
210
230
210
210
205
230
230
230
215
220
240
230
227
242
247
222
222
222
222
217
247
247
247
247
247
249
234
249
254
244
271
271
271
261
241
241
246
246
246
276
276
241
271
271
271
271
258
258
283
283
273
273
273
273
283
253
258
258
288
288
263
263
253
248
248
248
283
295
270
270
265
260
260
295
292
277
302
297
267
267
267
302
297
329
289
314
279
279
274
279
279
274
279
279
274
291
291
326
321
331
328
303
303
333
343
328
355
355
352
317
317
337
379
369
329
329
329
329
334
334
364
386
366
341
341
336
376
376
393
378
378
348
388
388
378
378
353
353
353
353
353
353
383
378
400
420
390
380
380
380
407
372
372
372
372
417
417
387
387
417
434
409
409
439
439
424
446
451
421
421
401
401
443
443
433
433
443
438
475
445
460
430
430
430
430
430
430
450
450
455
462
462
487
427
427
427
427
427
427
427
427
467
469
464
472
472
446
441
446
453
465
470
510
532
534
527
527
479
479
479
484
479
479
479
484
551
563
568
503
503
503
503
568
575
577
577
557
572
587
582
582
577
577
587
587
587
569
564
579
589
589
626
576
576
591
611
611
611
606
606
606
588
598
659
664
639
634
634
681
651
686
693
653
695
665
700
717
717
692
692
677
677
677
689
706
706
701
696
708
745
750
750
732
732
764
759
756
756
771
761
763
763
763
768
818
778
778
778
778
820
787
787
827
802
834
804
804
804
816
816
816
858
868
868
853
828
854
854
869
869
897
889
856
911
883
913
937
907
907
899
899
899
899
934
947
947
909
909
971
953
953
942
942
942
942
947
972
1024
1021
1021
981
971
1038
1079
1079
1076
1043
1093
1093
1068
1110
1067
1114
1119
1124
1126
1148
1148
1158
1160
1160
1100
1184
1201
1201
1193
1229
1271
1191
1191
1285
1285
1321
1278
1270
1330
1272
1337
1284
1296
1356
1311
1363
1373
1370
1400
1385
1392
1424
1455
1455
1479
1479
1543
1570
1606
1586
1586
1613
1613
1613
1675
1694
1762
1793
1790
1740
1747
1826
1843
1833
1833
1833
1850
1860
1815
1886
1841
1841
1888
1888
1910
1989
1991
2005
2029
2064
2056
2056
2081
2088
2082
2118
2118
2137
2137
2274
2281
2305
2305
2359
2336
2336
2421
2421
2444
2487
2487
2540
2583
2583
2613
2643
2682
2698
2698
2815
2834
2890
2957
3848
3862
3898
4020
4063
4075
4282
4325
4325
27
27
27
27
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
46
41
41
41
41
41
41
53
53
53
53
58
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
75
65
65
60
65
60
60
60
60
60
60
60
60
60
65
65
60
60
60
60
60
60
60
60
60
60
60
72
72
87
72
72
72
72
72
72
72
72
77
77
72
72
72
72
72
72
72
99
84
84
84
104
99
99
104
94
79
84
84
84
84
84
84
79
84
84
106
96
106
91
91
96
91
91
91
91
91
91
86
91
96
96
91
91
94
91
91
91
113
123
123
98
123
116
98
98
103
103
98
98
103
103
103
103
110
110
135
115
115
130
110
110
105
110
110
110
110
110
135
135
115
115
115
115
115
115
147
122
122
117
117
122
137
122
122
147
117
117
135
135
122
147
127
127
134
134
129
129
134
134
129
134
159
159
149
134
134
156
141
171
171
171
136
136
166
136
136
141
161
171
161
161
161
171
161
146
146
151
168
168
173
148
148
148
148
163
178
148
148
148
148
148
148
153
173
168
178
163
180
180
180
180
160
175
175
160
155
155
185
185
185
160
185
175
175
190
190
195
185
185
190
180
185
180
172
172
192
172
197
197
167
167
167
167
167
187
185
192
192
179
179
179
204
204
204
204
204
204
209
209
179
179
179
179
209
204
204
204
204
204
204
191
186
191
186
226
216
221
186
216
211
211
211
211
198
198
218
228
233
198
223
223
223
223
223
223
223
223
223
228
230
215
215
230
205
205
215
245
245
242
227
217
217
227
232
247
247
247
239
229
229
229
229
249
259
259
249
246
246
246
241
241
271
283
273
258
258
258
258
258
253
248
248
248
295
290
270
270
280
280
285
285
295
265
300
300
275
275
270
270
260
260
260
295
282
282
302
307
277
267
267
307
284
309
274
274
274
309
336
326
296
316
286
286
286
286
286
286
328
303
328
343
315
330
330
320
340
355
335
317
317
367
367
352
364
329
329
329
334
334
334
334
349
391
381
366
341
336
336
361
361
351
346
351
346
346
371
393
378
348
348
353
353
388
383
385
385
400
390
390
365
365
365
365
390
412
432
402
417
392
392
392
399
399
446
421
421
451
451
431
431
458
463
428
428
408
408
408
455
440
440
455
467
467
487
427
427
427
427
467
442
442
442
442
442
442
499
464
439
439
439
439
474
458
498
465
465
472
477
472
477
517
527
484
484
479
484
484
484
479
484
539
546
491
491
496
491
491
496
563
553
575
580
575
572
582
587
589
589
569
579
599
589
581
576
591
601
601
606
638
588
588
598
618
618
618
618
618
600
671
676
646
693
663
698
705
702
677
677
677
712
689
689
684
729
729
689
696
718
718
713
708
762
762
744
744
771
771
768
768
778
768
768
763
768
773
775
775
780
830
785
785
785
832
839
809
846
816
816
823
823
828
870
830
830
830
830
880
865
835
866
866
909
901
883
868
878
878
918
890
925
900
890
907
907
907
907
897
944
919
911
911
911
911
959
959
941
946
916
916
953
983
954
954
954
954
959
959
981
1036
988
1033
1033
993
1005
1007
1007
1091
1091
1088
1055
1105
1105
1075
1075
1122
1074
1074
1094
1094
1126
1131
1136
1138
1160
1160
1100
1170
1167
1167
1196
1213
1213
1178
1205
1155
1191
1236
1283
1297
1222
1266
1266
1333
1277
1342
1349
1296
1311
1303
1368
1323
1375
1385
1382
1412
1397
1404
1436
1467
1467
1491
1491
1555
1582
1618
1598
1598
1625
1625
1625
1635
1687
1647
1647
1706
1774
1805
1802
1747
1754
1838
1855
1845
1845
1845
1862
1872
1822
1822
1898
1900
1900
1922
2001
2003
2017
2041
2076
2068
2068
2093
2100
2094
2149
2149
2286
2293
2317
2317
2371
2348
2348
2433
2433
2456
2499
2499
2552
2595
2595
2625
2655
2670
2670
2694
2710
2710
2827
2846
2902
2926
2945
2969
3860
3874
3910
4032
4075
4087
4294
4337
4337
1
13
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
51
51
41
41
41
41
41
41
41
41
53
53
53
53
53
58
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
80
65
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
65
60
60
60
60
60
65
65
60
60
60
60
60
60
60
82
77
72
72
72
72
72
72
72
72
72
72
72
72
72
77
77
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
79
79
84
99
84
79
79
79
84
84
84
84
79
79
79
79
84
84
84
84
84
79
79
79
79
84
84
84
96
91
111
106
106
111
101
91
91
91
91
91
118
103
103
118
103
103
98
98
98
98
98
116
123
103
103
103
103
103
103
103
125
135
125
125
130
130
135
110
105
105
128
105
115
110
122
122
147
127
122
122
122
122
142
122
117
117
117
117
137
135
135
117
117
117
117
117
117
117
122
142
142
137
137
127
127
127
129
129
129
129
149
149
129
129
159
129
129
149
159
129
129
129
159
149
149
147
147
129
129
129
129
154
134
134
141
141
141
136
136
141
141
166
166
141
141
141
136
141
141
136
136
141
136
136
136
141
141
141
141
166
166
171
171
156
146
156
168
178
178
178
178
173
173
148
148
153
168
178
168
168
168
178
173
175
175
160
160
160
160
160
160
160
160
185
190
160
180
175
175
190
192
192
172
167
167
167
167
197
197
202
192
192
197
192
187
184
179
199
199
199
174
204
204
179
179
179
204
204
199
199
204
186
186
216
216
186
221
191
191
216
216
216
216
216
198
198
233
223
228
233
223
218
218
240
210
210
210
210
230
245
230
230
230
230
230
230
230
230
242
227
227
217
227
247
254
239
229
239
244
259
249
251
261
271
271
271
241
241
241
253
253
253
248
290
285
265
270
270
265
265
260
260
260
282
282
302
297
297
307
307
277
302
282
282
307
307
307
287
287
267
267
267
267
267
267
307
294
294
289
314
319
336
296
321
316
316
321
321
338
308
328
355
322
327
352
367
352
352
334
329
379
379
364
376
341
336
346
346
361
403
393
378
348
388
388
373
373
353
353
353
358
358
385
395
415
407
402
402
377
372
377
372
402
417
424
444
414
404
404
404
411
411
458
443
433
433
463
463
413
413
408
470
475
440
462
452
427
427
467
499
439
439
454
454
454
454
454
454
474
474
511
446
446
446
446
486
498
498
491
465
510
472
472
527
489
489
539
539
496
496
558
503
503
503
503
503
503
553
575
587
587
582
577
577
589
589
589
594
601
601
581
591
611
601
593
588
598
618
618
618
618
608
608
618
650
600
600
630
625
625
625
612
639
634
634
683
683
653
705
675
710
670
717
714
689
689
724
701
691
741
741
711
696
725
725
725
725
725
715
774
774
756
756
771
778
778
775
775
790
780
785
785
787
787
787
842
839
809
851
821
858
828
828
868
868
835
850
835
877
842
842
892
877
864
859
878
878
921
903
913
890
890
880
885
885
890
937
897
897
897
919
919
909
956
926
923
923
923
923
971
971
953
953
995
947
966
966
966
966
966
966
966
966
981
988
1048
1045
1045
1019
1019
1048
1103
1103
1100
1067
1117
1117
1134
1101
1101
1101
1138
1143
1148
1150
1172
1172
1182
1179
1203
1225
1225
1185
1217
1204
1204
1191
1248
1295
1222
1309
1278
1345
1277
1289
1354
1361
1311
1303
1323
1380
1330
1387
1397
1394
1424
1409
1416
1448
1479
1479
1498
1498
1567
1594
1630
1610
1610
1620
1637
1637
1637
1699
1654
1654
1654
1654
1718
1781
1781
1747
1812
1812
1814
1754
1766
1850
1867
1857
1857
1857
1874
1884
1841
1910
1912
1912
1934
2013
2015
2029
2053
2088
2080
2080
2105
2112
2106
2161
2161
2298
2305
2329
2329
2383
2360
2360
2445
2445
2468
2511
2511
2564
2607
2607
2637
2667
2682
2706
2722
2722
2839
2858
2914
2957
2981
3872
3886
3922
4044
4087
4099
4306
4349
4349
1
13
25
27
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
41
41
41
41
41
41
41
41
41
41
53
53
53
53
53
58
63
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
65
65
60
60
60
60
60
65
65
92
87
77
72
72
72
72
72
77
77
77
72
72
72
99
89
84
79
79
79
79
79
84
84
79
79
79
79
84
84
79
79
79
84
84
84
84
91
91
111
91
91
91
91
91
91
91
91
94
101
96
96
91
91
111
96
96
96
103
103
103
123
123
113
98
103
103
103
98
98
103
103
103
103
130
115
125
115
110
110
110
130
105
105
105
105
105
135
110
135
128
110
110
110
135
135
115
115
115
132
147
137
137
142
117
117
117
135
117
122
137
117
122
122
122
137
117
147
142
137
137
137
147
147
122
127
127
134
134
154
134
134
129
129
129
129
129
154
149
129
134
149
147
147
129
129
129
134
129
129
149
149
134
134
141
136
136
161
161
136
136
171
141
136
156
171
136
141
166
136
136
156
156
154
154
136
136
136
161
161
151
148
148
148
148
148
148
178
178
178
178
148
178
148
148
178
178
178
148
148
148
148
148
148
178
178
178
178
178
178
163
168
173
160
160
160
180
185
185
185
185
185
190
160
175
175
185
185
175
175
175
185
175
175
185
185
180
175
175
185
187
187
172
172
172
167
172
172
172
172
172
172
167
197
172
172
197
192
184
204
179
174
204
179
204
204
189
204
204
209
209
199
199
204
199
204
196
211
211
206
206
216
186
186
186
186
201
206
206
233
223
223
223
198
198
228
223
233
198
198
223
223
223
223
228
240
210
210
230
205
245
225
225
252
222
222
222
222
217
252
247
254
239
239
229
239
254
266
251
261
261
241
256
251
271
263
273
253
253
253
253
253
283
283
265
265
265
265
265
265
260
297
282
282
307
277
302
272
272
267
294
294
319
284
289
294
294
299
299
319
306
306
291
326
296
301
316
331
303
308
333
338
328
328
328
350
320
340
352
367
329
334
334
334
364
364
379
364
341
336
391
391
376
388
348
388
388
353
353
353
353
358
358
373
415
385
400
400
400
400
385
385
365
365
370
370
422
417
409
409
409
409
384
384
414
394
431
431
456
426
446
416
416
416
443
443
428
428
423
423
470
455
440
440
440
440
475
475
440
440
420
420
420
420
450
482
487
452
427
427
427
427
427
427
464
439
439
479
474
474
511
446
446
466
466
466
466
466
466
486
523
498
491
498
510
472
472
472
477
522
484
484
496
496
503
503
570
510
510
510
510
570
582
582
582
577
587
587
587
579
599
589
589
589
611
601
601
601
606
613
613
588
598
618
608
600
600
630
630
625
662
612
607
637
619
634
634
646
646
695
717
687
722
677
729
726
691
696
711
701
736
713
703
753
753
737
737
737
771
786
786
768
768
778
768
775
775
790
787
787
797
787
797
812
839
794
794
854
809
821
863
870
840
840
850
880
835
835
847
862
847
889
854
854
904
889
871
866
866
890
890
933
925
890
890
892
907
907
949
909
909
909
946
926
926
916
968
935
935
935
935
983
983
965
1007
966
966
976
976
978
978
978
978
978
978
993
1060
1057
1057
1007
1026
1026
1026
1055
1055
1055
1115
1115
1112
1074
1074
1074
1129
1129
1146
1101
1150
1155
1160
1162
1167
1167
1184
1184
1194
1191
1237
1237
1229
1211
1211
1260
1307
1321
1357
1277
1289
1366
1316
1358
1303
1303
1373
1323
1315
1330
1392
1399
1404
1406
1436
1421
1428
1460
1491
1491
1510
1579
1606
1642
1622
1622
1632
1649
1649
1649
1670
1654
1654
1711
1666
1666
1730
1747
1754
1824
1824
1826
1766
1773
1862
1879
1869
1869
1869
1886
1896
1841
1922
1946
2025
2027
2041
2065
2100
2092
2092
2117
2124
2118
2173
2173
2310
2317
2341
2341
2395
2372
2372
2457
2457
2480
2523
2523
2576
2619
2619
2649
2679
2694
2718
2734
2734
2772
2851
2870
2926
2969
2993
3884
3898
3934
4056
4099
4111
4318
4361
4361
1
1
25
37
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
51
41
41
41
41
41
41
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
60
60
75
60
60
60
60
60
65
65
60
60
60
60
60
65
60
60
65
65
72
72
72
77
72
72
67
67
67
67
72
72
72
72
72
77
77
72
72
72
77
77
99
99
84
79
79
79
79
79
79
79
79
84
79
79
84
84
84
84
79
79
84
84
84
106
91
101
91
91
91
91
91
91
91
96
96
91
91
96
103
103
103
103
123
103
98
123
98
98
98
98
98
98
98
113
103
103
103
123
115
115
110
110
135
135
125
110
110
110
110
110
135
105
105
115
135
135
142
122
122
132
117
117
117
142
122
122
137
147
117
117
117
147
142
135
117
117
117
117
117
117
147
142
137
137
127
127
137
154
154
149
149
149
149
142
142
129
129
129
159
159
149
129
129
129
129
159
159
149
159
149
149
149
149
159
159
159
134
166
161
136
136
166
141
141
156
156
136
136
141
136
136
156
154
154
136
136
141
136
136
141
141
141
141
141
156
156
141
141
146
161
148
148
148
148
148
168
168
148
148
178
148
148
163
178
178
148
178
173
173
163
163
178
161
161
178
163
173
155
155
155
160
160
185
185
190
190
190
160
190
175
190
180
185
190
185
185
190
190
185
185
185
175
185
172
192
172
172
167
197
197
187
187
187
187
192
187
197
184
179
204
199
199
179
179
184
184
204
179
204
204
179
179
199
204
204
191
186
186
216
216
216
186
196
211
206
206
208
203
203
218
218
228
198
223
198
208
223
230
230
215
210
215
210
230
230
210
205
205
240
230
230
230
230
230
252
222
222
217
217
217
252
264
234
234
234
234
229
264
266
251
251
261
236
251
278
263
273
248
263
268
273
283
253
275
285
265
265
295
295
272
277
277
267
309
294
294
284
309
279
279
309
306
306
331
296
301
326
306
306
311
311
291
291
286
291
291
286
291
291
286
331
318
318
303
338
308
313
343
328
328
315
320
345
345
340
340
317
332
327
362
332
347
329
329
334
379
341
336
346
346
376
376
391
376
393
348
348
358
358
403
403
383
400
360
370
370
385
427
412
412
397
397
377
377
384
384
384
384
434
434
441
396
396
426
401
443
443
443
468
438
453
408
408
428
428
428
455
440
420
420
435
435
450
482
467
452
452
452
452
487
487
452
432
432
494
499
464
439
439
474
474
476
451
451
491
486
518
478
478
478
478
478
478
493
530
510
477
477
472
477
522
484
484
489
529
491
491
491
491
582
572
587
577
577
579
599
599
599
591
601
596
596
611
606
606
588
613
613
608
618
625
625
600
607
612
637
637
674
619
624
619
631
658
658
707
677
729
699
734
741
696
691
696
721
738
703
708
748
725
715
765
765
749
778
798
798
780
780
790
775
775
787
787
797
812
799
799
809
851
866
823
823
875
882
877
852
852
862
892
847
847
859
874
854
901
866
866
916
901
890
897
897
945
937
904
919
961
921
921
916
953
953
980
947
947
947
947
995
995
972
972
957
1019
966
966
986
978
990
990
990
990
985
985
1012
1072
1064
1064
1019
1055
1127
1127
1074
1124
1086
1086
1086
1141
1141
1158
1162
1167
1172
1174
1179
1196
1196
1206
1203
1160
1160
1185
1249
1249
1241
1211
1211
1211
1211
1223
1272
1319
1333
1369
1351
1378
1323
1370
1315
1315
1385
1330
1330
1322
1404
1411
1418
1448
1433
1435
1472
1503
1503
1498
1498
1522
1591
1618
1654
1634
1634
1661
1661
1661
1682
1666
1723
1673
1673
1742
1747
1754
1754
1766
1836
1836
1838
1773
1874
1891
1881
1881
1881
1898
1908
1934
1958
2037
2039
2053
2077
2112
2104
2104
2129
2136
2130
2185
2185
2322
2329
2353
2353
2407
2384
2384
2469
2469
2492
2535
2535
2588
2631
2631
2661
2691
2706
2730
2741
2741
2784
2810
2863
2882
2938
2981
3005
3896
3910
3946
4068
4111
4123
4330
4373
4373
27
37
37
27
27
27
27
27
34
49
49
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
41
41
41
41
41
41
53
58
58
63
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
60
60
60
60
60
60
60
65
60
60
60
60
65
72
72
82
72
72
72
72
72
72
72
72
72
72
87
72
72
77
72
72
72
77
77
79
79
84
84
84
89
79
79
79
79
79
79
79
84
84
84
84
84
84
84
79
84
84
84
84
111
96
86
86
86
86
86
86
116
91
91
91
91
96
101
118
108
98
98
123
98
98
98
98
103
103
103
110
110
115
125
110
135
115
105
105
110
110
135
110
110
135
110
135
120
110
110
130
122
122
147
147
117
117
122
122
117
117
117
117
117
117
122
147
137
137
122
122
127
147
147
134
134
134
134
134
129
129
149
129
129
129
134
144
154
154
154
134
154
129
154
142
142
129
134
154
149
149
144
144
154
134
149
166
161
166
161
161
136
136
136
171
171
156
161
161
146
136
136
171
171
156
166
166
156
156
161
156
166
166
171
161
161
161
161
173
173
148
148
148
148
148
148
148
153
163
161
161
148
163
148
148
148
148
148
148
148
178
163
163
148
148
173
160
160
155
175
175
185
185
190
185
160
190
190
190
185
185
167
167
172
172
192
192
197
197
167
197
197
197
197
197
192
192
197
197
182
187
197
179
199
179
204
204
179
199
209
204
194
194
204
209
191
211
211
191
196
196
186
211
216
203
198
203
198
198
228
223
223
198
220
210
210
225
225
225
240
205
230
230
230
225
222
222
222
222
247
247
247
247
217
217
217
252
247
264
234
234
229
229
224
264
261
276
241
241
241
241
241
241
236
271
278
263
263
263
253
253
253
273
273
290
275
285
275
280
265
265
265
285
295
260
260
287
302
292
272
272
302
302
272
272
272
284
284
309
306
306
321
286
286
286
318
318
328
328
343
308
313
323
323
318
318
328
298
298
298
298
298
298
343
328
328
330
330
350
320
325
345
355
340
332
357
357
347
347
329
329
374
334
339
374
344
341
341
336
391
393
348
348
358
353
358
358
358
358
388
388
403
383
360
355
410
410
412
367
422
397
439
409
409
419
419
384
384
384
384
396
396
396
396
441
441
441
441
448
403
403
438
453
413
413
455
455
480
450
465
420
440
440
440
467
452
427
427
432
467
447
447
494
474
464
464
464
464
499
499
464
439
439
506
511
476
446
446
486
488
458
458
496
496
503
493
490
490
490
490
490
490
542
525
522
489
529
539
496
496
496
575
572
594
594
589
589
589
591
611
603
618
618
618
608
618
618
618
618
620
620
630
620
637
637
619
624
639
686
631
636
631
643
683
665
665
702
719
689
741
706
706
746
753
708
728
728
728
750
715
760
737
722
772
772
756
771
778
790
810
810
792
792
797
799
799
811
811
821
878
835
855
887
894
889
859
859
874
904
854
854
871
871
881
881
913
918
878
878
928
913
885
907
907
909
909
957
949
916
926
973
953
928
928
992
972
959
959
959
959
1007
1007
984
984
1031
978
993
993
993
993
985
1002
1002
1002
1002
1019
1019
1084
1076
1026
1026
1139
1139
1086
1136
1093
1093
1093
1153
1153
1170
1105
1105
1174
1179
1184
1186
1191
1141
1208
1208
1203
1218
1215
1167
1167
1236
1261
1261
1253
1223
1223
1230
1284
1331
1345
1381
1390
1382
1322
1322
1397
1342
1416
1423
1430
1460
1447
1484
1510
1510
1510
1534
1603
1630
1666
1646
1646
1671
1673
1673
1673
1709
1694
1654
1654
1673
1735
1754
1747
1754
1766
1766
1773
1848
1848
1850
1886
1903
1893
1893
1893
1910
1915
1946
1965
2049
2051
2065
2089
2124
2116
2116
2141
2148
2142
2197
2197
2334
2341
2365
2365
2419
2396
2396
2481
2481
2504
2547
2547
2600
2638
2638
2673
2703
2718
2742
2753
2822
2875
2894
2950
2993
3017
3908
3922
3958
4080
4123
4135
4342
4385
4385
1
1
1
1
1
27
27
27
27
27
27
34
44
44
34
34
39
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
56
56
46
41
46
46
51
41
41
41
41
41
41
53
63
53
53
53
53
53
53
53
53
53
48
48
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
70
75
60
65
60
60
60
60
60
60
65
72
72
72
72
72
72
72
72
72
77
72
72
72
72
77
84
89
79
94
84
79
84
84
96
91
101
91
86
86
86
86
106
91
103
123
128
123
123
103
113
130
120
110
130
125
125
110
110
110
110
125
125
125
115
122
122
127
137
122
142
117
122
117
117
117
117
117
117
117
117
117
147
127
117
117
117
147
117
147
127
117
117
137
137
137
129
129
129
129
129
154
129
129
144
159
149
129
129
129
159
159
129
129
129
129
134
154
154
141
141
141
141
141
136
156
141
136
136
141
141
141
151
161
161
166
166
161
161
136
141
141
161
161
161
141
141
141
136
136
136
141
161
161
141
141
141
151
151
166
141
141
156
173
173
148
148
148
148
168
168
161
178
178
163
173
173
148
153
153
178
178
163
173
173
178
163
163
173
163
173
173
173
178
173
173
173
173
180
180
160
160
155
155
155
155
175
185
160
160
165
185
180
180
185
190
160
160
185
172
172
197
197
197
197
197
197
179
179
184
184
204
204
204
204
179
204
204
194
204
209
204
204
204
204
204
206
216
216
191
191
201
196
216
206
201
201
216
216
198
198
218
218
203
208
208
203
203
213
208
223
230
210
210
210
230
205
230
230
230
230
230
230
225
232
252
222
222
247
247
217
249
249
249
259
259
229
224
259
261
276
241
241
241
241
241
241
241
236
271
273
288
293
253
253
253
253
253
273
273
273
285
275
275
275
265
265
265
285
297
287
302
292
292
287
292
277
277
297
307
299
314
309
279
279
279
279
279
279
321
318
318
330
330
340
340
355
320
325
330
330
335
335
340
340
345
355
340
342
342
362
332
337
357
347
347
367
347
329
334
339
344
364
369
359
371
366
366
341
336
336
381
346
351
386
356
348
348
348
383
383
398
360
355
370
370
365
395
400
415
395
367
422
424
384
384
384
384
409
451
421
421
431
396
396
441
441
448
403
403
403
403
453
453
453
460
450
465
420
420
420
420
420
455
455
467
467
492
462
427
427
432
452
452
452
474
464
439
439
439
477
479
474
459
459
474
474
506
476
476
476
476
511
511
476
518
523
488
493
500
470
470
503
503
515
477
502
502
502
502
502
502
554
532
532
532
532
529
529
534
539
496
541
503
503
515
515
510
515
515
510
577
587
582
577
584
606
601
601
601
596
596
596
596
603
618
623
630
610
625
625
625
642
627
649
649
631
636
698
643
648
643
655
677
714
731
701
753
718
758
715
760
735
735
762
722
772
749
784
756
771
768
783
790
802
822
822
804
804
794
811
811
823
823
833
890
835
847
862
862
899
906
901
881
881
916
883
925
885
930
890
890
940
905
925
907
907
902
944
919
919
921
921
969
961
928
953
985
972
1004
984
971
971
971
971
1019
1019
991
991
1043
985
1000
1000
1014
1014
1014
1014
1096
1088
1038
1038
1055
1055
1151
1151
1093
1148
1165
1160
1182
1112
1112
1186
1191
1191
1198
1203
1148
1148
1220
1220
1230
1227
1211
1211
1248
1273
1273
1208
1265
1230
1230
1296
1338
1357
1388
1323
1330
1330
1394
1409
1349
1428
1435
1442
1472
1459
1496
1522
1522
1546
1615
1642
1678
1658
1658
1685
1685
1685
1721
1706
1666
1747
1766
1747
1766
1778
1773
1860
1860
1862
1898
1915
1905
1905
1922
1958
1977
2061
2063
2077
2096
2136
2128
2128
2153
2160
2154
2209
2209
2346
2353
2377
2377
2431
2408
2408
2493
2493
2516
2559
2559
2612
2650
2685
2715
2730
2754
2741
2741
2765
2834
2887
2906
2962
3005
3029
3920
3934
3965
4092
4135
4147
4354
4397
4397
1
1
1
1
1
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
51
41
51
41
41
41
41
41
41
41
53
68
68
53
53
53
58
58
63
53
53
53
53
53
53
53
53
53
53
73
53
53
53
53
53
53
53
53
53
75
65
60
60
60
60
60
60
60
60
82
87
72
72
72
72
72
72
72
72
72
77
79
79
79
84
84
84
91
91
101
91
91
86
86
86
111
101
91
91
111
103
103
103
113
98
113
98
98
103
103
103
115
110
110
110
110
130
135
125
135
110
110
110
110
110
135
135
125
125
135
120
142
132
122
137
122
137
137
117
122
122
122
117
117
117
117
117
122
127
137
137
137
144
129
149
129
129
129
129
129
129
134
154
154
154
134
134
134
134
154
154
154
129
129
154
129
129
134
154
154
149
141
141
136
141
136
156
136
136
141
161
161
136
136
151
136
171
156
141
136
136
171
171
136
136
136
161
161
161
148
148
168
153
148
148
163
161
173
173
173
173
163
148
163
168
148
148
163
161
148
148
148
148
148
148
163
173
173
148
148
163
180
180
160
160
175
175
175
185
185
185
180
180
185
185
185
180
190
180
185
185
180
180
180
180
175
175
187
172
167
167
167
172
172
177
192
192
197
172
172
182
192
184
179
204
204
184
184
204
204
194
204
204
204
196
191
186
196
196
216
206
201
216
218
198
198
208
228
228
223
228
230
225
225
215
225
220
220
230
250
210
210
220
230
230
230
230
230
230
235
242
222
247
222
222
247
247
242
242
257
244
264
259
259
241
241
266
266
236
288
253
253
248
253
285
285
300
300
260
260
260
260
265
285
297
287
287
307
287
277
272
297
302
302
309
299
304
299
289
284
304
319
284
284
279
311
326
326
328
328
330
330
365
342
342
367
332
332
342
342
347
347
352
367
347
354
354
339
374
344
344
359
359
379
336
381
381
351
356
376
381
366
378
378
378
378
348
348
358
398
368
360
355
365
365
410
410
395
395
367
377
412
427
402
419
419
389
389
434
436
396
396
401
441
441
421
436
463
448
443
433
433
403
403
453
460
420
420
420
420
460
460
457
432
462
462
479
479
474
474
474
504
469
444
464
464
464
474
474
486
476
451
451
484
484
491
471
471
486
518
518
488
488
488
488
523
523
488
458
458
458
458
530
530
535
495
507
482
482
527
484
484
539
514
514
514
514
514
514
566
539
539
496
496
541
541
546
546
548
510
510
522
522
522
522
577
589
599
591
596
596
618
618
618
608
608
608
630
610
635
625
637
627
627
654
661
661
643
648
710
655
660
655
675
665
665
667
697
682
689
726
743
708
728
715
770
760
735
735
735
735
772
772
772
747
774
784
761
796
768
780
790
790
790
790
802
809
794
834
834
809
816
816
823
823
835
835
845
902
859
911
918
913
893
893
928
890
937
902
902
952
912
937
909
909
956
931
931
933
933
981
973
940
997
984
1016
991
983
983
983
983
1031
1031
1055
1064
1064
1019
1026
1026
1026
1026
1026
1026
1026
1108
1100
1045
1045
1080
1067
1067
1079
1074
1074
1086
1163
1163
1160
1177
1194
1198
1203
1203
1210
1215
1232
1232
1242
1167
1189
1239
1223
1260
1285
1285
1215
1277
1308
1277
1369
1303
1323
1323
1400
1330
1342
1342
1404
1406
1421
1440
1447
1454
1484
1471
1508
1534
1534
1558
1582
1601
1627
1654
1690
1670
1670
1697
1697
1697
1654
1733
1718
1673
1754
1754
1773
1773
1759
1778
1785
1872
1872
1874
1910
1917
1917
1934
1970
1989
2073
2070
2089
2108
2148
2140
2140
2165
2172
2166
2221
2221
2358
2365
2389
2389
2443
2420
2420
2505
2505
2528
2571
2571
2624
2638
2638
2662
2697
2727
2742
2766
2753
2777
2846
2894
2894
2913
2913
2974
3017
3041
3927
3946
3977
4104
4147
4159
4366
4409
4409
1
1
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
41
41
41
41
41
41
41
41
41
46
41
41
41
41
53
53
63
53
53
63
53
53
53
48
53
53
53
53
53
53
53
53
60
65
80
80
65
65
70
70
75
60
60
60
60
60
60
60
60
60
60
60
60
60
85
60
75
60
60
60
60
60
82
72
72
72
72
67
67
67
67
72
72
72
72
72
72
72
72
72
72
99
94
79
79
79
79
79
79
84
84
91
86
91
91
91
91
103
103
103
103
108
113
98
103
98
98
123
103
123
123
103
103
115
115
110
110
125
115
135
135
135
110
120
110
110
135
135
115
115
115
122
122
132
117
117
117
117
117
117
142
137
122
137
142
117
117
117
137
137
117
117
117
117
117
117
117
117
117
117
142
147
132
132
147
127
144
149
129
129
129
144
144
129
129
129
129
129
129
129
129
144
154
129
129
144
144
151
136
136
141
141
141
141
141
136
136
141
141
141
166
166
161
161
141
141
141
141
161
161
166
166
161
161
161
136
161
161
161
161
161
136
136
141
166
166
156
161
156
148
148
148
148
148
153
148
153
148
163
173
178
163
148
148
148
178
178
161
163
148
148
175
165
185
185
180
180
180
180
185
185
160
160
180
180
180
187
167
167
167
187
187
192
187
187
197
192
192
187
187
187
187
187
187
179
174
174
174
179
179
184
184
189
204
199
199
204
204
204
204
204
204
184
184
204
196
191
206
196
186
191
191
201
216
238
203
203
208
208
198
208
228
223
215
215
205
205
230
210
220
220
230
230
230
235
230
235
235
237
237
227
232
232
222
222
222
222
217
217
257
257
232
242
254
234
254
254
249
259
254
254
264
256
276
266
271
276
276
253
253
253
300
260
260
265
265
265
307
292
292
312
312
312
312
312
277
292
309
299
299
314
299
284
304
314
279
321
311
311
316
296
331
291
291
323
338
303
303
298
303
303
298
303
303
298
328
328
340
342
342
372
354
354
339
339
379
344
369
354
354
359
359
364
379
366
366
336
386
356
366
366
386
348
358
358
388
363
393
385
385
355
365
365
410
375
395
367
377
377
422
422
422
402
402
419
384
424
439
431
431
396
396
406
441
446
448
403
403
453
433
443
443
475
450
445
445
420
460
439
491
491
486
486
516
451
476
476
476
486
486
493
488
458
458
503
483
483
493
530
500
500
500
500
535
535
500
470
470
470
470
542
542
547
507
519
489
489
539
539
539
526
526
526
526
526
526
578
503
503
503
503
548
548
558
558
558
589
616
601
611
596
596
618
608
630
630
610
620
615
615
642
647
666
673
673
655
660
665
722
667
667
672
682
677
682
677
677
679
704
689
691
716
716
696
738
755
782
747
747
784
784
754
786
796
773
783
808
780
792
797
797
797
809
809
809
846
846
821
823
823
835
835
850
850
835
835
842
842
852
914
871
923
930
925
900
900
940
902
912
949
914
914
964
924
949
968
958
953
958
953
938
938
928
945
945
993
980
952
977
1009
991
1028
995
995
995
995
1000
1043
1043
1067
1019
1019
1019
1076
1026
1038
1038
1038
1038
1038
1038
1038
1120
1112
1087
1087
1086
1086
1086
1086
1106
1106
1093
1093
1175
1175
1172
1189
1206
1210
1215
1215
1222
1227
1167
1244
1244
1254
1196
1196
1196
1251
1211
1211
1230
1272
1297
1297
1227
1227
1289
1320
1289
1381
1303
1323
1330
1330
1412
1342
1354
1349
1418
1433
1435
1452
1454
1454
1461
1461
1496
1483
1520
1546
1546
1570
1613
1639
1666
1702
1682
1682
1709
1709
1709
1654
1666
1745
1730
1785
1785
1766
1785
1884
1884
1886
1922
1924
1924
1982
2001
2085
2101
2120
2160
2152
2152
2177
2184
2178
2233
2233
2370
2377
2401
2401
2455
2432
2432
2517
2517
2540
2583
2583
2636
2650
2674
2704
2739
2754
2773
2765
2789
2858
2925
2925
2986
3029
3053
3958
3965
3989
4116
4159
4171
4378
4421
4421
1
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
46
41
41
46
41
46
46
41
41
41
41
41
41
41
41
41
41
53
53
53
63
53
53
53
53
48
53
53
53
53
53
53
53
53
53
53
53
53
68
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
80
65
75
65
70
70
75
60
60
60
60
60
60
60
60
60
60
60
60
60
60
72
87
92
92
77
77
82
77
82
72
72
72
72
72
72
72
72
72
67
67
72
72
72
92
72
87
72
72
72
72
72
72
72
94
79
79
84
79
79
84
84
101
111
106
116
86
86
86
86
91
86
91
86
91
91
103
98
98
98
98
98
98
103
115
120
125
110
135
130
110
110
110
110
135
125
135
125
125
130
110
125
135
130
135
122
122
132
122
117
117
122
122
122
122
122
142
142
142
147
147
147
122
117
117
117
122
122
142
142
117
117
147
147
134
134
144
134
129
129
134
129
144
149
149
144
144
129
129
129
129
129
134
149
134
154
154
139
139
151
151
146
146
136
136
151
151
151
146
136
136
161
136
161
141
141
151
151
136
136
166
136
136
151
151
151
156
156
148
148
148
153
148
148
148
148
163
148
148
148
148
173
173
158
148
148
173
173
173
173
163
173
173
148
148
173
173
173
163
173
173
148
148
153
173
173
168
163
175
160
155
155
160
175
160
160
185
185
175
160
185
185
185
160
160
187
177
167
167
187
187
172
172
192
192
192
192
199
199
204
179
179
204
204
204
204
199
204
194
194
191
191
191
196
196
201
216
206
206
191
216
196
196
211
211
203
208
198
198
208
228
223
215
210
215
210
245
215
220
220
230
210
220
220
235
222
222
247
217
217
242
232
247
247
242
249
249
239
254
244
244
234
234
234
234
229
229
254
266
246
246
241
241
246
241
241
266
271
266
266
268
288
283
283
260
260
292
312
277
272
272
314
304
304
324
319
319
319
319
319
319
319
289
284
284
284
284
284
321
311
311
311
296
296
296
326
333
323
323
328
308
343
298
298
298
335
350
310
310
310
310
310
310
332
347
347
329
344
354
354
366
366
341
336
351
391
376
371
371
366
366
376
391
378
378
348
348
398
383
398
385
360
370
370
365
365
395
405
377
417
419
384
384
384
384
429
429
434
396
396
436
441
451
448
438
438
403
403
413
453
458
460
415
415
420
460
445
487
457
457
432
474
474
474
503
503
493
493
528
463
488
488
488
498
498
500
503
515
495
495
542
512
512
512
512
547
547
512
477
477
477
477
554
554
559
519
529
539
531
551
508
508
503
538
538
538
538
538
538
590
570
565
565
565
565
582
601
623
623
608
623
608
610
620
615
642
642
649
659
639
678
685
685
665
667
672
734
679
684
679
689
689
689
684
684
691
696
691
696
703
723
723
723
723
750
760
735
735
767
794
754
754
796
796
798
808
785
790
820
792
812
797
804
799
799
809
858
858
847
847
862
862
862
847
847
854
854
926
883
895
930
942
937
952
912
914
924
961
926
926
971
961
938
938
980
970
970
950
957
957
1005
972
972
992
964
989
966
966
1021
1040
1000
1007
1007
1007
1007
1055
1055
1079
1088
1038
1050
1050
1050
1050
1050
1050
1045
1132
1124
1093
1093
1093
1113
1113
1113
1112
1187
1187
1184
1201
1218
1190
1222
1227
1227
1234
1239
1256
1256
1266
1211
1211
1203
1203
1263
1223
1223
1215
1284
1309
1309
1234
1234
1234
1234
1301
1277
1277
1332
1393
1303
1323
1315
1335
1342
1342
1424
1349
1361
1430
1447
1464
1473
1473
1508
1495
1532
1558
1558
1582
1625
1651
1678
1714
1694
1694
1721
1721
1721
1678
1757
1742
1797
1797
1766
1896
1896
1846
1846
1898
1934
1936
1994
2013
2097
2096
2113
2132
2172
2164
2164
2189
2196
2190
2245
2245
2382
2389
2413
2413
2467
2444
2444
2529
2529
2552
2595
2595
2648
2662
2686
2751
2766
2785
2777
2801
2870
2937
2937
2998
3041
3065
3927
3970
3977
4001
4128
4171
4183
4390
4433
4433
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
51
41
46
41
41
41
41
41
46
41
41
41
56
41
41
53
53
58
58
58
53
53
53
53
53
53
53
53
53
53
68
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
70
60
60
60
60
60
60
60
60
60
60
65
60
60
60
75
60
65
60
60
60
72
87
72
77
87
77
82
72
72
72
72
72
72
72
72
72
72
72
72
72
72
84
104
99
99
104
89
89
94
94
79
92
84
84
84
99
94
104
84
84
84
101
91
91
91
91
111
91
111
86
86
111
96
96
111
91
111
91
111
113
123
118
128
98
98
98
98
98
103
103
103
130
125
110
130
130
125
125
135
115
132
132
122
122
122
117
147
137
117
117
117
117
117
147
137
142
137
137
142
117
137
147
122
117
117
137
137
137
147
127
129
129
129
129
129
129
129
129
129
154
154
154
154
154
129
129
129
129
129
154
154
154
154
151
141
136
136
141
161
161
151
151
161
136
151
151
136
136
136
141
141
141
136
136
136
141
161
161
136
136
141
161
161
161
161
161
161
163
153
153
148
148
148
148
148
148
148
148
153
153
148
148
148
163
148
148
148
148
173
168
168
175
180
160
160
155
155
155
165
180
180
185
165
165
180
180
180
180
180
180
160
185
180
180
180
180
165
160
160
180
180
175
167
167
172
172
192
172
197
197
197
172
172
199
189
184
184
199
204
204
199
199
211
211
196
196
191
216
201
201
203
203
208
208
213
203
203
228
208
208
223
223
210
210
245
225
225
210
215
215
210
215
215
235
222
222
222
222
232
232
247
247
222
247
247
247
247
242
254
259
229
229
254
264
259
261
261
246
246
256
256
241
241
278
253
253
253
253
253
253
253
253
253
253
278
278
273
283
283
283
283
280
300
300
295
292
304
324
319
319
319
284
309
341
311
311
336
331
331
296
296
296
291
291
291
291
291
291
333
323
323
323
303
308
308
338
328
328
345
335
335
340
315
345
355
347
372
362
329
341
381
376
376
366
366
378
378
348
398
398
363
378
378
378
378
388
390
390
385
360
360
370
410
375
395
395
372
377
417
407
412
412
384
429
429
429
429
429
431
396
396
396
396
441
441
446
403
403
453
413
413
443
443
463
415
415
465
470
472
422
422
457
457
462
499
469
469
469
444
486
451
451
458
458
515
515
540
475
503
500
500
500
510
510
512
527
507
507
554
524
524
524
524
489
559
559
524
566
566
571
531
546
503
543
558
558
515
515
550
550
550
550
550
550
565
565
602
527
527
522
527
527
522
577
577
577
577
589
589
591
596
608
608
635
635
635
615
627
654
649
649
666
666
685
685
697
697
682
677
679
684
691
696
691
691
701
746
703
708
723
723
715
735
735
760
762
772
747
779
806
778
808
808
810
780
820
797
832
804
816
806
806
821
823
823
870
870
835
842
842
859
859
859
859
874
874
874
854
854
854
866
866
876
871
886
881
881
933
895
895
902
902
897
897
954
949
964
926
973
938
938
983
973
928
950
950
992
957
969
969
1017
984
984
1004
976
966
966
996
978
978
1028
1028
1047
1047
1019
1019
1019
1019
1067
1067
1091
1031
1100
1045
1062
1062
1062
1062
1057
1057
1144
1136
1093
1113
1199
1199
1196
1213
1230
1197
1234
1239
1239
1246
1196
1251
1203
1203
1203
1203
1268
1268
1278
1215
1270
1235
1235
1234
1234
1296
1321
1321
1246
1246
1313
1289
1344
1303
1405
1315
1322
1322
1342
1354
1349
1436
1442
1459
1476
1485
1485
1520
1507
1544
1570
1570
1594
1637
1663
1690
1654
1726
1706
1706
1733
1733
1733
1685
1769
1754
1809
1809
1785
1827
1908
1908
1853
1853
1910
1924
1924
1948
2006
2025
2070
2109
2108
2125
2144
2184
2176
2176
2201
2208
2202
2257
2257
2394
2401
2425
2425
2479
2456
2456
2541
2541
2564
2607
2607
2660
2674
2698
2763
2778
2797
2789
2813
2882
2949
2949
3010
3053
3077
3982
3989
4013
4140
4183
4195
4402
4445
4445
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
41
41
41
41
41
41
41
41
41
41
41
63
58
58
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
63
53
53
53
53
53
53
60
60
70
65
65
60
60
60
60
60
60
60
60
80
60
60
60
60
60
65
65
60
60
60
60
75
60
60
60
60
60
65
65
72
72
72
72
72
72
72
72
72
72
72
77
72
72
82
72
72
77
72
72
72
72
72
72
92
84
84
99
84
99
89
99
79
79
92
84
84
84
79
99
92
92
84
84
84
91
91
111
106
106
111
106
101
101
106
91
111
91
96
86
86
91
91
111
86
86
104
86
86
96
96
96
91
111
101
116
91
113
98
103
98
103
118
98
98
123
123
123
98
123
113
98
98
123
98
113
113
125
135
130
125
125
125
135
125
135
135
135
135
135
137
142
127
117
137
132
137
117
122
117
117
142
117
117
117
122
142
132
132
147
144
129
129
134
134
154
129
129
134
154
144
149
149
144
144
149
129
129
144
154
129
149
149
154
141
136
136
136
156
146
141
161
161
161
161
161
151
161
161
136
136
136
136
141
136
136
161
161
136
136
141
151
161
161
161
163
153
153
148
148
148
173
173
173
173
148
148
148
148
148
148
148
148
148
173
173
173
173
163
180
160
155
160
160
175
180
180
160
160
180
175
175
187
172
172
167
177
197
187
187
187
187
172
187
187
187
187
187
172
172
177
187
182
182
179
179
184
179
204
204
209
209
209
184
184
184
211
216
201
206
196
196
216
206
206
208
223
223
203
203
228
233
230
230
215
215
220
220
225
210
210
240
235
220
220
235
237
222
247
217
222
222
242
244
244
259
229
259
259
271
236
236
266
266
273
273
258
258
268
268
248
248
273
273
273
290
265
265
260
260
260
260
285
285
285
285
285
295
295
292
312
302
304
309
311
336
331
321
296
296
291
348
338
338
303
303
348
345
335
335
335
315
315
345
350
357
347
352
347
357
367
347
347
359
339
374
341
386
353
378
378
383
383
390
390
360
390
390
390
400
402
402
372
377
422
367
407
407
427
422
419
384
429
379
414
441
441
441
441
448
448
443
403
403
403
403
448
453
453
458
415
415
465
420
420
455
455
475
422
422
472
482
462
484
469
469
511
481
481
481
451
493
458
458
458
458
463
463
495
470
470
527
527
552
507
482
512
512
512
522
522
524
529
529
539
519
519
566
536
536
536
536
496
496
571
571
536
578
578
583
508
508
543
555
522
522
562
562
562
562
562
562
577
614
534
534
534
534
589
589
589
584
584
596
596
623
608
608
623
625
625
620
620
647
649
666
661
661
665
697
697
709
709
689
689
689
691
696
696
703
708
703
703
708
708
708
758
715
715
735
735
735
722
722
742
742
774
784
754
786
786
771
778
818
820
820
817
817
787
787
832
804
844
816
823
840
882
882
847
854
854
871
871
881
878
878
878
883
893
893
893
893
902
907
909
909
961
961
976
938
980
945
945
945
945
995
985
957
957
1004
976
976
976
976
1029
991
991
1016
988
990
990
1059
1059
1031
1031
1031
1031
1079
1079
1103
1038
1038
1112
1074
1074
1074
1074
1156
1148
1112
1211
1211
1208
1225
1237
1172
1172
1197
1209
1246
1251
1251
1258
1263
1215
1215
1280
1280
1290
1222
1282
1242
1242
1234
1234
1246
1308
1333
1333
1253
1253
1320
1320
1351
1351
1308
1315
1417
1322
1361
1448
1454
1471
1488
1497
1497
1532
1519
1551
1582
1582
1601
1649
1675
1702
1654
1666
1738
1718
1718
1745
1745
1745
1781
1766
1821
1821
1785
1834
1834
1920
1920
1922
1936
1960
2018
2037
2121
2120
2137
2156
2196
2213
2183
2183
2183
2183
2220
2214
2269
2269
2406
2413
2437
2437
2491
2468
2468
2553
2553
2576
2619
2619
2672
2686
2710
2775
2790
2809
2801
2825
2894
2961
2961
3022
3065
3089
3994
4001
4025
4152
4195
4207
4414
4457
4457
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
46
46
46
41
41
41
41
41
41
41
41
41
41
41
53
53
53
53
53
53
53
53
53
48
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
48
48
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
60
60
75
65
65
65
60
60
60
60
60
60
65
60
60
60
70
60
65
65
72
82
77
72
67
67
67
67
87
72
67
77
77
72
72
82
77
72
72
72
72
77
84
84
79
79
79
79
79
79
79
79
79
84
84
84
84
79
79
79
94
84
84
84
79
79
79
99
84
84
84
84
84
104
84
84
96
111
101
101
111
91
104
96
91
91
91
104
104
101
91
111
111
111
106
103
103
123
123
113
108
108
113
98
123
103
98
118
103
111
98
98
98
123
113
123
98
103
125
110
105
125
130
135
130
130
130
130
135
130
135
125
130
135
135
130
115
115
125
125
132
147
137
127
142
137
137
132
132
142
132
117
147
147
137
137
147
147
117
117
147
117
117
132
132
149
149
134
134
149
139
129
129
139
129
149
129
129
149
154
139
139
156
156
141
141
156
141
141
161
161
161
156
161
161
141
136
136
141
161
161
141
151
151
151
151
136
151
151
156
136
151
151
161
161
141
136
136
161
156
161
161
148
148
168
148
148
153
168
168
173
173
163
148
148
148
148
168
168
163
180
180
175
180
180
185
180
160
160
180
180
180
180
180
180
187
172
167
167
167
187
187
187
187
192
172
172
187
182
182
179
179
179
179
179
189
209
184
184
184
189
186
196
186
186
206
216
221
221
221
196
196
196
201
208
203
223
213
233
203
203
203
203
208
208
208
228
230
230
215
210
215
220
240
240
242
227
227
232
232
237
217
217
222
252
247
247
227
227
249
234
229
229
251
251
271
236
236
266
266
278
248
248
248
278
273
283
283
285
280
270
270
275
275
260
260
260
285
302
277
277
297
297
297
302
302
277
304
314
324
319
319
309
311
291
348
338
303
303
360
345
310
310
310
357
347
347
347
362
369
359
359
364
379
359
359
371
381
351
376
386
398
398
348
378
378
365
360
395
390
390
395
395
402
402
377
367
402
402
402
412
384
434
379
414
414
429
429
434
409
409
434
431
396
396
396
396
396
441
403
403
403
403
453
448
448
453
460
460
450
415
415
420
420
420
420
465
470
422
422
467
467
487
474
474
484
494
496
481
523
493
493
463
463
470
470
470
470
470
470
507
482
482
539
539
564
519
524
524
524
529
529
536
541
541
551
531
531
578
548
548
548
548
583
583
548
590
590
595
515
515
515
515
555
565
565
567
569
569
569
569
569
569
584
626
606
596
601
601
608
620
620
630
630
630
630
632
632
627
627
627
659
661
678
668
668
682
677
709
709
689
721
721
696
703
708
723
708
733
715
720
715
715
720
720
720
770
735
735
727
742
747
747
786
796
790
830
832
832
829
829
814
844
856
828
835
847
847
894
894
854
854
866
866
883
883
890
890
890
890
900
900
930
919
921
921
973
988
933
933
950
980
992
952
1007
997
1016
991
996
988
988
988
988
1041
1028
1000
997
997
1071
1071
1043
1043
1043
1043
1086
1086
1115
1124
1086
1086
1086
1086
1168
1160
1160
1191
1153
1218
1218
1220
1237
1237
1197
1179
1179
1209
1258
1263
1203
1203
1263
1270
1270
1275
1222
1222
1292
1292
1302
1242
1242
1294
1254
1246
1253
1320
1345
1345
1363
1363
1315
1315
1322
1322
1342
1429
1460
1466
1483
1500
1509
1509
1544
1531
1594
1594
1613
1661
1687
1714
1678
1750
1730
1730
1685
1757
1757
1757
1793
1778
1833
1833
1853
1932
1932
1934
1948
1972
2030
2049
2133
2132
2149
2168
2208
2225
2195
2195
2232
2226
2281
2281
2418
2425
2449
2449
2503
2480
2480
2565
2565
2588
2631
2631
2684
2698
2722
2787
2802
2821
2813
2837
2906
2973
2973
3034
3077
3101
4006
4013
4037
4164
4207
4219
4426
4469
4469
1
1
13
27
27
27
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
51
41
41
53
53
58
53
53
53
53
53
53
48
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
60
60
60
60
65
60
60
65
60
60
60
65
65
65
72
72
72
72
87
87
77
72
72
72
77
72
87
72
84
84
94
94
89
79
94
79
99
84
84
84
89
84
84
89
84
84
84
84
84
84
99
99
84
84
89
91
91
91
91
96
86
91
86
86
86
86
86
86
91
86
91
86
101
91
91
86
86
101
101
91
91
91
86
86
86
111
96
96
111
103
123
113
118
113
98
98
103
111
98
98
98
103
103
103
98
98
103
111
111
98
123
103
118
118
113
98
113
125
125
130
105
125
110
110
110
110
110
110
118
125
125
135
125
125
135
110
125
125
135
115
135
125
125
135
130
110
125
125
135
125
110
110
135
135
110
125
125
135
110
110
110
110
110
110
130
115
115
132
117
142
137
137
147
137
137
142
142
137
137
137
137
122
147
147
137
137
122
132
122
137
137
147
147
142
137
137
132
132
154
139
149
134
149
134
144
144
129
139
154
154
149
149
154
154
129
154
129
129
144
144
156
156
141
156
156
156
146
141
141
141
136
156
156
136
141
141
156
161
161
148
148
168
168
168
153
153
168
148
148
163
153
153
148
148
148
148
148
153
163
163
175
165
160
165
160
185
180
185
185
180
160
155
155
180
180
187
187
187
187
187
187
197
187
167
167
187
187
187
192
187
187
187
179
179
179
194
204
184
184
191
191
191
186
186
186
201
221
221
216
196
196
196
201
206
201
203
208
198
198
208
208
228
233
233
233
208
203
203
230
215
235
225
240
215
215
210
215
215
220
220
220
215
215
240
242
222
222
227
227
222
222
232
252
252
252
249
239
239
244
244
249
264
259
261
246
236
258
258
278
278
248
248
248
273
260
260
290
260
260
255
290
285
295
292
292
282
282
287
287
267
292
314
314
289
289
319
309
309
284
284
304
304
284
284
316
336
331
296
296
321
360
315
315
310
315
315
310
315
315
310
372
357
347
369
359
359
359
374
381
371
371
376
391
366
366
366
383
383
398
390
405
405
377
377
367
407
397
397
402
402
402
419
384
379
414
409
409
424
434
409
409
396
396
396
446
441
421
421
441
443
403
403
403
453
415
415
415
415
465
465
427
427
472
472
482
467
467
479
479
479
499
486
486
451
496
506
508
458
458
493
535
505
505
470
470
470
470
482
482
482
482
519
529
489
489
489
489
551
551
576
531
536
536
536
541
548
543
543
548
548
563
543
543
590
560
560
560
560
520
520
515
595
595
555
555
565
602
602
607
562
562
582
577
574
574
589
589
581
581
581
633
613
613
613
613
620
627
627
637
637
637
671
668
690
665
689
689
721
721
728
728
723
715
720
735
720
740
727
732
727
722
727
722
727
727
727
782
739
759
759
798
808
797
842
804
814
844
844
841
841
821
806
856
823
868
840
847
852
906
906
866
866
878
878
878
895
895
890
902
902
897
897
897
897
902
912
914
931
933
933
985
1000
962
992
1004
959
1019
1009
991
1028
998
1000
1000
1000
1000
1053
1040
1012
1009
1083
1083
1055
1055
1055
1055
1098
1127
1057
1136
1098
1098
1098
1098
1180
1167
1117
1117
1203
1160
1160
1230
1232
1249
1270
1275
1215
1275
1282
1282
1287
1304
1304
1314
1234
1254
1254
1306
1261
1253
1332
1357
1357
1375
1375
1334
1334
1441
1361
1472
1478
1495
1512
1521
1521
1556
1543
1601
1606
1625
1673
1640
1699
1726
1685
1685
1762
1742
1742
1769
1764
1764
1805
1790
1845
1845
1853
1915
1944
1944
1946
1960
1984
2037
2056
2145
2144
2161
2180
2220
2237
2207
2207
2244
2238
2293
2293
2430
2437
2461
2461
2515
2492
2492
2577
2577
2600
2643
2643
2696
2710
2734
2799
2814
2833
2825
2844
2918
2985
2985
3046
3089
3113
4018
4025
4049
4176
4219
4231
4438
4481
4481
1
1
13
25
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
46
51
46
46
53
53
53
58
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
60
60
60
65
60
60
65
65
60
65
65
65
77
72
72
67
72
72
72
77
72
77
72
72
72
77
77
72
84
84
94
94
89
79
94
104
79
79
84
84
84
94
79
79
84
84
84
96
91
91
101
101
101
91
86
86
86
101
111
96
101
96
96
106
106
96
103
103
103
103
103
98
98
98
98
113
98
98
98
98
108
98
98
98
98
118
103
103
103
103
118
115
120
125
125
110
110
105
125
125
118
135
110
110
110
110
130
130
135
125
125
120
110
110
118
118
110
130
110
110
125
125
125
125
120
115
125
137
137
117
137
137
117
117
117
117
132
132
147
132
132
147
122
117
132
132
147
122
142
132
132
147
137
122
117
132
132
147
132
117
117
147
147
122
117
132
132
147
117
117
117
117
117
117
139
134
129
134
134
134
154
149
149
149
149
129
154
154
129
139
129
154
154
129
149
149
149
139
139
151
161
161
156
156
141
151
151
151
141
151
161
161
161
156
156
161
161
161
161
161
161
156
136
136
141
151
151
163
148
148
148
163
148
148
148
148
153
148
148
160
160
175
175
175
190
160
160
160
160
175
180
160
160
160
165
180
182
172
172
172
172
187
192
187
187
187
187
187
187
172
167
187
187
187
179
194
204
179
204
191
186
201
216
196
196
206
203
198
198
198
213
228
228
228
203
203
203
208
213
203
203
230
230
230
230
205
205
215
215
235
240
220
240
245
220
245
245
215
242
222
222
237
217
217
262
222
222
222
222
232
227
247
247
252
249
254
254
229
229
234
234
259
259
259
259
251
246
246
256
256
261
241
236
271
266
273
258
278
278
253
248
283
283
265
265
265
265
265
265
265
265
255
255
302
267
267
302
297
302
319
304
294
294
299
299
319
319
289
284
284
326
301
301
331
321
321
296
296
301
296
296
296
296
296
328
348
338
308
308
348
372
352
322
322
322
322
322
322
322
322
322
322
322
322
384
359
381
371
371
381
376
376
371
386
393
383
353
383
388
388
398
395
365
400
395
405
405
405
367
402
417
384
384
379
414
409
429
429
434
431
396
426
421
436
441
441
403
458
448
413
448
433
433
450
450
465
427
422
427
422
477
472
434
434
484
494
474
474
486
451
451
491
491
506
489
493
493
463
503
513
520
505
547
517
517
537
534
489
489
489
489
489
489
529
529
501
531
541
501
501
501
501
563
563
588
543
548
548
548
553
515
575
555
555
565
565
602
572
572
572
572
527
527
607
607
577
614
614
614
534
534
574
574
589
584
596
586
586
601
601
623
613
608
608
593
593
593
645
615
625
625
627
627
637
639
683
702
677
694
689
694
689
696
696
723
733
733
713
740
740
727
732
747
727
752
739
744
739
739
739
794
751
766
766
810
795
820
802
802
849
821
821
806
856
856
853
853
868
835
875
852
862
847
859
854
881
918
918
873
873
890
890
907
907
897
897
902
912
914
914
909
909
924
938
938
938
945
945
997
1012
959
959
969
969
1004
1016
1031
1021
1040
1005
1005
997
997
997
1012
1012
1012
1012
1065
1052
1024
1021
1086
1086
1095
1095
1067
1067
1067
1067
1110
1057
1134
1091
1148
1098
1105
1105
1105
1105
1192
1179
1124
1124
1215
1242
1244
1179
1261
1203
1203
1282
1282
1222
1287
1289
1294
1299
1234
1234
1316
1316
1326
1246
1261
1261
1318
1344
1369
1369
1322
1322
1387
1387
1341
1341
1361
1453
1479
1490
1507
1524
1533
1533
1563
1555
1613
1618
1637
1685
1647
1647
1711
1738
1697
1697
1774
1754
1754
1781
1776
1817
1802
1857
1857
1927
1956
1956
1958
1965
1972
1996
2037
2056
2068
2157
2156
2173
2192
2232
2249
2219
2219
2256
2250
2305
2305
2442
2449
2473
2473
2527
2504
2504
2584
2584
2612
2655
2655
2703
2722
2741
2806
2806
2826
2845
2837
2844
2856
2930
2997
2997
3058
3101
3125
4030
4037
4061
4188
4231
4243
4450
4493
4493
25
37
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
41
41
41
41
41
41
41
41
41
41
41
58
58
58
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
60
60
60
60
60
65
65
60
75
65
77
72
72
72
72
77
67
67
72
77
77
72
72
92
72
77
77
72
84
84
79
79
79
79
104
84
79
79
99
84
84
84
84
84
84
84
84
84
101
91
91
86
86
86
86
111
86
86
86
86
86
86
91
91
91
86
86
86
101
86
86
96
111
96
96
103
103
113
113
113
98
113
118
98
98
103
98
103
98
113
103
103
113
113
103
115
125
115
110
105
110
110
110
110
120
110
110
110
110
118
130
125
110
110
110
110
115
115
115
127
132
122
122
117
132
132
147
117
137
137
142
142
142
132
132
122
137
137
137
122
117
137
137
117
137
117
117
137
137
132
132
132
137
149
149
129
154
139
139
129
154
139
139
129
154
139
139
149
154
139
139
134
129
154
139
139
139
129
129
154
154
129
129
154
139
139
129
139
141
141
141
141
161
161
151
156
156
156
156
161
161
151
146
161
161
161
161
136
136
136
136
161
161
151
161
156
156
156
173
173
163
148
163
168
163
163
158
148
148
148
148
148
148
148
148
148
168
158
158
160
175
175
175
160
160
170
185
160
160
160
160
160
160
155
155
165
172
172
182
182
182
197
197
172
172
182
182
187
187
172
187
167
167
172
187
177
182
184
184
184
184
204
184
179
191
201
216
191
216
198
198
213
203
203
203
233
228
208
208
230
230
230
250
215
205
225
240
240
235
215
215
215
215
220
220
240
242
242
227
227
227
227
222
222
222
222
252
257
257
257
232
227
247
247
227
227
254
254
254
244
269
269
234
234
234
234
234
239
269
259
259
264
259
259
266
266
251
251
236
246
266
266
271
263
258
258
268
268
268
278
248
248
283
283
283
285
270
275
275
290
290
260
295
295
297
292
292
272
272
272
272
319
319
309
314
324
324
304
304
326
316
306
306
311
311
331
296
296
296
338
313
313
343
333
333
303
308
303
303
308
308
303
303
303
303
340
360
315
315
315
377
322
322
322
322
322
322
384
359
359
334
334
334
334
334
334
396
366
366
393
383
383
383
348
383
398
405
395
360
365
395
395
400
395
395
395
405
405
377
377
377
372
397
397
402
402
417
402
417
424
384
384
384
414
409
409
429
429
409
409
424
396
421
441
441
443
408
408
403
438
433
413
413
448
470
455
455
445
445
477
434
434
434
434
489
484
486
486
456
491
506
493
493
463
463
503
503
496
505
475
470
470
525
532
517
559
529
529
489
489
529
544
544
544
541
541
541
541
508
508
543
548
548
508
508
508
508
575
575
600
555
560
560
560
565
560
587
562
562
577
614
584
584
584
584
539
539
534
539
539
534
619
619
589
569
569
569
569
569
569
589
626
626
586
586
623
608
598
598
608
635
615
620
620
620
605
605
605
657
627
632
627
627
637
637
649
651
695
670
714
709
689
689
706
706
728
728
723
708
708
708
735
745
745
725
740
752
722
722
722
727
752
739
744
754
751
756
751
746
746
806
766
766
763
778
795
822
802
832
809
809
868
868
865
865
880
847
887
862
847
864
854
854
854
871
881
866
883
893
930
930
902
902
897
897
919
919
909
914
924
926
926
916
916
938
950
957
957
1009
1024
981
981
1016
1028
1043
1033
1005
1005
1052
1009
1009
1024
1024
1024
1024
1077
1064
1036
1028
1098
1107
1107
1079
1079
1079
1079
1122
1098
1098
1098
1098
1118
1118
1160
1105
1105
1117
1117
1204
1191
1218
1218
1227
1179
1254
1201
1256
1203
1203
1273
1215
1215
1294
1299
1234
1301
1306
1311
1246
1328
1328
1338
1258
1330
1356
1381
1381
1315
1315
1315
1322
1334
1334
1399
1399
1366
1460
1491
1502
1519
1536
1545
1545
1567
1625
1630
1649
1697
1647
1723
1750
1685
1709
1709
1786
1766
1766
1793
1788
1829
1814
1869
1869
1968
1968
1970
1977
1984
2008
2068
2080
2169
2168
2185
2204
2244
2261
2231
2231
2268
2262
2317
2317
2454
2461
2485
2485
2539
2516
2516
2596
2624
2667
2667
2704
2734
2753
2838
2857
2849
2856
2868
2942
3009
3009
3070
3113
3137
4042
4049
4073
4200
4243
4255
4462
4505
4505
1
27
37
27
27
27
27
27
34
34
49
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
51
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
53
58
53
53
53
53
53
53
48
53
53
53
53
53
48
48
53
53
53
53
53
53
53
53
53
53
65
65
70
60
65
60
65
72
77
72
72
72
72
67
67
67
67
67
72
67
92
72
72
72
67
77
77
72
67
72
72
72
72
72
72
72
82
77
89
84
84
79
79
79
79
79
79
79
79
84
84
84
79
79
79
84
84
104
84
94
84
84
84
96
86
86
91
111
111
91
91
111
111
111
101
111
91
91
101
101
91
101
91
111
111
96
111
96
96
113
98
98
103
103
118
98
98
103
103
98
98
98
98
98
103
98
103
103
113
103
118
123
113
125
110
110
118
120
125
125
125
125
110
110
110
110
118
110
120
127
117
117
117
117
117
117
117
127
127
117
122
117
117
117
117
137
117
117
117
117
117
117
117
117
132
132
132
137
139
129
129
139
139
154
129
149
149
149
149
149
139
139
129
149
149
129
129
149
149
129
149
129
149
149
139
139
149
139
149
156
156
151
146
161
161
141
161
161
161
161
161
161
141
161
161
161
161
161
136
136
161
161
151
161
141
141
141
158
158
158
153
168
163
163
158
163
148
148
168
153
153
163
163
158
158
185
185
180
160
160
165
185
185
160
160
160
160
155
180
172
182
177
172
172
167
167
167
177
182
179
179
179
184
184
204
179
179
184
189
206
191
191
191
191
211
196
191
198
213
223
203
203
228
215
225
205
225
230
230
230
230
230
230
215
240
240
242
257
227
237
217
227
222
227
232
254
249
229
234
234
264
269
269
269
244
239
234
234
234
234
259
259
261
246
246
241
251
276
271
271
276
271
253
278
280
275
270
270
280
280
280
305
290
255
295
292
297
282
287
287
272
272
302
297
267
307
307
304
304
304
304
326
326
331
331
331
296
316
316
328
318
318
323
323
343
303
303
303
308
308
308
303
350
325
325
350
345
345
315
315
315
315
315
352
372
327
327
322
322
322
384
334
334
334
396
341
341
341
341
341
341
408
378
378
405
390
390
390
395
410
395
395
417
377
372
377
407
407
402
417
384
384
389
379
409
414
414
429
409
409
414
424
431
431
431
396
396
391
426
421
421
421
408
433
453
453
450
450
450
415
415
445
445
460
482
457
457
489
501
451
491
463
463
518
505
505
475
475
470
470
470
470
470
470
515
515
508
508
512
482
482
537
544
489
489
529
529
571
541
541
501
501
551
551
551
548
548
520
520
555
560
560
587
587
612
567
572
572
572
589
589
599
574
589
626
596
596
596
596
546
546
546
546
546
546
546
546
631
631
581
581
581
596
638
638
598
598
608
635
620
610
610
622
632
627
627
627
627
617
617
617
669
654
649
639
639
649
649
661
658
707
677
677
677
726
716
696
696
696
740
720
720
720
727
727
722
727
747
757
757
732
764
734
734
739
751
751
766
763
763
758
818
778
778
770
785
802
834
809
809
809
844
811
811
821
880
880
877
877
892
847
847
859
899
876
866
866
866
883
893
898
873
900
942
942
914
914
909
931
931
916
926
938
938
943
950
957
969
969
1021
1036
993
993
1028
1040
1055
1045
997
1012
1012
1012
1012
1012
1012
1064
1016
1016
1036
1036
1036
1036
1089
1076
1048
1110
1092
1119
1119
1091
1091
1091
1091
1134
1105
1105
1105
1105
1105
1105
1105
1125
1125
1172
1129
1129
1216
1203
1230
1197
1239
1266
1208
1268
1285
1220
1227
1227
1306
1311
1313
1318
1323
1258
1340
1340
1350
1265
1342
1368
1393
1393
1315
1322
1347
1334
1346
1346
1411
1411
1373
1503
1514
1531
1548
1557
1557
1579
1637
1642
1661
1647
1709
1735
1685
1762
1697
1716
1716
1798
1778
1778
1805
1800
1841
1826
1790
1980
1980
1982
1989
1996
2020
2080
2092
2181
2180
2197
2216
2256
2273
2243
2243
2280
2274
2329
2329
2466
2473
2497
2497
2551
2528
2528
2608
2636
2679
2679
2716
2746
2773
2765
2845
2864
2861
2868
2880
2954
3021
3021
3082
3125
3149
4054
4061
4085
4212
4255
4267
4474
4517
4517
27
27
27
37
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
49
44
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
56
41
41
41
41
41
41
41
41
41
41
61
58
53
53
53
53
53
48
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
70
60
65
60
60
60
60
77
72
82
72
77
72
77
84
89
89
84
94
79
79
79
79
104
79
79
84
84
79
99
99
84
84
84
89
84
84
84
101
96
91
111
91
91
91
96
86
86
86
86
86
86
91
86
91
86
96
96
86
86
91
86
86
91
86
86
111
101
103
98
98
103
98
123
118
98
98
123
123
123
103
103
113
118
98
98
98
98
113
113
98
113
98
123
123
113
103
123
103
125
115
110
118
110
110
110
115
110
110
110
110
125
115
125
130
125
122
137
117
117
137
137
127
127
117
117
137
137
132
132
137
137
117
122
122
117
117
117
117
117
117
117
117
117
137
137
122
122
137
137
127
127
132
137
137
129
129
129
129
129
129
129
129
144
144
144
139
149
156
151
161
156
156
156
156
141
161
156
156
156
156
141
161
136
136
136
156
156
141
156
161
163
163
153
153
158
148
148
148
173
173
173
148
148
148
148
148
148
175
160
160
165
165
170
185
160
160
160
155
155
165
160
165
160
197
197
187
182
182
172
172
172
172
172
172
167
167
167
167
179
179
179
204
204
179
179
179
189
191
191
191
191
201
211
216
191
196
196
228
203
208
203
203
203
215
225
225
230
230
215
215
240
240
257
237
237
242
242
242
222
222
222
227
252
252
249
239
249
234
234
234
234
239
244
234
234
234
234
261
236
241
241
276
266
281
281
281
256
251
276
246
246
271
248
253
253
263
288
278
278
288
278
270
270
287
282
282
292
292
292
312
272
272
297
307
304
309
294
299
299
309
304
304
304
314
314
289
311
311
331
296
338
303
303
303
308
323
323
340
330
330
335
335
350
315
315
315
315
315
315
315
315
362
337
337
362
357
357
322
322
327
322
322
322
322
322
322
322
322
322
364
384
384
334
334
359
334
334
334
396
366
366
366
341
341
341
408
420
395
385
385
405
405
405
417
397
397
407
402
402
402
422
407
407
429
384
379
384
419
424
431
396
391
396
391
421
421
421
441
426
441
408
403
403
438
433
433
433
450
415
445
460
460
462
462
462
457
457
472
472
439
434
439
434
494
474
469
469
501
513
496
530
512
512
482
482
482
482
482
482
482
527
527
515
515
515
515
494
489
489
494
489
489
494
494
549
556
541
501
501
541
541
583
553
553
551
551
551
551
548
548
548
508
508
558
563
527
527
527
567
567
567
599
599
624
579
589
584
584
584
546
546
546
546
611
586
596
638
608
608
608
608
558
558
558
558
643
643
593
593
593
608
650
650
610
610
620
622
627
622
622
627
634
639
639
629
629
629
681
661
661
646
646
661
661
668
677
719
696
738
708
708
708
752
727
727
727
739
754
754
769
769
776
746
746
746
763
778
790
775
770
830
785
785
782
792
809
809
846
821
856
818
818
828
892
892
889
889
904
871
911
888
878
878
873
895
900
905
905
905
905
954
954
926
926
916
943
943
938
938
950
950
950
957
957
959
981
981
1033
1043
1005
1005
1040
1052
1067
1057
1012
1012
1009
1024
1024
1024
1076
1048
1048
1048
1048
1101
1088
1060
1122
1099
1131
1131
1103
1103
1098
1098
1146
1105
1125
1125
1117
1117
1137
1184
1124
1141
1141
1228
1215
1197
1242
1209
1251
1208
1278
1220
1280
1297
1227
1242
1234
1234
1318
1323
1325
1330
1335
1265
1265
1352
1352
1362
1277
1354
1380
1405
1405
1327
1334
1354
1341
1366
1353
1353
1423
1423
1515
1526
1543
1560
1569
1569
1591
1649
1654
1673
1721
1747
1697
1774
1704
1810
1790
1790
1817
1812
1771
1853
1838
1790
1797
1992
1992
1994
2001
2008
2027
2092
2104
2193
2192
2209
2228
2268
2285
2255
2255
2292
2286
2341
2341
2478
2485
2509
2509
2563
2540
2540
2620
2648
2691
2691
2758
2785
2777
2845
2864
2876
2873
2880
2892
2966
3033
3033
3094
3137
3161
4066
4073
4097
4224
4267
4279
4486
4529
4529
1
27
27
27
37
27
27
27
27
27
27
27
27
27
39
34
34
44
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
56
41
41
41
41
41
41
41
46
41
41
41
41
41
41
41
41
41
46
41
41
41
41
58
58
68
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
68
53
53
53
53
53
53
53
53
53
53
53
60
60
65
60
60
60
77
82
72
72
67
92
67
67
72
92
92
72
67
72
92
92
67
92
67
72
72
72
89
84
89
79
99
99
104
84
94
94
84
84
101
91
101
91
101
86
86
111
91
91
111
91
111
106
106
111
108
103
98
123
113
98
98
98
98
103
98
98
98
113
103
113
113
98
98
98
103
118
108
110
105
110
105
130
130
130
130
110
110
120
125
125
120
120
120
130
130
125
130
137
122
117
117
122
122
117
117
117
117
117
117
117
132
137
137
139
134
134
129
149
149
149
149
149
139
139
149
149
129
129
134
129
139
134
129
129
149
149
149
129
129
149
149
144
149
149
139
139
156
141
141
141
141
156
161
151
141
141
141
146
141
136
136
136
151
151
151
161
163
153
173
158
163
163
153
163
163
148
163
163
148
148
148
153
163
163
148
148
168
175
175
165
170
165
170
160
160
160
185
185
185
160
160
160
180
160
160
187
177
177
182
177
172
172
172
172
204
204
179
184
184
184
184
204
204
204
206
191
201
216
191
201
198
198
228
213
223
228
203
208
220
220
225
225
225
225
220
215
240
220
237
242
227
222
227
252
252
249
244
249
249
249
249
234
234
234
234
234
239
264
234
234
234
234
234
234
259
259
259
251
261
246
246
246
266
266
266
251
256
276
246
246
268
288
293
293
293
268
263
288
278
278
253
253
278
275
290
300
312
312
277
277
277
277
277
277
277
277
294
294
299
304
304
304
319
304
314
314
316
321
306
311
311
311
296
296
316
316
316
326
296
308
308
303
303
303
350
350
350
315
315
315
315
315
352
342
342
342
342
322
327
327
327
327
327
374
349
349
374
369
369
384
334
359
359
359
334
334
334
376
396
396
366
346
346
346
378
378
378
390
420
395
395
395
405
397
397
397
397
432
402
402
417
417
429
409
389
384
379
384
419
434
414
414
414
434
419
419
441
396
396
391
396
391
431
408
403
403
433
453
438
415
415
415
415
415
445
450
460
460
445
445
462
457
472
472
469
469
469
439
439
469
469
484
484
474
446
446
501
481
481
493
513
463
525
482
542
515
515
539
539
527
527
529
544
541
541
541
501
501
501
501
501
501
501
501
501
501
561
568
548
508
508
553
558
558
553
595
565
565
563
563
560
560
560
570
532
532
527
562
562
579
611
611
546
546
546
546
636
591
596
596
596
596
596
558
558
623
598
650
620
620
620
620
565
565
565
565
655
655
605
605
605
620
662
662
627
622
627
622
622
637
637
627
634
634
634
646
651
646
636
636
636
693
668
673
673
680
716
731
708
750
715
715
715
727
727
764
746
766
781
781
788
753
753
775
785
787
782
842
794
799
799
821
858
828
868
904
904
901
901
916
883
923
900
885
885
907
907
912
912
912
966
966
938
938
938
955
955
950
950
962
962
957
969
993
993
1045
1055
997
1017
1017
1052
1064
1074
1064
1064
1024
1021
1031
1031
1031
1088
1060
1060
1060
1060
1113
1095
1095
1072
1062
1062
1134
1143
1143
1115
1115
1110
1158
1125
1125
1137
1129
1129
1124
1144
1196
1153
1153
1240
1227
1209
1254
1208
1263
1220
1290
1292
1227
1242
1234
1234
1309
1254
1246
1330
1335
1265
1265
1337
1342
1347
1364
1364
1374
1289
1366
1392
1412
1412
1334
1334
1341
1373
1435
1435
1527
1538
1555
1572
1581
1581
1603
1661
1666
1685
1733
1759
1704
1786
1802
1802
1829
1824
1778
1865
1850
1797
2004
2004
2001
2013
2020
2039
2104
2116
2205
2204
2216
2216
2235
2235
2280
2297
2267
2267
2298
2353
2353
2490
2497
2521
2521
2575
2552
2552
2632
2660
2698
2698
2770
2797
2789
2876
2888
2885
2892
2904
2978
3045
3045
3106
3149
3173
4078
4085
4236
4279
4291
4498
4541
4541
1
1
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
44
34
34
34
34
49
34
34
34
34
34
34
34
34
34
34
34
34
34
34
51
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
53
68
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
63
53
53
53
53
53
53
53
65
65
80
60
60
60
60
65
65
60
60
75
60
60
60
60
60
60
75
75
75
77
72
72
72
72
92
72
67
67
72
82
87
72
72
72
89
89
104
79
84
104
84
104
79
79
79
104
79
89
104
79
104
104
101
86
86
86
86
106
106
91
91
111
86
86
91
91
91
91
91
91
91
91
91
101
101
108
98
108
113
98
98
103
98
113
118
98
113
113
103
103
98
103
103
103
103
98
103
103
123
98
123
113
113
123
120
110
110
130
125
110
110
105
110
105
110
125
110
120
120
110
110
122
137
137
132
132
137
137
137
137
137
137
127
127
117
117
117
117
117
117
127
127
127
127
127
127
137
137
117
117
137
137
132
137
137
137
139
149
129
129
129
139
129
129
129
134
139
139
144
146
146
156
146
146
156
156
156
156
156
156
156
151
136
136
141
136
136
141
156
156
146
156
156
156
151
156
156
163
153
153
153
163
163
173
148
148
148
148
153
148
148
148
148
148
148
163
158
158
158
168
160
160
185
160
160
160
155
165
160
160
180
187
187
182
177
177
172
167
197
197
197
172
167
172
172
172
184
179
179
184
184
189
184
179
179
179
216
191
186
186
191
191
191
191
191
216
198
228
203
225
235
230
230
235
215
215
237
237
222
227
222
227
227
249
249
234
234
234
264
259
256
261
246
241
246
246
251
276
246
246
246
246
271
263
273
278
258
253
253
263
263
253
253
280
300
305
305
305
275
270
290
290
282
297
312
284
284
284
284
326
306
306
311
311
316
311
311
331
316
326
326
328
333
318
323
323
328
328
323
333
308
308
308
315
362
362
362
327
327
322
322
322
322
327
364
354
354
354
354
339
339
334
334
334
386
361
361
381
381
381
341
341
341
408
378
353
353
353
388
390
390
385
405
432
407
402
417
409
409
444
434
414
414
429
424
441
416
431
431
396
396
426
426
426
421
446
431
431
441
453
408
403
403
438
420
420
415
415
410
445
465
450
422
457
462
472
472
477
457
457
469
464
479
484
486
446
446
446
446
481
476
496
496
463
463
463
493
493
505
532
482
515
515
494
554
527
551
551
534
534
541
513
508
508
508
508
573
580
560
565
560
607
577
577
570
570
527
527
572
572
567
539
539
539
539
574
591
623
623
558
558
648
603
618
603
603
603
608
608
565
565
635
610
662
632
632
632
632
667
667
617
617
617
627
642
642
674
674
639
634
634
644
644
646
646
646
653
658
648
648
648
705
685
685
687
677
677
743
715
740
762
734
734
759
776
778
793
793
800
787
799
794
854
806
828
870
880
859
916
911
913
913
928
895
935
912
897
919
978
978
950
950
950
967
967
962
957
974
974
959
969
976
1005
1005
1057
1012
1012
1009
1029
1029
1064
1076
1086
1031
1028
1100
1072
1072
1072
1072
1125
1107
1107
1084
1069
1069
1098
1098
1146
1155
1155
1127
1127
1122
1170
1137
1144
1141
1141
1208
1165
1165
1252
1239
1266
1275
1227
1227
1247
1242
1302
1304
1254
1246
1246
1321
1261
1253
1265
1342
1347
1277
1277
1349
1354
1354
1376
1376
1386
1296
1378
1404
1424
1354
1447
1447
1539
1551
1550
1567
1584
1593
1593
1615
1673
1673
1692
1745
1771
1798
1814
1814
1836
1778
1877
2016
2016
2025
2032
2051
2116
2128
2217
2216
2247
2247
2292
2279
2279
2310
2365
2365
2502
2509
2533
2533
2587
2564
2564
2644
2672
2710
2782
2809
2801
2888
2900
2897
2904
2916
2990
3057
3057
3118
3161
3185
4085
4097
4248
4291
4303
4510
4553
4553
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
39
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
41
41
41
41
41
41
41
41
41
56
49
41
41
51
61
41
41
53
63
53
53
53
53
53
48
48
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
48
48
53
53
53
53
53
53
53
53
48
48
48
48
53
53
53
65
80
80
60
60
60
60
60
60
60
60
70
60
65
70
77
72
72
72
72
72
82
72
87
82
92
72
67
72
67
77
72
67
92
92
82
67
82
89
79
79
99
79
79
99
99
99
84
84
99
99
79
79
79
79
99
99
89
99
99
99
99
79
79
79
84
84
84
101
111
111
91
91
111
96
111
96
96
111
111
111
91
91
91
111
111
111
111
91
91
91
111
111
98
103
113
113
98
98
98
113
113
113
113
98
98
98
118
98
98
98
98
98
98
98
108
98
98
98
98
98
98
108
113
103
113
113
118
108
120
110
125
110
110
120
110
125
125
110
110
110
110
110
110
110
110
110
110
130
130
130
122
122
137
132
132
132
127
127
137
117
117
117
117
117
117
117
134
139
144
144
129
129
129
129
129
129
129
139
139
139
156
156
141
141
141
136
136
136
141
141
146
141
156
163
163
163
153
153
153
163
163
163
163
163
163
163
163
163
163
163
148
153
153
148
148
153
163
163
163
153
163
163
163
163
158
163
163
163
165
165
165
185
190
160
160
160
160
165
160
160
180
165
165
180
172
172
172
172
197
177
172
172
177
167
172
172
187
204
204
199
199
184
189
189
179
209
209
209
184
179
179
179
191
191
191
191
201
191
196
228
198
198
198
198
198
203
203
223
225
240
230
230
235
215
237
242
242
222
227
227
227
244
244
234
234
234
234
234
234
234
234
234
239
259
261
256
246
246
276
268
278
253
253
253
263
288
258
253
258
253
278
275
285
290
265
275
292
312
317
317
317
282
297
297
284
284
309
294
324
326
323
318
318
328
308
343
323
333
333
340
345
330
335
335
320
335
335
315
315
315
315
315
315
322
322
322
327
369
369
374
334
334
334
334
334
334
376
366
366
366
366
346
346
371
398
373
373
393
393
420
385
365
365
365
400
405
397
397
407
397
397
439
419
429
416
416
451
421
426
441
453
443
443
403
433
433
458
443
443
465
455
450
450
420
415
415
410
445
427
427
422
457
477
462
469
474
479
479
484
469
469
476
496
493
493
488
508
503
475
475
505
505
517
487
482
482
515
494
527
529
501
566
534
551
551
553
563
563
553
520
585
592
567
577
619
589
589
539
539
579
579
546
546
551
551
586
603
635
635
565
565
660
615
625
625
615
615
635
627
647
622
674
644
644
644
644
679
679
629
629
629
649
649
686
686
646
646
646
668
653
658
658
660
660
660
717
697
697
689
689
701
696
696
755
740
732
752
774
766
766
788
758
770
785
805
805
812
799
809
826
811
806
861
818
818
882
892
866
866
888
928
923
925
925
900
940
907
897
897
947
924
909
931
985
985
950
962
962
957
957
979
979
974
969
986
986
976
1010
997
1017
1017
1012
1012
1069
1024
1024
1021
1041
1041
1076
1088
1098
1043
1112
1084
1084
1084
1084
1137
1119
1119
1096
1110
1158
1167
1167
1139
1139
1134
1182
1129
1129
1144
1153
1153
1220
1165
1172
1172
1197
1264
1251
1278
1287
1242
1254
1314
1316
1261
1261
1253
1253
1333
1277
1354
1289
1284
1361
1366
1366
1388
1388
1398
1385
1416
1436
1373
1459
1459
1551
1563
1562
1579
1596
1601
1605
1605
1627
1673
1685
1692
1704
1685
1757
1783
1805
1826
1826
1848
1797
1889
2028
2028
2037
2044
2063
2128
2140
2229
2228
2259
2259
2291
2291
2322
2377
2377
2514
2521
2545
2545
2599
2576
2576
2656
2684
2698
2698
2722
2794
2821
2813
2900
2912
2909
2916
2928
3002
3069
3069
3130
3173
3197
4104
4260
4303
4315
4522
4565
4565
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
51
51
41
41
41
41
56
41
41
41
41
41
41
41
41
41
58
58
53
53
53
53
53
63
61
53
53
53
53
53
53
53
53
53
53
53
53
68
58
53
53
53
53
63
53
75
60
60
60
60
60
80
65
65
60
60
60
60
60
60
60
60
80
80
87
87
72
72
72
72
72
72
82
82
82
72
77
77
77
92
77
87
89
84
84
79
79
89
89
84
84
89
94
99
79
79
94
99
79
94
94
84
89
84
79
94
104
94
94
94
99
89
89
84
89
89
96
91
91
106
86
86
106
111
106
106
111
96
96
106
106
111
91
86
86
111
106
106
111
106
96
106
106
111
106
86
86
86
101
113
113
103
118
118
98
98
123
113
118
98
118
113
123
118
103
103
118
98
98
98
98
118
103
98
118
118
118
98
98
98
123
123
110
125
125
125
125
110
115
110
110
125
110
110
120
120
117
132
122
127
127
122
132
132
132
137
122
122
117
117
117
117
117
117
117
137
137
137
137
129
129
139
139
144
139
149
129
129
129
129
129
129
129
129
129
129
139
141
161
151
151
156
141
141
141
141
141
141
141
141
141
163
153
153
153
153
163
163
163
158
163
153
153
163
153
153
163
153
163
163
148
148
153
163
158
163
163
175
175
165
160
160
160
160
160
165
177
177
197
197
197
177
172
172
172
172
172
167
167
187
184
184
209
189
189
184
184
179
179
189
179
179
179
179
179
216
211
211
191
191
191
191
201
191
191
191
221
196
216
216
191
198
198
203
240
225
205
205
215
215
240
237
227
227
227
227
249
254
254
239
234
234
239
259
261
246
246
246
246
246
258
253
253
258
288
280
290
265
265
265
275
300
270
270
287
297
302
277
287
304
289
289
284
289
289
284
324
329
324
324
294
316
316
306
296
331
353
335
330
330
335
315
315
355
315
315
315
315
315
315
352
357
342
347
347
327
327
327
339
386
346
346
346
388
378
378
378
378
378
378
353
353
353
353
353
353
410
385
385
405
405
432
377
377
377
412
409
379
414
414
396
391
441
441
463
438
453
465
420
470
455
455
477
462
462
462
462
427
457
469
489
474
486
446
446
486
481
481
481
498
488
503
505
505
500
520
515
515
517
517
524
494
494
494
494
527
501
506
506
534
541
551
508
508
578
563
560
560
575
575
560
560
597
604
539
539
589
589
631
601
601
546
546
551
558
558
558
558
598
615
620
647
647
672
627
642
639
659
629
649
649
686
651
651
651
651
661
686
686
641
641
641
661
698
658
658
693
680
670
670
672
672
672
729
709
709
708
708
708
708
767
727
752
786
751
766
766
763
753
778
800
770
785
807
782
797
817
817
824
809
809
826
811
821
823
818
818
833
833
830
894
904
940
900
935
885
937
937
897
907
952
919
909
959
936
921
943
950
997
974
974
959
969
986
981
998
998
1017
1017
1009
1029
1029
1081
1036
1036
1028
1028
1053
1053
1088
1100
1110
1050
1050
1124
1096
1096
1096
1096
1149
1131
1131
1108
1110
1125
1122
1170
1179
1179
1146
1146
1146
1189
1136
1136
1165
1165
1232
1172
1184
1184
1184
1184
1271
1263
1290
1299
1254
1254
1261
1321
1273
1345
1284
1366
1296
1373
1378
1400
1400
1410
1397
1353
1428
1448
1373
1471
1471
1563
1574
1591
1608
1613
1617
1617
1639
1697
1647
1704
1716
1697
1769
1795
1817
1838
1838
1855
1797
1901
1858
2040
2040
2049
2056
2075
2140
2152
2241
2240
2271
2271
2303
2303
2334
2389
2389
2526
2533
2552
2552
2606
2588
2588
2668
2696
2710
2734
2806
2833
2825
2912
2924
2921
2928
2940
3014
3081
3081
3142
3185
3209
4085
4272
4315
4327
4534
4577
4577
1
1
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
49
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
51
41
41
46
41
46
41
41
41
41
41
41
41
46
41
46
41
41
41
51
58
58
53
53
53
53
53
48
63
48
48
53
53
53
48
53
53
53
53
53
53
53
65
65
60
60
60
60
60
60
60
68
70
60
75
75
65
75
60
60
60
75
75
65
75
75
80
70
72
72
87
87
67
67
67
72
72
92
77
77
72
67
72
72
72
72
87
92
87
87
82
84
79
89
94
94
84
89
79
79
84
84
84
84
79
79
79
99
99
99
89
84
99
101
91
91
101
101
96
91
106
106
101
106
101
91
91
101
96
91
91
101
111
101
101
101
106
101
101
103
103
108
98
98
98
113
113
113
98
123
113
113
123
113
113
123
98
113
113
98
98
98
123
113
113
113
113
123
113
113
113
113
113
113
123
113
113
113
98
113
113
125
125
110
115
125
130
125
110
125
130
110
110
110
125
130
120
130
117
137
132
132
127
132
132
122
117
117
137
132
127
127
137
129
129
139
139
139
129
129
144
139
139
149
129
129
129
139
141
141
151
161
141
141
136
141
136
141
136
141
141
153
153
158
158
158
158
163
153
148
153
148
153
148
163
163
163
148
148
153
158
158
163
175
170
165
160
190
190
170
170
165
187
187
202
167
172
172
172
184
184
204
184
184
204
179
184
179
179
179
191
191
216
196
191
191
191
191
191
186
196
228
223
218
198
203
203
203
203
203
203
198
233
228
198
203
225
205
210
215
240
252
222
222
227
249
234
234
259
239
239
239
266
261
256
261
261
261
276
251
246
246
246
268
283
253
263
258
253
253
265
265
265
275
270
300
292
302
277
277
272
287
312
282
282
299
304
309
284
299
316
311
311
296
296
296
296
336
336
331
341
336
306
301
318
350
315
365
347
342
342
342
342
347
362
364
364
364
354
359
359
384
334
334
346
346
398
398
353
353
353
395
395
390
390
390
390
365
365
365
365
365
365
422
397
397
397
417
417
444
384
379
384
384
384
424
416
401
396
391
391
426
403
438
453
475
460
450
460
477
427
427
427
427
477
467
467
489
469
469
469
469
481
506
496
486
493
493
493
493
493
505
500
517
512
512
512
532
522
515
524
524
534
501
501
539
551
551
513
513
508
513
513
508
513
513
513
513
553
563
520
585
570
587
587
604
616
551
596
596
643
613
613
558
603
603
603
570
570
610
622
627
632
627
627
654
654
684
639
644
649
649
651
671
636
636
636
641
661
663
663
698
653
653
653
693
668
705
670
670
705
692
682
682
684
684
684
736
721
721
715
715
715
779
771
793
753
778
785
812
782
797
807
794
814
849
804
829
829
809
831
821
821
818
818
833
833
830
830
825
825
837
837
906
916
883
947
947
949
949
964
931
921
966
948
928
955
962
1009
986
986
996
981
998
988
1002
1021
1041
1041
1093
1043
1043
1043
1065
1065
1100
1112
1122
1069
1136
1108
1108
1108
1108
1156
1143
1143
1120
1110
1110
1125
1125
1117
1117
1137
1134
1182
1191
1191
1158
1201
1177
1177
1239
1196
1196
1191
1191
1208
1270
1302
1289
1311
1261
1261
1273
1333
1280
1357
1373
1380
1390
1412
1412
1422
1409
1353
1440
1460
1483
1483
1575
1586
1603
1620
1625
1629
1629
1709
1716
1728
1709
1781
1807
1850
1850
1867
1913
1865
2047
2047
2061
2068
2087
2152
2164
2253
2252
2283
2283
2315
2315
2346
2401
2401
2538
2545
2564
2618
2600
2600
2675
2703
2708
2722
2746
2813
2845
2832
2924
2936
2928
2940
2952
3026
3093
3093
3154
3197
3221
4104
4284
4327
4339
4546
4589
4589
1
13
13
13
13
25
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
41
41
41
41
41
41
41
41
41
41
41
56
46
41
41
41
41
41
41
41
63
53
58
53
53
53
53
53
48
53
53
53
53
53
53
53
48
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
60
60
60
60
60
65
60
70
65
60
60
80
60
75
60
65
77
77
67
82
87
67
72
72
72
72
87
67
67
75
67
82
87
87
82
77
87
87
82
67
67
77
92
72
82
77
82
77
72
82
77
72
87
87
87
77
72
72
72
87
87
77
79
79
79
99
79
94
94
79
79
79
99
99
84
84
84
79
79
79
79
79
79
79
94
94
99
99
94
94
94
89
89
91
101
101
101
96
101
86
86
91
96
86
86
86
86
86
86
106
106
86
86
86
106
96
106
103
103
98
98
98
103
103
113
113
113
113
113
98
98
98
108
118
98
108
98
98
118
108
103
103
98
98
118
108
118
98
98
108
118
108
108
118
113
108
108
110
110
110
125
125
110
130
130
130
125
125
110
110
130
125
125
130
125
125
110
130
125
125
125
125
132
132
137
132
137
137
117
137
122
137
137
139
139
134
139
139
139
129
139
141
151
161
141
141
161
151
161
136
136
141
166
161
161
146
153
153
163
158
158
168
148
148
148
148
148
148
148
148
158
165
165
165
170
160
160
160
165
165
165
192
187
182
177
197
197
182
182
172
187
199
184
179
179
199
209
204
204
204
179
179
191
191
196
216
196
196
216
196
186
186
203
203
198
233
233
228
208
198
198
198
198
240
225
230
230
210
210
205
210
210
210
210
210
210
245
240
215
240
237
227
222
252
227
227
227
264
274
239
234
234
239
234
234
234
266
256
261
246
246
271
271
276
251
251
246
273
273
288
263
278
258
258
280
290
275
270
270
312
282
282
272
272
287
282
282
312
304
309
284
284
299
314
319
289
289
311
296
296
296
296
296
296
296
296
331
311
328
308
308
343
343
353
348
318
308
350
335
330
315
362
362
327
372
359
354
354
354
354
359
384
339
339
334
374
376
366
371
371
396
351
351
346
353
353
353
358
410
410
405
407
407
397
397
397
397
402
402
397
372
372
372
372
372
372
434
404
404
409
384
379
384
429
429
456
396
391
396
391
436
408
403
403
408
438
433
415
420
450
460
460
487
477
467
462
472
489
469
464
479
479
474
474
501
451
451
481
476
496
493
518
513
501
508
498
505
505
505
512
515
524
524
524
524
544
527
549
536
536
541
541
541
551
546
558
563
520
520
520
520
585
560
560
560
575
532
532
614
539
579
599
599
604
589
546
546
616
596
628
633
558
608
655
625
625
625
622
627
577
577
632
622
634
639
644
639
639
666
651
651
651
651
696
651
661
673
658
683
648
648
648
653
668
705
675
675
710
665
665
665
682
682
717
699
694
694
736
696
696
696
748
733
733
715
791
766
793
778
785
785
802
824
794
804
814
806
861
841
841
843
833
875
840
837
837
849
849
918
928
890
885
947
959
961
961
966
976
943
928
978
960
940
950
967
957
969
1021
998
998
988
1003
1010
1009
1009
1009
1028
1028
1028
1053
1053
1043
1105
1077
1077
1112
1124
1134
1134
1104
1103
1148
1120
1120
1120
1120
1155
1155
1125
1132
1117
1117
1167
1137
1149
1146
1194
1203
1203
1165
1213
1172
1172
1172
1189
1189
1239
1191
1191
1191
1191
1208
1208
1208
1203
1220
1270
1282
1282
1234
1254
1314
1301
1261
1323
1273
1265
1280
1345
1369
1373
1380
1392
1402
1424
1424
1434
1421
1358
1358
1452
1472
1495
1495
1587
1598
1615
1637
1641
1641
1721
1728
1740
1716
1793
1819
1857
1857
1879
1839
1858
1925
2047
2047
2059
2073
2080
2099
2164
2176
2265
2264
2295
2295
2327
2327
2358
2413
2413
2550
2557
2576
2612
2612
2687
2715
2720
2734
2741
2758
2813
2832
2857
2844
2936
2948
2952
2959
3038
3105
3105
3166
3209
3233
4296
4339
4351
4558
4601
4601
1
1
1
13
13
27
27
27
27
27
27
27
27
27
27
27
32
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
41
41
41
41
46
46
41
41
41
41
41
41
41
41
41
41
41
41
41
41
53
53
53
53
53
53
53
53
63
53
48
48
53
53
53
53
53
75
65
65
60
60
80
65
65
60
60
65
72
72
72
72
77
67
67
67
75
77
92
92
67
67
72
72
89
89
89
99
79
84
79
79
79
79
99
89
94
99
89
84
94
94
99
89
89
99
79
79
89
89
89
89
89
89
79
99
94
79
79
99
89
84
84
84
99
94
91
91
106
91
86
96
101
101
106
106
101
101
106
106
91
91
101
101
96
98
98
98
98
108
108
98
108
108
108
98
98
113
113
103
103
113
113
98
98
113
113
98
98
98
98
113
113
98
98
98
98
98
98
118
98
98
98
98
113
113
103
113
113
113
113
108
113
110
110
110
110
110
110
120
120
125
125
110
110
110
110
110
110
130
110
110
110
110
110
125
110
115
115
122
122
132
132
137
137
137
137
137
132
132
117
117
122
122
137
132
132
137
132
132
122
137
132
132
137
132
132
137
139
139
139
139
139
139
134
134
139
139
139
139
139
144
139
139
129
139
139
129
139
139
161
141
141
161
161
141
151
141
153
158
163
153
153
158
158
168
153
173
153
173
148
148
153
153
165
165
180
180
175
170
180
160
160
160
160
160
177
177
177
172
177
177
197
197
172
187
199
199
184
184
189
189
204
209
189
189
211
191
191
191
191
211
191
191
216
203
203
208
228
208
208
228
208
225
210
210
240
240
240
240
240
220
252
242
217
217
257
252
227
252
227
249
239
239
276
281
246
246
246
251
273
253
253
253
283
288
263
278
263
285
290
275
290
270
270
312
292
287
282
309
289
289
309
299
314
294
324
316
321
311
326
301
301
323
308
308
308
308
343
343
323
308
308
340
315
315
355
320
335
365
360
330
315
315
315
362
332
342
372
372
374
374
339
371
366
366
366
366
371
396
346
346
386
346
346
388
378
383
383
358
358
353
353
353
395
365
365
365
370
397
422
422
397
419
419
409
409
414
414
446
416
421
396
441
441
468
408
403
403
433
448
415
415
410
415
410
415
460
460
460
432
432
427
422
427
422
427
472
499
484
474
484
501
451
451
476
486
486
486
486
513
458
458
458
458
493
488
508
505
530
508
520
510
517
517
517
524
524
499
536
536
536
501
556
539
541
556
556
558
548
548
558
560
575
572
572
572
582
539
539
539
579
546
546
551
611
611
616
558
558
628
608
640
645
620
667
637
637
627
632
632
634
589
589
639
634
646
651
651
678
663
663
708
663
668
680
695
660
660
660
665
687
687
722
677
677
677
694
694
729
706
706
748
708
708
708
760
745
745
740
766
766
758
758
803
778
805
785
797
814
836
831
806
818
853
853
855
840
887
852
849
849
861
861
930
890
890
910
940
971
973
973
928
928
978
988
955
990
950
952
957
979
969
969
1001
996
1033
1022
1009
1028
1040
1040
1040
1065
1065
1117
1089
1089
1124
1069
1136
1146
1111
1110
1160
1117
1117
1132
1132
1132
1132
1167
1167
1139
1129
1179
1149
1146
1146
1136
1156
1158
1206
1215
1215
1177
1225
1184
1184
1201
1201
1203
1203
1220
1220
1220
1210
1282
1227
1234
1294
1254
1246
1326
1313
1273
1335
1285
1277
1357
1381
1392
1404
1339
1414
1436
1436
1446
1433
1365
1365
1464
1484
1507
1507
1599
1610
1627
1649
1653
1653
1733
1740
1752
1805
1831
1869
1891
1846
1865
1937
2059
2071
2085
2092
2111
2176
2188
2277
2276
2307
2307
2339
2339
2370
2425
2425
2562
2569
2588
2624
2624
2699
2732
2746
2753
2770
2844
2869
2856
2948
2960
3050
3117
3117
3178
3221
3245
4308
4351
4363
4570
4613
4613
13
13
25
25
27
27
27
27
27
27
27
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
46
46
41
41
41
41
41
41
41
41
41
41
41
41
41
41
61
51
41
41
63
53
53
53
53
53
53
53
53
53
53
53
53
53
60
80
60
60
60
60
60
60
60
60
60
80
65
77
67
72
67
72
67
67
87
72
77
72
72
72
87
72
72
72
87
72
72
72
72
82
87
79
84
89
79
79
89
79
79
84
84
99
99
99
84
84
84
89
89
79
79
101
101
106
96
86
106
101
86
86
106
86
86
101
101
106
96
91
106
96
96
96
106
101
86
86
106
96
106
98
98
98
113
98
108
98
98
113
98
103
103
118
98
98
98
98
108
113
98
98
108
113
110
110
110
110
110
115
115
125
125
125
125
105
105
105
105
125
125
110
110
115
125
110
110
110
110
125
125
125
125
125
125
122
122
117
122
132
132
117
117
137
137
117
117
117
117
137
122
142
117
117
117
117
117
117
117
117
122
117
137
137
137
132
134
129
139
139
139
139
139
139
139
139
139
139
139
139
139
129
129
129
129
129
129
134
129
139
139
139
139
139
139
129
129
139
139
139
139
139
139
151
151
156
161
141
141
141
161
161
141
141
141
141
151
163
153
153
168
153
153
153
173
153
148
163
165
170
180
165
165
180
160
160
165
177
177
187
182
182
187
177
177
172
172
197
197
167
167
167
189
199
184
189
189
189
184
184
184
184
184
209
179
179
179
179
189
189
189
189
196
211
191
191
191
191
196
196
201
201
201
201
201
196
196
216
191
191
196
223
203
198
198
223
203
203
228
225
210
210
210
210
240
240
215
215
215
240
215
215
215
215
235
220
262
237
222
217
217
217
217
252
252
252
227
227
264
254
229
269
264
239
239
256
256
246
251
246
288
253
253
253
253
253
263
283
290
265
265
265
265
295
290
270
270
275
297
282
282
297
282
282
304
304
309
299
319
289
289
289
289
289
289
316
316
316
296
296
296
296
296
296
321
311
326
301
301
328
328
343
343
318
318
333
313
313
335
335
355
315
315
315
315
355
330
330
315
315
315
352
362
327
327
377
372
337
337
374
339
339
349
349
381
386
346
378
378
383
378
378
383
398
353
353
353
353
353
353
358
358
400
390
390
390
390
390
365
365
365
397
397
402
377
377
377
377
404
404
434
434
431
431
421
421
421
421
421
421
458
428
428
408
403
453
453
480
415
410
410
465
460
422
422
427
427
472
472
472
439
439
439
439
479
511
496
486
486
486
491
513
458
458
488
508
503
498
498
525
505
500
508
520
512
512
542
532
517
524
524
529
529
531
531
506
506
501
506
506
548
548
543
543
568
546
546
568
568
520
520
560
560
570
572
582
582
539
539
539
539
579
579
579
596
601
563
623
623
628
570
570
640
620
652
657
577
577
577
577
627
654
654
649
649
639
639
629
679
649
646
651
601
601
646
653
663
658
690
675
675
720
675
707
672
672
672
677
699
699
734
684
684
684
684
684
684
706
706
741
718
718
760
715
715
715
715
715
715
772
732
757
757
739
766
778
778
765
765
785
815
797
804
804
826
848
843
818
830
865
865
840
867
899
859
861
861
873
873
890
890
942
917
917
952
917
983
985
985
940
940
990
1000
967
1002
959
969
976
1003
1008
1045
1034
1040
1047
1047
1047
1077
1077
1129
1101
1101
1136
1111
1148
1158
1117
1117
1172
1129
1179
1179
1139
1139
1139
1139
1139
1139
1139
1139
1136
1191
1136
1156
1168
1170
1218
1227
1227
1189
1237
1196
1196
1191
1191
1213
1213
1210
1210
1232
1232
1239
1294
1254
1246
1306
1266
1261
1253
1338
1325
1285
1347
1292
1354
1289
1369
1393
1404
1416
1346
1346
1426
1443
1443
1453
1445
1476
1496
1519
1519
1611
1622
1639
1661
1665
1665
1745
1752
1764
1716
1817
1843
1881
1903
1949
2071
2083
2097
2104
2123
2188
2200
2289
2288
2319
2319
2351
2351
2382
2437
2437
2574
2581
2600
2636
2636
2711
2744
2758
2765
2782
2856
2881
2868
2960
2972
3062
3129
3129
3190
3233
3257
4320
4363
4375
4582
4625
4625
1
25
25
37
37
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
49
34
34
34
34
34
49
41
46
51
51
41
41
41
41
41
41
41
41
41
41
46
41
41
58
58
53
53
53
53
53
53
48
48
53
53
53
53
48
48
53
53
53
53
53
53
53
53
53
53
48
48
48
48
68
53
53
53
63
48
48
53
53
65
60
70
60
60
60
60
65
60
65
60
60
60
60
60
60
60
60
60
60
80
65
60
60
60
60
72
67
87
87
72
72
67
72
72
67
87
67
87
67
72
67
67
67
67
67
67
87
87
87
72
72
77
87
89
79
79
89
79
94
79
84
79
84
89
89
79
79
79
94
79
79
79
99
79
79
79
79
89
99
89
89
89
84
91
91
101
86
96
86
86
86
86
106
91
106
106
106
91
91
91
101
106
101
98
98
98
98
113
113
103
103
108
113
113
98
98
113
113
98
98
98
98
108
113
113
103
103
98
103
98
103
98
103
103
113
113
103
103
103
103
113
113
103
113
113
103
103
113
113
110
110
110
110
110
110
125
105
105
110
110
115
110
122
122
117
117
132
132
132
132
132
132
122
137
117
117
117
132
132
132
132
132
132
139
129
134
139
139
134
139
139
139
139
139
129
129
139
139
139
129
129
129
129
139
139
154
129
129
129
129
129
129
129
129
139
154
146
141
141
141
141
146
141
163
158
163
163
163
153
153
158
163
153
163
153
173
153
163
175
175
165
180
175
177
182
187
177
172
167
167
167
167
172
189
189
199
184
194
189
184
184
209
184
179
179
184
179
179
179
179
201
211
196
196
201
201
201
196
216
196
191
191
191
191
191
191
198
203
223
203
203
203
203
213
213
203
203
208
203
235
210
235
215
215
235
235
222
222
252
222
222
252
227
227
227
227
232
227
249
229
229
229
259
259
264
239
239
269
276
266
236
246
281
276
251
251
258
253
253
253
253
253
263
278
300
270
265
265
265
265
265
275
290
277
277
272
272
307
297
297
282
294
289
294
289
309
314
289
289
331
331
296
296
316
321
311
326
301
301
301
301
301
301
323
323
308
308
308
308
328
323
333
333
313
313
350
350
340
355
340
340
315
315
315
320
320
347
347
362
362
364
389
384
349
349
381
381
346
361
361
346
358
398
358
358
358
390
390
395
390
390
395
410
365
365
365
365
365
412
402
402
402
402
377
377
377
409
414
384
384
384
416
446
446
443
443
433
428
433
433
433
433
438
438
470
440
410
410
410
415
465
465
460
492
432
422
422
422
427
472
467
434
434
479
479
474
474
479
479
446
446
523
498
498
525
500
515
515
508
505
505
537
512
517
532
554
544
524
524
529
541
541
541
541
556
543
543
513
513
546
525
560
560
555
555
525
525
520
525
525
520
580
558
572
572
582
539
584
584
577
579
594
594
596
596
608
570
635
635
640
577
577
652
627
627
664
669
589
589
589
589
639
639
649
649
666
661
661
646
641
691
661
653
658
653
608
608
658
658
658
675
670
702
687
687
732
687
719
684
684
684
689
711
711
746
718
718
753
730
730
772
737
727
727
727
727
727
727
784
769
769
739
746
746
778
785
785
785
797
827
804
811
823
823
860
855
830
845
842
877
877
852
879
911
871
873
873
885
885
912
917
954
964
924
924
995
997
997
947
947
1002
1012
979
1014
976
1057
1009
1009
1046
1047
1089
1089
1074
1074
1141
1113
1113
1148
1123
1160
1170
1129
1184
1136
1191
1191
1151
1151
1151
1151
1156
1203
1165
1175
1182
1230
1239
1239
1201
1249
1208
1208
1203
1225
1225
1244
1244
1234
1254
1246
1306
1261
1253
1253
1318
1273
1273
1350
1337
1292
1366
1296
1381
1405
1385
1416
1428
1438
1378
1455
1465
1457
1488
1503
1531
1531
1623
1634
1673
1677
1677
1685
1757
1764
1776
1829
1855
1802
1846
1893
1915
1865
1961
2027
2083
2095
2109
2116
2135
2200
2212
2301
2300
2331
2331
2363
2363
2394
2449
2449
2586
2593
2612
2648
2648
2723
2756
2770
2777
2794
2868
2893
2880
2928
2972
2984
3074
3141
3141
3202
3245
3269
4332
4375
4387
4594
4637
4637
1
37
27
27
37
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
37
49
34
34
34
34
49
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
46
46
41
46
41
41
41
41
41
41
41
41
41
41
41
41
41
51
41
41
41
41
41
41
41
41
41
51
41
41
56
51
56
51
58
63
58
53
53
53
53
53
53
53
53
63
53
53
53
53
53
53
48
48
53
53
53
63
53
53
53
53
53
63
53
53
53
65
60
65
70
70
60
60
60
60
60
60
60
60
60
60
60
70
60
60
75
60
70
65
77
67
77
72
67
67
67
67
67
67
67
82
87
82
87
67
67
82
87
67
67
82
87
82
87
77
82
87
67
67
67
67
67
67
67
67
67
72
87
72
67
67
67
67
67
67
79
79
79
99
94
79
79
79
89
89
99
79
99
79
79
79
79
79
79
99
89
89
99
94
89
84
84
99
84
101
86
96
91
91
101
101
91
86
86
86
86
86
86
101
106
86
86
106
96
101
101
101
98
108
98
108
103
103
98
98
98
98
98
98
113
98
108
108
110
110
110
110
110
110
110
110
110
110
110
125
125
110
122
122
122
117
117
117
122
122
139
134
129
139
129
139
134
139
139
139
139
139
139
139
139
139
139
139
139
139
139
149
139
139
139
139
139
139
139
139
139
139
151
146
151
166
141
151
151
151
141
141
151
141
141
141
141
151
166
141
136
141
136
141
151
161
158
163
163
163
163
158
163
153
148
158
148
148
148
148
153
170
170
160
160
175
180
185
185
170
187
202
187
189
184
194
189
204
204
179
179
179
201
201
211
196
206
201
201
196
196
216
191
191
191
191
186
191
191
186
186
213
218
218
218
203
203
198
203
203
203
203
203
203
213
208
203
198
203
203
198
198
198
198
198
210
210
210
235
240
215
215
220
220
235
210
210
210
220
240
247
217
217
217
247
222
222
222
222
222
222
247
229
229
259
264
239
239
239
239
244
256
256
256
236
236
276
246
246
251
251
276
288
273
278
293
288
263
278
263
265
265
265
265
265
265
275
290
312
312
277
272
272
277
277
272
272
287
297
284
284
284
319
314
309
289
289
294
296
296
301
301
321
321
326
323
323
323
323
328
328
323
333
313
313
308
338
338
308
308
308
308
335
320
315
320
315
335
345
325
325
362
362
352
362
347
347
359
359
384
376
381
351
351
346
401
396
361
361
346
393
363
363
358
373
373
383
358
410
365
365
365
365
365
365
365
365
365
407
397
397
402
402
402
407
422
377
377
377
424
414
414
419
409
409
384
384
384
384
384
384
384
384
384
421
428
428
428
428
413
458
458
455
455
445
440
445
445
445
445
415
415
410
415
460
445
445
482
452
467
432
427
427
422
427
422
422
427
477
477
472
504
434
434
439
439
439
479
491
486
458
458
535
505
510
537
512
522
549
524
529
544
566
556
536
536
541
518
518
558
553
553
553
553
555
555
565
558
565
560
560
532
572
572
567
567
592
565
532
532
532
532
532
532
532
532
532
532
532
532
539
584
584
594
551
591
591
601
601
608
608
630
622
627
577
577
582
647
647
652
627
647
664
639
649
676
681
596
596
596
596
661
678
668
668
653
658
653
703
673
670
670
670
670
687
677
714
699
699
704
744
699
731
696
696
696
701
718
718
758
713
730
730
765
742
742
732
784
739
739
739
739
739
739
744
796
781
781
778
785
797
797
804
839
830
830
830
830
872
867
842
852
854
889
889
859
891
923
885
885
897
897
912
924
924
966
976
936
1007
1009
1009
1014
1024
1026
1003
1008
1022
1069
1021
1021
1033
1028
1028
1058
1055
1101
1101
1081
1081
1153
1125
1125
1160
1172
1182
1139
1136
1196
1161
1203
1203
1163
1163
1163
1163
1168
1215
1177
1194
1242
1251
1251
1191
1191
1213
1208
1261
1220
1220
1210
1237
1237
1234
1256
1256
1246
1253
1318
1273
1273
1265
1330
1280
1362
1349
1393
1417
1397
1428
1378
1440
1450
1385
1467
1469
1500
1515
1543
1543
1635
1646
1685
1647
1689
1689
1697
1769
1776
1783
1867
1802
1809
1905
1927
1973
2001
2039
2095
2107
2121
2128
2147
2212
2224
2313
2312
2343
2343
2375
2375
2406
2461
2461
2598
2605
2624
2655
2655
2735
2763
2782
2789
2801
2801
2880
2905
2892
2984
2959
2996
3086
3153
3153
3214
3257
3281
4344
4387
4399
4606
4649
4649
27
27
37
27
27
27
37
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
44
49
34
44
49
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
44
34
34
41
56
46
41
56
46
41
41
41
41
46
46
41
41
41
51
46
41
41
46
46
53
58
58
53
53
53
53
53
63
48
53
53
53
48
48
48
53
53
53
63
53
53
53
53
63
53
53
63
53
53
53
53
63
53
53
63
53
58
53
53
63
53
53
63
53
53
63
58
53
53
53
70
75
65
65
60
60
80
75
60
60
60
75
80
60
60
75
80
65
75
80
80
80
80
75
80
80
75
65
75
75
70
75
65
77
72
82
72
72
67
67
82
67
67
67
67
67
67
67
67
67
67
67
67
77
67
67
67
67
67
77
67
67
77
84
79
84
89
89
89
89
89
99
89
99
79
89
99
79
79
89
99
79
89
99
79
79
89
99
79
94
79
84
106
101
101
106
86
86
86
86
106
106
96
106
101
106
91
106
113
108
98
103
108
108
98
98
98
98
98
98
98
98
98
113
108
98
98
108
113
108
108
108
115
105
105
110
110
110
110
110
110
110
110
110
110
110
110
115
115
115
122
117
122
122
127
127
127
122
122
122
132
132
122
134
129
129
139
134
139
124
124
139
139
139
139
139
139
139
139
139
139
139
141
151
161
161
151
163
158
163
173
153
163
163
163
148
148
163
153
153
153
153
158
153
173
148
148
148
148
148
148
148
148
163
170
175
175
160
160
160
160
160
160
160
165
165
170
170
182
187
172
172
197
192
192
194
184
184
209
209
179
199
189
189
201
196
206
216
196
196
191
191
186
186
186
213
213
218
208
203
223
208
203
203
218
213
208
208
203
198
198
198
198
198
198
198
198
225
210
215
210
210
210
240
220
220
235
210
210
210
210
210
210
210
222
222
217
247
252
222
222
222
222
222
222
247
222
222
232
259
229
229
259
234
234
234
234
234
234
254
256
276
266
266
251
251
251
251
251
251
273
268
268
268
288
263
263
300
290
290
265
300
290
300
270
270
275
277
277
272
277
272
272
272
287
297
282
282
324
284
284
284
284
284
299
309
289
289
316
296
296
301
301
296
296
331
326
316
301
301
306
308
308
313
313
333
343
328
328
333
308
338
338
335
335
340
335
345
325
325
350
342
327
327
332
347
352
337
337
374
364
344
371
371
346
346
383
383
393
358
358
408
408
373
373
358
400
370
370
385
385
390
390
370
365
365
365
422
419
409
414
414
414
414
434
384
384
384
384
384
384
384
384
384
436
426
426
426
396
396
396
396
396
396
396
396
396
433
440
440
440
420
470
470
460
467
467
457
447
457
457
457
457
427
472
494
464
474
474
474
474
439
434
434
434
444
444
439
489
489
479
516
446
446
446
491
486
498
498
510
542
522
549
524
561
536
541
556
513
578
568
548
548
553
565
565
525
525
525
525
532
532
567
567
572
572
565
572
572
572
572
532
532
532
532
539
539
579
579
584
584
604
544
544
544
544
544
544
596
596
601
563
570
570
620
577
577
577
577
637
639
589
589
594
649
649
659
659
664
644
639
639
654
676
646
688
693
653
673
690
685
670
665
715
680
677
677
677
677
677
699
726
711
711
711
751
711
743
708
708
708
708
708
730
730
770
720
720
720
720
742
742
777
754
754
739
796
751
751
751
751
751
751
808
793
793
778
765
797
804
809
851
838
830
830
842
842
852
884
879
854
859
866
901
901
871
903
935
897
897
909
909
936
978
928
983
943
1014
1021
1021
1026
1036
1038
1029
1029
1076
1048
1048
1040
1040
1040
1040
1070
1062
1062
1113
1113
1165
1117
1172
1132
1132
1132
1132
1179
1194
1208
1168
1215
1215
1175
1175
1175
1175
1175
1227
1189
1206
1254
1191
1191
1263
1263
1203
1203
1225
1273
1232
1232
1249
1249
1246
1268
1268
1253
1265
1330
1265
1280
1272
1342
1374
1361
1405
1429
1409
1359
1440
1365
1385
1452
1462
1479
1481
1512
1527
1555
1555
1647
1658
1697
1701
1701
1690
1709
1781
1790
1879
1809
1865
1917
1939
1985
2051
2107
2119
2133
2135
2154
2224
2236
2325
2324
2355
2355
2387
2387
2418
2473
2473
2605
2617
2636
2667
2747
2763
2794
2801
2813
2813
2892
2917
2904
2996
3008
3098
3165
3165
3226
3269
3293
4356
4399
4411
4618
4661
4661
1
27
27
27
27
27
27
27
27
27
27
37
27
27
37
27
34
34
39
34
34
34
39
34
44
34
34
39
44
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
56
56
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
51
53
68
58
58
53
68
53
53
63
48
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
65
65
65
65
70
70
75
65
60
70
80
60
60
80
70
65
80
70
80
60
70
80
80
60
60
60
70
80
60
70
65
80
60
60
70
80
65
65
72
67
72
77
67
72
82
87
87
82
82
72
67
67
82
87
82
82
87
72
82
82
87
72
72
87
87
72
72
72
87
72
72
82
87
72
72
87
82
82
72
82
82
82
82
77
77
82
77
79
84
79
89
89
79
89
79
89
89
79
79
79
79
89
79
84
79
79
79
84
89
89
84
79
79
79
84
89
89
79
84
89
89
84
79
84
89
89
89
89
79
84
84
91
101
101
101
101
106
96
106
96
91
106
96
91
106
96
91
106
96
91
106
96
98
98
113
108
108
113
113
98
113
113
108
113
113
113
115
110
110
115
115
115
110
110
110
110
110
110
110
110
110
125
115
115
115
115
115
117
117
117
117
127
117
117
117
117
117
117
122
122
122
122
129
134
134
134
134
134
139
139
139
139
139
139
139
139
139
139
141
161
161
163
158
168
148
148
148
148
148
148
173
153
148
148
163
175
170
170
165
175
175
175
160
160
175
165
165
165
165
165
185
160
160
160
160
160
175
160
160
175
182
182
182
187
172
167
167
167
167
197
197
192
192
189
194
179
179
209
179
204
189
189
196
196
201
191
191
186
186
186
211
213
208
213
223
208
208
203
198
198
198
198
198
198
198
225
225
210
210
210
210
210
215
235
240
215
220
225
220
220
235
210
210
210
210
210
205
205
237
217
222
222
232
247
222
217
217
217
217
234
229
259
264
234
234
254
229
229
244
271
241
236
271
241
241
241
241
241
241
278
268
288
273
273
273
258
263
263
263
263
275
275
275
290
300
265
275
275
290
312
302
277
272
272
272
297
312
307
282
282
297
282
314
309
284
284
284
284
284
284
299
309
289
289
289
289
294
294
336
301
301
296
291
291
326
311
316
301
301
313
313
343
343
303
303
343
333
333
308
338
338
313
313
313
320
320
345
355
345
350
342
342
362
327
327
327
327
352
347
352
337
337
357
372
339
339
339
339
359
349
349
381
371
351
351
351
383
383
358
400
420
415
385
385
370
397
397
402
397
397
377
434
421
426
426
426
426
426
446
396
396
396
448
433
428
403
403
403
403
403
403
403
403
403
445
415
460
452
447
447
427
482
472
482
467
472
479
479
464
469
469
469
469
434
439
439
479
479
506
471
481
481
481
446
441
441
501
501
491
486
523
453
453
463
463
463
463
498
510
522
517
554
529
534
561
536
573
556
553
548
518
518
513
568
590
580
560
560
565
572
572
572
572
539
539
579
579
579
579
579
544
544
591
591
596
596
616
551
551
551
551
551
551
608
603
603
603
603
570
577
577
582
582
627
589
589
644
639
654
646
601
601
601
656
656
656
656
671
671
676
656
646
653
658
688
663
658
658
700
705
665
680
702
692
677
677
727
692
711
738
723
723
763
723
755
720
720
720
720
720
742
742
777
727
727
727
754
754
789
739
766
766
808
763
763
763
763
763
763
778
820
765
805
805
785
819
809
861
816
863
842
849
849
896
891
866
871
911
878
913
913
878
915
890
947
909
909
924
921
921
928
983
943
990
940
1014
1026
1033
1033
1038
1043
993
988
1003
1050
1088
1055
1055
1055
1047
1047
1047
1082
1125
1125
1172
1117
1117
1122
1129
1184
1144
1144
1191
1206
1168
1220
1175
1227
1227
1187
1187
1187
1187
1187
1239
1201
1218
1261
1275
1275
1215
1215
1237
1285
1227
1244
1244
1256
1256
1256
1256
1246
1253
1253
1275
1275
1275
1275
1265
1272
1342
1277
1354
1386
1373
1412
1441
1421
1366
1365
1452
1464
1474
1491
1493
1524
1539
1567
1567
1659
1670
1709
1713
1713
1697
1716
1793
1790
1891
1929
1951
1997
2063
2119
2131
2135
2145
2154
2166
2236
2248
2337
2336
2367
2367
2399
2399
2430
2485
2485
2617
2629
2643
2655
2655
2679
2759
2806
2813
2825
2825
2904
2929
2916
3008
3020
3110
3177
3177
3238
3281
3305
4368
4411
4423
4630
4673
4673
1
13
27
27
27
27
27
27
27
27
27
27
37
27
34
39
34
39
34
34
34
34
39
34
34
34
34
39
34
34
34
34
34
34
44
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
44
34
34
34
34
34
49
34
34
34
34
49
34
34
34
34
34
34
34
34
46
51
51
46
41
51
41
41
51
41
41
41
41
41
41
41
41
41
41
51
41
41
51
51
41
41
51
41
41
41
41
41
41
41
51
41
41
41
41
58
58
68
53
68
53
53
53
58
63
53
53
53
48
48
48
48
63
53
48
48
63
53
53
53
53
53
48
53
53
48
48
63
53
53
53
53
53
53
53
53
53
53
63
53
53
53
53
53
53
53
53
48
48
48
48
48
48
63
53
48
48
63
53
53
53
48
48
48
48
63
53
53
53
53
65
65
65
65
80
60
75
60
60
60
60
60
60
60
60
60
60
65
80
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
65
77
77
77
72
72
77
67
82
82
72
67
82
87
87
67
77
72
72
72
87
77
67
67
67
87
67
77
87
87
67
67
77
87
67
77
87
67
77
87
67
77
89
79
79
79
84
89
79
79
89
99
94
89
89
89
94
89
79
84
89
89
94
89
84
84
79
79
79
79
79
89
89
94
89
79
79
94
94
89
79
79
79
94
89
79
79
89
89
94
89
79
79
94
89
89
79
89
89
89
89
84
89
84
84
91
91
96
96
101
101
101
86
86
86
86
96
91
86
86
86
86
91
101
101
91
91
91
101
101
91
101
101
91
101
101
101
101
91
96
108
113
103
108
108
108
108
113
113
113
108
113
113
113
113
113
108
113
113
108
113
105
105
105
105
115
115
110
110
110
110
115
115
115
117
122
122
127
117
117
117
117
117
117
122
122
122
117
122
122
142
127
139
129
129
124
124
139
139
129
129
139
141
146
141
146
146
166
151
151
151
151
161
173
148
148
178
173
160
160
160
160
160
160
175
185
160
160
160
175
187
182
177
187
187
187
172
172
187
177
177
177
177
177
197
172
172
172
167
167
197
167
167
167
187
192
192
194
204
214
179
209
179
179
204
189
189
196
196
196
206
201
201
221
191
191
191
191
211
203
208
203
203
203
203
213
203
203
198
198
198
223
225
210
215
240
215
215
215
220
220
210
210
210
210
210
210
205
237
237
222
217
222
222
227
222
247
252
237
232
232
247
222
222
222
217
217
249
229
229
234
244
259
229
241
271
271
241
241
286
256
278
283
248
283
273
285
275
300
265
265
265
265
275
275
275
275
290
312
277
277
287
287
282
324
314
309
284
284
284
324
294
294
309
294
294
296
296
296
291
326
311
321
301
301
301
301
348
323
323
343
303
323
338
313
313
355
355
345
350
320
320
362
327
327
352
352
367
347
357
357
372
374
339
339
339
339
364
359
349
349
386
381
346
346
371
371
361
361
383
358
358
358
358
395
395
370
370
365
365
365
365
365
365
432
397
397
377
377
377
409
409
409
409
426
446
433
433
438
438
438
438
458
403
403
403
460
440
445
457
422
422
472
472
472
464
434
434
439
494
494
484
491
491
476
481
481
481
481
481
491
486
518
483
513
513
503
498
517
529
534
529
566
541
511
546
573
556
548
546
585
568
560
565
580
525
525
525
525
525
525
602
592
572
572
577
532
532
532
532
582
539
539
579
591
591
591
551
551
603
603
608
608
628
608
570
620
615
615
615
615
582
582
632
632
627
589
589
589
589
601
601
656
656
656
666
658
608
608
668
668
683
683
688
658
665
700
675
670
680
712
717
677
714
689
739
699
723
750
735
735
735
767
732
732
732
732
732
727
754
754
789
766
766
801
778
778
778
820
775
775
775
775
775
775
790
785
832
817
817
797
816
838
833
875
849
908
903
878
878
923
890
890
925
925
927
922
959
924
924
921
921
936
933
933
940
1002
952
1026
993
988
1038
1045
1045
1050
1000
1062
1100
1055
1047
1094
1081
1115
1117
1137
1137
1129
1129
1141
1196
1156
1156
1203
1232
1177
1187
1239
1239
1199
1199
1199
1199
1194
1251
1213
1230
1273
1287
1287
1222
1222
1249
1292
1256
1256
1246
1265
1270
1287
1287
1287
1287
1277
1297
1354
1289
1366
1296
1393
1385
1424
1366
1453
1433
1370
1370
1464
1476
1486
1503
1505
1536
1551
1579
1579
1671
1682
1721
1725
1725
1697
1716
1728
1805
1809
1903
1941
1963
2009
2075
2131
2143
2157
2166
2178
2248
2260
2349
2348
2379
2379
2411
2411
2442
2497
2497
2641
2655
2667
2691
2771
2818
2825
2837
2837
2916
2941
2928
3020
3032
3122
3189
3189
3250
3293
3317
4380
4423
4435
4642
4685
4685
1
20
27
27
27
37
27
37
37
39
34
34
34
34
39
34
34
34
34
34
34
34
44
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
51
51
46
51
41
51
41
51
41
41
41
51
41
41
41
46
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
51
41
41
41
41
41
41
41
56
41
41
56
41
41
41
46
41
58
58
58
53
63
48
48
48
48
63
53
53
53
68
53
53
53
53
53
53
53
48
53
53
53
53
53
53
53
53
65
65
65
80
60
65
70
70
65
75
75
65
65
80
75
60
60
60
65
60
60
60
60
65
75
60
60
65
60
60
65
75
75
65
75
65
70
65
65
77
87
67
82
67
72
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
77
87
67
67
67
67
67
67
67
72
67
67
67
67
67
67
67
67
67
72
67
67
67
67
67
67
67
67
67
67
67
67
77
79
84
89
89
89
79
89
84
94
89
89
89
89
94
79
79
79
79
79
89
89
94
84
79
89
89
94
84
94
94
89
94
94
94
89
89
84
79
89
89
89
89
89
84
84
91
101
106
96
101
96
91
86
86
86
86
91
91
96
91
91
91
101
96
91
101
96
96
101
96
108
108
103
108
108
108
108
113
108
113
98
98
98
98
98
98
98
98
103
108
113
108
108
113
113
108
113
108
108
108
113
108
108
108
113
108
108
103
108
108
110
105
105
105
105
110
115
115
115
115
115
117
117
127
134
129
129
129
129
129
129
129
134
134
134
139
129
129
129
149
139
146
141
141
141
151
141
141
153
158
163
163
158
158
163
173
163
163
163
160
160
185
185
160
170
172
172
167
172
172
167
192
167
167
167
187
192
199
194
189
199
184
184
199
189
189
189
189
189
209
184
184
179
179
179
199
204
206
211
221
196
201
221
211
218
213
213
228
210
210
210
215
215
215
215
215
215
215
215
225
225
240
210
210
205
235
237
227
222
227
222
222
227
222
222
227
227
227
232
232
222
222
217
222
222
217
249
249
234
229
229
234
259
264
249
244
244
259
234
234
229
261
241
241
241
256
266
253
248
248
283
283
293
268
285
290
260
295
312
287
287
287
287
302
282
324
284
299
299
294
336
321
296
296
291
336
306
306
321
301
301
301
301
301
301
323
308
308
303
338
323
328
313
313
360
335
335
350
320
320
320
320
320
320
367
367
347
357
357
374
374
364
381
346
346
346
346
376
371
361
361
393
393
383
363
363
358
383
373
373
358
395
375
375
370
407
402
402
407
377
377
377
377
377
377
377
377
377
444
409
409
409
389
384
384
389
384
384
389
384
384
389
389
389
421
421
421
438
458
445
445
450
450
450
450
425
470
445
465
472
447
469
464
484
479
484
476
471
506
506
491
503
503
488
493
493
493
493
503
530
495
525
525
510
508
510
529
536
541
541
578
553
546
558
518
518
585
568
560
558
530
530
525
525
597
532
572
577
592
532
532
532
532
537
537
537
587
582
614
604
584
584
589
544
544
544
544
594
591
603
603
570
570
620
620
615
615
640
620
582
627
627
627
627
627
589
589
589
589
589
589
639
639
639
601
601
658
608
608
608
608
608
608
668
675
675
695
695
700
670
685
677
712
677
682
692
719
729
684
726
701
751
735
757
747
747
747
779
744
744
744
744
744
744
766
766
801
773
773
813
770
770
785
785
832
787
787
787
787
787
787
797
797
844
809
829
829
804
887
859
915
915
890
935
902
937
937
934
924
929
971
936
933
933
933
928
948
945
945
952
1014
959
974
1038
1050
1000
1057
1057
1062
1074
1112
1081
1106
1122
1149
1149
1141
1141
1141
1148
1208
1168
1168
1215
1244
1184
1194
1251
1251
1211
1211
1211
1211
1263
1225
1242
1222
1222
1299
1299
1234
1261
1304
1268
1268
1258
1278
1277
1297
1292
1277
1299
1299
1299
1299
1284
1304
1366
1296
1378
1397
1351
1436
1465
1445
1377
1377
1476
1488
1498
1515
1517
1548
1563
1591
1591
1683
1694
1733
1737
1737
1697
1716
1728
1735
1817
1809
1915
1948
1975
2021
2087
2143
2155
2169
2178
2190
2260
2272
2361
2360
2391
2391
2423
2423
2454
2509
2509
2653
2667
2679
2703
2783
2830
2837
2849
2849
2928
2953
2940
3032
3044
3134
3201
3201
3262
3305
3329
4392
4435
4447
4654
4697
4697
25
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
44
34
34
34
34
34
44
34
34
34
34
34
34
34
34
44
34
34
41
51
41
46
46
41
51
51
41
41
46
41
46
41
46
41
41
41
41
41
46
41
46
41
46
41
53
58
58
63
58
53
63
53
53
48
68
63
53
53
53
53
53
63
53
63
53
63
63
53
63
63
63
53
63
53
53
53
48
58
60
70
70
60
60
70
65
60
60
75
65
70
65
65
60
60
60
60
60
60
60
70
65
65
77
77
87
77
67
67
72
77
77
72
72
67
67
82
67
67
82
77
77
87
67
67
82
67
72
72
67
67
72
82
67
72
67
72
67
67
67
82
67
67
82
72
67
67
82
77
82
77
94
89
79
89
84
84
94
79
79
79
89
79
79
79
79
84
96
96
96
91
101
101
101
86
86
96
101
101
91
101
101
91
91
101
101
101
91
101
101
101
101
98
108
113
113
108
113
103
103
98
98
98
113
118
115
120
115
110
115
115
115
105
105
115
115
115
110
110
110
110
115
115
115
125
115
115
115
115
115
115
115
115
115
122
117
117
117
117
117
117
139
139
134
129
129
129
139
139
139
129
129
129
149
146
141
141
136
136
136
136
146
146
146
141
153
163
163
153
153
163
173
153
153
148
148
175
165
170
175
170
170
170
165
175
175
175
175
185
160
170
172
172
187
192
167
167
167
179
179
179
179
204
179
199
211
206
211
201
196
196
211
201
201
201
201
221
201
191
191
191
186
186
211
211
218
218
208
203
228
203
203
230
210
225
230
235
240
215
222
222
227
237
232
247
217
217
247
249
234
234
234
234
234
234
234
234
234
234
234
244
244
229
229
229
229
261
261
241
271
271
271
261
256
256
266
241
241
273
253
253
248
293
268
290
260
260
260
295
295
280
290
267
307
277
297
282
282
324
289
289
289
284
299
299
299
299
309
294
321
301
301
336
311
311
326
306
301
301
348
333
323
323
303
303
333
348
318
318
328
338
338
335
315
315
345
335
320
320
320
320
320
320
372
342
362
347
362
332
332
332
332
332
332
374
379
364
381
386
393
393
388
383
373
373
400
395
370
370
395
385
385
407
382
382
419
414
414
419
389
456
421
421
396
396
396
396
396
396
396
396
396
396
396
396
396
396
396
433
428
428
433
433
420
470
460
460
457
462
462
462
462
472
482
472
484
444
444
479
481
476
446
446
441
491
491
491
488
483
458
458
453
518
518
515
515
500
505
505
505
505
510
508
542
507
537
537
517
517
536
541
553
553
590
560
558
565
565
597
532
572
570
537
537
537
537
537
609
584
589
604
544
544
544
594
594
626
616
596
596
596
596
556
556
556
556
601
608
570
615
615
582
627
627
632
632
652
627
594
589
589
639
639
639
639
639
639
639
656
646
653
658
608
608
608
608
608
608
658
665
620
620
620
620
620
620
675
707
707
712
677
677
692
684
724
699
741
738
713
763
747
769
759
759
759
751
791
756
756
756
756
756
778
778
813
785
825
777
777
797
797
844
814
809
799
799
799
799
799
799
804
856
816
841
841
830
852
899
859
871
927
902
947
914
949
949
924
924
929
946
928
983
948
945
945
940
955
957
957
959
959
1026
981
1050
1062
1069
1069
1074
1086
1124
1118
1122
1129
1161
1161
1148
1148
1148
1148
1148
1160
1220
1180
1180
1175
1227
1184
1184
1256
1263
1263
1223
1223
1223
1223
1275
1237
1222
1249
1249
1234
1246
1311
1311
1246
1268
1268
1253
1316
1280
1280
1265
1285
1292
1277
1277
1284
1304
1311
1311
1311
1311
1296
1296
1378
1308
1390
1409
1358
1358
1448
1385
1477
1457
1488
1500
1510
1527
1529
1560
1575
1603
1603
1706
1745
1749
1749
1728
1735
1829
1922
1960
1987
2033
2099
2155
2167
2181
2190
2202
2272
2284
2373
2372
2403
2403
2435
2435
2466
2521
2521
2665
2679
2691
2715
2795
2842
2849
2861
2861
2940
2965
2952
3044
3056
3146
3213
3213
3274
3317
3341
4404
4447
4459
4666
4709
4709
1
1
1
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
32
34
34
39
34
49
34
34
34
34
34
49
34
34
34
34
34
49
34
34
34
34
34
34
49
34
34
34
34
34
49
34
34
34
49
34
34
49
34
34
34
34
49
34
34
34
34
34
34
49
34
34
34
34
49
34
34
34
34
34
34
34
34
34
34
34
34
34
49
34
34
34
34
34
34
34
46
46
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
51
41
41
41
51
41
41
51
53
58
53
63
53
53
53
53
53
63
53
53
53
63
53
53
53
53
48
58
53
53
53
63
68
53
63
53
63
53
63
53
53
53
53
68
53
53
53
63
53
53
53
53
53
65
65
65
75
65
60
60
60
70
75
65
60
70
75
75
70
65
65
75
60
70
60
60
60
60
60
70
60
70
75
60
60
70
75
60
75
75
70
75
60
65
67
72
77
77
72
67
77
72
72
72
82
77
82
77
67
67
72
72
67
72
72
72
72
72
72
72
77
72
77
82
94
79
84
84
79
79
84
79
84
79
79
89
89
89
89
84
84
84
94
89
89
79
84
79
79
79
79
79
84
79
79
89
89
79
84
79
79
89
89
79
84
79
79
89
89
84
89
89
79
79
89
89
84
94
89
106
96
96
91
101
86
86
91
91
106
91
91
91
91
101
91
91
91
98
103
113
108
108
108
103
103
108
108
98
108
108
113
108
108
108
103
103
108
108
108
108
115
110
115
115
115
125
115
110
115
115
115
125
132
127
122
127
117
117
117
117
117
117
132
139
139
134
139
129
129
129
129
134
139
139
139
151
141
136
136
151
141
141
141
161
178
153
163
168
168
158
158
158
148
175
165
165
170
175
160
160
160
160
160
160
170
182
177
187
177
177
182
182
172
172
187
187
187
197
192
192
192
184
184
194
179
179
179
221
196
196
211
186
211
223
218
208
208
218
218
208
208
223
213
213
213
213
233
213
228
198
198
223
230
210
215
215
215
235
210
210
210
210
242
222
222
242
232
232
247
247
247
222
222
234
229
234
249
244
259
261
241
241
241
241
241
241
241
256
256
273
273
248
283
283
273
268
268
285
260
260
305
270
280
290
267
267
307
302
292
297
287
319
284
284
309
309
294
321
301
301
336
296
296
296
296
311
311
311
311
326
306
333
323
313
313
348
323
323
333
313
360
345
335
345
345
360
330
330
350
347
362
327
327
352
352
347
372
332
332
384
374
344
359
374
339
339
339
339
339
339
381
356
391
393
393
358
358
400
400
370
370
370
370
395
385
385
407
382
382
382
382
382
407
397
397
419
394
414
414
426
431
396
433
468
433
433
403
403
403
403
403
403
403
403
403
445
440
440
445
445
450
450
427
472
482
472
472
464
474
474
474
474
439
479
494
479
496
441
491
491
491
493
488
453
453
453
503
500
495
465
465
530
520
530
527
527
512
517
517
517
517
554
519
549
549
529
541
548
551
548
560
565
525
525
602
532
570
609
584
577
544
621
601
596
596
596
616
601
638
628
608
608
608
608
608
563
563
563
563
563
563
613
575
582
627
627
627
594
639
639
644
644
664
639
601
656
646
651
651
651
651
653
658
668
670
665
620
620
670
627
627
627
627
627
627
692
719
719
724
699
736
711
753
750
725
775
759
739
781
766
766
771
758
758
803
768
768
768
768
768
785
785
825
797
832
809
856
816
811
811
811
811
811
811
868
853
853
830
830
842
852
911
871
883
890
939
914
959
924
924
926
961
961
936
958
940
940
995
955
957
957
969
969
959
971
981
1038
1062
1074
1081
1081
1086
1098
1136
1086
1086
1130
1134
1148
1148
1148
1173
1173
1168
1160
1160
1175
1167
1232
1192
1192
1187
1239
1184
1268
1275
1275
1235
1235
1235
1235
1287
1222
1249
1234
1246
1246
1253
1323
1323
1253
1280
1280
1265
1265
1328
1285
1292
1292
1323
1323
1323
1323
1308
1308
1390
1315
1402
1421
1460
1489
1469
1500
1512
1522
1534
1541
1572
1587
1615
1615
1718
1757
1697
1761
1761
1716
1735
1841
1972
1999
2045
2111
2167
2179
2193
2202
2214
2284
2296
2385
2384
2415
2415
2447
2447
2478
2533
2533
2677
2691
2703
2727
2807
2854
2861
2873
2873
2952
2977
2964
3056
3068
3158
3225
3225
3286
3329
3353
4416
4459
4471
4678
4721
4721
1
1
1
1
1
1
25
27
27
27
27
37
27
27
27
37
27
27
27
27
37
27
37
27
37
27
37
27
37
27
37
27
27
27
37
27
37
27
27
27
37
27
27
27
27
27
39
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
39
34
34
34
39
34
34
34
41
41
41
41
51
56
41
51
56
41
41
41
41
46
41
56
51
41
41
41
56
51
56
41
41
41
56
51
56
41
41
51
56
51
56
41
41
51
56
41
41
41
41
41
41
51
56
41
41
41
46
53
53
53
53
48
53
63
48
48
48
48
63
48
53
48
48
48
48
63
53
53
53
53
58
48
48
48
48
63
53
53
68
53
53
53
53
48
48
48
48
48
48
63
53
68
48
48
48
48
63
53
48
48
48
48
63
48
65
60
70
70
60
65
60
60
60
60
60
75
60
60
60
60
60
75
65
60
65
60
60
60
60
60
75
75
75
75
75
60
60
60
60
60
60
60
75
60
60
60
60
75
60
60
60
60
72
72
82
67
67
77
82
72
72
67
77
72
72
82
82
77
77
82
82
67
77
67
67
77
67
77
82
67
77
82
72
82
82
77
77
82
77
84
79
89
79
84
79
79
79
79
79
84
84
94
89
79
79
79
79
79
79
79
79
79
79
79
79
79
84
79
84
94
91
91
91
91
91
91
91
91
91
91
91
101
101
91
91
101
101
118
98
103
108
103
118
123
108
113
113
103
115
115
125
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
122
137
132
127
117
117
137
144
139
134
144
139
139
139
139
139
151
141
136
136
146
136
136
151
158
158
158
158
158
158
153
153
148
175
185
175
175
170
170
170
187
177
177
197
189
194
194
194
194
214
179
179
199
199
199
204
196
196
191
191
191
186
208
208
233
223
235
230
220
220
230
230
210
215
220
215
215
215
215
235
225
225
225
225
245
225
240
235
242
222
227
227
232
232
247
217
254
234
254
254
229
229
274
261
256
256
241
241
241
276
241
241
261
256
241
271
273
253
248
248
268
268
285
285
285
260
295
295
285
280
280
297
277
277
292
319
304
309
294
294
294
331
316
306
301
301
301
301
328
328
313
313
348
303
323
323
323
323
333
338
313
313
313
345
360
315
335
335
345
372
357
347
332
327
332
327
352
372
342
342
362
354
339
339
379
359
359
359
339
339
396
386
351
371
386
393
363
403
400
395
370
370
412
382
382
407
397
397
382
377
377
419
389
394
394
419
409
409
426
431
401
431
421
421
443
403
403
403
440
480
445
445
457
447
447
457
457
457
457
479
434
434
494
484
476
486
486
486
486
446
446
491
506
508
498
503
505
500
510
512
507
542
527
527
542
522
539
539
524
529
529
529
529
566
531
561
561
541
523
560
565
558
525
525
577
577
577
537
537
614
577
621
596
633
608
613
603
603
628
563
563
650
640
620
620
620
620
620
582
582
582
594
589
589
589
589
639
639
639
601
601
601
651
651
656
656
656
676
646
663
663
663
663
670
680
677
627
627
677
716
731
731
736
711
748
718
765
725
762
737
782
771
793
783
815
780
780
780
780
780
797
797
837
809
844
821
821
821
868
823
823
823
823
823
823
880
830
865
865
842
854
923
883
890
951
926
971
936
938
973
973
943
970
952
1007
969
969
981
981
971
978
1050
1074
1034
1086
1093
1093
1098
1045
1110
1067
1148
1093
1093
1142
1153
1148
1148
1168
1160
1160
1185
1185
1167
1167
1187
1244
1204
1204
1199
1251
1280
1287
1287
1247
1247
1247
1247
1299
1234
1261
1241
1253
1265
1335
1335
1292
1292
1272
1340
1304
1304
1335
1335
1335
1335
1315
1315
1402
1414
1433
1385
1472
1496
1481
1512
1524
1534
1546
1553
1584
1599
1627
1627
1730
1773
1773
1728
1853
1851
1984
2011
2057
2123
2179
2191
2205
2214
2226
2296
2308
2397
2396
2427
2427
2459
2459
2490
2545
2545
2689
2703
2715
2739
2819
2866
2873
2885
2885
2964
2989
2976
3068
3080
3170
3237
3237
3298
3341
3365
4428
4471
4483
4690
4733
4728
1
1
1
1
1
1
1
25
27
27
27
27
32
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
44
34
34
39
34
34
34
34
34
34
34
34
34
34
34
44
34
34
34
34
44
34
34
34
44
34
34
34
44
34
34
44
34
44
34
44
44
44
34
34
34
34
34
34
34
34
44
34
34
34
39
34
46
51
41
41
46
46
41
41
41
41
41
41
41
46
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
51
41
51
41
46
41
53
53
53
53
63
58
58
48
48
53
58
63
53
53
53
48
63
58
53
53
53
63
58
48
63
58
63
58
63
58
63
63
58
63
58
63
53
53
58
63
58
58
60
60
75
70
70
60
60
60
60
60
70
70
65
65
65
70
70
60
60
60
75
60
60
60
60
60
60
65
60
60
70
70
60
60
75
70
70
70
70
65
67
77
77
67
67
67
67
67
67
67
82
67
67
67
67
67
67
67
82
77
77
67
67
67
67
67
67
82
82
82
82
82
67
67
67
67
67
67
67
67
67
67
67
72
82
67
67
67
67
67
67
82
67
67
67
67
67
67
94
94
79
79
79
79
89
89
79
79
79
79
84
89
79
79
79
84
79
79
89
84
84
94
94
94
89
84
84
84
89
84
89
79
79
89
79
89
84
89
91
91
91
91
91
91
91
101
101
91
91
96
91
96
106
103
103
103
103
98
98
108
108
113
108
130
115
115
115
115
115
105
105
115
115
130
115
115
130
115
115
115
115
115
115
115
115
115
115
137
127
127
122
122
127
134
139
149
139
139
139
134
144
139
139
146
141
151
151
141
141
141
151
151
158
158
153
163
158
158
158
148
148
158
170
170
160
160
182
182
182
182
172
192
194
194
184
184
184
184
194
194
184
184
179
184
184
179
204
201
206
206
221
221
196
196
191
211
211
211
211
208
208
198
198
215
215
215
215
240
235
247
242
232
232
222
227
227
227
227
227
227
227
232
247
237
237
237
237
237
257
247
222
222
217
247
254
234
239
239
244
244
254
234
234
229
234
234
229
266
246
241
241
266
246
246
241
286
268
268
268
268
253
253
253
283
273
263
278
278
283
285
285
260
260
280
280
297
297
267
307
302
297
292
292
309
304
294
331
296
316
316
343
308
308
303
313
313
313
313
313
313
313
340
340
360
320
320
315
335
335
335
335
340
340
325
320
320
325
320
320
325
325
325
357
372
347
347
352
384
369
354
354
339
339
339
339
384
354
354
374
346
346
386
371
408
393
383
393
400
370
415
382
402
402
424
389
389
419
409
409
389
389
389
389
431
401
401
431
421
421
401
401
401
438
443
438
438
440
440
455
447
447
492
457
457
472
469
464
459
469
469
486
486
486
486
506
491
488
498
498
498
498
498
518
520
510
512
512
519
519
554
534
554
529
551
551
531
541
541
541
541
578
538
573
573
548
530
530
567
572
542
542
584
584
589
584
584
584
584
549
549
626
589
633
601
608
645
620
625
640
582
642
662
652
632
632
632
632
601
601
601
601
601
601
601
651
651
656
646
613
608
608
613
608
608
613
613
613
668
668
663
663
668
688
675
675
675
675
677
687
723
743
743
748
718
760
777
732
732
732
732
774
749
744
783
805
795
777
827
792
792
792
792
792
809
809
849
816
821
856
821
833
828
828
880
835
835
835
835
835
835
892
877
877
854
861
935
890
963
938
983
943
950
940
985
985
982
959
1019
981
981
993
993
978
1062
1086
1041
1041
1098
1105
1105
1110
1060
1060
1052
1052
1052
1052
1122
1074
1074
1160
1154
1148
1160
1160
1167
1167
1197
1197
1199
1256
1216
1216
1206
1263
1292
1299
1299
1259
1259
1259
1259
1311
1241
1273
1272
1347
1347
1304
1304
1352
1316
1316
1347
1347
1347
1347
1414
1426
1445
1377
1484
1493
1524
1536
1546
1558
1565
1596
1611
1639
1639
1742
1697
1785
1785
1735
1865
1863
1996
2023
2069
2135
2191
2203
2217
2226
2238
2308
2320
2409
2408
2439
2439
2471
2471
2502
2557
2557
2701
2715
2727
2751
2831
2878
2885
2897
2897
2976
3001
2988
3080
3092
3182
3249
3249
3310
3353
3377
4440
4483
4490
4702
4740
4740
1
1
1
13
13
27
27
27
27
27
27
27
27
32
27
27
27
27
27
27
37
27
34
34
34
34
34
34
34
39
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
39
34
39
51
41
51
41
41
46
41
41
41
41
41
41
41
41
51
46
41
46
51
41
41
46
46
51
46
41
51
46
51
41
41
51
41
51
51
51
46
41
46
46
51
46
51
58
53
53
53
48
53
48
58
53
48
63
53
58
58
58
58
53
58
70
60
65
65
60
60
60
65
60
65
60
60
65
65
65
65
60
65
60
60
60
60
75
65
60
65
60
65
65
65
77
72
67
82
67
67
77
77
67
67
67
67
77
67
67
77
77
77
67
67
72
72
77
77
77
67
82
77
67
67
77
67
77
67
67
67
67
77
77
67
82
67
67
77
77
67
67
77
77
94
94
89
79
84
79
89
89
89
89
84
94
94
89
79
89
79
89
79
89
84
89
79
89
89
79
79
79
79
89
89
89
84
106
101
101
91
96
96
96
106
106
96
101
96
91
91
91
96
96
103
103
98
98
113
108
98
98
98
108
113
115
115
115
115
115
130
115
115
115
115
115
115
115
115
120
120
142
127
127
117
117
117
117
122
142
122
122
122
122
127
149
139
139
144
139
139
139
146
141
141
141
141
151
161
151
136
136
136
136
156
141
141
158
153
153
163
163
158
153
153
153
158
158
163
178
185
165
175
170
170
160
160
165
165
177
177
177
194
194
194
194
204
179
179
206
191
191
191
191
211
213
218
218
203
203
223
223
223
223
203
215
220
220
240
215
215
227
227
227
247
227
247
259
254
244
244
234
234
234
234
239
239
244
259
249
249
249
249
269
249
259
229
229
259
266
241
241
246
246
246
246
246
246
246
246
256
251
271
241
241
241
241
278
248
253
253
253
283
278
253
253
293
275
275
275
260
260
260
285
285
285
285
290
297
267
302
292
292
309
309
319
314
309
289
304
304
321
301
301
301
296
316
328
343
328
333
355
315
315
325
372
327
327
347
347
347
347
332
332
332
332
332
332
332
332
332
332
332
369
354
384
359
359
369
396
381
366
366
346
346
386
396
366
366
386
398
358
358
393
383
420
405
370
395
405
382
382
427
394
436
431
421
421
396
396
396
443
443
433
433
408
408
408
408
408
408
408
408
408
408
408
408
455
467
472
459
459
504
469
469
484
481
476
466
481
481
496
491
493
493
493
458
458
453
518
500
510
510
510
510
470
470
465
515
530
532
524
529
531
566
566
563
563
543
553
553
553
553
548
590
550
585
585
560
567
572
584
549
549
549
549
594
601
591
591
591
556
556
556
638
596
568
568
568
568
645
613
620
632
637
652
652
649
674
664
644
644
644
644
644
613
663
663
620
620
620
620
620
620
620
620
620
620
620
675
675
680
680
680
700
697
687
687
687
687
689
699
755
755
760
772
789
739
739
739
744
786
761
795
817
777
807
802
839
804
804
804
804
804
821
821
861
821
816
823
833
868
828
828
845
840
892
847
847
847
847
847
847
904
889
889
861
873
947
934
975
950
940
995
962
952
997
997
994
964
959
1031
993
993
1005
1005
1005
1074
1098
1110
1117
1117
1122
1067
1067
1067
1059
1059
1059
1134
1172
1166
1148
1160
1160
1167
1167
1179
1209
1209
1206
1268
1228
1228
1275
1304
1311
1311
1271
1271
1271
1271
1323
1285
1277
1277
1289
1359
1359
1316
1316
1364
1296
1328
1328
1359
1359
1359
1359
1426
1371
1438
1457
1377
1496
1505
1536
1548
1570
1608
1623
1651
1651
1754
1716
1797
1797
1877
1870
1875
2008
2035
2081
2147
2203
2215
2229
2238
2250
2320
2332
2421
2420
2451
2451
2483
2483
2514
2569
2569
2713
2727
2739
2758
2843
2885
2897
2909
2909
2988
3013
3000
3092
3104
3194
3261
3261
3322
3360
3384
4452
4490
4502
4714
4752
1
1
1
1
1
1
1
1
1
13
20
25
20
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
44
34
39
34
34
34
34
34
34
41
41
41
41
41
41
41
46
51
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
46
46
53
58
53
58
48
53
48
58
48
48
53
48
53
53
53
53
53
53
53
53
58
58
53
53
58
53
53
53
53
53
53
53
53
53
48
53
53
53
53
53
53
53
58
53
53
53
53
53
53
58
58
65
60
60
60
60
65
65
60
60
60
60
60
70
70
60
60
60
65
60
65
65
65
65
77
67
72
72
67
77
72
72
67
67
67
67
72
72
72
72
72
67
67
67
67
67
67
82
72
72
72
72
67
67
72
72
79
84
79
89
84
89
84
89
89
84
89
89
84
79
89
84
79
79
89
84
79
89
84
79
89
84
89
84
89
79
79
89
84
89
89
84
106
96
96
96
96
106
96
91
96
91
96
91
96
91
91
91
113
103
113
113
103
98
98
98
98
113
113
98
103
103
115
115
115
120
120
115
120
125
127
122
122
127
127
127
127
154
139
139
129
129
154
129
129
129
129
129
129
139
139
151
161
151
136
136
156
151
153
153
173
163
158
148
148
148
148
163
165
175
160
160
160
175
170
175
175
185
160
187
182
177
167
167
172
172
172
172
184
184
206
201
206
206
213
223
198
225
215
230
230
235
235
235
230
210
210
227
232
232
252
222
222
222
222
234
239
239
259
234
234
259
271
266
256
256
241
241
251
251
251
271
261
261
261
261
281
261
271
266
271
278
253
253
253
253
253
253
253
253
253
263
278
290
275
260
260
260
260
260
260
260
290
285
272
267
267
297
282
309
279
314
304
304
314
294
294
321
321
331
321
321
296
296
316
316
333
308
308
308
308
328
333
355
350
340
340
367
332
384
359
359
359
359
359
369
339
339
339
339
339
339
381
366
346
346
396
371
371
376
408
393
373
373
408
378
378
393
393
405
405
365
365
405
370
395
432
412
382
407
417
394
439
406
421
396
448
443
433
433
455
455
445
445
415
415
415
415
415
415
415
415
415
467
457
479
439
484
466
466
451
496
516
481
481
491
493
488
493
453
493
493
503
503
465
465
465
515
530
512
522
522
522
522
477
477
522
542
544
536
543
578
578
575
575
555
565
565
565
565
560
602
562
597
597
567
584
591
591
556
603
613
650
575
575
575
575
575
575
625
582
582
632
652
649
644
664
664
686
676
651
651
656
656
656
656
670
620
675
675
627
627
627
627
627
627
687
687
692
692
687
687
712
682
689
709
704
699
699
699
699
699
696
711
767
767
772
784
739
801
798
773
802
829
814
851
816
816
816
816
816
833
833
873
840
880
840
852
847
904
859
859
859
859
859
859
916
861
901
901
915
885
934
959
961
941
980
960
987
962
952
1007
974
959
1009
1009
1006
971
971
986
1043
1005
1005
1005
1000
1017
1017
1012
1086
1110
1122
1067
1129
1129
1059
1134
1146
1093
1184
1148
1178
1172
1179
1186
1221
1221
1280
1240
1240
1287
1222
1316
1323
1323
1283
1283
1283
1283
1270
1335
1297
1277
1289
1304
1296
1371
1371
1301
1296
1328
1328
1376
1308
1340
1340
1371
1371
1371
1371
1438
1383
1450
1390
1469
1508
1517
1548
1560
1582
1620
1663
1663
1697
1766
1721
1809
1809
1889
1882
1887
2020
2047
2093
2159
2215
2227
2241
2250
2262
2332
2344
2433
2432
2463
2463
2495
2495
2526
2581
2581
2720
2739
2751
2770
2855
2909
2916
3000
3025
3012
3104
3116
3206
3268
3268
3334
3396
4464
4514
4726
4764
1
1
1
1
1
1
1
1
1
1
13
8
20
27
27
27
37
27
27
27
27
37
27
27
27
37
27
27
37
27
37
27
37
27
37
27
27
37
37
27
27
27
37
27
27
27
37
27
27
37
27
27
37
27
32
27
27
37
27
27
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
39
34
39
34
34
34
39
34
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
39
34
34
34
34
34
34
39
34
34
34
39
39
34
39
34
34
34
34
34
39
34
34
41
41
41
41
46
41
46
41
41
41
46
41
41
41
41
41
46
41
46
46
41
51
51
41
41
41
41
41
46
46
41
41
41
41
41
46
46
41
41
46
46
41
41
41
41
46
46
41
41
41
41
46
41
41
41
41
41
46
41
51
41
41
41
41
41
46
51
46
46
41
41
41
41
41
46
53
53
48
48
48
48
53
58
58
53
58
48
48
48
48
53
58
48
48
48
48
53
53
53
53
48
48
53
53
48
48
48
48
48
48
58
48
48
48
48
48
48
48
48
53
53
65
65
60
65
65
60
60
65
60
60
60
60
65
65
60
60
60
60
65
70
60
60
60
60
60
60
65
60
60
60
60
60
60
60
60
60
60
65
60
60
60
60
65
60
60
60
60
65
65
77
77
77
77
67
72
67
72
67
67
67
67
67
77
77
67
67
67
72
72
79
79
89
79
79
79
79
79
79
79
79
79
79
79
79
79
79
89
89
79
79
79
79
79
91
96
96
91
91
96
91
91
91
91
91
91
101
113
113
113
103
103
115
125
125
125
115
115
125
115
115
127
127
127
127
132
132
139
134
129
129
139
139
139
166
151
151
136
136
136
136
166
151
163
173
163
158
148
148
163
163
170
160
185
175
170
160
155
160
155
170
170
175
170
185
165
165
160
187
187
177
187
182
194
194
201
191
191
213
213
218
218
203
203
203
198
215
230
237
232
242
242
247
247
247
244
244
259
229
246
241
251
251
266
266
241
241
271
283
278
268
268
253
253
253
253
263
263
283
273
273
273
273
293
273
278
253
278
293
290
260
302
272
272
267
302
279
279
279
309
289
289
321
286
321
316
316
321
306
306
333
333
343
328
328
328
328
318
313
313
345
315
340
340
367
327
357
352
379
339
339
359
364
339
339
396
356
371
371
371
371
376
393
373
358
358
408
368
383
383
420
405
405
400
405
370
420
390
390
405
412
412
382
382
407
444
394
419
394
424
401
451
421
413
455
455
445
445
415
415
415
447
467
467
457
457
457
472
479
491
446
446
491
458
458
503
528
493
493
503
503
505
500
510
505
505
510
522
542
524
534
534
534
534
554
539
556
548
555
590
558
590
535
587
587
567
577
577
577
577
567
614
574
609
609
582
591
606
603
625
575
575
662
632
594
594
644
649
606
601
601
656
661
676
651
646
651
676
698
688
658
668
668
668
668
677
627
627
687
687
682
677
692
684
699
699
704
704
699
724
696
711
711
711
711
711
728
718
779
779
784
796
813
810
785
841
816
823
863
828
828
828
828
828
845
845
885
852
892
847
864
916
871
871
871
871
871
871
928
873
913
913
892
946
971
941
940
960
955
992
967
999
974
959
1019
986
971
971
1021
1021
1018
978
993
1055
1017
1017
1012
1029
1029
1098
1122
1134
1141
1141
1146
1158
1093
1134
1196
1148
1160
1190
1184
1179
1186
1233
1233
1292
1252
1252
1299
1234
1328
1335
1335
1295
1295
1295
1295
1277
1347
1309
1284
1304
1296
1296
1383
1383
1313
1340
1340
1388
1315
1352
1352
1383
1383
1383
1383
1450
1395
1462
1402
1481
1520
1529
1560
1572
1594
1632
1675
1675
1716
1778
1816
1816
1795
1901
1870
1894
1894
2032
2059
2105
2171
2227
2239
2253
2262
2274
2344
2356
2445
2444
2475
2475
2507
2507
2538
2593
2593
2751
2763
2782
2867
2921
3012
3037
3024
3116
3128
3218
3280
3346
3408
4476
4526
4738
4776
1
1
1
1
1
13
13
25
25
25
25
25
25
25
25
25
25
25
15
25
25
25
25
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
44
34
34
34
34
34
34
34
39
34
34
44
34
34
34
34
34
34
34
34
44
34
34
39
34
34
44
34
34
34
34
44
34
34
39
34
34
44
34
34
34
34
44
34
34
39
34
34
44
44
34
34
39
34
34
34
34
34
34
34
44
34
34
39
34
34
34
34
34
34
34
44
34
34
39
34
34
44
34
34
34
34
34
44
34
34
34
34
39
34
34
39
34
34
34
44
34
34
34
34
34
34
41
41
51
51
46
41
41
41
41
41
41
41
51
41
46
41
41
51
41
41
51
41
41
41
41
41
41
41
41
41
51
41
41
41
41
51
41
41
41
41
41
51
41
46
46
41
41
51
41
41
51
46
41
53
53
53
53
53
53
53
58
58
58
53
58
48
53
58
58
58
58
58
58
53
58
58
58
58
58
53
48
48
58
58
58
58
58
58
58
58
58
58
53
58
53
60
60
65
65
65
65
70
60
60
60
60
60
60
60
60
60
60
60
60
60
60
65
65
72
72
72
72
72
77
67
67
67
67
67
67
72
72
72
67
67
67
67
67
67
77
77
77
67
67
67
67
67
67
72
67
67
67
67
67
67
67
67
67
67
67
72
67
67
67
67
67
67
67
67
67
67
67
67
72
94
84
84
89
84
84
79
79
94
84
79
84
96
96
91
91
91
91
101
101
91
91
91
91
91
103
108
113
103
103
103
103
113
125
115
115
120
127
137
127
122
122
132
127
127
139
139
139
144
144
151
146
146
151
151
151
178
153
163
163
158
178
158
170
190
165
185
175
175
155
155
170
170
197
182
167
167
182
172
172
194
199
199
184
206
196
196
191
196
196
191
211
213
208
208
203
225
230
230
210
210
227
232
247
249
239
239
239
239
254
254
259
259
259
259
234
234
229
241
251
251
256
256
266
246
246
241
246
246
241
253
283
263
263
258
258
253
283
295
290
280
280
260
260
275
275
295
285
285
285
285
305
285
302
314
279
279
309
286
286
321
321
333
328
313
313
308
328
328
328
345
355
340
320
320
315
340
340
340
325
325
325
325
332
332
327
352
357
352
337
337
379
364
364
391
408
393
363
383
383
383
383
398
405
400
370
370
420
375
395
395
432
417
412
432
402
402
417
394
419
456
406
401
431
401
401
401
401
413
413
463
413
413
413
440
425
467
457
457
472
459
479
469
469
486
491
503
503
503
510
540
505
505
510
512
512
517
517
554
529
531
546
546
546
546
566
568
560
567
567
602
570
602
542
542
599
599
579
589
589
589
589
577
554
554
626
586
621
621
594
561
561
613
637
674
656
646
613
613
613
613
668
673
688
658
688
625
625
710
700
680
680
680
680
677
692
684
699
699
699
689
716
716
711
711
711
736
723
723
723
723
723
791
791
796
808
825
822
797
848
828
875
840
840
840
840
840
857
857
897
864
904
866
876
928
883
883
883
883
883
883
940
885
925
925
958
983
940
955
967
1004
959
1011
986
971
1031
998
978
1033
1033
993
1030
1000
1067
1029
1029
1041
1041
1110
1134
1146
1153
1153
1158
1170
1141
1208
1167
1172
1202
1191
1211
1245
1245
1304
1264
1264
1311
1246
1340
1277
1347
1347
1307
1307
1307
1307
1284
1359
1309
1321
1395
1395
1352
1352
1400
1364
1364
1363
1395
1395
1395
1395
1390
1462
1402
1474
1414
1493
1532
1541
1572
1584
1606
1644
1687
1687
1790
1828
1802
1913
1882
1906
2044
2071
2117
2183
2239
2251
2265
2274
2286
2356
2368
2457
2456
2487
2487
2519
2519
2550
2605
2605
2763
2775
2794
2879
2933
3024
3049
3036
3128
3140
3230
3292
3358
3420
4488
4538
4750
4788
1
1
1
13
13
13
20
20
27
27
32
27
37
27
27
32
27
27
27
32
27
27
32
27
32
27
27
32
27
32
27
27
32
32
27
27
27
32
27
27
32
27
27
32
27
32
27
27
27
27
32
27
27
27
34
34
34
34
34
34
34
34
34
39
39
34
34
34
34
39
34
34
39
34
34
34
34
34
34
39
34
34
34
34
34
34
39
34
39
39
34
34
34
34
39
39
34
34
34
34
39
39
34
34
34
34
34
39
39
34
34
34
34
34
34
34
34
39
39
34
34
34
34
46
51
46
51
46
41
41
41
51
51
46
51
51
41
46
51
51
51
46
51
51
51
51
46
41
51
46
51
51
51
51
51
51
51
41
46
51
51
51
41
51
51
51
51
46
51
51
51
46
51
51
51
51
46
51
51
46
41
48
53
53
58
58
58
58
53
53
53
58
58
58
53
58
48
53
58
58
53
58
58
53
58
53
53
58
48
53
48
58
58
53
58
48
58
58
53
53
58
58
58
53
53
58
58
53
58
58
58
58
53
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
60
65
65
65
65
65
65
60
60
60
60
60
65
65
65
65
65
65
65
65
77
72
67
67
67
72
72
72
72
72
67
67
72
67
77
77
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
72
67
67
67
67
72
94
94
89
89
84
79
79
94
94
84
84
79
79
79
79
79
106
91
91
91
106
91
108
103
113
113
103
103
103
103
103
103
115
120
115
120
110
110
110
130
125
122
127
127
134
139
144
134
134
134
134
134
134
144
139
139
151
151
151
136
136
156
156
153
163
158
153
153
153
163
163
163
190
165
175
170
170
190
187
197
197
187
182
177
177
209
194
189
189
204
216
211
211
211
191
191
218
203
203
203
203
223
225
215
215
240
215
237
232
242
242
247
227
227
244
259
239
261
246
246
246
266
266
271
271
271
241
241
253
253
253
283
258
258
258
258
258
258
258
258
263
263
253
253
253
253
260
260
260
295
275
275
265
265
307
302
292
292
267
272
302
287
287
307
297
297
297
297
317
297
314
326
301
328
333
313
308
340
320
320
320
340
340
340
367
352
327
327
352
352
352
352
332
332
332
354
339
339
364
364
344
344
344
344
344
344
344
344
386
351
351
386
376
398
393
363
420
405
375
395
395
395
395
405
417
377
377
432
407
407
444
429
444
414
414
424
401
431
468
413
413
443
408
408
408
425
425
475
420
420
420
420
420
420
420
420
420
420
420
420
447
447
437
479
469
469
471
491
481
481
493
503
515
465
510
477
552
517
517
524
529
529
529
566
541
543
558
558
558
558
578
548
580
572
572
567
579
579
614
614
611
611
591
601
601
601
601
589
561
561
561
561
598
633
633
601
638
568
568
568
580
580
580
580
649
686
668
620
620
620
680
685
700
700
632
632
632
632
632
632
632
632
722
687
682
712
692
692
692
692
692
699
711
711
711
723
723
723
723
718
748
735
735
735
735
730
763
798
798
808
820
837
829
809
828
828
860
840
887
852
852
852
852
852
869
869
909
876
916
873
888
940
895
895
895
895
895
895
895
952
892
932
932
970
995
1016
971
1023
998
978
1043
1010
1040
1040
1042
1079
1036
1036
1048
1048
1122
1146
1158
1165
1165
1170
1182
1141
1160
1220
1167
1179
1179
1179
1214
1211
1203
1218
1222
1257
1257
1316
1276
1276
1323
1253
1352
1359
1359
1319
1319
1319
1319
1371
1316
1333
1402
1402
1364
1364
1412
1376
1376
1370
1407
1407
1407
1407
1382
1382
1397
1474
1486
1421
1505
1544
1553
1584
1596
1618
1656
1699
1699
1802
1840
1814
1814
1925
1889
1913
2056
2083
2129
2195
2251
2263
2277
2286
2298
2368
2380
2469
2468
2499
2499
2531
2531
2562
2612
2612
2775
2787
2806
2891
2945
3036
3061
3048
3140
3152
3242
3304
3370
3432
4500
4550
4762
4800
13
13
8
20
20
25
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
39
39
39
34
34
34
34
44
34
34
34
39
34
34
34
34
34
34
39
34
34
34
39
34
34
39
34
34
34
39
34
34
39
34
34
34
39
34
34
34
34
39
34
39
34
34
34
34
34
39
34
34
34
39
34
34
34
39
34
34
34
34
39
34
34
34
34
34
34
39
34
34
34
34
34
46
46
41
41
46
46
41
46
41
41
41
46
41
41
41
46
46
41
41
46
41
46
51
41
46
46
41
41
51
46
46
41
46
41
46
46
41
41
41
46
46
41
58
48
48
58
53
53
58
53
53
58
58
58
58
53
58
53
53
53
53
58
58
58
58
58
53
53
53
58
58
58
58
58
53
53
58
58
53
48
58
58
53
53
58
58
58
53
53
53
58
58
58
58
53
53
58
58
58
58
65
65
65
65
60
60
65
65
65
65
65
65
65
65
65
65
60
65
60
65
65
65
65
60
65
65
60
65
65
65
65
65
65
65
65
65
65
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
72
77
67
67
67
67
67
67
72
72
72
67
67
67
67
67
67
72
72
72
72
72
72
72
72
94
79
79
84
89
79
94
79
79
79
79
79
89
106
101
101
96
91
106
91
91
91
91
118
98
98
118
108
120
110
130
125
125
115
115
115
115
115
115
127
132
122
122
137
144
144
134
139
134
151
151
151
136
136
146
141
151
141
141
141
141
141
141
156
151
146
158
158
163
163
163
148
148
168
168
170
170
175
175
170
170
202
187
182
202
172
194
194
209
199
194
194
184
184
184
184
204
221
201
196
196
223
223
223
223
230
220
240
235
210
237
222
222
249
244
254
254
259
234
234
234
234
246
256
271
246
246
273
253
278
278
283
278
278
290
290
260
260
295
265
265
265
265
265
265
272
272
272
302
319
314
304
304
279
279
314
294
294
319
309
309
309
309
294
329
309
326
338
308
308
340
345
320
320
320
320
320
320
320
332
332
352
352
332
359
354
379
364
364
364
364
366
386
376
376
351
351
351
351
351
351
358
358
388
410
405
405
432
417
407
407
407
407
429
444
419
419
424
456
441
406
456
426
426
436
418
443
408
480
440
440
425
455
452
447
432
437
487
427
427
427
427
427
427
427
427
427
459
444
486
491
481
481
493
478
503
493
493
470
470
465
510
512
512
527
482
482
477
519
564
529
529
531
531
536
541
541
541
538
578
548
555
570
570
570
570
590
560
592
572
584
579
591
591
626
626
618
618
613
613
613
613
603
596
568
610
640
640
650
587
587
587
587
587
587
661
698
620
680
697
692
712
712
639
639
639
639
639
639
699
734
724
704
704
704
704
689
694
723
723
718
723
735
735
735
730
760
747
747
747
747
770
810
820
782
782
832
849
821
828
840
872
852
899
864
864
864
864
864
881
881
921
873
888
928
900
952
892
907
907
907
907
907
907
902
964
904
944
982
1007
1028
978
1035
1010
1055
1022
1052
1054
1091
1048
1060
1134
1158
1170
1172
1172
1182
1194
1141
1160
1232
1179
1184
1179
1191
1191
1226
1218
1210
1234
1269
1269
1328
1288
1288
1335
1290
1364
1309
1366
1366
1331
1331
1331
1331
1383
1345
1414
1376
1376
1424
1388
1388
1397
1419
1419
1419
1419
1389
1389
1486
1421
1498
1433
1517
1556
1565
1596
1608
1630
1668
1706
1706
1814
1852
1821
1821
1937
1889
1913
1925
2068
2095
2141
2207
2263
2275
2289
2298
2310
2380
2392
2481
2480
2506
2506
2538
2538
2574
2624
2787
2799
2818
2903
2957
3048
3073
3060
3152
3164
3254
3316
3382
3444
4512
4562
4774
4812
1
1
1
1
1
1
1
1
1
13
13
13
13
13
13
13
20
25
15
27
27
27
27
27
27
27
32
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
39
34
34
34
34
34
34
34
34
34
34
34
34
46
41
41
41
51
46
41
41
41
46
41
46
51
41
41
41
46
41
46
41
46
51
41
41
46
46
51
46
41
41
41
46
41
41
46
41
46
58
48
48
53
53
53
48
48
53
48
48
48
53
48
48
48
53
58
48
48
53
53
58
58
53
53
53
48
53
53
58
58
53
53
58
53
53
48
48
53
48
48
48
53
53
48
48
65
65
65
65
60
65
65
65
65
65
65
65
65
60
60
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
60
65
65
65
65
65
65
65
65
65
77
77
72
72
72
72
72
72
72
72
82
72
72
72
72
72
72
72
67
72
72
67
77
72
72
72
67
67
72
72
72
72
72
72
72
72
72
72
79
84
84
84
89
89
79
79
79
79
79
79
84
84
84
84
84
91
91
96
101
91
96
118
108
118
108
113
98
98
118
125
125
115
132
122
137
127
127
127
127
127
127
137
134
144
144
144
144
144
144
149
146
141
141
151
151
141
141
141
151
146
146
141
146
146
141
163
163
148
148
153
168
175
175
175
160
160
190
175
180
165
165
197
187
177
177
172
187
182
177
177
214
199
194
194
199
189
189
214
206
221
211
206
233
213
208
203
203
235
235
220
215
235
215
215
210
242
237
227
242
244
249
261
256
266
266
271
241
263
283
278
253
253
285
280
280
260
270
270
265
270
270
265
290
290
290
290
295
290
265
267
297
297
284
279
279
314
331
316
316
291
321
331
321
321
321
321
301
341
321
326
338
350
345
345
330
357
327
332
332
339
344
339
364
364
366
366
391
376
376
376
381
376
356
356
351
356
356
351
373
388
388
410
400
422
417
407
444
424
419
419
419
419
441
456
431
431
406
436
468
453
413
443
468
438
438
443
425
455
492
432
467
432
432
427
432
432
427
432
432
427
459
459
444
499
471
451
498
498
463
503
493
493
508
505
515
505
505
477
477
477
477
527
539
489
489
489
489
576
541
541
543
543
548
553
553
550
590
560
567
582
582
582
582
602
567
547
604
589
596
591
596
596
603
598
638
638
630
625
625
625
625
615
622
652
662
592
592
587
592
592
587
637
656
618
673
710
692
644
644
639
644
644
639
704
709
724
724
701
746
736
716
716
716
716
735
735
730
730
747
747
747
737
772
744
744
759
759
759
759
822
832
789
789
789
789
844
861
833
852
884
859
911
876
876
876
876
876
893
893
933
900
895
940
912
964
904
919
919
919
919
919
919
976
911
956
946
994
1019
976
1040
1047
1022
1067
1017
1034
1064
1066
1103
1060
1072
1072
1072
1064
1064
1079
1146
1170
1182
1184
1194
1206
1244
1191
1191
1198
1198
1238
1227
1246
1281
1281
1340
1300
1300
1347
1297
1301
1376
1316
1378
1343
1343
1343
1343
1395
1357
1426
1388
1388
1436
1400
1400
1397
1389
1389
1431
1431
1431
1431
1401
1421
1498
1433
1510
1440
1529
1568
1608
1620
1642
1680
1718
1826
1864
1821
1821
1833
1949
1889
1913
1925
1932
2080
2107
2153
2219
2275
2287
2301
2310
2322
2392
2404
2493
2492
2518
2550
2586
2636
2799
2811
2830
2915
2885
2969
3060
3085
3072
3164
3176
3266
3328
3394
3456
4524
4574
4786
4824
1
13
13
13
13
13
13
13
13
13
25
25
25
25
25
25
25
27
27
32
27
27
27
27
27
27
27
27
27
27
34
34
34
39
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
41
46
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
53
48
48
63
53
53
53
53
58
53
53
53
53
53
58
48
48
53
53
53
58
58
53
53
53
53
53
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
60
65
65
65
82
72
82
77
72
72
77
72
72
72
72
77
72
77
72
72
72
72
67
67
67
67
72
77
72
77
72
72
77
72
84
84
84
79
84
84
89
89
84
84
84
89
89
79
79
79
79
84
89
84
89
79
84
101
96
96
91
101
91
91
86
86
86
86
91
91
108
108
118
108
103
108
118
103
125
120
125
125
115
115
115
115
122
134
144
134
139
139
149
149
134
134
134
134
146
156
151
151
151
151
161
151
151
153
153
163
153
153
148
148
153
153
153
153
158
175
180
180
160
160
175
187
182
187
167
167
187
197
192
177
194
194
189
184
184
199
194
189
226
206
206
206
206
201
226
226
196
213
233
218
218
208
203
208
208
203
245
220
215
215
247
247
227
227
242
222
222
249
244
264
239
251
251
251
251
261
246
246
241
273
253
253
253
253
273
263
278
278
283
278
258
258
253
258
258
253
265
260
260
260
260
260
290
270
270
265
290
297
287
287
272
272
267
277
277
277
277
302
302
297
297
307
302
297
297
279
309
321
291
306
326
331
343
328
328
298
343
328
328
328
328
353
333
338
345
350
362
332
332
327
352
362
352
337
337
337
337
369
344
344
339
339
339
364
364
351
376
376
381
373
403
388
388
388
388
388
363
363
363
363
385
400
400
417
417
382
382
412
434
424
414
456
426
426
426
426
426
426
453
468
413
438
438
413
413
413
413
443
480
465
425
450
480
450
450
425
432
462
462
467
504
444
444
479
439
439
439
439
439
439
439
466
491
456
511
478
458
508
505
505
470
515
500
500
515
515
512
477
477
527
527
512
512
489
489
489
489
534
551
501
501
588
548
548
555
555
560
560
560
562
602
567
579
594
594
594
594
614
589
554
554
616
596
608
598
608
608
603
603
573
573
618
615
650
650
642
632
632
632
632
627
652
634
664
674
599
599
599
599
644
663
663
693
625
625
625
625
685
722
682
704
689
701
651
651
651
651
716
721
736
736
708
758
748
728
728
728
728
742
742
737
737
759
754
754
784
751
751
766
766
766
766
789
789
834
844
801
801
856
873
845
859
896
923
888
888
888
888
888
905
905
945
912
952
902
924
976
911
926
926
926
926
926
926
988
968
953
972
1006
1031
983
983
998
1052
1017
1059
1034
1079
1024
1046
1076
1046
1078
1115
1072
1057
1084
1079
1079
1071
1071
1086
1158
1098
1098
1182
1194
1196
1206
1218
1256
1198
1198
1250
1234
1293
1293
1253
1282
1352
1312
1312
1359
1301
1308
1388
1390
1350
1350
1350
1350
1407
1369
1438
1400
1400
1412
1412
1389
1389
1401
1438
1438
1438
1438
1408
1433
1510
1440
1522
1541
1580
1620
1632
1654
1692
1730
1838
1876
1821
1821
1833
1840
1961
1925
1932
2092
2119
2165
2231
2287
2299
2313
2322
2334
2404
2416
2505
2504
2530
2562
2598
2648
2811
2823
2842
2927
2916
2981
3072
3097
3084
3176
3188
3278
3340
3406
3468
4536
4586
4798
4836
1
1
1
1
1
1
1
1
1
1
1
1
13
8
13
13
13
13
13
13
13
13
20
20
20
20
20
20
20
20
20
20
27
27
27
27
27
32
27
27
27
27
32
27
32
27
27
27
32
27
27
27
27
27
27
27
27
27
32
27
32
27
27
27
32
27
27
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
41
46
46
41
41
41
46
41
46
41
41
41
41
41
41
41
41
46
41
41
53
53
53
53
48
48
48
48
48
48
48
48
48
48
53
48
53
48
53
48
53
48
48
48
48
53
48
48
53
48
48
48
48
53
48
48
48
48
48
48
48
48
48
48
48
48
53
75
60
60
65
60
65
60
60
60
65
65
65
65
60
60
65
65
72
72
77
72
77
72
72
72
67
67
67
67
84
84
89
84
84
79
79
79
79
79
79
89
91
96
101
91
91
103
103
113
103
98
103
98
108
103
120
125
115
115
115
115
115
125
115
115
115
137
132
127
127
127
122
122
122
127
134
146
156
146
161
161
151
146
151
146
151
151
151
151
153
168
148
148
153
153
153
153
163
173
163
165
165
160
160
160
165
165
165
165
165
165
165
165
182
187
187
187
187
187
167
167
167
167
187
182
197
177
177
177
177
177
199
199
179
179
194
204
184
206
206
201
201
211
206
196
238
213
213
218
208
238
233
203
203
245
230
230
215
215
215
215
215
215
257
227
227
227
227
259
244
259
239
271
251
263
263
258
258
258
263
278
253
253
280
260
260
260
280
275
290
290
290
265
265
265
265
287
287
272
267
272
272
277
277
277
277
272
297
297
277
277
297
297
309
299
284
279
289
289
279
314
314
309
319
314
309
291
316
313
333
355
340
340
355
340
340
320
320
365
345
340
350
352
362
374
339
339
369
349
349
349
344
344
344
381
351
351
351
371
371
371
371
376
363
363
363
388
388
388
363
363
363
363
363
415
400
400
400
400
405
375
375
392
417
412
417
412
412
424
389
389
424
446
468
438
438
433
433
433
433
465
455
480
450
425
425
425
420
420
420
492
477
492
462
462
437
444
469
469
469
469
479
439
439
439
439
439
439
439
439
501
451
456
491
451
451
451
451
511
498
478
463
523
505
505
515
515
510
515
517
522
527
512
522
489
534
539
524
501
496
496
563
508
508
600
560
567
567
572
572
574
614
606
606
606
606
591
626
596
628
603
603
620
615
615
615
615
615
585
585
580
580
580
625
627
662
662
652
654
644
644
639
664
599
599
599
599
646
676
686
611
611
663
658
663
693
670
705
637
637
632
632
632
697
734
689
699
696
651
651
651
651
716
708
663
663
728
733
748
748
770
760
740
740
740
740
754
744
771
766
796
751
751
763
778
778
801
846
856
808
808
868
885
857
908
873
935
900
900
900
900
900
917
917
957
924
964
936
988
938
938
938
953
1000
980
972
967
979
1018
983
978
983
1043
990
1005
1012
1064
1024
1071
1046
1091
1058
1088
1053
1090
1127
1084
1064
1079
1079
1096
1071
1071
1091
1083
1170
1105
1105
1105
1105
1194
1206
1208
1218
1230
1268
1262
1234
1253
1305
1305
1265
1297
1289
1364
1324
1324
1371
1296
1308
1400
1402
1362
1362
1419
1381
1450
1412
1412
1424
1424
1401
1408
1450
1450
1440
1522
1534
1553
1592
1632
1644
1666
1704
1742
1850
1888
1833
1840
1973
1932
2104
2131
2177
2243
2299
2311
2325
2334
2346
2416
2428
2517
2516
2542
2574
2610
2660
2823
2830
2854
2939
2993
3084
3109
3096
3188
3200
3290
3352
3418
3475
4490
4548
4598
4728
4810
4843
13
8
8
8
8
8
13
8
8
13
20
15
20
20
20
20
25
20
20
20
20
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
39
34
34
34
34
39
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
39
34
34
34
34
39
34
34
34
34
34
34
39
34
34
34
34
46
41
51
41
41
41
41
41
41
41
41
41
46
41
41
41
41
41
41
41
41
58
58
53
53
53
53
53
53
53
53
53
53
48
48
53
53
53
53
58
60
65
60
65
60
60
60
60
60
65
60
72
87
77
77
82
77
77
77
72
67
67
67
67
67
77
72
72
84
89
89
84
79
79
79
79
79
84
84
79
79
84
79
79
96
96
91
91
96
96
91
91
86
86
91
91
91
91
91
103
103
103
103
103
108
113
98
98
103
103
125
115
115
115
115
115
125
115
110
115
110
115
115
110
132
127
127
127
122
127
122
149
144
134
134
134
134
146
151
151
151
151
153
168
148
148
148
153
153
153
153
153
153
173
173
163
158
163
158
163
158
163
160
180
165
165
170
185
170
165
170
182
172
172
187
187
172
167
167
182
172
172
177
177
177
199
199
199
179
179
194
189
189
189
189
184
189
189
189
211
211
186
186
211
213
208
213
223
218
250
230
250
215
215
215
215
215
215
215
215
215
257
242
242
227
227
227
227
227
227
227
227
227
227
222
269
244
239
239
239
239
271
271
271
251
251
253
263
263
258
263
278
258
253
253
253
253
278
265
270
270
275
265
265
265
265
265
265
265
265
265
265
287
287
272
277
277
277
277
277
277
282
302
302
297
297
277
277
277
277
277
277
297
299
279
279
289
289
279
309
289
319
309
321
306
286
296
296
291
326
326
316
331
326
316
298
313
313
333
325
340
340
367
352
352
367
352
352
332
377
357
352
362
339
339
339
339
369
374
349
344
386
351
351
351
351
351
371
371
376
361
356
356
393
363
363
383
383
363
363
363
363
363
363
370
370
375
400
400
405
375
375
375
427
412
412
412
412
412
417
382
382
424
424
424
424
436
458
413
433
433
480
425
450
450
445
445
425
420
477
492
462
437
432
432
504
489
469
469
504
474
474
439
439
439
439
439
439
439
439
444
486
451
481
481
491
451
451
451
451
463
503
463
458
458
458
523
505
505
515
535
510
517
532
522
522
524
539
524
496
551
536
508
575
612
572
579
579
584
584
586
626
566
566
618
618
618
618
603
638
603
603
640
615
615
615
580
632
627
627
622
592
592
639
674
674
599
599
599
599
599
666
656
656
651
676
611
611
658
688
658
698
618
618
670
637
637
632
717
689
644
644
699
709
746
696
651
651
651
651
651
711
663
663
728
718
670
670
740
740
760
760
735
782
772
752
752
752
752
766
751
751
778
778
808
763
770
790
790
808
858
868
880
897
869
873
920
885
892
947
912
912
912
912
912
929
929
969
936
976
948
1000
950
950
950
1012
992
967
979
978
1030
990
1055
1005
1012
1076
1083
1058
1103
1070
1100
1102
1139
1079
1079
1096
1071
1071
1091
1108
1083
1098
1090
1105
1105
1182
1117
1117
1206
1218
1220
1230
1242
1179
1280
1274
1234
1253
1265
1317
1317
1272
1289
1296
1376
1336
1336
1383
1412
1414
1374
1374
1431
1393
1462
1424
1424
1436
1436
1408
1462
1462
1534
1546
1565
1604
1644
1656
1678
1716
1754
1862
1900
1840
1985
2116
2143
2189
2255
2311
2323
2337
2346
2358
2428
2440
2529
2528
2554
2586
2622
2672
2835
2861
2951
3005
3096
3121
3108
3200
3212
3302
3359
3430
3487
4490
4502
4560
4605
4740
4740
4822
4855
1
1
1
1
1
1
13
20
15
15
15
15
15
20
15
15
20
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
32
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
51
46
46
46
41
46
41
46
46
46
46
46
41
46
46
46
51
53
48
63
58
48
48
48
58
53
53
53
48
65
65
65
65
60
60
60
65
72
72
77
72
72
67
67
72
72
99
84
84
94
89
89
79
79
79
79
79
84
79
96
91
96
101
91
91
91
96
96
86
86
96
91
108
103
108
113
108
98
98
113
103
103
130
115
115
115
115
130
120
120
115
115
127
127
122
127
132
132
127
122
127
122
127
132
134
134
134
134
134
134
134
156
156
146
151
148
153
153
153
153
163
163
180
165
165
165
165
180
185
185
175
170
175
170
170
165
170
172
172
187
167
172
172
172
197
177
177
184
199
179
179
184
189
184
184
211
206
206
186
186
201
196
196
196
196
201
196
196
223
223
208
215
220
235
230
262
242
262
227
227
227
227
247
222
269
254
254
249
239
239
239
234
234
234
234
234
281
246
246
246
246
283
263
263
283
263
283
258
253
275
270
270
270
270
275
270
265
265
265
265
277
277
282
272
282
277
277
277
277
277
277
272
299
284
289
289
289
289
284
309
309
309
289
289
284
284
309
306
326
296
296
296
291
316
296
316
333
298
338
338
343
338
320
340
332
352
352
379
359
359
379
364
364
339
339
389
369
364
374
351
351
351
386
356
361
356
356
356
398
363
363
358
383
363
363
368
368
400
370
375
390
390
375
375
375
382
407
407
417
387
382
382
439
424
429
424
424
424
424
436
436
436
413
448
470
425
425
445
492
432
437
462
462
452
452
432
432
432
432
432
489
504
444
474
439
439
439
444
444
501
481
516
481
481
451
451
451
451
456
511
488
488
503
458
463
458
458
515
470
535
517
547
524
489
551
536
563
548
587
572
624
584
591
591
596
596
598
603
638
578
573
573
630
630
625
625
615
650
615
652
627
622
592
592
644
634
634
599
599
604
651
686
686
611
611
611
678
668
668
663
688
618
618
670
700
710
719
649
644
644
644
644
729
651
651
656
711
721
758
663
663
663
718
670
670
740
730
735
752
772
772
794
784
764
764
759
759
778
763
790
790
820
770
802
802
870
880
892
909
864
881
885
932
892
907
904
959
924
924
924
919
919
941
941
981
948
988
960
1012
962
962
962
1024
1004
1042
1067
1088
1095
1070
1115
1082
1112
1114
1151
1091
1103
1083
1098
1115
1090
1117
1194
1124
1124
1141
1218
1230
1232
1242
1254
1191
1271
1203
1292
1286
1338
1253
1265
1272
1329
1329
1388
1343
1343
1395
1424
1426
1386
1386
1443
1405
1397
1474
1431
1431
1448
1448
1474
1474
1546
1558
1577
1616
1656
1668
1690
1728
1766
1874
1907
1889
1997
2128
2155
2201
2267
2323
2335
2349
2358
2370
2440
2452
2541
2540
2566
2598
2634
2684
2847
2963
3017
3108
3133
3120
3212
3224
3314
3437
3499
4514
4572
4752
4829
4867
1
1
1
1
1
13
13
8
8
13
20
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
46
41
41
41
41
41
46
53
58
53
53
53
53
53
53
58
53
53
53
53
48
53
53
53
53
53
58
60
60
65
65
65
60
60
65
60
65
60
72
77
72
67
67
67
77
84
84
84
89
94
79
79
79
79
84
79
111
91
96
101
101
101
91
91
86
86
96
101
108
103
103
113
113
103
98
98
108
108
108
103
130
120
115
115
120
115
130
120
110
110
137
127
122
122
127
137
132
122
122
127
134
134
134
134
134
134
144
139
134
139
134
134
134
146
146
158
168
148
153
153
153
153
170
165
165
180
170
170
170
170
165
170
172
172
192
187
182
167
172
177
172
172
187
197
197
187
182
187
182
177
177
184
199
189
189
204
191
206
186
186
196
196
196
196
196
216
216
201
223
208
208
208
213
235
235
215
215
227
247
242
247
274
254
274
234
234
234
234
254
234
234
234
234
234
281
266
256
266
246
246
251
246
293
258
278
278
283
253
253
295
275
270
270
280
295
270
290
265
265
265
277
277
282
282
282
282
277
277
277
272
272
297
297
289
289
309
294
294
324
324
289
284
284
289
284
284
306
326
301
296
296
296
301
296
291
321
316
296
296
321
333
328
303
303
345
350
350
355
350
342
339
339
364
391
371
386
391
376
376
351
351
401
381
371
376
386
356
356
398
363
358
358
398
363
363
368
368
410
370
370
390
375
375
380
382
382
382
387
382
439
429
394
419
394
451
451
431
436
436
436
436
436
448
433
418
448
443
425
460
482
432
437
452
437
432
432
504
444
444
474
474
469
439
439
444
501
516
456
486
451
451
451
456
513
488
528
493
463
458
458
458
515
470
477
527
482
547
524
489
489
559
501
563
548
575
560
572
599
579
559
636
596
618
618
603
603
608
603
608
578
610
610
640
640
615
650
585
642
642
637
627
662
622
592
592
664
634
599
599
604
656
686
686
611
611
663
698
698
623
618
618
690
680
680
675
630
700
682
712
722
649
644
644
694
694
731
651
651
656
656
741
663
663
733
770
675
670
670
730
757
752
737
764
784
784
806
796
776
776
771
798
798
790
770
802
802
832
789
814
814
882
892
904
864
921
871
933
893
932
932
907
944
904
914
911
971
971
936
936
936
931
993
960
985
985
1000
972
1024
974
974
974
1036
1016
1040
1040
1054
1079
1100
1107
1077
1127
1089
1124
1126
1163
1156
1098
1115
1090
1105
1172
1172
1127
1124
1206
1189
1230
1242
1244
1254
1266
1203
1203
1283
1210
1304
1321
1298
1350
1272
1366
1366
1341
1341
1388
1400
1355
1407
1402
1402
1412
1412
1436
1443
1443
1438
1398
1398
1455
1417
1397
1389
1409
1486
1421
1443
1460
1460
1510
1510
1486
1486
1558
1570
1589
1668
1680
1702
1706
1706
1740
1764
1764
1778
1816
1816
1857
1857
1881
1821
1919
1889
1901
1913
2009
2140
2167
2213
2279
2335
2347
2361
2370
2382
2452
2464
2506
2506
2553
2538
2538
2552
2552
2552
2584
2584
2578
2610
2612
2612
2646
2696
2720
2758
2859
2975
3029
3120
3145
3132
3224
3236
3268
3268
3321
3360
3384
3511
4526
4579
4764
4879
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
13
8
13
8
20
20
15
20
27
27
27
27
27
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
39
34
34
34
41
41
46
51
46
53
53
53
48
53
53
53
53
53
48
48
53
53
53
48
53
53
53
48
53
53
65
65
70
65
65
70
65
65
65
70
60
65
65
60
65
65
60
65
60
65
65
70
72
72
77
72
72
72
72
72
72
72
72
72
72
67
72
72
72
77
72
72
67
67
67
72
72
72
72
72
72
84
84
79
79
79
79
94
84
96
96
101
101
91
91
96
91
123
103
103
103
113
113
113
113
108
113
113
113
103
113
108
98
103
113
113
120
125
115
115
120
110
120
115
115
125
125
120
137
127
127
137
127
127
137
132
134
134
134
144
151
146
156
151
146
146
146
146
151
151
148
153
153
153
165
180
165
165
180
165
172
187
167
172
177
187
177
182
184
204
199
194
189
184
209
194
194
204
194
194
189
191
211
201
196
201
208
208
208
228
213
223
235
215
215
215
225
247
247
227
244
239
254
254
254
234
269
286
266
286
251
246
246
246
293
278
263
273
263
258
253
253
300
270
270
290
290
265
265
265
307
287
277
277
282
282
277
307
297
282
277
277
277
289
289
294
309
279
289
289
289
309
301
336
301
296
333
308
308
303
308
308
333
333
340
315
310
357
357
357
362
362
339
339
339
349
351
351
351
371
376
356
403
383
373
403
388
388
363
413
393
383
388
398
363
368
410
375
375
410
375
375
380
422
382
387
394
394
394
436
401
431
406
463
463
448
448
433
448
443
460
445
425
460
472
432
489
464
444
469
439
444
444
516
456
456
451
486
486
481
451
513
523
463
498
463
463
520
505
540
505
475
477
477
527
482
489
489
539
489
559
501
571
513
575
560
587
572
579
611
566
648
608
606
603
630
615
615
620
610
615
620
585
622
652
627
662
592
597
649
649
649
639
669
599
599
604
671
611
611
668
668
668
698
623
675
705
710
630
702
692
692
682
637
712
689
644
724
734
694
651
651
656
656
663
663
668
753
675
745
782
682
737
769
764
776
796
751
791
818
803
783
783
783
810
802
789
789
814
814
844
801
826
826
889
904
911
871
933
905
944
914
956
911
983
983
943
943
943
943
1005
972
997
1012
984
1036
986
986
986
1043
1023
1052
1066
1091
1112
1119
1139
1079
1071
1131
1133
1175
1105
1127
1117
1184
1139
1213
1201
1242
1249
1179
1256
1266
1273
1210
1210
1234
1316
1258
1333
1310
1321
1316
1378
1348
1348
1400
1407
1367
1419
1414
1424
1448
1455
1450
1410
1410
1467
1429
1389
1389
1409
1401
1421
1493
1433
1455
1467
1467
1522
1498
1498
1570
1577
1601
1680
1687
1714
1718
1747
1776
1790
1828
1802
1869
1821
1821
1833
1894
1931
1901
1913
1925
2021
2152
2179
2225
2291
2347
2354
2373
2382
2389
2464
2471
2518
2550
2560
2564
2559
2596
2590
2622
2624
2658
2703
2770
2871
2987
3041
3132
3157
3139
3231
3248
3280
3396
3523
4538
4776
4891
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
13
13
13
13
13
13
13
13
13
13
8
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
8
20
20
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
46
46
46
46
46
41
46
46
46
46
46
41
46
46
51
41
46
46
41
53
53
48
48
53
53
53
53
53
48
53
63
53
53
53
53
53
53
65
70
65
65
65
65
60
60
65
65
60
65
65
72
82
77
72
72
72
77
72
72
72
72
72
72
72
72
82
72
72
72
72
67
72
67
72
72
72
72
72
72
72
77
79
79
89
89
79
79
84
79
79
84
79
84
89
96
101
101
96
91
91
86
86
86
86
106
91
108
113
103
103
108
113
113
113
103
108
98
113
113
113
113
135
115
115
120
120
120
110
120
115
115
110
125
115
127
122
137
132
132
122
137
127
127
127
132
139
139
139
139
134
134
144
134
134
134
134
156
146
151
146
156
151
151
161
158
153
153
153
168
168
163
158
153
158
153
165
202
172
182
187
192
187
167
172
177
199
199
184
194
184
194
191
216
206
211
206
201
196
201
216
216
206
201
206
201
201
218
223
213
213
228
220
215
215
240
225
242
232
254
254
244
239
239
246
266
261
298
273
268
263
298
263
258
253
253
258
300
285
270
285
270
265
287
287
312
277
282
297
297
277
302
277
277
297
319
299
289
289
294
289
319
309
309
309
289
284
301
301
301
301
321
308
328
328
328
328
313
348
308
308
320
320
315
315
345
345
352
327
322
337
369
359
359
369
369
339
339
374
369
366
351
371
356
363
363
388
368
415
395
385
375
415
395
395
375
425
405
395
400
405
375
422
387
382
382
407
407
417
387
434
394
394
399
406
401
426
426
426
426
406
438
438
443
433
413
475
470
455
455
455
467
457
432
467
469
484
439
444
501
476
456
451
481
481
451
451
456
483
478
523
468
463
468
493
493
493
520
505
505
475
535
505
500
500
475
470
532
517
477
552
512
512
517
482
524
489
534
489
501
546
501
571
513
583
548
548
520
560
560
582
567
594
579
623
603
603
625
625
615
660
615
615
613
642
632
632
632
632
627
627
632
627
592
597
634
664
639
669
599
604
661
661
661
649
651
681
611
611
683
623
680
680
675
710
630
682
717
722
642
709
699
699
694
644
724
689
701
651
656
731
741
718
718
663
663
668
723
723
675
765
682
742
742
757
794
694
754
754
759
759
781
771
751
751
766
766
766
766
773
773
783
803
763
803
785
785
830
815
795
795
795
822
789
809
801
821
826
851
813
833
833
901
911
923
945
917
919
919
956
926
926
926
926
926
926
968
995
990
955
955
955
955
1017
984
1009
1024
996
1043
993
993
993
1055
1035
1064
1036
1036
1078
1048
1048
1098
1124
1079
1079
1126
1071
1071
1151
1091
1083
1143
1145
1105
1187
1139
1129
1196
1151
1141
1225
1213
1249
1261
1191
1263
1273
1223
1285
1234
1328
1253
1270
1345
1322
1302
1343
1343
1333
1390
1350
1350
1350
1350
1360
1360
1412
1419
1379
1431
1426
1436
1455
1467
1457
1417
1417
1407
1389
1479
1441
1431
1431
1401
1438
1438
1438
1438
1413
1433
1505
1440
1467
1479
1479
1534
1505
1505
1577
1589
1613
1687
1699
1726
1730
1759
1788
1797
1840
1881
1821
1833
1845
1899
1943
1925
1932
2033
2164
2191
2237
2303
2354
2366
2385
2389
2401
2471
2483
2530
2562
2572
2576
2571
2608
2597
2629
2636
2665
2715
2782
2883
2999
3053
3139
3169
3151
3243
3255
3292
3408
3535
4550
4788
4903
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
13
8
8
13
8
13
8
13
8
13
8
13
8
13
8
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
46
41
41
41
41
41
41
46
41
41
41
41
41
46
41
46
41
41
41
41
41
46
41
41
41
41
41
41
41
41
46
41
41
41
41
46
41
48
48
53
48
48
53
48
48
53
48
48
53
58
48
53
48
53
58
48
48
48
53
53
48
48
58
48
53
48
48
48
53
63
48
53
48
53
58
60
65
70
60
60
60
65
75
70
60
60
60
70
72
72
72
82
72
72
72
72
94
94
89
84
84
79
79
89
84
94
89
94
89
91
96
106
91
91
91
96
108
113
103
108
103
113
98
98
103
108
113
120
115
130
125
115
115
110
115
125
147
127
122
127
122
132
127
117
134
134
134
134
134
144
144
129
139
139
144
151
156
151
146
151
146
156
146
146
151
151
158
153
153
158
173
163
163
170
180
175
170
170
165
165
172
172
187
167
167
177
182
177
177
194
209
199
204
199
194
189
189
199
199
194
189
209
196
196
196
196
206
206
206
218
218
213
228
218
218
218
213
238
233
203
208
228
218
218
213
230
235
220
220
240
220
220
227
252
237
232
234
234
244
281
246
251
246
251
246
268
263
258
258
278
310
285
280
285
270
270
310
295
295
290
270
265
287
297
297
297
297
297
299
324
294
284
309
289
314
289
289
284
331
311
301
296
301
321
321
326
296
296
296
296
313
313
313
308
308
338
338
333
320
340
340
325
360
320
320
327
327
332
357
357
352
357
357
352
352
354
364
334
334
344
354
371
376
371
386
356
356
363
383
393
393
388
375
370
370
400
380
427
407
397
387
427
407
407
387
382
437
417
402
412
434
429
429
424
394
394
419
419
414
399
446
401
406
401
401
406
438
438
433
413
450
455
455
450
445
430
425
487
472
472
467
432
432
467
459
469
464
479
481
496
456
513
503
498
483
488
463
468
468
493
463
505
505
495
480
505
505
500
475
517
482
547
517
512
482
482
527
527
522
544
529
539
539
534
564
524
529
501
501
508
508
546
546
513
583
525
520
595
560
532
572
582
579
601
596
591
601
596
571
601
603
630
615
615
637
637
627
672
627
642
627
592
592
654
644
644
649
639
639
644
639
646
676
646
616
673
658
656
693
623
675
675
670
635
642
722
642
644
644
704
734
649
721
711
711
706
736
713
713
713
708
668
743
730
730
675
735
687
777
694
754
749
744
764
806
701
766
751
771
793
763
778
778
775
770
785
775
815
797
842
827
802
807
834
811
821
813
833
838
820
845
845
913
935
957
924
931
968
938
938
938
980
1007
967
1029
984
984
979
996
1021
1036
1008
995
995
990
1005
1005
1005
1067
1047
1029
1029
1024
1076
1048
1058
1053
1090
1060
1069
1064
1099
1079
1136
1071
1091
1086
1091
1083
1163
1103
1110
1095
1155
1105
1157
1117
1199
1151
1136
1208
1163
1225
1184
1179
1179
1273
1203
1275
1230
1297
1253
1340
1357
1329
1314
1321
1316
1313
1313
1308
1355
1345
1402
1362
1362
1424
1391
1443
1438
1448
1375
1370
1402
1479
1469
1429
1429
1414
1491
1443
1448
1413
1450
1450
1440
1420
1517
1452
1479
1546
1517
1517
1601
1625
1711
1738
1742
1800
1809
1852
1807
1893
1845
1852
1906
1955
1932
1944
2045
2176
2203
2249
2315
2378
2397
2413
2495
2542
2574
2588
2620
2609
2641
2648
2727
2794
2895
3011
3065
3181
3163
3267
3304
3420
3547
4562
4800
4915
1
1
1
1
1
1
1
13
8
8
8
8
8
8
13
8
8
8
8
8
8
13
8
8
8
8
8
8
8
8
8
8
8
13
13
8
8
8
8
8
8
8
8
8
8
8
8
15
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
39
34
34
34
34
39
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
41
56
41
41
41
41
46
41
41
41
41
41
41
41
41
41
41
41
53
53
53
53
48
48
48
53
53
53
48
48
53
58
53
48
48
53
53
53
53
48
48
48
53
53
53
53
48
48
53
53
53
48
53
48
53
53
53
48
48
48
53
53
53
48
48
53
48
48
53
58
60
60
60
60
60
65
65
60
65
60
65
65
65
65
60
60
60
65
60
65
60
65
60
65
65
60
75
65
72
72
77
77
72
72
67
72
72
77
87
72
72
77
77
67
67
67
67
72
72
72
77
84
84
79
84
79
94
79
79
79
79
89
84
79
84
79
91
91
96
101
96
91
101
96
91
101
91
91
101
96
103
103
108
103
103
103
108
113
113
113
113
103
108
98
103
98
103
113
120
130
115
120
115
115
115
120
110
115
110
110
110
115
115
110
142
142
137
122
127
117
132
132
134
159
134
134
139
134
134
134
129
139
139
129
146
146
146
151
146
156
156
151
151
141
161
161
151
146
156
151
151
163
163
158
163
158
148
148
153
153
153
153
153
168
158
158
165
165
175
175
172
172
177
177
187
187
167
167
202
192
197
197
187
182
182
182
192
192
177
194
184
194
184
189
184
189
189
211
211
211
211
201
201
206
206
196
196
196
213
203
203
208
208
208
218
218
225
225
240
240
240
230
230
230
220
245
215
215
215
215
215
220
240
230
230
225
242
242
227
227
227
227
232
232
247
244
239
264
259
234
234
244
244
276
246
246
256
263
258
258
258
258
258
253
253
258
270
270
275
275
290
290
270
270
270
295
265
265
270
290
265
265
265
322
287
287
292
297
277
277
277
277
282
282
282
322
297
297
302
302
277
277
277
309
309
309
289
309
311
336
301
301
301
291
296
291
321
301
326
301
296
296
343
328
318
338
308
313
308
298
303
308
303
303
308
343
343
333
338
328
308
308
338
308
308
320
310
315
320
320
320
325
320
320
350
345
327
327
327
352
352
332
332
372
332
352
327
354
339
339
339
364
339
339
344
364
374
364
364
364
376
346
341
351
351
371
371
356
356
361
361
383
388
378
398
388
363
363
363
363
368
368
368
370
370
375
395
400
400
422
382
382
382
382
387
412
387
439
414
424
404
439
419
419
394
394
449
434
424
414
424
394
394
446
436
436
441
406
401
431
426
406
458
433
433
448
450
450
425
462
462
462
457
432
432
437
437
437
499
484
484
469
469
439
439
439
439
439
439
444
444
444
444
479
486
486
476
491
503
493
503
463
525
505
505
510
490
495
470
470
520
480
508
505
470
470
475
470
520
475
507
477
477
482
517
517
512
522
487
487
529
489
489
559
534
529
524
489
534
534
556
536
546
546
576
536
536
556
513
508
513
520
520
520
558
525
595
532
532
607
572
582
544
584
584
591
623
608
603
603
603
608
578
578
615
615
615
585
585
608
642
630
627
592
592
649
649
639
684
639
649
649
634
599
599
599
599
604
666
656
656
651
651
651
656
656
651
658
688
658
668
623
680
670
705
670
630
635
630
682
682
642
694
644
644
649
649
734
649
651
651
651
651
656
656
656
746
661
733
723
723
718
708
723
723
748
725
720
720
675
755
742
742
682
687
682
747
742
694
789
701
766
751
751
756
776
818
713
778
783
805
775
790
790
782
797
782
827
789
789
809
854
839
809
809
814
846
833
830
830
820
845
850
832
857
857
876
925
947
969
919
916
936
943
958
980
950
950
950
992
1019
974
979
1041
991
991
988
1008
1033
1048
990
1020
1010
1002
1002
1017
1017
1017
1079
1059
1024
1036
1036
1088
1060
1065
1102
1072
1079
1079
1071
1071
1076
1148
1098
1103
1095
1175
1105
1105
1125
1125
1110
1117
1117
1102
1167
1169
1129
1211
1141
1163
1148
1220
1175
1237
1191
1191
1223
1215
1285
1210
1287
1309
1234
1253
1352
1294
1369
1341
1326
1308
1328
1320
1320
1367
1352
1414
1374
1374
1436
1398
1455
1450
1460
1397
1382
1389
1389
1491
1481
1441
1441
1421
1503
1455
1460
1420
1462
1462
1432
1529
1464
1486
1558
1529
1529
1613
1637
1723
1750
1754
1812
1821
1864
1814
1821
1821
1905
1852
1889
1864
1913
1967
1956
2057
2188
2215
2261
2327
2390
2409
2425
2507
2554
2586
2600
2632
2621
2653
2660
2739
2806
2907
3023
3077
3193
3175
3279
3316
3432
3559
4574
4812
4927
1
1
1
1
13
8
8
13
8
8
8
20
20
20
20
20
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
34
34
34
44
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
41
46
41
46
41
46
53
53
63
53
53
48
53
53
48
48
53
65
65
65
65
65
65
60
60
65
65
65
60
65
65
60
60
65
72
72
77
72
72
72
77
67
87
84
84
84
84
89
84
84
99
89
79
79
79
84
79
96
96
96
101
101
96
91
91
91
101
91
96
91
103
108
113
108
103
98
98
103
108
115
115
115
115
125
125
115
110
110
120
110
110
110
115
142
127
137
132
122
127
127
142
132
122
122
122
122
122
127
149
134
149
149
129
146
171
146
146
146
146
141
151
146
141
153
158
153
153
168
168
163
153
173
163
158
168
163
175
165
175
170
165
165
165
165
180
170
170
185
177
177
192
177
182
184
189
199
179
179
209
184
184
199
189
209
199
194
194
194
204
184
191
196
196
196
196
196
196
218
203
223
218
213
218
208
208
215
215
215
230
215
225
220
237
252
252
242
242
242
232
227
227
227
252
242
242
227
232
232
254
254
239
239
259
234
244
244
246
246
251
246
276
266
246
246
256
256
263
293
283
258
258
253
263
270
270
275
270
270
270
295
265
282
282
282
287
272
272
282
277
302
277
302
277
277
334
299
309
289
289
289
279
334
309
314
289
284
289
321
301
321
321
301
301
296
296
316
318
348
338
308
308
313
303
308
303
328
338
308
313
308
308
308
355
330
345
320
320
320
320
310
315
320
355
345
340
320
320
320
320
345
320
315
327
327
327
327
332
332
332
337
357
352
339
339
339
334
364
364
384
339
339
349
366
351
346
376
351
351
381
376
376
356
356
388
358
353
363
363
383
368
368
368
373
395
385
370
410
375
375
375
382
382
382
382
382
402
412
387
429
394
394
394
399
424
394
394
399
451
426
451
431
431
441
406
406
401
461
426
436
406
406
406
458
448
448
413
443
448
413
470
445
425
455
462
462
432
432
432
437
474
474
464
444
444
444
444
449
511
496
481
451
451
451
451
491
458
463
498
488
463
503
470
475
515
500
470
470
470
475
537
517
507
527
517
482
482
482
482
482
527
487
514
489
529
529
524
489
499
499
536
536
501
571
541
536
501
546
568
548
558
588
548
548
520
558
525
532
532
570
607
537
544
544
619
584
584
594
551
596
591
566
603
573
573
615
615
615
585
585
590
622
627
637
654
634
604
661
661
646
696
651
661
646
611
611
611
678
668
668
663
663
668
663
623
670
700
670
675
630
630
635
692
682
637
717
642
642
642
644
644
694
701
656
656
656
661
746
661
663
663
663
758
673
745
735
735
730
675
735
760
737
732
682
682
687
767
742
754
754
694
694
694
759
749
801
713
778
763
830
725
790
795
817
782
802
802
809
814
794
839
801
821
866
851
821
826
858
845
842
857
862
844
869
869
876
883
937
959
919
981
916
926
923
955
965
992
962
962
962
1004
1031
986
1053
1003
995
1020
1045
1060
1032
1017
1014
1029
1029
1029
1091
1071
1048
1100
1072
1114
1084
1091
1111
1083
1160
1110
1122
1102
1187
1117
1137
1122
1129
1114
1179
1181
1136
1223
1175
1160
1232
1187
1249
1203
1215
1230
1222
1297
1222
1299
1321
1265
1364
1301
1381
1333
1332
1379
1364
1426
1386
1386
1448
1410
1467
1462
1472
1401
1503
1493
1453
1453
1433
1515
1467
1474
1474
1444
1541
1471
1498
1570
1541
1541
1625
1649
1735
1762
1766
1824
1833
1876
1833
1917
1876
1925
1979
1963
2069
2200
2227
2273
2339
2402
2421
2437
2519
2566
2598
2612
2644
2633
2665
2672
2751
2818
2919
3035
3089
3205
3187
3291
3328
3444
3571
4586
4824
4939
8
8
8
8
20
20
20
20
15
32
27
27
27
32
27
27
32
27
27
27
27
27
32
27
27
27
27
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
46
51
46
41
41
53
53
53
48
58
53
53
48
48
48
53
53
48
48
65
60
65
60
65
65
77
77
77
67
67
77
72
72
77
67
72
79
79
84
79
84
99
96
96
96
91
96
91
111
86
86
91
91
103
103
113
113
103
108
98
98
103
108
98
98
98
120
125
115
110
110
110
110
110
115
127
127
122
122
127
137
127
122
132
117
117
117
122
149
134
139
134
134
134
149
144
129
129
129
134
134
134
146
161
141
153
183
153
153
153
163
153
165
165
165
180
180
170
165
180
175
165
180
170
187
187
177
172
172
172
177
192
182
182
197
192
189
184
184
184
199
191
206
221
186
186
196
216
211
201
206
206
211
203
203
203
208
208
228
215
235
220
225
215
220
222
227
242
244
264
259
254
249
254
239
239
234
234
264
254
254
244
244
266
271
266
246
246
246
251
266
246
251
251
258
258
288
253
258
263
263
305
275
282
277
277
302
272
289
294
294
289
289
284
314
284
284
289
346
306
321
296
296
346
316
321
296
296
296
333
308
308
313
333
328
308
308
360
345
320
320
315
315
350
325
315
367
337
327
327
327
327
322
327
327
362
357
347
327
332
327
327
327
327
339
339
334
334
339
374
339
339
339
346
346
346
346
351
376
376
396
351
351
373
363
388
358
363
383
383
400
365
370
370
375
390
375
380
380
407
422
382
382
389
394
394
419
394
394
399
401
401
401
401
411
401
436
406
463
438
463
443
443
448
413
413
413
473
433
448
413
413
470
455
425
455
455
425
482
452
474
474
479
486
486
451
456
456
456
523
463
503
488
458
458
458
503
475
505
495
470
470
470
475
515
475
475
517
482
549
524
514
529
489
489
489
541
496
541
541
531
501
511
511
548
508
583
553
548
513
553
580
555
565
600
560
560
532
532
570
537
539
539
577
577
619
549
594
551
551
631
596
591
601
601
563
608
615
622
627
622
597
597
634
661
666
611
673
668
668
708
663
668
653
618
618
690
680
680
675
675
675
675
680
630
630
635
682
712
677
642
642
704
694
729
649
649
649
716
701
663
668
668
758
673
670
670
770
685
757
747
747
742
682
682
687
742
772
749
739
694
694
779
754
749
766
766
701
701
701
771
813
725
790
770
842
737
802
807
829
814
814
821
826
801
851
808
833
878
863
828
838
870
840
857
849
869
874
851
881
881
883
949
971
926
993
923
967
1004
974
974
974
1016
1043
998
1065
1010
1032
1057
1072
1044
1021
1041
1041
1041
1103
1083
1055
1112
1084
1126
1096
1098
1123
1090
1172
1134
1199
1124
1144
1129
1136
1121
1191
1156
1193
1148
1235
1187
1167
1244
1199
1261
1210
1222
1309
1229
1311
1333
1272
1376
1393
1339
1391
1371
1438
1398
1398
1460
1422
1479
1474
1484
1408
1515
1505
1465
1465
1440
1527
1479
1486
1486
1451
1553
1510
1582
1553
1553
1637
1661
1747
1774
1778
1836
1845
1888
1840
1929
1883
1932
1991
2081
2212
2239
2285
2351
2414
2433
2449
2531
2578
2610
2624
2656
2645
2677
2684
2763
2830
2931
3047
3101
3217
3199
3303
3340
3456
3583
4598
4836
4951
1
1
1
32
32
44
44
44
44
53
65
65
65
65
65
60
60
65
65
77
72
77
72
89
89
84
89
91
96
111
108
108
108
123
103
115
120
115
120
110
110
137
122
122
139
139
134
139
149
139
144
129
146
156
141
146
146
153
195
165
175
165
177
177
192
192
177
187
192
199
199
189
204
194
194
204
201
196
196
223
218
218
215
240
227
247
239
254
276
266
266
251
276
266
266
278
283
278
258
258
263
263
270
300
275
287
301
326
296
301
358
333
358
308
345
320
320
325
345
372
327
362
379
339
334
339
369
339
339
339
351
386
351
358
358
363
388
388
408
363
363
375
400
412
377
382
419
434
406
406
411
413
413
448
423
475
450
475
455
455
425
425
485
460
482
437
467
494
486
486
498
498
535
515
482
482
482
487
527
487
529
561
541
553
553
513
523
523
560
595
565
560
525
592
612
572
572
549
551
589
631
561
563
643
608
613
575
620
627
639
685
680
720
675
702
692
692
687
687
687
692
642
642
647
694
724
716
706
741
661
770
685
782
697
769
759
759
754
694
694
699
784
761
791
766
778
778
713
783
825
737
802
854
749
814
819
841
826
826
833
863
845
890
875
850
882
852
869
881
886
893
893
961
983
1005
979
1016
986
986
986
1028
1055
1010
1077
1044
1069
1084
1056
1053
1053
1053
1115
1095
1124
1096
1138
1108
1184
1211
1203
1168
1205
1160
1247
1199
1256
1211
1273
1321
1323
1345
1388
1405
1403
1450
1410
1410
1472
1434
1491
1486
1496
1527
1517
1477
1477
1539
1491
1498
1498
1565
1522
1594
1565
1565
1649
1673
1759
1786
1790
1848
1857
1900
1941
2003
2093
2224
2251
2297
2363
2426
2445
2461
2543
2590
2622
2636
2668
2657
2689
2696
2775
2842
2943
3059
3113
3229
3211
3315
3352
3468
3595
4610
4848
4963
