5
1566
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-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
-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
-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
-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
-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
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-8
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-7
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-6
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-5
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-4
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
-1
-1
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
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
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
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
13
13
13
13
13
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
26
26
26
26
26
26
26
26
26
26
26
25
25
25
25
25
25
25
24
24
24
24
24
23
23
23
22
22
22
21
21
21
20
20
20
20
19
19
19
19
18
18
18
18
17
17
17
17
16
16
16
16
16
15
15
15
15
15
14
14
14
14
13
13
13
12
12
12
12
12
11
11
11
11
11
11
10
10
10
10
10
10
9
9
9
9
9
9
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
12
12
13
13
14
14
14
15
15
15
15
15
15
15
15
14
14
14
14
14
14
15
15
15
16
16
16
16
17
17
18
18
19
19
19
20
20
20
21
21
22
22
23
23
24
25
25
26
27
27
28
30
31
32
33
34
35
37
38
39
40
41
42
42
43
43
43
44
45
46
47
48
49
51
53
55
57
59
61
63
66
68
69
71
73
74
76
78
79
81
83
85
87
88
90
92
94
95
97
98
99
100
101
103
104
105
107
108
110
111
113
114
116
117
118
119
119
120
120
121
121
121
121
122
123
124
125
127
128
130
132
134
136
138
140
141
143
145
146
148
149
150
152
153
154
155
156
158
159
161
163
164
166
168
170
171
173
174
176
177
178
179
179
180
180
181
182
182
183
184
185
185
186
187
188
189
190
191
192
194
195
196
198
199
200
202
203
205
207
208
210
211
212
213
214
215
216
217
218
219
219
220
221
221
222
223
224
225
225
226
226
226
227
227
227
227
227
227
227
227
226
226
226
225
225
225
225
224
224
224
224
224
225
225
226
226
227
228
229
230
232
233
234
235
236
236
236
236
235
234
233
232
231
232
232
234
235
237
239
240
241
242
243
242
242
241
239
237
235
233
231
229
227
226
226
225
225
225
225
225
225
225
224
224
223
222
222
223
223
224
226
227
229
232
234
236
239
241
243
245
246
248
249
251
252
254
255
257
259
261
263
265
266
267
266
266
265
264
263
262
261
260
259
258
257
257
256
256
257
257
258
259
259
260
260
260
259
258
257
257
256
256
255
254
253
253
252
252
252
253
253
253
254
255
256
257
258
258
259
260
261
262
263
264
266
267
268
270
271
272
272
272
272
271
270
269
268
267
266
266
266
267
268
270
271
273
275
277
278
279
279
278
277
275
273
271
269
267
267
267
267
268
269
270
272
273
274
276
278
279
281
282
283
284
285
285
285
285
284
284
283
282
280
278
275
271
267
263
260
257
256
255
254
254
254
254
255
255
256
256
257
257
256
256
254
253
251
249
247
245
243
242
241
241
241
242
243
244
246
248
250
253
256
259
261
263
264
265
265
265
263
261
259
256
253
251
248
246
244
243
242
241
240
239
238
238
237
235
234
232
230
228
226
224
222
219
217
215
213
211
209
207
205
204
204
204
204
206
207
210
212
214
216
217
217
217
215
213
211
208
204
201
197
194
191
189
187
185
183
181
179
177
174
171
168
164
161
158
155
153
151
151
150
150
149
148
147
146
145
143
142
140
138
136
135
134
134
134
135
136
137
139
141
143
144
145
146
147
148
149
150
150
150
150
150
149
149
147
146
144
143
141
139
138
136
135
134
133
133
132
132
132
132
132
133
134
135
136
136
136
136
136
135
134
132
131
130
129
128
128
128
128
128
127
127
127
126
126
125
124
123
121
119
117
114
112
110
109
107
106
105
103
102
100
98
96
93
91
88
86
84
82
81
79
77
76
74
72
71
70
70
69
69
69
69
69
68
67
66
64
62
59
55
50
46
42
38
35
32
29
28
27
28
29
31
32
33
33
32
31
28
25
22
18
15
12
8
6
4
2
0
-1
-3
-5
-7
-9
-12
-14
-17
-20
-23
-26
-28
-29
-30
-30
-30
-30
-30
-31
-32
-33
-35
-37
-39
-40
-41
-41
-41
-40
-39
-38
-37
-36
-35
-33
-32
-30
-29
-27
-25
-24
-23
-23
-22
-22
-22
-22
-22
-23
-23
-24
-24
-25
-26
-27
-28
-30
-31
-33
-35
-38
-40
-43
-45
-47
-49
-50
-51
-52
-51
-50
-49
-47
-44
-41
-39
-37
-36
-34
-33
-32
-30
-28
-26
-24
-21
-17
-13
-10
-6
-4
-1
0
1
1
1
-1
-4
-6
-9
-12
-14
-16
-17
-19
-20
-20
-21
-22
-24
-25
-27
-29
-32
-34
-37
-40
-42
-44
-46
-48
-49
-49
-50
-50
-51
-52
-53
-54
-54
-53
-53
-52
-50
-49
-48
-47
-46
-44
-43
-42
-41
-40
-40
-39
-39
-39
-39
-40
-40
-40
-40
-39
-39
-38
-38
-38
-37
-37
-37
-37
-37
-37
-37
-37
-37
-37
-38
-39
-40
-41
-43
-44
-46
-48
-49
-50
-50
-50
-49
-48
-46
-43
-40
-37
-33
-30
-27
-25
-23
-22
-22
-22
-22
-23
-24
-25
-26
-26
-27
-27
-27
-26
-24
-23
-22
-21
-20
-19
-19
-19
-20
-21
-22
-23
-24
-25
-27
-29
-31
-34
-36
-38
-40
-42
-45
-47
-49
-51
-52
-53
-54
-55
-55
-54
-53
-52
-51
-50
-49
-48
-48
-48
-49
-50
-51
-52
-53
-55
-55
-56
-56
-56
-56
-56
-57
-57
-59
-61
-63
-66
-69
-72
-75
-78
-81
-84
-86
-88
-90
-91
-92
-93
-94
-96
-98
-101
-103
-106
-109
-111
-114
-115
-116
-117
-117
-116
-115
-113
-111
-109
-106
-103
-101
-98
-97
-95
-94
-94
-94
-95
-97
-98
-100
-102
-104
-105
-107
-108
-109
-110
-111
-111
-112
-113
-114
-116
-117
-119
-122
-124
-127
-129
-131
-132
-132
-132
-130
-128
-125
-122
-119
-115
-112
-108
-105
-103
-100
-98
-96
-95
-94
-92
-90
-88
-86
-84
-82
-80
-78
-77
-77
-77
-77
-78
-78
-79
-79
-79
-79
-79
-79
-79
-79
-78
-77
-75
-73
-70
-67
-64
-61
-58
-55
-53
-50
-48
-46
-44
-42
-40
-39
-38
-37
-37
-37
-38
-38
-38
-39
-39
-39
-39
-39
-40
-40
-40
-40
-40
-39
-39
-39
-40
-40
-41
-42
-43
-44
-46
-47
-48
-49
-49
-49
-49
-49
-48
-47
-47
-46
-45
-43
-41
-39
-36
-34
-32
-30
-28
-27
-26
-25
-24
-23
-23
-22
-22
-21
-21
-21
-21
-21
-22
-23
-24
-25
-27
-28
-29
-30
-32
-33
-34
-35
-36
-36
-35
-34
-33
-32
-31
-29
-28
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-27
-28
-28
-29
-30
-31
-33
-36
-38
-42
-45
-49
-54
-58
-62
-65
-68
-70
-71
-72
-73
-73
-72
-71
-70
-68
-67
-66
-66
-66
-67
-68
-69
-71
-74
-76
-79
-82
-84
-87
-90
-92
-94
-96
-98
-99
-99
-99
-99
-99
-98
-97
-96
-95
-94
-93
-92
-91
-91
-90
-90
-89
-89
-88
-87
-86
-84
-82
-80
-78
-76
-74
-73
-72
-70
-69
-68
-67
-66
-65
-65
-64
-63
-63
-62
-62
-62
-62
-62
-63
-65
-67
-69
-72
-75
-79
-82
-85
-89
-92
-94
-97
-99
-101
-103
-105
-107
-108
-109
-111
-112
-113
-115
-117
-120
-123
-126
-129
-132
-135
-138
-140
-143
-145
-147
-149
-149
-150
-150
-150
-150
-149
-149
-148
-148
-148
-148
-148
-148
-147
-147
-147
-147
-147
-146
-146
-145
-143
-141
-138
-135
-132
-128
-125
-120
-116
-112
-108
-104
-100
-97
-94
-91
-89
-88
-87
-86
-85
-85
-84
-84
-84
-85
-86
-87
-89
-91
-92
-94
-96
-98
-100
-103
-106
-109
-111
-114
-116
-118
-120
-122
-123
-124
-125
-126
-127
-128
-129
-130
-131
-132
-133
-134
-136
-137
-139
-141
-143
-145
-148
-150
-153
-155
-158
-161
-163
-166
-168
-170
-172
-173
-174
-175
-175
-175
-175
-175
-174
-174
-173
-173
-173
-173
-172
-172
-172
-171
-171
-170
-168
-167
-166
-165
-164
-163
-162
-161
-160
-159
-158
-158
-157
-156
-156
-155
-154
-154
-153
-153
-153
-153
-153
-153
-154
-154
-155
-155
-156
-157
-157
-158
-158
-158
-158
-157
-156
-155
-154
-153
-152
-151
-150
-150
-150
-151
-151
-152
-153
-154
-155
-156
-157
-158
-159
-159
-159
-159
-159
-159
-159
-159
-160
-160
-161
-163
-164
-165
-166
-166
-166
-166
-165
-164
-162
-160
-159
-156
-154
-151
-147
-144
-141
-138
-134
-131
-128
-125
-122
-119
-116
-113
-111
-109
-107
-105
-104
-103
-103
-102
-102
-102
-103
-104
-106
-107
-110
-113
-116
-119
-121
-124
-127
-129
-130
-132
-133
-133
-134
-134
-134
-134
-133
-132
-131
-129
-128
-127
-126
-126
-125
-124
-123
-122
-120
-119
-116
-114
-112
-110
-109
-107
-106
-105
-105
-105
-105
-105
-105
-105
-106
-106
-106
-107
-107
-106
-106
-106
-106
-106
-106
-106
-107
-107
-108
-108
-109
-109
-109
-110
-110
-110
-110
-110
-110
-110
-110
-110
-110
-110
-110
-111
-112
-113
-115
-117
-120
-123
-125
-128
-131
-134
-138
-141
-145
-148
-152
-155
-158
-160
-162
-164
-165
-166
-167
-167
-167
-167
-167
-166
-165
-164
-163
-162
-161
-161
-160
-160
-160
-159
-158
-157
-157
-157
-158
-159
-161
-164
-167
-170
-174
-178
-182
-186
-189
-192
-196
-199
-203
-207
-211
-215
-219
-223
-227
-231
-234
-237
-239
-242
-243
-245
-246
-246
-247
-247
-247
-247
-246
-246
-246
-245
-245
-245
-246
-246
-247
-247
-248
-249
-251
-252
-254
-256
-259
-262
-265
-267
-270
-272
-274
-275
-276
-277
-278
-278
-278
-278
-278
-277
-276
-275
-275
-274
-274
-274
-275
-276
-277
-279
-280
-282
-283
-285
-286
-288
-289
-291
-294
-296
-299
-302
-305
-308
-312
-315
-319
-323
-327
-331
-335
-340
-345
-350
-355
-360
-365
-370
-375
-380
-384
-389
-393
-397
-400
-403
-405
-406
-407
-408
-409
-410
-411
-411
-411
-410
-409
-407
-404
-400
-395
-390
-384
-378
-372
-366
-360
-354
-348
-344
-339
-335
-332
-328
-324
-321
-316
-311
-306
-300
-294
-289
-284
-279
-274
-270
-266
-262
-258
-255
-251
-248
-244
-241
-237
-234
-231
-228
-225
-223
-221
-219
-218
-218
-218
-220
-221
-223
-225
-227
-229
-231
-233
-234
-235
-237
-238
-239
-241
-242
-242
-243
-243
-244
-244
-243
-243
-242
-241
-239
-238
-236
-234
-232
-230
-228
-226
-225
-225
-225
-225
-226
-227
-229
-232
-234
-236
-237
-238
-238
-237
-236
-233
-231
-228
-225
-223
-220
-219
-217
-215
-214
-212
-210
-207
-205
-203
-200
-198
-195
-193
-190
-187
-185
-182
-180
-178
-176
-174
-172
-170
-167
-165
-163
-161
-159
-158
-157
-156
-154
-153
-150
-147
-144
-139
-134
-128
-123
-117
-111
-106
-100
-95
-90
-85
-80
-75
-71
-66
-62
-58
-53
-49
-44
-40
-35
-31
-28
-25
-22
-21
-19
-18
-17
-15
-13
-11
-9
-6
-3
0
3
6
8
11
14
17
20
24
27
30
33
36
39
42
44
46
47
49
51
53
56
59
63
66
71
76
81
86
92
98
104
111
118
126
134
141
149
155
162
167
172
176
180
183
186
189
191
192
194
194
195
196
197
198
199
199
200
201
202
203
203
204
204
204
204
204
204
203
203
202
201
201
200
200
200
200
200
201
202
204
205
207
209
211
214
217
220
224
228
232
237
242
247
252
258
263
269
275
280
286
291
296
301
306
311
315
319
322
326
330
333
337
339
342
344
345
347
349
349
350
349
348
347
344
342
339
337
334
333
331
330
330
330
330
331
333
336
339
343
347
352
357
362
367
372
378
383
389
395
402
408
415
421
427
433
438
443
448
452
457
461
464
468
471
475
478
482
486
489
493
495
497
498
499
498
496
494
491
488
485
483
481
479
478
478
477
477
478
478
478
478
478
479
479
480
482
484
486
489
492
496
500
503
506
509
511
512
513
513
513
512
512
511
511
511
511
510
510
509
508
507
507
506
505
505
504
504
505
506
507
509
511
513
516
519
522
525
528
531
534
537
540
543
546
549
552
555
558
560
561
562
563
564
565
566
567
567
567
567
566
564
562
560
557
555
552
550
548
546
545
544
543
542
542
542
542
542
542
542
541
540
539
538
537
535
535
534
533
533
534
535
536
537
539
540
542
544
545
547
548
550
551
553
555
557
559
561
563
565
567
569
571
573
574
575
576
576
575
574
573
572
570
568
566
563
561
558
555
553
551
549
547
545
544
542
541
540
539
538
538
539
540
542
544
547
550
554
559
564
570
576
582
589
595
601
607
612
617
622
626
630
634
637
640
643
645
647
650
652
653
655
656
656
657
657
657
656
656
655
655
655
654
654
653
653
652
652
651
651
651
651
652
652
653
654
654
656
657
658
659
660
661
661
662
661
661
660
660
659
658
657
656
655
655
655
656
657
658
660
661
662
663
664
665
666
668
669
671
672
674
676
678
680
683
685
687
689
691
693
695
696
697
698
698
699
700
701
701
702
702
703
704
705
707
708
711
713
716
719
722
725
727
730
733
735
738
741
744
747
750
754
758
762
767
772
777
782
788
792
797
801
804
807
809
811
813
814
816
818
820
822
824
827
830
834
838
841
845
849
853
858
862
866
871
876
880
885
889
894
897
900
902
903
903
903
902
901
899
897
896
894
892
891
889
887
886
885
883
881
880
877
875
872
868
864
860
854
849
844
839
834
829
825
822
819
817
816
815
815
815
815
816
816
816
816
816
815
813
811
808
805
802
798
795
793
790
788
786
784
781
778
775
772
768
765
762
759
756
754
752
750
749
747
747
746
746
747
748
749
750
752
754
757
759
761
763
765
766
766
766
765
764
763
761
760
758
756
753
750
746
742
737
730
723
715
706
696
685
673
661
647
633
619
603
587
570
551
532
512
492
470
448
426
403
379
355
330
305
280
254
228
203
177
151
124
98
71
43
15
-14
-44
-74
-104
-134
-163
-192
-221
-247
-273
-297
-320
-342
-363
-382
-401
-418
-436
-453
-469
-485
-500
-514
-527
-539
-551
-561
-571
-581
-590
-598
-607
-616
-624
-633
-642
-650
-659
-666
-673
-680
-685
-690
-693
-696
-698
-699
-699
-699
-699
-699
-699
-700
-701
-704
-706
-710
-713
-716
-718
-720
-721
-721
-719
-717
-712
-707
-701
-693
-686
-678
-669
-661
-652
-644
-635
-627
-618
-610
-601
-592
-583
-573
-563
-553
-542
-532
-522
-512
-502
-493
-484
-474
-465
-456
-446
-436
-426
-415
-404
-393
-381
-370
-358
-347
-336
-325
-316
-306
-298
-290
-282
-275
-268
-261
-255
-249
-243
-238
-233
-230
-227
-225
-224
-223
-221
-220
-218
-216
-214
-211
-207
-204
-200
-196
-192
-188
-184
-180
-176
-172
-169
-167
-166
-165
-166
-167
-168
-169
-170
-170
-170
-168
-165
-161
-155
-149
-141
-133
-124
-115
-106
-98
-89
-81
-74
-68
-61
-56
-50
-44
-38
-31
-24
-15
-5
6
19
33
48
63
79
95
111
126
141
154
167
179
190
200
209
218
227
235
243
251
258
264
271
276
282
287
292
297
303
308
313
318
322
325
327
329
329
329
328
327
324
321
318
313
308
301
294
286
277
268
259
249
239
229
220
211
202
193
184
175
165
154
143
131
119
108
96
86
77
68
61
55
49
43
38
33
29
25
22
20
19
20
21
25
29
34
41
48
56
64
72
79
86
91
95
97
96
93
87
79
69
56
42
26
9
-9
-26
-43
-60
-74
-87
-97
-106
-111
-114
-115
-113
-110
-106
-101
-95
-90
-86
-83
-82
-83
-85
-88
-93
-99
-107
-115
-125
-137
-151
-167
-186
-208
-233
-261
-291
-324
-359
-395
-432
-469
-504
-537
-568
-595
-620
-640
-657
-669
-678
-682
-683
-681
-677
-671
-663
-656
-649
-642
-636
-631
-627
-625
-624
-624
-625
-628
-633
-640
-650
-663
-679
-699
-722
-749
-778
-810
-843
-879
-915
-952
-989
-1025
-1061
-1095
-1128
-1159
-1189
-1216
-1242
-1264
-1283
-1298
-1309
-1315
-1316
-1311
-1300
-1283
-1261
-1234
-1204
-1170
-1134
-1097
-1061
-1024
-988
-953
-918
-884
-849
-815
-780
-744
-709
-674
-638
-603
-569
-535
-502
-469
-436
-403
-369
-334
-297
-260
-221
-181
-140
-99
-57
-17
22
60
97
132
165
197
228
258
287
315
342
368
393
416
438
457
474
487
498
505
510
510
508
503
495
486
475
464
452
441
430
422
417
414
414
417
422
429
438
446
454
462
468
472
476
477
476
474
469
462
452
439
424
407
387
365
341
316
290
263
236
210
185
161
139
118
99
81
63
47
32
19
7
-1
-6
-7
-3
7
22
42
66
93
122
152
180
206
228
245
258
266
270
269
265
257
248
238
228
218
209
202
197
195
197
203
212
226
243
264
288
314
342
372
404
437
472
509
548
588
629
672
715
758
799
837
871
901
925
943
955
961
962
958
951
942
932
922
912
904
898
894
893
894
898
906
916
929
944
963
984
1006
1031
1056
1080
1104
1127
1146
1162
1174
1182
1185
1183
1178
1168
1155
1138
1117
1093
1066
1036
1002
967
929
890
850
809
769
730
692
656
624
595
571
551
536
526
519
515
513
513
513
512
510
507
503
499
493
488
483
478
476
475
476
479
485
493
502
512
522
532
540
546
549
550
548
544
538
530
521
511
502
494
486
480
476
474
475
478
483
492
504
520
539
563
589
620
655
693
735
779
826
875
925
974
1022
1068
1111
1150
1185
1216
1243
1266
1287
1305
1321
1335
1347
1355
1361
1361
1356
1346
1328
1305
1274
1238
1195
1147
1094
1035
973
908
840
770
700
629
559
490
422
356
291
229
168
109
51
-5
-60
-114
-166
-218
-269
-319
-368
-414
-459
-501
-541
-578
-613
-646
-677
-706
-734
-759
-783
-804
-822
-836
-847
-853
-854
-851
-842
-827
-808
-782
-751
-714
-671
-623
-568
-508
-442
-371
-294
-212
-126
-35
59
155
253
351
447
541
631
716
794
866
929
984
1030
1068
1096
1115
1126
1128
1122
1108
1087
1060
1027
990
950
908
866
826
789
755
727
704
688
679
677
682
694
711
733
759
788
818
849
879
907
934
960
983
1004
1025
1045
1064
1083
1102
1120
1137
1152
1166
1177
1184
1188
1188
1184
1176
1163
1147
1126
1102
1075
1045
1012
976
937
896
853
807
759
708
654
598
539
478
415
351
285
218
150
82
14
-54
-121
-187
-251
-314
-375
-433
-487
-537
-583
-624
-660
-690
-715
-734
-748
-756
-759
-756
-748
-734
-715
-692
-665
-634
-601
-566
-529
-492
-455
-419
-384
-351
-319
-290
-263
-239
-217
-198
-183
-172
-165
-163
-166
-174
-188
-206
-229
-256
-287
-321
-356
-394
-432
-471
-509
-547
-585
-622
-658
-693
-727
-759
-791
-821
-850
-877
-903
-926
-948
-967
-984
-998
-1010
-1020
-1029
-1036
-1042
-1047
-1052
-1056
-1060
-1062
-1062
-1061
-1056
-1049
-1038
-1024
-1006
-985
-962
-937
-911
-885
-859
-834
-811
-790
-773
-760
-750
-745
-744
-747
-752
-760
-771
-782
-796
-810
-825
-840
-854
-869
-882
-895
-908
-920
-931
-942
-953
-964
-974
-985
-995
-1004
-1014
-1022
-1027
-1031
-1032
-1031
-1027
-1018
-1008
-996
-980
-962
-941
-918
-895
-870
-844
-818
-792
-765
-738
-710
-681
-652
-621
-590
-559
-527
-496
-466
-437
-410
-384
-361
-341
-322
-307
-293
-281
-272
-264
-257
-252
-249
-247
-246
-246
-246
-248
-249
-252
-255
-258
-262
-266
-271
-276
-282
-289
-297
-306
-317
-329
-343
-359
-375
-393
-410
-428
-444
-459
-473
-484
-494
-502
-508
-514
-520
-526
-532
-539
-545
-553
-561
-568
-576
-582
-588
-591
-594
-594
-593
-591
-588
-585
-581
-577
-574
-572
-571
-571
-573
-576
-582
-589
-599
-610
-623
-638
-653
-669
-684
-700
-715
-729
-742
-754
-764
-773
-781
-788
-793
-796
-799
-801
-802
-804
-805
-807
-810
-814
-820
-827
-837
-847
-859
-873
-887
-903
-921
-939
-959
-981
-1004
-1028
-1054
-1080
-1106
-1133
-1159
-1185
-1210
-1233
-1255
-1274
-1291
-1306
-1316
-1323
-1326
-1325
-1320
-1312
-1299
-1283
-1263
-1241
-1215
-1187
-1156
-1123
-1088
-1050
-1012
-972
-931
-891
-851
-813
-777
-743
-711
-681
-654
-629
-606
-585
-566
-549
-533
-518
-503
-489
-475
-461
-446
-433
-419
-406
-394
-382
-370
-359
-347
-335
-322
-308
-295
-280
-266
-252
-238
-225
-213
-202
-192
-185
-178
-174
-171
-170
-171
-173
-178
-183
-190
-198
-207
-216
-226
-236
-247
-258
-269
-281
-293
-305
-318
-332
-346
-360
-375
-389
-404
-417
-431
-443
-455
-466
-477
-487
-497
-507
-516
-526
-536
-547
-557
-566
-576
-585
-593
-600
-607
-614
-620
-626
-631
-637
-642
-648
-653
-659
-664
-670
-674
-679
-682
-685
-686
-687
-687
-686
-683
-678
-673
-666
-657
-648
-639
-629
-619
-610
-602
-595
-589
-585
-581
-577
-574
-571
-567
-562
-556
-548
-537
-524
-508
-490
-468
-444
-418
-391
-363
-335
-308
-283
-260
-239
-222
-208
-197
-188
-183
-181
-182
-185
-191
-199
-210
-223
-239
-256
-275
-295
-316
-338
-361
-384
-407
-430
-452
-473
-494
-513
-532
-549
-564
-577
-588
-597
-605
-610
-614
-615
-614
-611
-605
-597
-587
-574
-558
-540
-520
-498
-474
-450
-425
-401
-377
-354
-332
-312
-294
-277
-262
-249
-238
-228
-219
-212
-206
-202
-199
-197
-198
-200
-203
-207
-212
-217
-223
-228
-234
-240
-245
-250
-256
-261
-267
-272
-277
-282
-286
-290
-293
-295
-295
-294
-290
-285
-277
-268
-257
-244
-230
-215
-199
-182
-163
-144
-124
-103
-81
-59
-36
-15
7
27
46
63
80
94
107
118
128
136
143
149
153
156
158
158
156
154
149
144
138
131
124
117
110
103
96
89
82
74
66
57
47
36
25
12
0
-12
-24
-34
-44
-53
-60
-66
-71
-75
-79
-82
-85
-87
-89
-91
-92
-93
-94
-94
-94
-94
-94
-94
-94
-95
-96
-99
-102
-106
-111
-116
-122
-129
-135
-141
-147
-152
-156
-160
-162
-163
-164
-163
-162
-159
-156
-153
-149
-144
-139
-134
-130
-125
-121
-117
-113
-111
-109
-107
-106
-105
-105
-105
-105
-106
-106
-108
-109
-111
-114
-116
-119
-121
-123
-125
-126
-127
-127
-127
-126
-126
-126
-126
-125
-126
-126
-127
-128
-129
-131
-133
-136
-140
-144
-150
-158
-167
-178
-191
-206
-223
-242
-263
-285
-309
-334
-360
-388
-417
-446
-477
-509
-542
-576
-610
-644
-679
-713
-747
-780
-811
-841
-869
-894
-918
-939
-958
-975
-990
-1004
-1018
-1031
-1044
-1057
-1071
-1085
-1099
-1114
-1130
-1146
-1163
-1179
-1196
-1212
-1229
-1245
-1262
-1278
-1294
-1310
-1327
-1342
-1357
-1371
-1384
-1395
-1404
-1411
-1417
-1419
-1420
-1419
-1415
-1409
-1401
-1392
-1381
-1368
-1354
-1339
-1324
-1308
-1291
-1275
-1258
-1242
-1226
-1210
-1195
-1180
-1166
-1152
-1140
-1128
-1117
-1107
-1098
-1091
-1085
-1080
-1077
-1074
-1073
-1071
-1070
-1069
-1068
-1066
-1063
-1060
-1056
-1051
-1045
-1039
-1031
-1022
-1012
-1002
-992
-979
-965
-950
-934
-918
-900
-883
-865
-847
-829
-812
-795
-779
-763
-748
-734
-720
-707
-695
-683
-672
-661
-652
-643
-635
-628
-622
-618
-614
-612
-611
-611
-612
-614
-616
-620
-623
-627
-631
-636
-641
-647
-653
-660
-667
-675
-683
-691
-699
-706
-714
-720
-726
-731
-735
-739
-741
-742
-742
-740
-738
-734
-728
-722
-714
-705
-696
-686
-676
-665
-654
-643
-631
-618
-606
-592
-579
-565
-551
-537
-523
-509
-495
-482
-469
-456
-444
-433
-423
-414
-405
-398
-392
-388
-385
-383
-382
-383
-385
-389
-393
-398
-405
-412
-421
-430
-440
-452
-464
-477
-490
-504
-517
-531
-543
-556
-568
-580
-591
-601
-611
-620
-628
-635
-641
-646
-649
-652
-654
-655
-655
-655
-654
-652
-649
-646
-642
-636
-631
-624
-617
-609
-600
-591
-582
-572
-562
-552
-543
-533
-523
-513
-503
-492
-481
-469
-457
-444
-430
-416
-401
-386
-371
-355
-338
-322
-305
-288
-270
-253
-236
-219
-203
-187
-172
-157
-144
-130
-118
-106
-94
-84
-74
-64
-56
-48
-40
-33
-26
-20
-13
-6
2
9
17
25
33
41
49
57
63
69
74
78
81
82
81
80
78
75
71
67
63
59
53
48
42
35
28
20
12
4
-5
-14
-22
-31
-40
-49
-58
-67
-76
-85
-94
-102
-109
-116
-123
-129
-134
-139
-143
-147
-151
-154
-158
-162
-165
-170
-174
-179
-184
-190
-196
-202
-209
-215
-222
-227
-232
-237
-241
-243
-246
-247
-248
-248
-247
-245
-242
-238
-233
-227
-220
-212
-203
-193
-182
-170
-157
-144
-130
-116
-101
-87
-72
-58
-43
-29
-15
0
14
28
43
57
71
85
99
111
123
134
144
152
160
167
173
178
182
185
187
188
188
186
183
179
174
168
162
155
149
142
136
129
123
117
111
105
99
94
88
83
78
74
71
69
68
67
67
69
71
75
80
87
94
102
111
121
131
141
152
162
173
184
195
206
218
229
240
251
262
273
283
294
305
316
327
338
349
360
371
382
394
405
416
426
436
446
456
464
473
481
488
495
501
508
514
520
526
533
540
547
555
564
572
582
591
601
611
621
630
640
648
657
665
673
681
688
695
702
709
715
722
729
737
744
753
761
771
780
790
801
811
821
831
840
848
856
863
869
874
877
879
879
878
875
871
865
858
849
839
829
817
804
790
776
761
745
730
714
698
683
668
654
640
628
616
605
595
586
578
571
564
559
554
550
546
543
540
537
535
532
529
526
524
520
517
514
511
507
503
499
494
489
484
479
473
468
463
459
456
453
451
450
449
450
451
453
455
457
460
463
466
469
472
475
479
483
487
492
496
501
506
511
517
523
528
534
540
547
553
559
566
573
580
587
595
602
611
619
628
636
644
652
660
667
672
677
681
683
684
683
682
679
675
670
664
657
649
641
632
622
611
599
587
574
561
548
535
522
511
500
490
481
474
467
462
457
453
449
445
441
437
433
428
423
418
413
407
402
396
390
384
378
371
363
354
345
336
326
315
304
293
282
271
259
247
236
224
213
203
193
185
177
170
164
159
155
152
150
149
149
150
152
154
157
159
163
166
169
172
175
179
183
187
191
196
201
207
213
219
224
230
236
241
246
251
255
260
263
266
267
268
269
268
266
264
260
256
251
245
239
232
225
219
212
206
201
195
191
187
183
180
177
175
174
174
174
176
178
181
184
188
192
197
201
205
209
213
216
218
220
221
222
222
222
221
220
218
217
214
212
209
206
202
199
195
190
186
182
178
174
170
166
162
158
153
148
142
137
131
125
120
114
109
105
101
97
94
90
88
85
83
81
80
79
78
78
78
79
80
82
84
87
90
93
95
98
101
104
106
109
111
112
114
116
117
119
120
121
123
124
125
127
129
130
132
135
137
140
143
147
150
154
159
163
168
174
180
188
195
204
213
223
233
244
255
266
277
288
299
309
319
327
334
340
345
349
352
355
357
358
360
361
362
362
363
363
363
364
364
364
365
367
368
371
374
378
383
389
396
405
414
424
435
447
460
474
490
506
523
541
559
578
598
618
638
658
679
701
722
745
767
790
814
837
861
884
907
930
953
975
997
1018
1041
1063
1084
1105
1125
1145
1164
1182
1200
1217
1233
1249
1263
1277
1291
1304
1317
1329
1340
1352
1362
1373
1383
1392
1401
1409
1417
1425
1433
1440
1447
1453
1459
1465
1470
1474
1478
1482
1485
1488
1490
1493
1495
1497
1499
1501
1504
1506
1508
1511
1514
1517
1521
1525
1529
1533
1537
1541
1544
1547
1550
1552
1554
1555
1557
1558
1560
1561
1562
1563
1565
1565
1566
1566
1565
1564
1562
1558
1554
1549
1542
1535
1527
1518
1508
1498
1488
1477
1465
1454
1441
1429
1416
1402
1388
1374
1359
1345
1330
1316
1302
1288
1275
1261
1247
1232
1217
1202
1186
1169
1151
1132
1113
1092
1071
1049
1027
1004
981
957
933
909
886
862
838
815
793
771
749
728
707
686
666
646
627
608
589
572
554
538
522
506
491
476
461
446
432
418
404
391
377
363
350
336
323
310
297
284
271
259
247
235
223
212
201
190
179
169
159
150
141
132
124
116
108
101
94
87
80
73
67
61
55
49
44
38
33
27
21
15
9
2
-5
-13
-21
-29
-38
-46
-54
-62
-70
-78
-85
-92
-99
-107
-114
-122
-129
-137
-144
-152
-159
-165
-171
-176
-181
-186
-190
-193
-196
-199
-201
-204
-206
-208
-210
-213
-216
-218
-221
-224
-227
-229
-232
-234
-236
-237
-238
-239
-239
-239
-239
-238
-237
-236
-234
-232
-230
-228
-225
-222
-219
-215
-210
-206
-200
-194
-187
-180
-172
-164
-156
-147
-137
-128
-118
-107
-97
-86
-74
-62
-50
-37
-24
-11
3
17
31
44
58
71
84
96
108
119
129
139
149
158
167
175
184
192
201
209
217
225
232
239
246
253
260
266
272
279
285
290
296
302
308
314
320
327
334
341
348
355
362
369
376
382
388
393
398
403
407
411
414
416
418
419
420
420
420
419
418
416
414
411
409
406
402
399
395
391
387
382
377
372
366
359
352
345
338
330
322
314
305
296
287
277
267
256
245
234
223
211
199
187
175
162
149
135
121
107
93
78
63
49
35
21
8
-4
-16
-28
-38
-49
-58
-67
-76
-84
-91
-98
-104
-109
-113
-116
-119
-122
-123
-124
-125
-125
-124
-123
-121
-119
-117
-114
-110
-106
-102
-97
-92
-86
-80
-74
-67
-60
-52
-44
-36
-27
-18
-9
0
10
20
29
39
49
59
69
79
88
97
106
115
124
132
141
150
159
168
178
188
198
209
220
231
243
254
265
277
288
299
310
322
334
347
360
373
387
402
417
432
447
463
478
493
508
522
536
548
560
571
580
589
597
604
611
616
622
626
630
634
637
639
640
642
642
643
643
642
642
641
641
641
641
641
642
643
645
646
648
650
652
654
656
658
660
661
663
664
666
667
668
669
670
672
673
675
676
678
681
683
686
689
692
696
700
705
709
714
718
723
727
732
737
742
748
754
760
767
774
781
789
797
806
815
825
835
846
857
869
882
895
909
923
938
953
969
985
1002
1018
1036
1053
1070
1087
1104
1121
1138
1156
1174
1192
1210
1228
1247
1265
1283
1301
1318
1335
1351
1366
1380
1394
1406
1418
1429
1439
1449
1458
1466
1474
1481
1488
1494
1500
1505
1509
1514
1518
1522
1526
1529
1532
1535
1537
1540
1541
1543
1544
1545
1545
1545
1545
1544
1543
1542
1540
1538
1536
1533
1531
1528
1525
1522
1519
1517
1514
1512
1510
1509
1507
1506
1505
1505
1505
1505
1506
1507
1509
1510
1512
1514
1515
1516
1517
1516
1515
1513
1510
1506
1500
1495
1488
1480
1472
1464
1455
1445
1435
1425
1414
1403
1391
1379
1366
1353
1340
1326
1313
1299
1285
1271
1257
1243
1229
1215
1200
1186
1171
1156
1141
1126
1111
1096
1081
1066
1051
1035
1018
1002
987
970
952
934
915
896
875
854
832
809
786
763
739
714
690
665
641
616
591
567
543
519
496
473
451
429
408
387
367
347
328
310
292
275
258
242
227
213
199
186
174
163
153
144
135
128
121
115
110
105
101
97
94
92
90
88
87
86
86
86
86
87
88
89
90
91
93
94
95
95
96
96
96
95
95
94
94
93
93
92
92
91
91
91
91
91
91
92
92
93
94
96
97
98
100
102
104
107
110
114
118
123
128
134
140
147
154
162
170
178
186
195
204
212
221
230
240
249
259
269
279
290
301
312
323
335
346
357
369
380
391
402
413
424
435
446
457
468
479
490
500
511
521
530
540
548
557
564
571
577
583
588
592
596
598
601
602
603
603
602
601
599
596
593
590
587
583
579
575
571
567
563
558
553
547
542
536
529
523
517
511
505
499
493
487
482
476
469
463
457
450
444
438
432
426
420
414
409
404
400
395
391
387
383
380
376
372
367
363
358
352
346
340
333
326
317
309
300
291
282
272
263
254
245
236
227
219
212
204
197
191
185
179
174
170
166
162
158
155
151
148
145
142
138
135
131
128
124
119
115
110
105
100
95
90
86
81
77
73
69
66
63
61
59
58
57
56
56
57
58
60
63
66
71
76
83
90
97
106
115
124
134
144
155
165
175
186
196
206
217
227
237
247
256
266
275
283
292
300
308
316
324
331
339
346
353
361
368
375
382
389
396
404
411
419
426
433
440
447
453
459
464
469
473
477
481
484
488
490
493
495
497
499
500
500
500
500
499
498
495
492
489
484
479
473
466
459
451
443
434
425
417
409
401
393
386
379
373
367
362
357
352
348
345
342
340
338
337
336
336
336
336
337
338
339
340
341
343
344
345
347
348
350
351
353
354
356
357
358
359
359
360
360
359
359
358
358
358
357
356
356
355
355
354
353
352
351
349
348
346
343
341
338
335
332
329
326
322
318
314
310
306
303
299
295
292
289
286
284
282
280
279
278
278
279
279
281
283
285
287
289
291
294
296
298
300
302
304
306
308
309
311
312
313
314
316
317
318
320
322
324
326
328
330
333
335
337
340
342
345
347
349
352
354
356
358
360
361
363
364
365
365
365
365
364
363
362
360
357
354
351
347
343
338
333
327
321
314
307
299
291
283
274
266
257
249
241
233
226
219
212
205
199
193
186
180
174
168
162
156
149
143
137
130
123
116
109
101
94
86
78
69
61
51
42
32
22
11
1
-10
-21
-31
-41
-51
-61
-70
-79
-88
-96
-104
-111
-118
-124
-129
-134
-137
-141
-143
-145
-147
-148
-149
-149
-149
-149
-149
-148
-148
-147
-145
-144
-142
-140
-138
-136
-134
-132
-130
-128
-127
-125
-123
-122
-120
-119
-118
-117
-116
-115
-115
-114
-114
-114
-114
-114
-115
-115
-116
-117
-118
-119
-120
-121
-122
-124
-126
-128
-131
-134
-138
-142
-146
-151
-155
-160
-165
-169
-174
-179
-185
-190
-196
-203
-210
-217
-224
-231
-239
-246
-254
-261
-269
-276
-283
-289
-296
-302
-308
-313
-319
-324
-329
-334
-339
-344
-349
-353
-357
-362
-366
-370
-374
-378
-382
-387
-391
-395
-399
-403
-407
-411
-414
-417
-421
-424
-426
-429
-432
-435
-437
-440
-443
-446
-448
-451
-453
-455
-456
-458
-459
-459
-460
-460
-459
-459
-459
-458
-457
-457
-456
-456
-455
-455
-455
-455
-456
-457
-458
-460
-461
-463
-465
-467
-469
-471
-473
-476
-478
-481
-484
-487
-491
-496
-501
-507
-513
-520
-528
-535
-543
-552
-560
-568
-577
-586
-595
-604
-614
-624
-634
-644
-654
-664
-675
-685
-695
-705
-714
-723
-731
-739
-747
-754
-761
-767
-773
-778
-783
-787
-791
-795
-799
-801
-804
-806
-807
-808
-808
-808
-807
-806
-805
-803
-800
-797
-794
-790
-785
-780
-774
-767
-761
-753
-745
-737
-728
-719
-709
-700
-689
-679
-668
-657
-647
-636
-625
-613
-602
-592
-581
-570
-559
-549
-539
-529
-519
-510
-501
-493
-485
-478
-471
-464
-457
-450
-443
-436
-429
-422
-415
-407
-400
-392
-385
-377
-370
-363
-357
-350
-344
-338
-332
-327
-323
-319
-315
-313
-311
-309
-309
-308
-309
-310
-311
-313
-315
-318
-321
-324
-327
-331
-335
-339
-343
-347
-351
-354
-358
-361
-364
-367
-369
-371
-373
-375
-377
-379
-382
-384
-387
-389
-392
-395
-397
-400
-402
-404
-406
-407
-408
-409
-409
-409
-409
-408
-407
-405
-403
-401
-398
-395
-392
-388
-384
-380
-376
-371
-366
-361
-356
-350
-345
-339
-333
-327
-321
-316
-310
-305
-300
-295
-291
-286
-282
-277
-273
-269
-264
-260
-256
-252
-249
-245
-242
-238
-235
-232
-228
-225
-222
-219
-217
-214
-212
-210
-209
-208
-207
-206
-205
-205
-204
-204
-204
-204
-204
-204
-205
-206
-207
-208
-209
-210
-211
-212
-213
-215
-216
-218
-220
-222
-225
-228
-231
-235
-239
-244
-249
-255
-261
-267
-274
-281
-288
-296
-304
-312
-321
-329
-338
-347
-355
-364
-373
-381
-390
-398
-407
-415
-423
-431
-440
-448
-456
-465
-473
-482
-490
-499
-508
-517
-525
-534
-543
-552
-560
-569
-577
-586
-594
-602
-609
-617
-625
-632
-639
-646
-652
-658
-663
-667
-671
-674
-677
-679
-680
-680
-679
-678
-676
-673
-669
-665
-660
-655
-649
-643
-636
-629
-621
-613
-605
-597
-588
-579
-569
-559
-548
-537
-526
-514
-502
-490
-478
-466
-454
-442
-429
-417
-405
-393
-381
-369
-356
-344
-332
-319
-308
-296
-285
-274
-264
-254
-244
-235
-225
-216
-207
-199
-190
-181
-173
-164
-156
-148
-141
-134
-127
-120
-113
-107
-101
-95
-89
-83
-77
-72
-66
-62
-57
-52
-48
-44
-40
-36
-33
-29
-26
-23
-20
-17
-14
-12
-9
-6
-4
-1
2
5
8
12
15
19
22
26
30
34
38
41
44
47
49
51
52
53
53
52
51
49
46
43
39
35
29
24
18
11
4
-4
-12
-20
-29
-37
-46
-55
-65
-74
-83
-92
-102
-111
-120
-130
-139
-149
-158
-168
-177
-187
-197
-206
-216
-225
-235
-244
-254
-263
-272
-282
-291
-301
-310
-320
-329
-339
-348
-357
-367
-376
-385
-394
-402
-410
-418
-426
-433
-440
-445
-451
-455
-459
-463
-466
-468
-470
-472
-474
-476
-477
-479
-481
-482
-484
-486
-488
-491
-493
-496
-499
-502
-506
-510
-514
-519
-524
-530
-535
-540
-546
-551
-556
-561
-566
-571
-576
-581
-586
-592
-597
-602
-608
-613
-619
-624
-629
-634
-638
-643
-647
-651
-655
-659
-663
-667
-671
-675
-680
-684
-690
-695
-701
-706
-712
-718
-725
-731
-737
-743
-750
-756
-762
-769
-775
-781
-788
-794
-800
-807
-813
-819
-824
-830
-835
-840
-845
-849
-853
-857
-860
-863
-866
-868
-870
-873
-875
-877
-879
-882
-884
-886
-889
-891
-893
-896
-898
-900
-903
-905
-908
-910
-912
-914
-916
-918
-919
-920
-921
-921
-920
-919
-918
-916
-913
-910
-906
-902
-897
-892
-886
-880
-873
-866
-858
-851
-843
-834
-826
-817
-808
-799
-790
-780
-770
-760
-749
-739
-728
-716
-705
-693
-682
-670
-658
-647
-635
-624
-612
-601
-590
-578
-567
-556
-544
-532
-521
-509
-497
-485
-474
-462
-451
-440
-429
-418
-408
-398
-388
-378
-368
-359
-349
-340
-331
-323
-314
-306
-299
-291
-284
-277
-270
-263
-257
-251
-245
-240
-234
-229
-224
-219
-214
-210
-206
-202
-199
-196
-194
-193
-192
-191
-191
-192
-193
-194
-195
-197
-198
-200
-201
-203
-205
-206
-207
-209
-210
-211
-212
-213
-214
-215
-216
-216
-217
-218
-218
-218
-218
-217
-217
-216
-214
-212
-210
-207
-204
-201
-197
-192
-187
-182
-177
-171
-165
-159
-152
-145
-138
-130
-123
-115
-107
-98
-89
-80
-71
-62
-52
-42
-33
-23
-14
-5
4
12
20
28
35
42
49
55
61
67
72
77
81
85
89
92
95
98
100
102
103
105
105
106
106
106
105
105
105
104
104
103
103
102
101
100
99
98
96
95
93
92
90
88
87
85
84
82
81
79
77
75
72
70
67
64
61
57
54
51
47
44
40
37
34
31
28
25
22
19
17
14
12
9
7
5
3
1
0
-2
-2
-3
-3
-3
-3
-2
-2
-1
0
0
1
2
3
4
6
7
9
11
13
15
17
20
23
25
29
32
35
39
42
46
50
54
58
63
68
72
77
82
87
92
97
101
106
110
115
119
122
126
129
131
134
136
139
141
143
145
147
148
149
151
151
152
152
153
152
152
152
151
150
149
148
147
146
144
143
141
140
138
137
135
133
131
129
126
124
122
120
117
115
113
111
109
108
106
105
103
102
101
99
97
96
94
91
89
86
84
81
77
74
70
66
62
57
51
45
39
33
26
18
11
3
-4
-12
-20
-28
-35
-43
-50
-58
-65
-72
-79
-85
-92
-98
-105
-111
-117
-123
-129
-135
-141
-147
-153
-159
-166
-172
-179
-185
-192
-199
-206
-213
-220
-227
-234
-241
-248
-255
-262
-269
-275
-282
-288
-293
-298
-303
-307
-310
-313
-316
-317
-318
-318
-318
-317
-315
-312
-308
-304
-300
-294
-288
-282
-274
-267
-258
-249
-240
-230
-219
-209
-197
-186
-174
-163
-151
-139
-127
-115
-103
-91
-79
-67
-55
-43
-32
-20
-10
1
12
22
32
42
51
61
70
79
87
96
104
112
120
127
135
142
149
156
163
170
178
185
193
201
210
219
228
237
247
256
265
275
284
293
302
311
320
329
337
345
353
360
367
373
379
384
388
392
396
398
400
402
403
403
402
401
400
398
396
394
391
388
385
382
379
375
371
367
363
359
355
351
347
343
339
334
330
326
322
317
313
309
304
300
295
291
286
282
277
273
269
265
262
259
255
252
250
247
244
242
240
238
237
236
235
234
234
235
235
236
238
239
241
244
246
248
251
254
256
258
261
263
265
267
269
272
274
276
279
281
284
287
289
292
295
298
301
304
307
311
314
318
321
325
329
334
339
343
349
354
360
366
372
378
384
390
397
403
409
416
422
428
434
440
446
452
458
464
470
476
482
487
493
498
503
507
512
516
520
524
527
531
534
537
541
544
547
550
554
557
561
565
569
573
577
582
587
592
596
601
606
610
614
618
622
626
629
632
635
638
641
644
646
649
651
653
656
657
659
661
662
663
663
664
664
664
664
664
664
664
664
663
663
663
663
663
664
664
664
665
666
667
669
670
672
674
676
678
680
682
683
685
686
687
687
688
688
688
688
688
688
688
687
687
687
686
685
684
683
681
679
677
675
672
670
667
664
661
659
656
654
652
651
650
650
649
649
649
649
649
649
650
650
651
651
652
653
654
656
657
658
659
661
662
663
663
663
663
662
661
660
658
656
654
652
649
646
643
639
635
630
625
619
613
607
600
593
586
578
570
563
555
547
540
532
525
518
511
505
498
491
484
477
470
463
456
449
442
434
427
419
412
405
397
390
383
376
370
363
357
351
345
339
334
328
323
318
313
308
303
299
294
290
286
281
277
273
269
264
259
255
250
244
239
233
228
222
216
210
203
197
191
185
178
172
165
158
150
143
135
127
119
111
103
96
88
81
73
66
58
51
44
36
28
21
13
6
-2
-9
-16
-23
-30
-37
-44
-51
-57
-63
-68
-74
-79
-84
-88
-92
-96
-100
-104
-107
-111
-114
-117
-120
-122
-125
-127
-129
-130
-131
-131
-132
-132
-131
-131
-130
-128
-127
-125
-122
-119
-116
-112
-108
-103
-98
-92
-86
-80
-73
-66
-58
-51
-42
-34
-25
-16
-6
3
13
24
34
45
56
67
78
90
101
113
124
136
147
159
170
181
192
202
213
223
233
243
253
263
272
282
291
300
309
317
325
332
339
345
351
357
362
366
370
373
376
378
380
382
383
384
384
384
384
383
382
381
379
378
376
375
374
372
371
370
369
368
367
366
365
365
365
365
366
367
368
370
371
373
374
376
377
379
380
381
382
383
384
385
386
387
387
387
387
387
386
385
383
381
379
377
374
371
368
365
362
358
355
351
347
344
340
336
332
328
324
320
316
312
309
305
301
298
295
291
288
285
282
280
277
275
272
270
267
265
262
259
256
253
250
246
243
239
235
231
226
222
217
211
206
200
195
189
183
177
171
165
160
154
149
144
138
133
128
123
118
113
108
104
99
95
91
87
84
80
76
73
69
66
62
58
55
52
49
46
43
41
38
36
35
33
32
31
30
29
29
28
28
28
28
29
29
30
31
32
32
33
34
34
35
35
35
35
34
33
32
31
29
27
25
23
21
19
16
14
11
8
5
2
-1
-4
-7
-9
-12
-15
-17
-20
-22
-25
-27
-30
-33
-36
-39
-42
-45
-49
-53
-56
-61
-65
-70
-75
-80
-86
-92
-98
-104
-110
-117
-123
-130
-136
-143
-149
-155
-161
-167
-173
-178
-183
-188
-193
-197
-201
-204
-208
-211
-213
-216
-219
-221
-223
-225
-226
-228
-229
-230
-231
-231
-232
-232
-232
-233
-233
-234
-235
-236
-237
-238
-239
-240
-241
-242
-243
-243
-244
-244
-244
-243
-243
-242
-241
-240
-238
-237
-235
-234
-232
-229
-227
-225
-222
-219
-216
-213
-210
-206
-202
-198
-194
-190
-186
-181
-176
-172
-167
-162
-157
-152
-147
-142
-136
-131
-125
-120
-114
-108
-102
-96
-90
-84
-77
-71
-65
-59
-54
-48
-42
-36
-31
-25
-20
-15
-10
-6
-1
3
7
11
15
18
21
24
28
30
33
36
39
42
45
48
51
54
57
60
63
66
70
73
76
80
84
87
91
95
98
102
106
110
113
117
121
124
127
131
134
137
140
143
147
150
153
156
159
162
165
168
171
174
178
181
184
187
190
193
196
199
202
205
209
212
215
219
222
226
230
234
238
242
246
250
254
258
262
266
270
274
278
282
286
290
294
298
302
305
309
312
316
319
322
325
327
330
332
334
336
338
340
341
343
344
345
346
347
348
350
351
352
353
354
355
356
357
358
359
361
362
364
366
368
370
373
375
378
381
384
388
391
394
398
401
405
409
413
416
420
424
429
433
437
441
444
448
452
456
459
462
465
468
471
474
476
478
480
482
484
486
487
488
489
489
489
488
487
486
484
482
479
476
473
470
466
462
458
454
449
445
440
435
429
424
419
414
409
404
399
394
390
385
381
377
373
369
365
362
358
354
351
347
343
339
335
331
326
322
317
312
306
301
295
289
283
277
271
264
257
250
243
236
228
220
212
204
196
188
180
172
165
157
148
140
132
124
116
107
99
90
81
72
63
54
44
35
26
16
7
-2
-12
-21
-30
-39
-48
-57
-66
-75
-84
-93
-102
-111
-119
-128
-136
-144
-152
-160
-168
-176
-184
-191
-199
-206
-214
-221
-228
-235
-242
-249
-255
-261
-267
-273
-279
-284
-289
-295
-300
-304
-309
-314
-318
-323
-327
-331
-334
-338
-341
-344
-347
-349
-352
-354
-356
-357
-359
-360
-360
-361
-361
-360
-360
-359
-358
-357
-356
-355
-353
-352
-350
-349
-347
-345
-343
-341
-339
-337
-335
-332
-330
-327
-325
-322
-320
-318
-315
-313
-311
-309
-307
-306
-304
-302
-301
-299
-298
-297
-295
-294
-293
-292
-291
-289
-288
-286
-284
-281
-278
-275
-272
-269
-265
-261
-257
-253
-249
-244
-240
-235
-231
-227
-222
-218
-213
-209
-205
-202
-198
-194
-191
-188
-185
-183
-180
-178
-176
-173
-171
-169
-168
-166
-164
-162
-159
-157
-155
-152
-149
-146
-143
-140
-136
-133
-129
-125
-121
-117
-114
-110
-107
-103
-100
-96
-93
-90
-86
-83
-80
-77
-74
-71
-68
-65
-62
-60
-58
-55
-54
-52
-51
-50
-49
-49
-49
-49
-49
-50
-50
-51
-52
-53
-55
-56
-57
-59
-60
-61
-62
-63
-64
-64
-65
-65
-65
-65
-64
-64
-63
-62
-61
-59
-57
-55
-53
-50
-47
-44
-41
-37
-34
-30
-26
-21
-17
-12
-7
-2
3
8
13
18
23
28
32
37
41
45
49
54
58
62
66
71
75
80
84
89
94
99
104
110
115
120
126
131
137
142
148
153
159
164
170
176
182
188
194
200
206
212
218
224
231
237
243
249
256
262
269
276
283
290
297
304
312
319
326
334
341
349
356
364
371
379
386
393
401
408
415
422
429
436
443
450
456
463
470
477
483
490
497
503
510
516
522
529
535
541
547
553
559
564
570
576
581
586
591
596
601
605
610
614
617
621
624
627
630
633
635
637
640
642
644
645
647
649
651
653
655
656
658
661
663
665
668
671
674
677
680
684
687
691
695
700
704
708
713
717
721
726
730
734
739
743
748
752
756
760
764
768
772
776
779
783
786
789
792
795
798
801
803
806
808
811
814
816
819
822
825
828
831
834
837
840
844
847
851
854
858
861
865
868
871
874
876
879
881
884
886
889
891
893
895
897
898
900
902
903
905
906
908
910
911
913
914
915
916
917
918
919
920
920
921
922
923
924
925
927
928
930
931
933
934
936
937
938
939
940
941
942
943
943
944
944
945
945
945
945
945
945
945
945
945
945
944
944
943
943
942
941
941
940
939
938
937
936
935
933
932
931
930
928
927
926
924
923
921
920
918
917
915
913
912
910
908
906
904
902
899
897
894
892
889
886
883
879
875
871
867
863
858
852
847
841
835
828
822
815
808
800
792
784
776
768
759
750
742
733
724
715
706
697
688
679
670
661
652
643
634
625
617
608
600
591
583
575
568
560
552
544
536
528
520
512
503
494
485
476
466
456
446
435
425
414
403
392
380
369
357
345
333
321
310
298
286
274
263
251
240
228
217
206
196
185
174
164
154
144
134
124
115
106
96
87
78
69
60
52
43
35
26
18
10
2
-6
-14
-22
-30
-38
-46
-54
-62
-70
-77
-85
-93
-100
-108
-115
-122
-130
-137
-143
-150
-157
-163
-169
-176
-182
-188
-193
-199
-205
-211
-217
-222
-228
-234
-240
-245
-251
-257
-263
-268
-274
-279
-285
-290
-295
-300
-305
-309
-314
-319
-323
-328
-333
-337
-342
-347
-351
-355
-359
-363
-366
-369
-372
-375
-378
-380
-383
-385
-387
-388
-390
-391
-393
-394
-395
-396
-397
-398
-399
-400
-400
-401
-401
-402
-402
-402
-403
-403
-403
-402
-402
-402
-401
-400
-399
-398
-397
-396
-394
-393
-392
-390
-389
-388
-387
-386
-385
-384
-384
-384
-383
-383
-383
-384
-384
-385
-385
-386
-387
-388
-388
-389
-390
-390
-391
-392
-392
-393
-393
-394
-394
-395
-395
-395
-396
-396
-396
-397
-397
-397
-397
-398
-398
-398
-398
-398
-398
-397
-397
-397
-397
-397
-396
-396
-396
-396
-396
-397
-397
-397
-397
-397
-398
-398
-398
-398
-398
-398
-398
-398
-397
-397
-397
-397
-397
-397
-397
-397
-397
-397
-398
-398
-399
-400
-401
-402
-403
-404
-406
-407
-409
-410
-412
-414
-416
-418
-420
-422
-424
-427
-430
-432
-435
-438
-441
-444
-447
-450
-453
-456
-459
-462
-465
-468
-471
-473
-476
-479
-481
-484
-486
-489
-491
-494
-496
-498
-501
-503
-505
-507
-509
-511
-513
-515
-517
-519
-521
-523
-524
-526
-528
-529
-531
-532
-533
-535
-536
-537
-538
-538
-539
-540
-541
-542
-543
-543
-544
-544
-545
-545
-544
-543
-542
-541
-539
-536
-533
-530
-526
-522
-518
-514
-509
-505
-500
-495
-490
-484
-479
-474
-468
-463
-457
-452
-446
-440
-434
-428
-421
-415
-408
-402
-395
-388
-381
-374
-367
-359
-352
-345
-337
-330
-323
-315
-308
-301
-294
-288
-281
-275
-268
-262
-256
-250
-245
-239
-233
-228
-223
-217
-212
-207
-202
-197
-192
-187
-182
-177
-172
-167
-162
-157
-152
-147
-142
-136
-130
-125
-118
-112
-106
-99
-92
-85
-77
-70
-63
-55
-48
-40
-33
-25
-17
-9
-2
6
14
22
30
38
47
55
63
72
80
89
97
106
114
123
131
139
147
155
163
171
179
186
194
201
209
216
223
229
236
242
248
255
260
266
272
277
283
288
293
298
304
309
314
319
324
330
335
340
345
350
355
360
366
371
376
382
387
393
399
404
410
416
422
429
435
441
447
454
460
467
473
480
487
494
501
508
515
522
529
536
544
551
557
564
571
577
583
589
594
599
604
609
613
618
621
625
629
632
636
639
642
645
648
650
653
656
659
661
664
666
669
671
673
676
678
680
682
684
686
687
689
691
692
693
694
695
695
695
695
695
695
694
692
691
689
686
684
681
677
674
670
666
661
657
652
647
642
637
631
626
621
616
611
606
601
596
591
586
581
576
571
566
561
555
550
545
540
535
530
525
520
515
511
506
502
498
493
489
485
481
477
473
469
465
462
458
454
450
446
443
439
435
431
427
424
420
416
413
409
406
402
399
395
392
389
385
382
379
376
373
371
368
365
363
361
358
356
354
352
349
347
345
343
342
340
338
337
335
334
333
331
330
329
327
326
325
323
322
320
318
317
315
313
311
308
306
304
301
299
296
293
290
287
284
280
277
273
269
265
261
257
252
248
244
239
235
230
226
221
217
212
208
203
199
195
190
186
181
177
173
168
164
160
156
151
147
143
139
134
130
126
122
117
113
109
105
100
96
92
88
84
80
76
72
68
64
60
57
53
49
46
42
39
36
33
30
27
24
21
19
16
14
12
10
7
5
3
1
-1
-3
-4
-6
-8
-10
-11
-13
-15
-16
-18
-19
-21
-22
-23
-25
-26
-27
-28
-29
-29
-30
-30
-31
-31
-31
-31
-30
-30
-29
-28
-28
-27
-26
-24
-23
-22
-20
-18
-17
-15
-12
-10
-8
-5
-2
1
4
7
10
14
18
22
26
31
36
41
46
51
57
63
69
75
81
87
94
100
107
113
120
126
133
139
146
153
159
166
173
180
186
193
200
207
214
220
227
234
240
247
253
260
266
272
279
285
292
298
305
312
319
325
332
339
345
352
358
365
371
377
384
390
396
401
407
412
417
422
427
431
435
439
442
446
449
452
455
458
460
463
466
468
471
473
475
478
480
482
483
485
486
488
489
490
490
491
491
491
491
491
491
490
489
488
487
486
485
484
483
481
480
478
477
475
473
472
470
468
466
464
462
460
458
456
454
452
450
448
446
444
442
440
438
436
434
432
429
427
424
422
419
416
413
410
407
403
400
396
392
388
384
379
375
371
366
362
358
353
349
344
339
335
330
326
321
316
312
307
303
298
294
289
285
281
276
272
268
263
259
255
251
247
242
238
234
231
227
223
220
216
213
209
206
203
200
197
194
191
188
185
182
179
176
173
171
168
165
162
160
157
154
152
149
146
144
141
139
136
134
131
129
127
124
122
120
118
116
114
113
111
110
109
107
107
106
105
105
105
105
105
105
106
106
107
108
109
110
111
112
114
115
117
118
120
122
124
125
127
129
131
132
134
136
138
139
141
143
144
146
147
149
150
152
153
154
155
156
157
158
159
159
160
160
160
161
161
161
161
160
160
160
159
159
158
157
156
155
154
152
151
149
147
146
144
142
140
138
136
134
132
131
129
127
125
124
122
121
120
119
118
117
116
115
115
114
114
113
113
113
113
113
113
113
113
113
113
113
113
113
113
112
112
112
112
111
111
110
110
109
109
108
107
106
106
105
104
103
102
101
100
100
99
99
98
99
99
99
100
101
102
103
105
107
109
111
113
115
118
121
123
126
129
132
135
138
140
143
146
149
151
153
155
158
159
161
163
165
166
167
169
170
171
172
173
174
175
176
177
177
177
178
178
178
177
177
177
176
176
175
174
174
173
172
171
170
169
168
167
166
165
164
163
163
162
162
162
162
162
162
163
164
165
166
168
169
171
173
175
178
180
183
186
189
192
194
197
200
203
206
208
211
214
216
219
221
224
226
228
231
233
236
239
241
244
247
249
252
255
258
261
264
267
271
274
277
280
284
287
291
294
298
301
305
308
312
315
319
322
325
329
332
335
338
341
344
347
350
352
355
358
360
362
364
366
368
370
371
373
374
375
376
376
377
377
377
377
377
377
377
377
376
376
375
375
374
373
372
371
370
369
367
366
364
362
360
359
357
355
353
351
348
346
344
341
339
336
334
331
328
325
322
318
315
311
307
303
299
294
290
285
280
274
269
263
257
251
245
239
232
226
219
212
205
198
191
183
176
168
161
153
145
137
129
121
113
105
97
89
81
73
65
57
49
41
33
25
17
9
2
-6
-13
-21
-28
-35
-42
-49
-56
-63
-70
-76
-83
-89
-96
-102
-108
-114
-121
-127
-133
-139
-145
-151
-157
-163
-169
-175
-181
-187
-193
-199
-206
-212
-218
-225
-231
-237
-243
-250
-256
-262
-268
-274
-280
-286
-292
-298
-304
-310
-315
-321
-327
-333
-338
-344
-349
-355
-360
-365
-371
-376
-381
-385
-390
-395
-399
-403
-407
-411
-415
-419
-423
-426
-430
-433
-437
-440
-444
-447
-450
-453
-456
-459
-462
-465
-468
-471
-474
-476
-479
-481
-484
-486
-488
-490
-492
-494
-496
-497
-499
-500
-501
-502
-503
-504
-505
-506
-506
-507
-507
-508
-508
-508
-509
-509
-509
-509
-509
-508
-508
-508
-507
-507
-506
-506
-505
-505
-504
-503
-502
-502
-501
-500
-500
-499
-498
-498
-497
-496
-495
-495
-494
-493
-492
-491
-490
-488
-487
-485
-484
-482
-480
-478
-476
-473
-471
-468
-465
-463
-460
-456
-453
-450
-447
-443
-440
-436
-432
-428
-425
-420
-416
-412
-408
-404
-399
-395
-390
-385
-381
-376
-371
-366
-361
-356
-351
-346
-341
-336
-331
-326
-321
-316
-311
-306
-301
-297
-292
-288
-284
-280
-276
-272
-268
-265
-261
-258
-254
-251
-248
-245
-242
-240
-237
-235
-233
-231
-229
-227
-225
-223
-221
-219
-217
-216
-214
-213
-211
-210
-209
-208
-207
-207
-206
-206
-206
-206
-206
-206
-207
-207
-208
-209
-210
-211
-212
-213
-215
-216
-218
-219
-221
-223
-224
-226
-228
-230
-231
-233
-234
-235
-237
-238
-239
-240
-241
-242
-242
-243
-244
-245
-245
-246
-246
-247
-247
-247
-247
-248
-248
-248
-248
-249
-249
-249
-249
-249
-249
-249
-249
-249
-249
-249
-249
-248
-247
-246
-245
-244
-242
-240
-238
-236
-233
-231
-228
-224
-221
-218
-214
-210
-206
-202
-197
-193
-188
-183
-178
-174
-168
-163
-158
-153
-148
-143
-138
-133
-129
-124
-119
-114
-110
-105
-101
-96
-92
-87
-83
-79
-75
-71
-67
-63
-59
-55
-52
-48
-44
-41
-37
-33
-30
-26
-22
-18
-14
-10
-6
-1
3
7
12
16
21
26
31
36
41
46
51
56
62
67
72
77
83
88
93
98
103
108
113
117
121
126
130
134
138
142
145
149
152
156
159
162
164
167
169
172
174
176
178
179
181
182
184
185
186
187
187
188
188
188
189
189
188
188
188
187
186
185
184
183
182
180
179
177
176
174
172
171
169
167
165
164
162
161
159
158
157
156
155
154
153
152
151
150
149
148
147
146
144
143
141
140
138
136
134
131
129
126
123
120
117
113
110
106
102
98
94
89
85
80
75
71
66
61
56
51
46
41
36
31
26
21
16
11
6
1
-5
-10
-15
-20
-25
-30
-35
-40
-45
-50
-55
-60
-65
-70
-74
-79
-83
-87
-91
-96
-100
-104
-108
-112
-116
-120
-124
-128
-131
-135
-139
-143
-146
-150
-153
-156
-159
-162
-165
-168
-170
-173
-175
-177
-179
-181
-183
-184
-186
-187
-188
-189
-190
-191
-192
-193
-194
-194
-195
-195
-195
-196
-196
-196
-195
-195
-195
-194
-194
-194
-193
-193
-193
-192
-192
-192
-192
-192
-192
-193
-193
-194
-195
-196
-197
-198
-199
-200
-202
-204
-205
-207
-209
-211
-213
-215
-217
-219
-221
-223
-225
-227
-229
-231
-232
-234
-235
-237
-238
-239
-239
-240
-240
-240
-240
-239
-238
-237
-236
-235
-233
-231
-229
-227
-224
-222
-219
-216
-213
-210
-206
-203
-199
-195
-191
-187
-183
-179
-174
-170
-166
-161
-157
-152
-148
-143
-139
-134
-130
-126
-121
-117
-113
-108
-104
-100
-96
-92
-88
-84
-80
-76
-73
-69
-65
-62
-58
-55
-51
-48
-45
-42
-38
-35
-32
-28
-24
-21
-17
-13
-9
-4
0
5
10
14
20
25
30
35
41
47
52
58
64
70
77
83
89
95
102
108
114
120
127
133
139
145
150
156
162
168
173
179
184
189
195
200
205
210
215
220
225
229
234
239
244
249
253
258
262
267
271
276
280
284
288
292
296
300
304
307
311
314
318
321
325
328
331
334
337
341
344
347
350
352
355
358
360
363
366
368
370
373
375
377
380
382
384
386
388
390
393
395
397
399
401
403
404
406
408
409
411
412
413
415
416
417
418
418
419
420
421
422
423
423
424
425
426
427
428
429
430
431
432
433
435
436
437
438
439
440
441
442
443
443
444
444
444
444
444
443
443
442
441
440
439
437
435
434
432
429
427
425
423
420
418
416
413
411
408
406
403
401
398
395
393
390
387
384
381
378
375
371
368
364
361
357
353
350
346
342
338
333
329
325
321
316
312
308
304
299
295
291
286
282
278
273
269
265
260
256
251
247
243
238
234
229
225
221
216
212
208
204
200
196
192
188
184
180
176
173
169
166
162
159
156
153
150
147
145
142
139
137
134
132
130
128
126
124
122
121
120
118
117
116
115
115
114
113
113
112
112
111
111
111
111
111
110
110
110
111
111
111
111
111
111
111
111
112
112
112
112
112
113
113
114
114
115
115
116
117
117
118
119
119
120
120
121
121
121
122
122
122
122
122
123
123
123
123
123
123
123
123
124
124
124
124
125
126
126
127
128
129
131
132
134
136
137
140
142
144
146
149
151
154
156
159
161
164
166
169
172
174
177
180
182
185
188
191
194
196
199
202
205
208
211
213
216
219
222
224
227
230
232
235
238
240
243
246
248
251
253
256
258
261
263
265
268
270
272
274
277
279
281
284
286
288
291
293
296
298
300
303
305
308
310
313
315
317
320
322
324
327
329
331
333
335
337
338
340
342
343
345
346
347
349
350
351
353
354
356
357
359
360
362
364
366
367
369
371
373
375
377
379
381
383
385
387
389
391
393
395
397
399
401
402
404
406
408
410
411
413
415
416
418
420
421
423
424
425
427
428
429
430
431
432
433
433
434
434
435
435
435
434
434
434
433
433
432
431
430
429
428
427
426
425
424
423
422
422
421
421
420
420
420
420
419
419
419
418
418
417
416
416
415
414
413
412
410
409
407
405
403
401
398
396
393
391
388
385
382
379
376
373
370
367
364
361
358
355
352
349
346
343
340
337
333
330
327
324
321
318
314
311
308
305
302
298
295
292
288
285
282
278
275
272
269
266
263
260
257
254
252
249
247
245
243
241
239
237
236
235
233
232
231
230
229
228
227
226
225
225
224
223
223
222
221
221
220
219
219
218
217
216
215
214
213
212
210
209
207
206
204
203
201
200
198
197
195
194
192
191
189
188
186
185
183
182
180
179
177
175
174
172
171
169
168
166
165
163
162
161
160
158
157
156
155
154
153
152
150
149
148
147
145
144
143
141
140
138
136
135
133
131
130
128
127
125
124
122
121
120
118
117
117
116
115
114
114
113
113
113
113
113
113
113
113
114
114
115
116
117
118
119
120
120
121
122
123
124
125
126
126
127
127
128
128
128
129
129
129
129
129
129
129
129
128
128
128
128
128
128
128
128
128
128
128
129
129
129
130
130
131
131
131
132
132
132
133
133
133
133
133
133
133
133
133
133
133
132
132
131
130
130
129
128
126
125
124
122
121
119
117
115
113
111
109
107
104
102
99
96
93
90
87
84
81
78
75
71
68
64
61
57
53
49
45
41
37
33
28
24
19
15
10
6
1
-4
-9
-14
-19
-24
-29
-34
-39
-44
-49
-54
-58
-63
-68
-72
-76
-80
-85
-89
-93
-96
-100
-104
-107
-111
-114
-117
-120
-123
-125
-128
-130
-132
-133
-135
-136
-138
-139
-140
-141
-141
-142
-143
-143
-143
-144
-144
-144
-144
-144
-144
-144
-145
-145
-145
-146
-146
-147
-147
-148
-149
-150
-150
-151
-152
-153
-154
-155
-156
-157
-157
-158
-159
-160
-160
-161
-161
-162
-162
-163
-163
-163
-163
-163
-163
-163
-163
-163
-163
-162
-162
-162
-162
-161
-161
-161
-161
-161
-161
-160
-160
-160
-160
-161
-161
-161
-162
-162
-163
-164
-165
-166
-167
-168
-169
-171
-172
-174
-176
-178
-179
-181
-183
-185
-187
-189
-191
-193
-195
-197
-199
-202
-204
-206
-208
-210
-212
-214
-216
-218
-221
-223
-225
-227
-229
-231
-232
-234
-236
-237
-239
-240
-241
-242
-243
-244
-245
-246
-247
-247
-248
-248
-248
-248
-248
-248
-248
-248
-247
-247
-246
-246
-245
-244
-243
-242
-241
-239
-238
-237
-235
-234
-233
-231
-230
-229
-227
-226
-225
-223
-222
-220
-219
-217
-216
-214
-212
-210
-209
-206
-204
-202
-199
-197
-194
-191
-188
-185
-181
-178
-174
-171
-167
-163
-159
-155
-151
-147
-143
-138
-134
-130
-126
-121
-117
-113
-109
-105
-101
-97
-92
-88
-85
-81
-77
-73
-69
-65
-62
-58
-54
-50
-47
-43
-39
-35
-31
-27
-22
-18
-14
-10
-5
-1
3
7
12
16
20
24
28
33
37
41
45
49
54
58
62
66
69
73
77
80
84
87
90
94
97
99
102
105
107
109
112
114
116
117
119
121
122
123
125
126
127
128
129
130
131
132
133
134
134
135
135
136
136
136
136
137
137
137
136
136
136
136
136
136
136
136
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
134
134
134
134
134
134
134
134
134
133
133
133
133
134
134
134
134
135
135
135
136
136
137
138
138
139
139
140
141
141
141
142
142
142
142
141
141
140
139
139
137
136
135
133
131
129
127
125
123
121
118
115
112
109
106
103
100
97
94
90
87
84
81
78
74
72
69
66
64
61
59
57
55
53
52
50
49
48
47
46
46
45
45
44
44
44
44
44
44
44
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
44
44
44
44
44
45
45
46
46
47
48
49
49
50
51
52
53
54
55
56
57
58
59
61
62
63
64
65
66
68
69
70
71
72
73
74
75
76
78
79
80
81
82
84
85
86
87
89
90
91
92
94
95
96
97
98
99
100
101
101
102
103
104
105
105
106
107
108
108
109
110
110
111
111
112
113
113
114
114
115
115
116
116
116
117
117
117
117
117
118
118
118
118
118
118
118
119
119
119
119
120
120
120
121
121
122
123
123
124
125
125
126
127
128
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
152
153
154
155
156
158
159
159
160
161
162
163
163
164
164
164
164
165
165
165
165
165
164
164
164
164
165
165
165
166
166
167
168
169
170
171
172
174
175
176
178
179
181
182
184
185
187
188
190
191
193
194
196
197
199
200
202
203
204
206
207
209
210
211
213
214
215
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
235
236
237
238
239
240
241
241
242
243
244
245
246
247
248
249
251
252
253
255
256
258
260
261
263
265
267
269
271
273
275
277
279
281
284
286
288
290
292
294
297
299
301
303
305
307
308
310
312
314
316
318
320
321
323
325
327
329
331
334
336
338
340
343
346
348
351
354
357
360
364
367
371
374
378
382
385
389
393
397
401
404
408
412
416
420
424
428
432
436
441
445
449
453
457
462
466
470
474
479
483
487
492
496
500
505
509
513
517
522
526
530
534
539
543
547
551
555
559
563
567
571
575
579
582
586
590
594
598
602
606
610
614
618
622
626
630
634
638
643
647
651
655
660
664
668
673
677
682
686
690
694
699
703
707
711
715
719
723
727
731
735
739
743
747
751
755
759
763
767
770
774
777
781
784
787
790
793
796
800
803
806
809
812
815
818
821
824
828
831
834
837
841
844
847
851
854
858
861
865
868
872
875
879
882
886
889
892
895
899
902
905
908
910
913
916
918
920
922
924
926
928
929
930
931
932
933
933
933
933
933
933
933
933
932
932
931
930
929
929
928
927
927
926
925
925
924
924
924
923
923
923
922
922
922
922
922
922
922
921
921
921
921
921
921
920
920
919
919
918
918
917
916
915
914
913
911
910
908
907
905
903
901
899
897
894
891
889
886
883
880
877
874
871
867
864
861
858
854
851
847
844
841
837
833
830
826
823
819
815
811
808
804
800
795
791
787
783
778
774
769
765
760
756
751
746
742
737
732
728
723
718
713
708
703
698
693
688
683
678
672
667
662
656
651
646
640
635
630
624
619
614
609
604
598
593
588
583
579
574
569
564
560
555
550
546
541
537
532
528
523
519
514
510
506
501
497
493
488
484
480
476
472
468
464
460
456
452
449
445
442
439
435
432
429
426
423
420
417
414
411
408
405
402
400
397
394
392
389
386
383
381
378
375
372
369
366
363
360
357
354
351
348
345
342
339
335
332
329
325
322
318
315
312
308
305
301
298
294
291
287
283
280
276
273
269
265
262
258
254
250
247
243
239
235
232
228
224
220
217
213
209
205
202
198
195
191
188
184
181
178
175
172
169
166
163
160
157
154
152
149
147
144
142
140
137
135
133
131
130
128
126
124
122
121
119
117
115
113
111
109
107
105
103
101
99
97
95
92
90
88
85
82
80
77
74
72
69
66
63
61
58
55
53
50
48
45
43
41
38
36
34
32
30
27
25
24
22
20
18
16
15
13
12
10
8
7
5
3
2
0
-1
-3
-4
-6
-7
-9
-10
-12
-13
-14
-16
-17
-18
-20
-21
-23
-24
-25
-27
-28
-30
-31
-33
-34
-36
-37
-39
-40
-41
-43
-44
-45
-46
-48
-49
-50
-51
-52
-53
-54
-55
-56
-56
-57
-58
-59
-60
-61
-61
-62
-63
-63
-64
-64
-65
-65
-66
-66
-67
-67
-68
-68
-68
-68
-69
-69
-69
-69
-69
-69
-69
-69
-69
-69
-69
-68
-68
-68
-68
-68
-67
-67
-67
-67
-66
-66
-65
-65
-64
-64
-63
-62
-62
-61
-60
-59
-58
-57
-56
-55
-54
-53
-52
-51
-50
-49
-49
-48
-47
-46
-45
-45
-44
-43
-43
-43
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-42
-41
-41
-41
-40
-40
-39
-39
-38
-38
-37
-37
-36
-35
-34
-34
-33
-32
-31
-30
-28
-27
-26
-25
-23
-22
-20
-18
-17
-15
-13
-11
-9
-7
-5
-3
-1
1
3
5
7
9
10
12
14
16
17
19
21
22
24
25
26
28
29
30
31
32
33
34
35
36
36
37
37
38
38
38
39
39
39
39
39
39
39
39
39
39
38
38
38
37
37
37
36
36
35
35
34
34
33
32
32
31
30
29
29
28
27
26
25
23
22
21
20
18
17
16
14
13
11
10
8
6
5
3
1
-1
-3
-5
-6
-8
-11
-13
-15
-17
-19
-22
-24
-27
-29
-32
-35
-37
-40
-43
-47
-50
-53
-57
-61
-64
-68
-72
-76
-80
-84
-88
-92
-96
-100
-105
-109
-113
-117
-121
-125
-129
-133
-137
-141
-144
-148
-151
-154
-158
-161
-164
-167
-169
-172
-175
-178
-180
-183
-185
-188
-190
-193
-195
-197
-200
-202
-204
-207
-209
-211
-213
-215
-217
-220
-222
-224
-226
-228
-230
-231
-233
-235
-237
-239
-240
-242
-244
-246
-248
-250
-252
-254
-256
-258
-260
-262
-264
-266
-268
-271
-273
-276
-278
-281
-283
-286
-289
-292
-294
-297
-300
-303
-306
-309
-312
-314
-317
-320
-323
-326
-328
-331
-334
-336
-339
-341
-344
-346
-348
-351
-353
-355
-357
-359
-361
-363
-365
-367
-369
-371
-373
-375
-377
-380
-382
-384
-386
-389
-391
-393
-396
-398
-400
-403
-405
-407
-410
-412
-414
-416
-419
-421
-423
-424
-426
-428
-429
-431
-432
-433
-434
-435
-436
-436
-436
-436
-436
-436
-435
-434
-433
-432
-431
-430
-428
-426
-424
-423
-421
-419
-416
-414
-412
-410
-408
-405
-403
-401
-398
-396
-393
-391
-388
-385
-383
-380
-377
-374
-371
-368
-364
-361
-358
-354
-351
-347
-344
-340
-336
-333
-329
-325
-321
-318
-314
-310
-307
-303
-300
-297
-293
-290
-287
-284
-281
-278
-275
-273
-270
-268
-266
-264
-262
-260
-259
-257
-256
-255
-254
-253
-252
-252
-251
-251
-250
-250
-250
-250
-250
-250
-250
-250
-250
-250
-250
-250
-251
-251
-251
-251
-251
-251
-251
-251
-251
-251
-250
-250
-250
-249
-249
-248
-248
-247
-247
-246
-246
-246
-245
-245
-244
-244
-243
-243
-242
-242
-241
-241
-240
-240
-240
-239
-239
-238
-238
-238
-237
-236
-236
-235
-235
-234
-233
-232
-231
-230
-228
-227
-226
-224
-223
-221
-219
-218
-216
-214
-212
-210
-208
-206
-204
-201
-199
-196
-193
-190
-187
-184
-181
-178
-174
-171
-167
-163
-159
-155
-151
-147
-143
-139
-135
-130
-126
-121
-117
-113
-108
-104
-100
-96
-92
-88
-84
-80
-76
-72
-68
-65
-61
-58
-54
-51
-47
-44
-41
-38
-34
-31
-28
-25
-21
-18
-15
-11
-8
-4
-1
3
7
11
15
20
24
28
33
37
42
47
51
56
61
65
70
75
79
84
89
94
98
103
108
113
117
122
127
132
136
141
146
150
155
159
164
168
173
177
182
186
191
195
199
204
208
213
217
221
226
230
234
239
243
247
252
256
260
265
269
273
277
281
286
290
294
299
303
307
312
316
321
325
330
334
339
343
348
352
357
361
366
370
375
379
383
387
392
396
400
404
408
411
415
419
422
426
429
432
435
438
441
444
447
450
453
455
458
461
464
467
469
472
475
478
481
484
487
490
493
496
499
502
505
508
511
514
517
520
523
526
529
532
535
538
541
544
547
550
553
556
559
562
565
568
571
574
577
580
583
586
588
591
594
596
599
601
603
605
607
609
611
613
614
616
617
618
619
620
621
622
622
623
623
623
624
624
623
623
622
622
621
620
619
618
617
616
614
613
611
610
608
606
604
603
601
599
597
595
592
590
588
586
583
581
579
576
574
572
569
567
564
562
560
557
555
553
550
548
546
543
541
539
536
534
532
530
528
525
523
521
520
518
516
514
512
511
509
508
507
505
504
503
502
501
500
499
498
497
496
495
494
493
493
492
491
490
489
488
487
486
485
484
483
482
481
479
478
477
475
474
473
472
470
469
468
467
466
465
464
463
462
461
460
459
459
458
457
457
456
456
455
455
455
454
454
454
454
453
453
453
453
453
452
452
452
452
452
452
452
452
452
453
453
453
454
454
454
455
456
457
457
458
459
461
462
463
465
466
468
469
471
473
475
476
478
480
482
484
486
487
489
491
493
494
496
497
499
500
502
503
505
506
507
508
510
511
512
513
513
514
515
515
515
516
516
516
515
515
515
514
514
513
512
511
510
509
508
506
505
503
501
499
497
495
493
491
488
486
483
481
478
475
472
469
466
462
459
455
451
448
444
440
436
432
428
424
419
415
411
407
403
398
394
390
386
382
378
374
370
366
362
358
354
351
347
343
340
336
333
329
326
323
320
317
314
311
308
305
302
299
296
293
290
288
285
282
279
276
273
270
267
264
261
257
254
251
248
245
242
238
235
232
228
225
221
218
214
211
207
204
200
197
194
190
187
184
181
177
174
171
168
166
163
160
157
155
152
150
147
145
143
140
138
136
134
132
131
129
127
125
124
122
121
119
117
116
114
112
111
109
108
106
104
103
101
99
98
96
95
93
92
91
90
88
87
86
86
85
84
84
83
83
83
82
82
82
82
82
82
82
83
83
83
83
84
84
84
85
85
85
86
86
87
87
88
88
89
90
90
91
92
93
93
94
95
96
97
97
98
99
100
100
101
102
102
103
103
103
104
104
104
104
104
104
104
104
104
103
103
102
102
102
101
100
100
99
99
98
98
97
97
96
96
95
95
94
93
93
92
91
90
90
89
88
87
87
86
85
84
83
82
82
81
80
79
79
78
78
77
77
76
76
76
75
75
75
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
73
73
73
73
73
73
73
74
74
74
74
74
74
74
74
74
74
74
74
74
73
73
73
73
72
72
71
71
70
69
68
67
67
66
65
64
62
61
60
59
58
57
55
54
53
52
51
50
49
47
46
45
44
43
41
40
39
37
36
34
32
31
29
27
25
23
21
19
17
15
13
10
8
5
3
1
-2
-5
-7
-10
-12
-14
-17
-19
-22
-24
-27
-29
-31
-33
-36
-38
-40
-42
-44
-46
-47
-49
-51
-52
-54
-55
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-66
-67
-67
-68
-68
-69
-69
-69
-69
-69
-70
-70
-70
-70
-70
-70
-70
-71
-71
-71
-71
-71
-72
-72
-72
-73
-73
-73
-74
-74
-74
-74
-75
-75
-75
-75
-75
-76
-76
-76
-76
-76
-76
-76
-76
-75
-75
-75
-75
-74
-74
-74
-73
-73
-73
-72
-72
-72
-71
-71
-71
-70
-70
-70
-70
-69
-69
-69
-69
-68
-68
-68
-68
-67
-67
-66
-66
-65
-65
-64
-64
-63
-62
-62
-61
-60
-59
-59
-58
-57
-56
-55
-55
-54
-53
-53
-52
-52
-51
-51
-50
-50
-49
-49
-49
-48
-48
-48
-48
-47
-47
-47
-47
-46
-46
-46
-45
-45
-44
-44
-43
-42
-42
-41
-40
-39
-38
-37
-36
-35
-34
-33
-32
-30
-29
-28
-27
-26
-24
-23
-21
-20
-18
-17
-15
-13
-11
-9
-8
-6
-4
-1
1
3
5
8
10
13
15
18
21
23
26
29
32
35
38
41
44
47
50
54
57
60
64
68
71
75
79
82
86
90
94
97
101
105
109
113
117
120
124
128
132
135
139
143
147
150
154
158
162
165
169
173
177
180
184
188
191
195
198
201
205
208
212
215
218
221
224
227
230
233
236
239
242
245
248
250
253
256
259
261
264
267
270
272
275
278
280
283
286
288
291
294
296
299
301
304
307
309
312
314
316
319
321
324
327
329
332
334
337
340
342
345
348
350
353
356
358
361
363
366
369
371
374
377
379
382
384
386
389
391
393
395
397
399
401
403
405
407
408
410
411
413
414
415
416
418
419
420
421
422
422
423
424
425
425
426
426
427
427
428
428
428
428
428
428
427
427
426
426
425
424
424
423
422
421
420
419
417
416
415
413
412
410
408
406
405
403
400
398
396
393
391
388
386
383
380
377
374
371
367
364
361
358
354
351
347
344
341
337
334
331
327
324
321
318
314
311
308
305
301
298
295
292
289
286
283
279
276
273
269
266
262
259
255
251
248
244
240
236
232
227
223
219
214
210
206
201
197
192
188
183
179
175
170
166
162
157
153
149
145
141
137
133
129
126
122
118
115
111
107
104
101
97
94
91
87
84
81
78
74
71
68
65
62
59
56
53
50
47
44
42
39
36
33
31
28
25
23
20
18
15
13
11
9
7
5
3
1
0
-2
-3
-5
-6
-7
-8
-9
-10
-11
-11
-12
-12
-12
-12
-12
-12
-11
-11
-10
-9
-8
-7
-6
-5
-4
-2
-1
1
3
4
6
8
9
11
13
15
17
18
20
22
24
25
27
29
31
32
34
36
37
39
40
42
43
44
45
47
48
49
49
50
51
52
53
53
54
55
55
56
56
57
57
58
58
58
59
59
59
60
60
60
61
61
61
62
62
62
63
63
63
64
64
65
65
66
66
67
68
68
69
70
71
72
73
74
75
77
78
79
81
82
83
85
86
88
90
91
93
94
96
98
99
101
102
104
105
107
108
109
111
112
113
114
116
117
118
119
120
121
122
123
125
126
127
128
129
130
132
133
134
136
137
139
141
142
144
146
148
149
151
153
155
157
159
161
163
165
167
169
171
173
174
176
178
180
182
184
185
187
189
191
192
194
195
197
199
200
202
203
205
207
208
210
212
214
216
217
219
221
223
225
227
229
231
233
235
237
239
242
244
246
249
251
254
256
259
261
264
266
269
271
274
277
279
282
284
287
290
292
295
297
299
301
303
305
307
309
311
312
314
315
316
317
318
319
320
321
322
323
323
324
324
325
325
326
326
326
327
327
327
328
328
328
329
329
329
330
330
331
331
331
332
332
332
332
333
333
333
333
333
333
333
334
334
334
334
335
335
335
336
336
337
338
338
339
339
340
341
342
343
344
345
346
347
348
350
351
352
354
355
357
359
360
362
363
365
367
369
370
372
374
376
378
380
381
383
385
387
390
392
394
396
398
401
403
405
408
410
413
416
418
421
424
427
430
433
436
439
442
445
447
450
454
457
460
463
466
469
472
475
478
481
485
488
491
494
497
501
504
507
510
513
516
519
523
526
529
532
535
538
541
544
547
550
552
555
558
561
564
567
570
573
576
579
582
585
588
591
594
597
601
604
607
610
613
616
619
622
625
627
630
633
636
639
641
644
646
649
651
653
656
658
660
662
664
665
667
668
670
671
672
673
674
675
676
676
677
677
677
677
678
677
677
677
677
676
676
675
674
674
673
672
671
670
669
668
666
665
664
663
662
660
659
658
656
655
654
653
651
650
649
647
646
644
643
642
640
639
637
635
634
632
630
628
627
625
622
620
618
616
613
611
608
605
602
600
597
594
591
588
584
581
578
574
571
567
564
560
557
553
549
546
542
538
535
531
527
523
520
516
512
508
504
500
496
492
487
483
479
475
471
466
462
457
453
448
444
439
435
430
426
421
416
412
407
402
398
393
388
384
379
374
370
365
361
356
352
348
343
339
335
331
327
323
319
316
312
308
305
301
298
294
291
288
285
281
278
275
272
269
266
263
260
257
253
250
247
244
242
239
236
233
230
227
224
221
219
216
213
210
208
205
202
199
197
194
191
189
186
183
181
178
176
173
171
168
166
163
161
159
157
154
152
150
148
146
144
141
139
137
135
133
131
129
127
125
123
121
119
118
116
114
112
111
109
107
106
104
103
101
100
98
97
96
95
94
93
92
91
90
89
89
88
87
87
86
86
85
85
85
84
84
84
83
83
83
82
82
82
82
82
82
82
81
81
81
81
81
81
81
81
81
81
82
82
82
82
82
82
83
83
83
84
84
84
85
85
86
86
87
88
88
89
90
91
92
93
94
95
96
98
99
100
102
103
105
106
107
109
110
112
113
115
116
118
119
120
122
123
125
126
128
130
131
133
134
136
137
139
140
142
143
145
146
148
149
151
152
154
156
157
159
161
162
164
166
168
169
171
173
175
177
179
180
182
184
186
188
190
191
193
195
197
199
201
203
205
207
209
211
213
215
217
219
221
223
225
227
229
231
233
235
237
239
241
243
244
246
248
249
251
252
254
255
256
257
258
259
260
261
262
262
263
263
263
264
264
264
264
264
264
264
264
264
263
263
263
263
262
262
262
262
262
262
262
262
262
262
262
262
262
262
262
263
263
263
263
263
264
264
264
264
264
264
264
264
264
264
264
264
264
264
263
263
263
263
263
262
262
262
262
261
261
261
261
260
260
260
259
259
259
258
258
257
257
256
256
255
255
254
253
252
252
251
250
249
248
247
246
245
243
242
241
240
239
237
236
235
233
232
231
229
228
226
225
223
222
220
218
217
215
213
212
210
208
207
205
203
201
200
198
196
195
193
191
190
188
186
185
183
182
180
178
177
175
173
172
170
168
166
165
163
161
159
157
155
153
151
149
147
144
142
139
137
134
132
129
126
124
121
118
116
113
110
108
105
102
100
97
94
91
88
85
82
80
77
74
71
68
65
62
59
56
54
51
48
45
42
40
37
34
32
29
27
24
22
20
17
15
13
11
10
8
6
5
3
2
0
-1
-2
-3
-4
-5
-6
-7
-7
-8
-8
-9
-9
-10
-10
-10
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-11
-10
-10
-10
-10
-9
-9
-8
-8
-7
-7
-6
-5
-5
-4
-3
-2
-2
-1
0
1
2
2
3
4
5
6
6
7
8
9
9
10
11
11
12
12
13
13
14
14
15
15
15
16
16
16
17
17
17
18
18
18
19
19
20
20
20
21
21
22
22
23
23
24
24
25
25
26
26
27
28
28
29
29
30
31
31
32
32
33
33
34
35
35
36
36
37
37
38
38
39
39
39
40
40
41
41
42
42
42
43
43
44
44
44
45
45
46
46
46
46
47
47
47
48
48
48
49
49
50
50
51
51
52
52
53
53
54
55
55
56
57
57
58
59
60
60
61
62
63
64
64
65
66
67
68
69
70
71
72
73
74
76
77
78
79
81
82
83
85
86
88
89
91
92
94
96
97
99
101
102
104
106
108
109
111
113
115
116
118
120
121
123
125
127
128
130
132
133
135
137
138
140
141
143
144
146
147
148
150
151
152
154
155
156
158
159
160
161
163
164
165
167
168
169
171
172
174
175
176
178
179
181
182
184
185
187
189
190
192
193
195
196
198
200
201
203
205
206
208
210
211
213
214
216
218
219
221
222
224
225
227
228
230
231
232
234
235
236
237
238
239
240
241
242
243
243
244
245
245
246
246
247
247
247
248
248
248
248
249
249
249
249
250
250
250
251
251
252
252
253
254
254
255
256
257
258
259
260
261
262
263
264
265
266
268
269
270
272
273
275
276
278
279
281
283
285
287
289
291
293
295
297
300
302
304
307
309
311
314
316
319
321
323
326
328
330
332
335
337
339
341
343
345
347
349
351
352
354
356
358
360
362
364
366
367
369
371
373
375
377
379
381
383
385
387
388
390
392
394
396
398
400
402
404
406
407
409
411
413
414
416
417
419
421
422
424
425
427
428
430
432
433
435
436
437
439
440
442
443
444
445
446
448
449
450
450
451
452
453
453
454
454
455
455
455
456
456
456
456
456
457
457
457
457
457
457
457
457
457
457
457
456
456
456
456
456
455
455
455
455
454
454
454
454
453
453
453
452
452
451
451
451
450
450
449
449
448
447
447
446
446
445
444
444
443
442
441
440
439
438
437
436
435
434
433
431
430
429
427
425
424
422
420
419
417
415
413
411
410
408
405
403
401
399
397
395
392
390
388
386
383
381
379
376
374
371
369
367
365
362
360
358
356
354
351
349
347
345
343
341
339
337
335
333
331
329
327
326
324
322
320
319
317
315
314
312
311
309
307
306
304
303
301
300
298
296
295
293
292
290
289
287
285
284
282
280
279
277
275
274
272
270
269
267
266
264
263
261
260
258
257
256
254
253
252
251
250
249
248
247
246
245
244
243
243
242
241
240
239
238
238
237
236
235
234
233
232
231
230
229
228
227
225
224
223
221
220
218
217
215
214
212
210
209
207
205
204
202
201
199
198
196
195
194
193
192
191
190
189
188
188
187
187
186
186
186
185
185
185
184
184
184
183
183
183
182
182
182
181
181
180
180
180
179
179
178
178
177
176
176
175
175
174
174
173
173
172
172
171
171
171
170
170
170
169
169
169
168
168
168
167
167
167
166
166
165
165
164
164
163
163
162
161
160
160
159
158
157
156
155
154
153
152
151
150
148
147
146
145
144
143
142
141
140
139
138
138
137
136
135
135
134
133
133
132
132
131
131
130
130
129
129
129
128
128
128
127
127
127
126
126
126
126
126
125
125
125
125
125
125
125
126
126
126
126
126
127
127
127
128
128
128
129
129
129
130
130
130
130
131
131
131
131
131
131
130
130
130
129
129
128
128
127
126
126
125
124
123
122
121
121
120
119
118
117
116
116
115
114
113
112
111
110
110
109
108
107
106
105
105
104
103
102
101
101
100
99
98
98
97
96
95
95
94
93
92
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
68
67
66
65
64
63
61
60
59
57
56
54
53
51
50
48
47
45
44
42
40
39
37
35
33
31
30
28
26
23
21
19
17
15
12
10
8
5
3
1
-2
-4
-7
-9
-12
-14
-17
-19
-22
-24
-27
-29
-32
-34
-37
-39
-41
-44
-46
-49
-51
-54
-56
-58
-61
-63
-65
-67
-70
-72
-74
-76
-78
-80
-81
-83
-85
-86
-88
-89
-91
-92
-93
-94
-95
-96
-96
-97
-97
-98
-98
-98
-98
-98
-98
-98
-97
-97
-97
-96
-95
-94
-94
-93
-92
-90
-89
-88
-87
-85
-84
-82
-81
-79
-78
-76
-74
-72
-71
-69
-67
-65
-63
-61
-59
-57
-55
-53
-51
-49
-47
-45
-42
-40
-38
-36
-34
-32
-30
-27
-25
-23
-21
-19
-17
-16
-14
-12
-10
-8
-7
-5
-3
-2
0
2
3
5
7
8
10
12
13
15
17
19
20
22
24
26
28
29
31
33
35
37
38
40
42
43
45
46
48
50
51
52
54
55
57
58
59
60
61
63
64
65
66
67
68
68
69
70
71
72
73
74
75
76
77
78
78
79
80
81
82
83
83
84
85
86
86
87
88
88
89
89
90
91
91
92
93
93
94
94
95
95
96
96
97
97
97
98
98
99
99
99
100
100
100
101
101
101
101
102
102
102
102
102
102
103
103
103
103
103
103
103
103
103
103
103
103
103
103
102
102
102
102
102
101
101
101
101
101
100
100
100
100
99
99
99
99
99
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
98
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
100
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
101
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
104
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
106
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
108
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
109
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
110
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
111
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
112
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
113
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
114
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
115
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
116
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
117
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
118
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
119
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
121
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
122
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
123
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
124
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
125
126
126
126
126
126
126
126
126
126
126
126
126
126
126
126
126
126
126
126
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
127
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
128
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
129
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
130
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
131
132
132
132
132
132
132
132
132
132
132
132
132
132
132
132
132
132
132
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
133
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
134
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
135
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
137
137
137
137
137
137
137
137
137
137
137
137
137
137
137
137
137
137
137
138
138
138
138
138
138
138
138
138
138
