5
2000
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
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
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-2
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-14
-14
-14
-14
-14
-14
-14
-15
-15
-15
-15
-15
-15
-15
-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
-13
-13
-13
-13
-13
-13
-12
-12
-12
-12
-12
-12
-11
-11
-11
-11
-11
-11
-10
-10
-10
-10
-10
-10
-9
-9
-9
-9
-9
-8
-8
-8
-8
-8
-7
-7
-7
-7
-7
-6
-6
-6
-6
-6
-5
-5
-5
-5
-5
-4
-4
-4
-4
-4
-4
-3
-3
-3
-3
-3
-3
-2
-2
-2
-2
-2
-2
-1
-1
-1
-1
-1
-1
0
0
0
0
0
0
1
1
1
1
1
1
2
2
2
2
2
3
3
3
3
3
3
3
4
4
4
4
4
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
9
9
9
9
10
10
10
10
10
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
13
13
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
18
18
18
18
18
19
19
19
19
19
19
19
19
19
19
20
20
20
20
20
20
20
20
21
21
21
21
21
21
21
21
22
22
22
22
22
22
23
23
23
23
23
23
24
24
24
24
24
24
25
25
25
25
25
25
26
26
26
26
26
27
27
27
27
27
27
28
28
28
28
28
28
28
29
29
29
29
29
29
29
29
29
29
29
29
29
29
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
33
33
33
33
33
33
33
33
33
34
34
34
34
34
34
34
34
35
35
35
35
35
35
35
36
36
36
36
36
36
36
37
37
37
37
37
37
37
38
38
38
38
38
38
38
38
39
39
39
39
39
39
39
40
40
40
40
40
40
40
40
40
40
40
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
41
41
41
41
41
41
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
37
37
37
37
37
37
37
37
37
37
37
37
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
38
38
38
38
38
38
38
38
38
38
38
38
38
39
39
39
39
39
39
39
39
39
39
39
39
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
41
41
41
41
41
41
41
41
41
41
41
41
41
41
41
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
46
46
46
46
46
46
46
46
46
46
46
46
46
47
47
47
47
47
47
47
47
47
47
47
47
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
49
49
49
49
49
49
49
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
49
49
49
49
49
49
49
49
49
49
48
48
48
48
48
48
48
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
52
52
52
52
52
52
52
52
52
52
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
51
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
50
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
49
48
48
48
48
48
48
48
48
48
48
47
47
47
47
47
47
47
47
47
47
47
46
46
46
46
46
46
46
46
46
46
46
46
45
45
45
45
45
45
45
45
44
44
44
44
44
44
44
44
44
44
43
43
43
43
43
43
43
43
43
42
42
42
42
42
42
42
42
42
41
41
41
41
41
41
41
41
41
40
40
40
40
40
40
40
40
40
40
39
39
39
39
39
39
39
39
39
39
39
39
39
39
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
35
35
35
35
35
35
35
35
35
35
35
35
35
34
34
34
34
34
34
34
34
34
34
33
33
33
33
33
33
33
33
33
33
32
32
32
32
32
32
32
32
32
31
31
31
31
31
31
31
31
31
31
31
30
30
30
30
30
30
30
30
30
30
30
30
29
29
29
29
29
29
29
29
29
29
29
29
29
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
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
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
23
23
23
23
23
23
23
23
23
23
23
23
22
22
22
22
22
22
22
22
22
22
22
22
22
22
22
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
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
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
20
20
20
20
20
20
20
20
20
20
20
20
20
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
17
17
17
17
17
17
17
17
17
17
17
17
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
14
14
14
14
14
14
14
14
14
14
14
14
14
14
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
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
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
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
9
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
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
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
16
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
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
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
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
21
21
21
21
22
22
22
22
22
22
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
23
23
23
23
23
23
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
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
26
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
28
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
30
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
33
33
33
33
33
33
33
33
33
33
33
33
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
39
39
39
39
39
39
39
39
39
39
39
39
39
39
40
40
40
40
40
40
40
40
40
40
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
41
41
41
41
41
41
41
41
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
36
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
35
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
33
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
33
33
33
33
33
33
33
33
33
33
33
33
33
34
34
34
34
34
34
34
34
34
34
34
34
34
35
35
35
35
35
35
35
35
35
35
35
35
35
35
36
36
36
36
36
36
36
36
36
36
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
37
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
38
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
39
40
40
40
40
40
40
40
40
40
40
40
40
40
40
41
41
41
41
41
41
41
41
41
41
41
41
41
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
46
46
46
46
46
46
46
46
46
46
46
46
46
46
47
47
47
47
47
47
47
47
47
47
47
47
48
48
48
48
48
48
48
48
48
49
49
49
49
49
49
49
49
50
50
50
50
50
50
50
51
51
51
51
51
51
51
51
52
52
52
52
52
52
52
53
53
53
53
53
53
53
53
53
53
54
54
54
54
54
54
54
54
55
55
55
55
55
55
55
55
55
55
55
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
57
57
57
57
57
57
57
57
57
57
57
57
58
58
58
58
58
58
58
58
58
58
58
58
58
59
59
59
59
59
59
59
59
59
59
59
59
60
60
60
60
60
60
60
60
60
60
60
61
61
61
61
61
61
61
61
61
61
61
62
62
62
62
62
62
62
62
62
62
63
63
63
63
63
63
63
63
63
64
64
64
64
64
64
64
64
64
65
65
65
65
65
65
65
65
66
66
66
66
66
66
66
66
66
66
67
67
67
67
67
67
67
67
67
68
68
68
68
68
68
68
68
68
68
69
69
69
69
69
69
69
69
69
69
70
70
70
70
70
70
70
70
70
70
70
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
71
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
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
73
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
74
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
75
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
76
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
78
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
79
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
81
81
81
81
81
81
81
81
81
81
81
81
81
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
82
83
83
83
83
83
83
83
83
83
83
83
83
83
84
84
84
84
84
84
84
84
84
84
84
84
84
84
85
85
85
85
85
85
85
85
85
85
85
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
88
88
88
88
88
88
88
88
88
88
88
88
88
88
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
91
90
90
90
90
91
91
91
91
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
90
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
89
88
88
88
88
88
88
88
88
88
88
88
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
86
86
86
86
86
86
86
86
86
86
86
85
85
85
85
85
85
85
85
85
85
84
84
84
84
84
84
84
84
84
84
83
83
83
83
83
83
83
83
82
82
82
82
82
82
82
82
81
81
81
81
81
81
81
81
81
81
81
81
80
80
80
80
80
80
80
80
80
80
80
80
79
79
79
79
79
79
79
79
78
78
78
78
78
78
78
78
78
77
77
77
77
77
77
76
76
76
76
76
76
75
75
75
75
75
75
75
75
75
75
74
74
74
74
74
74
74
74
74
73
73
73
73
73
73
73
73
73
73
72
72
72
72
72
72
72
72
71
71
71
71
71
71
71
71
71
70
70
70
70
70
70
70
70
70
70
70
70
70
69
69
69
69
69
69
69
69
69
69
69
69
69
69
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
68
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
67
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
66
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
65
64
64
64
64
64
64
64
64
64
64
64
64
64
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
62
62
62
62
62
62
62
62
62
62
62
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
58
58
58
58
58
58
58
58
59
59
59
59
59
59
59
59
59
59
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
59
59
59
59
59
59
59
59
59
59
59
60
60
60
60
60
60
61
61
61
61
61
62
62
62
63
63
63
64
64
65
65
66
66
67
68
68
69
70
71
72
72
73
74
75
75
76
77
78
78
79
80
80
81
82
82
83
84
84
85
86
86
87
87
88
88
89
89
89
89
89
89
89
88
87
87
86
85
85
84
84
83
83
83
83
83
83
84
84
85
85
86
86
87
87
88
88
88
88
88
88
89
89
89
89
89
90
90
91
92
93
94
95
96
97
97
98
98
98
98
97
97
96
95
94
93
92
91
91
90
89
88
87
86
85
84
83
82
81
80
78
77
76
75
74
72
71
70
69
68
67
66
65
64
63
62
62
61
61
61
60
60
61
61
61
62
63
63
64
64
65
65
65
65
65
66
66
67
68
70
71
73
74
76
77
79
80
81
82
84
85
86
88
89
91
93
94
96
97
99
100
101
103
104
105
106
107
108
109
110
112
114
116
118
120
121
123
125
127
129
131
133
135
138
140
143
146
149
152
154
157
160
163
165
168
171
174
178
182
186
190
194
199
204
208
213
217
222
226
231
235
240
244
248
253
258
263
268
274
280
286
293
299
306
313
319
325
331
337
342
347
352
356
360
364
368
372
377
382
387
392
397
402
407
411
415
418
421
423
425
427
430
433
436
440
444
448
453
457
461
465
468
471
473
475
477
479
481
483
485
487
490
493
496
499
501
504
506
508
510
511
512
513
514
514
515
515
515
515
515
515
516
516
516
516
516
516
516
515
514
513
512
510
509
507
505
502
499
495
491
487
482
478
473
469
465
461
458
455
453
450
446
442
436
429
422
414
406
398
391
385
379
374
370
366
362
358
355
351
347
342
337
332
328
323
319
315
310
305
300
295
290
284
279
273
267
262
257
252
248
244
240
236
231
225
219
211
203
194
185
176
166
156
145
135
125
116
108
102
96
92
89
87
84
82
79
76
73
69
65
61
57
53
48
42
37
31
25
19
13
8
4
0
-3
-5
-7
-8
-9
-9
-10
-12
-14
-16
-19
-21
-23
-24
-25
-25
-25
-24
-24
-24
-24
-24
-25
-26
-28
-29
-31
-33
-34
-35
-36
-37
-37
-37
-37
-36
-35
-33
-32
-30
-28
-27
-26
-25
-25
-25
-25
-26
-27
-27
-28
-29
-31
-32
-34
-36
-37
-38
-39
-39
-39
-39
-38
-36
-34
-31
-28
-24
-20
-16
-13
-11
-9
-9
-9
-9
-10
-11
-12
-12
-12
-12
-12
-11
-10
-8
-5
-2
2
6
10
14
18
22
25
28
31
35
39
43
49
55
61
67
74
80
86
91
96
99
102
104
106
108
109
110
111
113
115
116
118
120
121
123
124
125
126
127
128
128
128
129
129
128
128
127
127
126
126
127
127
128
129
130
131
133
134
135
136
138
140
142
144
145
146
147
147
147
147
146
145
145
144
143
142
142
142
142
143
144
145
145
145
145
144
143
142
141
139
137
135
132
129
127
124
121
119
117
116
114
114
114
114
115
116
117
118
118
118
118
117
117
116
116
116
115
114
113
112
111
110
110
110
110
110
109
109
109
110
111
113
114
116
118
119
120
120
120
120
119
117
115
113
110
107
104
101
97
94
90
87
83
79
75
71
67
63
59
56
53
51
49
48
46
44
42
39
36
33
31
28
27
25
24
23
23
24
26
28
31
34
37
39
41
42
43
44
44
45
45
46
47
48
49
50
51
52
52
52
51
51
50
49
48
47
46
45
43
41
39
37
36
34
32
30
29
27
25
23
22
21
19
18
18
17
16
16
15
14
14
13
13
13
13
13
14
14
14
14
15
16
17
20
22
25
29
32
35
38
41
44
46
48
50
51
52
53
54
55
56
58
59
61
63
64
65
66
66
66
65
63
60
57
52
47
41
35
28
21
13
6
-2
-8
-15
-21
-27
-33
-38
-42
-47
-51
-56
-60
-64
-68
-72
-76
-80
-83
-87
-90
-94
-97
-100
-103
-105
-108
-110
-112
-114
-116
-118
-120
-122
-123
-125
-127
-128
-131
-133
-136
-139
-142
-146
-150
-154
-158
-163
-168
-173
-180
-187
-195
-204
-214
-224
-235
-247
-259
-271
-283
-296
-308
-320
-332
-343
-354
-364
-373
-381
-389
-396
-403
-409
-416
-422
-428
-434
-440
-445
-451
-456
-461
-466
-472
-477
-483
-489
-495
-501
-508
-513
-519
-524
-528
-532
-536
-539
-542
-544
-547
-549
-551
-553
-556
-559
-561
-564
-567
-569
-571
-572
-573
-573
-573
-573
-572
-571
-570
-570
-570
-569
-569
-569
-568
-567
-565
-563
-560
-556
-552
-547
-542
-537
-531
-525
-519
-512
-504
-496
-488
-479
-470
-461
-452
-444
-435
-426
-418
-409
-401
-392
-382
-372
-361
-350
-338
-325
-311
-297
-282
-267
-252
-236
-220
-203
-187
-171
-154
-137
-120
-102
-84
-66
-47
-29
-10
8
26
45
63
81
100
119
139
159
179
199
219
240
260
280
301
321
342
363
384
406
428
451
473
496
519
541
563
583
603
622
640
657
673
688
703
718
732
747
762
777
793
809
825
842
859
876
894
911
928
946
963
980
997
1014
1030
1046
1062
1078
1093
1107
1121
1135
1148
1160
1172
1184
1196
1208
1219
1231
1242
1253
1264
1275
1285
1295
1305
1314
1323
1332
1341
1348
1355
1362
1367
1373
1377
1381
1385
1388
1391
1394
1396
1398
1400
1401
1402
1403
1403
1403
1403
1402
1401
1400
1399
1397
1395
1392
1389
1386
1382
1378
1373
1368
1363
1358
1353
1347
1342
1338
1333
1329
1325
1322
1318
1315
1311
1307
1303
1299
1294
1289
1284
1279
1274
1268
1262
1256
1251
1245
1239
1234
1228
1223
1218
1212
1207
1201
1196
1191
1185
1180
1175
1170
1164
1159
1153
1146
1140
1133
1126
1119
1111
1103
1096
1088
1080
1071
1063
1054
1044
1033
1022
1010
999
987
974
962
948
935
921
906
891
875
860
844
829
813
799
784
770
757
744
732
721
710
700
690
682
674
666
660
653
647
640
634
629
623
618
613
609
605
602
599
596
592
589
586
583
580
576
573
569
565
562
558
555
553
550
548
546
543
541
539
536
533
530
526
522
517
513
508
503
498
493
489
485
483
480
479
478
477
476
476
476
476
476
477
477
478
479
480
481
482
484
486
489
492
495
499
503
507
512
516
521
526
531
535
540
545
549
554
558
562
566
570
574
577
580
582
584
586
587
587
587
587
587
586
585
585
585
585
585
585
586
586
587
587
588
588
589
590
592
593
596
598
600
602
604
605
605
605
604
602
599
596
593
590
586
583
580
577
574
572
570
568
567
566
565
564
564
563
563
563
563
563
563
564
564
566
567
569
571
573
575
576
578
579
579
580
580
579
579
578
577
576
574
572
569
566
562
558
553
548
542
536
530
523
516
510
504
498
492
487
482
477
472
468
464
459
455
450
445
439
434
428
421
415
408
400
392
383
375
366
357
349
341
333
325
317
310
302
295
287
280
272
265
258
251
244
237
231
225
219
213
207
201
196
191
186
181
176
172
168
165
161
158
155
153
150
148
146
144
141
139
137
134
132
129
126
123
120
116
111
107
101
96
89
82
75
68
60
52
44
36
28
20
12
4
-5
-13
-21
-29
-37
-46
-54
-62
-71
-80
-89
-98
-107
-117
-126
-134
-143
-151
-158
-165
-172
-179
-185
-191
-197
-203
-209
-214
-219
-224
-229
-233
-238
-242
-247
-252
-258
-263
-269
-276
-283
-289
-296
-303
-310
-317
-324
-331
-338
-345
-352
-359
-366
-374
-382
-391
-400
-409
-419
-430
-441
-452
-464
-475
-488
-500
-512
-525
-537
-549
-560
-571
-582
-593
-603
-613
-622
-632
-641
-649
-658
-667
-676
-684
-693
-701
-710
-718
-726
-734
-741
-748
-754
-760
-766
-771
-776
-780
-784
-788
-792
-795
-798
-802
-805
-808
-811
-815
-818
-822
-825
-829
-833
-836
-840
-843
-846
-849
-851
-854
-856
-858
-860
-862
-863
-864
-866
-866
-867
-868
-868
-869
-869
-870
-870
-870
-870
-870
-869
-868
-867
-866
-865
-863
-861
-860
-858
-856
-854
-852
-851
-849
-848
-847
-846
-845
-844
-844
-843
-841
-840
-837
-835
-832
-828
-824
-819
-814
-808
-802
-795
-788
-781
-773
-766
-758
-750
-741
-733
-725
-717
-709
-701
-693
-686
-678
-671
-664
-657
-651
-644
-637
-631
-625
-619
-613
-607
-602
-596
-591
-586
-581
-576
-572
-567
-562
-558
-553
-547
-542
-536
-530
-524
-518
-512
-506
-500
-494
-489
-483
-477
-472
-467
-461
-456
-451
-446
-441
-436
-431
-425
-420
-414
-409
-404
-400
-396
-393
-389
-387
-384
-381
-379
-377
-375
-373
-372
-371
-370
-370
-369
-370
-370
-370
-371
-372
-373
-374
-375
-376
-378
-380
-382
-384
-387
-389
-393
-396
-400
-404
-409
-414
-419
-424
-430
-435
-441
-446
-451
-456
-461
-466
-470
-475
-479
-483
-488
-492
-495
-499
-502
-506
-509
-511
-514
-516
-518
-519
-521
-522
-523
-523
-524
-525
-525
-526
-527
-528
-529
-529
-530
-531
-531
-531
-531
-531
-531
-531
-531
-530
-530
-530
-530
-530
-530
-530
-530
-531
-532
-533
-535
-536
-538
-540
-542
-543
-544
-544
-544
-543
-541
-539
-536
-532
-528
-523
-518
-513
-507
-501
-495
-488
-482
-475
-468
-462
-455
-448
-442
-436
-430
-424
-419
-413
-409
-404
-400
-396
-392
-388
-385
-382
-380
-378
-377
-376
-376
-377
-377
-378
-379
-381
-382
-383
-384
-385
-387
-388
-389
-391
-392
-394
-396
-398
-401
-403
-405
-408
-410
-412
-414
-416
-418
-420
-423
-425
-426
-428
-430
-431
-432
-433
-433
-433
-433
-433
-432
-431
-430
-429
-427
-425
-423
-421
-419
-416
-414
-411
-408
-406
-403
-400
-397
-394
-391
-389
-386
-384
-383
-382
-381
-380
-380
-380
-380
-381
-382
-384
-386
-388
-392
-395
-400
-405
-410
-416
-423
-430
-438
-447
-455
-465
-474
-484
-495
-505
-516
-526
-537
-548
-559
-569
-580
-591
-601
-612
-623
-635
-646
-659
-672
-685
-698
-712
-726
-740
-755
-770
-785
-800
-816
-832
-849
-866
-883
-901
-919
-937
-955
-974
-994
-1014
-1036
-1058
-1081
-1105
-1130
-1156
-1182
-1208
-1235
-1262
-1289
-1316
-1342
-1368
-1394
-1419
-1444
-1468
-1492
-1515
-1538
-1561
-1583
-1605
-1626
-1646
-1666
-1685
-1703
-1721
-1737
-1753
-1768
-1782
-1796
-1808
-1820
-1831
-1842
-1852
-1861
-1870
-1877
-1884
-1890
-1894
-1898
-1900
-1901
-1901
-1900
-1897
-1893
-1888
-1882
-1874
-1865
-1856
-1845
-1834
-1821
-1808
-1795
-1781
-1766
-1750
-1733
-1716
-1698
-1680
-1660
-1640
-1619
-1597
-1574
-1550
-1525
-1500
-1474
-1448
-1422
-1395
-1368
-1342
-1316
-1290
-1265
-1240
-1216
-1192
-1170
-1148
-1126
-1106
-1086
-1068
-1049
-1032
-1014
-999
-983
-968
-953
-939
-925
-912
-899
-886
-874
-861
-849
-837
-825
-813
-801
-789
-777
-764
-751
-737
-722
-707
-691
-674
-656
-638
-618
-598
-577
-555
-532
-509
-484
-459
-433
-406
-379
-351
-322
-293
-263
-233
-202
-171
-140
-108
-76
-44
-11
22
55
88
121
155
189
223
256
290
324
357
390
422
455
486
518
548
578
608
637
665
692
719
745
770
794
817
840
862
884
906
927
948
968
988
1008
1028
1047
1065
1083
1100
1117
1133
1148
1163
1177
1191
1204
1216
1228
1239
1249
1257
1265
1271
1276
1280
1283
1284
1285
1284
1283
1281
1278
1275
1271
1266
1260
1253
1246
1238
1230
1220
1209
1198
1185
1171
1157
1141
1124
1107
1089
1070
1051
1032
1012
993
973
953
933
912
892
872
852
833
813
795
777
761
745
731
718
706
696
687
679
673
668
665
663
662
662
663
665
667
670
673
676
678
680
681
681
680
678
674
668
661
653
643
631
618
604
588
571
553
535
515
494
474
452
431
409
387
364
341
318
294
269
244
219
192
165
137
107
77
45
12
-22
-57
-94
-132
-170
-209
-249
-288
-328
-367
-405
-442
-478
-513
-546
-578
-608
-636
-663
-688
-711
-732
-752
-770
-787
-802
-816
-830
-842
-853
-864
-874
-883
-891
-899
-906
-912
-917
-922
-925
-927
-927
-927
-925
-922
-918
-912
-906
-898
-890
-881
-871
-861
-850
-838
-827
-815
-803
-792
-780
-768
-757
-746
-735
-724
-713
-702
-692
-681
-671
-661
-651
-641
-632
-623
-614
-606
-598
-591
-584
-578
-572
-566
-561
-557
-552
-548
-545
-541
-538
-536
-533
-531
-529
-526
-523
-520
-516
-512
-507
-502
-496
-489
-482
-475
-467
-459
-451
-443
-435
-427
-420
-413
-408
-403
-399
-396
-394
-393
-392
-392
-393
-394
-395
-397
-398
-399
-400
-400
-400
-400
-399
-397
-395
-392
-389
-386
-381
-377
-372
-366
-360
-354
-347
-340
-333
-325
-317
-308
-300
-291
-282
-272
-262
-252
-242
-232
-221
-211
-200
-190
-179
-169
-158
-147
-136
-125
-114
-102
-90
-77
-65
-52
-38
-25
-11
2
16
29
41
54
66
77
89
99
110
120
129
139
149
158
168
177
186
194
203
211
219
226
233
240
246
251
257
261
266
269
272
275
277
279
280
281
281
282
282
283
284
285
287
289
292
296
301
307
313
321
329
338
347
357
367
378
388
399
409
419
429
439
449
457
466
474
481
488
494
500
505
510
515
519
522
525
528
531
534
536
538
540
542
543
545
546
547
547
547
546
545
543
540
536
532
527
522
515
509
502
495
488
480
473
467
461
455
450
445
442
439
437
437
437
438
441
445
450
456
464
473
483
494
505
518
531
544
557
570
583
595
606
617
627
635
643
650
656
661
664
667
669
670
670
669
668
666
664
661
657
653
648
643
637
630
623
615
606
596
585
574
561
547
532
516
498
480
461
441
420
398
375
351
326
301
274
248
220
193
165
138
110
83
56
29
3
-22
-47
-70
-93
-115
-135
-155
-174
-192
-209
-225
-241
-256
-271
-285
-299
-313
-326
-339
-351
-362
-373
-384
-393
-402
-410
-418
-424
-429
-434
-437
-440
-442
-443
-443
-443
-443
-442
-441
-440
-439
-438
-437
-437
-437
-437
-438
-438
-440
-441
-442
-444
-445
-446
-447
-448
-448
-448
-448
-447
-447
-446
-444
-443
-442
-441
-439
-438
-437
-437
-437
-437
-438
-439
-440
-442
-444
-445
-447
-449
-451
-452
-454
-455
-455
-456
-456
-456
-456
-456
-455
-454
-453
-452
-450
-448
-446
-444
-441
-438
-435
-432
-428
-425
-421
-417
-413
-410
-406
-403
-399
-396
-393
-390
-386
-383
-380
-377
-374
-371
-367
-363
-359
-354
-349
-343
-336
-329
-320
-311
-300
-289
-277
-263
-249
-234
-217
-200
-181
-162
-142
-121
-100
-78
-55
-33
-10
13
37
60
83
106
129
151
173
195
216
236
255
273
289
305
319
332
344
354
362
369
374
378
380
380
379
376
372
367
361
353
345
336
327
317
308
298
289
280
271
263
256
249
243
238
234
231
229
227
227
227
227
229
231
234
237
241
245
249
254
260
266
272
278
285
291
299
306
313
321
329
337
345
354
362
370
379
388
396
405
414
423
432
441
451
461
471
481
491
501
511
521
531
541
550
559
567
575
582
589
595
601
607
611
615
619
622
625
626
628
628
628
627
626
624
622
618
615
611
607
602
598
593
588
583
577
572
566
560
554
548
541
534
527
520
512
504
496
487
479
471
462
454
446
438
430
423
416
410
404
399
394
389
385
381
377
374
370
368
365
363
361
359
358
357
357
358
358
360
361
364
366
369
373
377
381
386
391
396
402
408
414
420
427
434
441
449
456
465
473
483
493
503
514
526
538
551
564
578
592
606
621
635
650
665
680
695
710
724
739
753
768
782
796
810
824
838
852
866
879
893
906
919
932
944
957
969
981
992
1004
1014
1025
1036
1046
1057
1066
1076
1086
1095
1105
1114
1124
1133
1142
1152
1162
1172
1182
1192
1203
1214
1226
1238
1250
1263
1276
1290
1304
1319
1335
1351
1367
1384
1402
1419
1437
1455
1474
1492
1510
1528
1547
1565
1582
1600
1618
1635
1652
1669
1685
1701
1717
1732
1747
1761
1775
1788
1801
1813
1824
1835
1845
1856
1865
1875
1884
1893
1902
1911
1919
1927
1935
1943
1950
1957
1964
1970
1975
1980
1985
1988
1992
1994
1996
1998
1999
2000
2000
2000
2000
2000
2000
1999
1999
1998
1997
1995
1994
1992
1990
1988
1985
1982
1978
1974
1970
1965
1959
1953
1946
1938
1930
1921
1911
1901
1890
1878
1866
1853
1840
1827
1814
1800
1787
1774
1760
1747
1734
1721
1709
1697
1685
1673
1662
1650
1639
1628
1618
1607
1596
1585
1574
1563
1552
1541
1529
1517
1505
1492
1480
1467
1453
1440
1426
1412
1398
1383
1369
1355
1341
1327
1313
1300
1287
1275
1263
1252
1241
1231
1222
1213
1204
1196
1189
1182
1176
1170
1165
1159
1154
1150
1145
1141
1137
1133
1130
1126
1123
1119
1116
1113
1110
1107
1105
1103
1100
1098
1096
1095
1093
1092
1091
1091
1091
1091
1092
1093
1095
1097
1100
1103
1107
1111
1116
1121
1127
1133
1139
1146
1153
1160
1167
1175
1184
1192
1201
1211
1220
1231
1241
1252
1263
1275
1287
1299
1311
1324
1337
1351
1365
1379
1394
1410
1425
1441
1458
1475
1492
1509
1527
1545
1563
1581
1599
1617
1635
1654
1672
1690
1707
1724
1741
1757
1772
1787
1800
1813
1824
1835
1845
1854
1862
1869
1875
1880
1885
1889
1892
1895
1897
1899
1901
1902
1903
1903
1903
1903
1902
1902
1901
1900
1898
1897
1895
1894
1892
1890
1887
1885
1882
1879
1876
1873
1869
1865
1860
1855
1850
1844
1838
1832
1825
1818
1811
1803
1795
1788
1780
1772
1764
1757
1749
1742
1736
1729
1723
1718
1713
1708
1703
1699
1695
1692
1688
1685
1681
1677
1673
1669
1665
1660
1655
1649
1643
1636
1629
1622
1614
1606
1598
1589
1580
1572
1563
1554
1545
1536
1528
1519
1510
1502
1493
1484
1476
1467
1457
1448
1438
1429
1418
1408
1397
1386
1374
1362
1350
1338
1326
1313
1301
1288
1276
1264
1252
1240
1228
1217
1205
1195
1184
1173
1163
1153
1143
1133
1123
1114
1104
1095
1086
1077
1068
1060
1051
1043
1036
1028
1020
1014
1008
1002
996
990
985
980
975
971
966
962
958
954
951
948
945
943
941
940
939
939
938
939
939
940
941
943
945
947
949
952
955
958
961
965
968
972
976
979
983
987
991
994
998
1000
1004
1008
1010
1012
1014
1018
1020
1022
1022
1025
1026
1027
1027
1028
1028
1028
1027
1026
1025
1024
1022
1020
1018
1016
1012
1008
1004
1000
997
992
986
980
974
968
961
954
946
938
930
921
912
902
892
882
872
861
850
839
827
816
804
792
780
768
756
744
732
719
707
695
683
671
660
649
638
627
617
607
597
587
578
568
559
550
541
532
523
514
505
496
487
478
469
460
452
443
434
424
415
406
396
386
375
365
354
343
331
320
308
296
284
272
259
247
235
222
210
197
185
172
159
147
134
122
110
97
85
74
62
51
40
29
18
8
-2
-12
-21
-31
-40
-49
-58
-67
-76
-84
-93
-102
-111
-120
-129
-139
-149
-158
-168
-179
-189
-200
-210
-221
-232
-243
-254
-265
-276
-287
-298
-308
-318
-328
-338
-348
-357
-367
-375
-384
-391
-399
-406
-412
-418
-424
-429
-433
-437
-440
-442
-444
-445
-446
-445
-444
-442
-440
-437
-433
-428
-422
-416
-409
-402
-394
-385
-376
-366
-356
-346
-335
-324
-313
-302
-291
-279
-268
-257
-246
-235
-224
-214
-204
-194
-184
-175
-165
-157
-148
-139
-131
-123
-115
-107
-100
-93
-86
-79
-73
-67
-62
-56
-51
-47
-43
-39
-35
-32
-30
-28
-26
-25
-24
-24
-24
-24
-25
-25
-27
-28
-29
-31
-33
-36
-39
-42
-45
-49
-54
-58
-63
-69
-75
-81
-88
-96
-104
-113
-122
-132
-143
-154
-165
-177
-190
-203
-216
-230
-244
-258
-272
-287
-301
-316
-331
-346
-360
-375
-390
-404
-419
-433
-447
-461
-475
-488
-502
-515
-528
-541
-553
-566
-578
-591
-603
-615
-626
-638
-649
-660
-670
-681
-690
-700
-709
-718
-726
-734
-741
-749
-755
-762
-768
-774
-779
-784
-788
-793
-796
-800
-803
-806
-809
-811
-814
-816
-818
-820
-822
-824
-826
-827
-829
-831
-833
-835
-837
-838
-840
-842
-844
-847
-849
-851
-854
-856
-859
-862
-865
-869
-872
-875
-879
-882
-886
-889
-893
-896
-899
-902
-905
-907
-909
-912
-913
-915
-916
-917
-917
-918
-918
-917
-916
-915
-914
-912
-910
-908
-905
-902
-898
-895
-890
-885
-880
-874
-868
-862
-855
-848
-840
-832
-823
-815
-806
-796
-787
-777
-767
-757
-747
-737
-727
-717
-706
-696
-686
-675
-665
-655
-644
-634
-624
-614
-603
-593
-583
-573
-563
-553
-543
-534
-524
-514
-504
-494
-483
-473
-463
-453
-444
-434
-424
-414
-405
-395
-386
-377
-369
-360
-352
-344
-336
-328
-320
-313
-306
-299
-292
-285
-279
-272
-266
-260
-254
-249
-243
-237
-232
-227
-222
-217
-212
-207
-201
-196
-191
-186
-180
-175
-169
-164
-158
-152
-146
-140
-134
-127
-121
-115
-109
-103
-97
-91
-85
-79
-74
-69
-64
-59
-55
-51
-47
-44
-41
-38
-36
-34
-32
-31
-29
-28
-28
-27
-27
-26
-26
-26
-27
-27
-27
-28
-29
-30
-31
-32
-34
-35
-37
-39
-41
-43
-45
-48
-51
-54
-57
-61
-65
-70
-74
-80
-85
-91
-98
-104
-111
-118
-126
-134
-142
-150
-158
-167
-176
-185
-194
-203
-213
-223
-233
-243
-253
-263
-274
-284
-295
-306
-317
-328
-339
-350
-362
-374
-386
-398
-410
-423
-436
-449
-462
-476
-490
-504
-518
-533
-548
-562
-577
-591
-606
-620
-634
-648
-662
-675
-688
-701
-714
-726
-738
-749
-760
-771
-782
-793
-803
-814
-824
-834
-844
-855
-865
-875
-885
-896
-906
-917
-927
-938
-949
-959
-971
-982
-993
-1004
-1016
-1028
-1040
-1052
-1065
-1077
-1090
-1102
-1114
-1127
-1139
-1151
-1163
-1175
-1187
-1198
-1209
-1220
-1230
-1240
-1251
-1260
-1270
-1280
-1290
-1300
-1309
-1319
-1329
-1340
-1350
-1360
-1371
-1382
-1393
-1404
-1415
-1426
-1437
-1448
-1459
-1471
-1482
-1493
-1505
-1516
-1527
-1539
-1550
-1561
-1572
-1583
-1594
-1605
-1616
-1626
-1636
-1646
-1656
-1666
-1675
-1684
-1692
-1700
-1708
-1715
-1723
-1729
-1736
-1742
-1747
-1752
-1757
-1761
-1765
-1769
-1772
-1775
-1778
-1780
-1782
-1784
-1786
-1787
-1789
-1790
-1791
-1792
-1793
-1795
-1796
-1797
-1798
-1799
-1800
-1801
-1802
-1803
-1803
-1804
-1804
-1804
-1804
-1804
-1803
-1802
-1801
-1799
-1797
-1795
-1792
-1789
-1785
-1780
-1775
-1770
-1764
-1757
-1750
-1743
-1735
-1726
-1718
-1708
-1699
-1689
-1678
-1668
-1657
-1646
-1634
-1622
-1610
-1597
-1584
-1571
-1557
-1543
-1529
-1514
-1499
-1484
-1469
-1453
-1436
-1420
-1403
-1386
-1369
-1351
-1333
-1316
-1298
-1280
-1262
-1243
-1225
-1207
-1189
-1171
-1153
-1135
-1118
-1100
-1083
-1065
-1048
-1031
-1014
-998
-981
-964
-948
-932
-915
-899
-883
-867
-851
-835
-820
-804
-789
-774
-758
-743
-728
-713
-699
-684
-669
-654
-639
-624
-609
-594
-579
-563
-548
-532
-517
-501
-485
-469
-453
-436
-420
-404
-388
-372
-356
-340
-325
-309
-294
-279
-265
-250
-236
-222
-209
-196
-183
-171
-159
-148
-138
-127
-118
-108
-100
-91
-83
-76
-68
-61
-55
-49
-43
-37
-32
-27
-22
-18
-14
-10
-6
-2
1
4
7
10
13
15
18
20
23
25
27
29
31
33
35
37
38
39
40
41
42
43
43
43
42
41
39
38
35
32
29
25
20
15
9
3
-4
-11
-18
-26
-35
-43
-52
-62
-71
-81
-91
-102
-112
-123
-134
-145
-156
-168
-179
-191
-202
-214
-226
-238
-250
-262
-275
-287
-299
-312
-324
-337
-349
-362
-374
-387
-400
-412
-425
-437
-450
-462
-474
-487
-499
-511
-523
-535
-546
-558
-569
-580
-591
-602
-612
-623
-633
-642
-652
-661
-669
-677
-685
-693
-700
-707
-714
-721
-727
-733
-739
-744
-750
-755
-760
-765
-770
-774
-779
-784
-788
-792
-797
-801
-806
-810
-815
-819
-823
-828
-832
-836
-841
-845
-850
-854
-858
-863
-867
-871
-875
-879
-883
-887
-891
-894
-898
-901
-904
-907
-910
-912
-914
-916
-918
-919
-920
-921
-921
-921
-921
-920
-920
-919
-917
-916
-914
-912
-911
-909
-907
-905
-903
-901
-899
-897
-896
-894
-893
-892
-892
-892
-892
-892
-893
-894
-895
-896
-898
-900
-902
-904
-906
-909
-911
-914
-917
-920
-922
-925
-928
-931
-934
-937
-940
-942
-945
-948
-950
-953
-956
-958
-961
-963
-966
-968
-971
-973
-975
-977
-980
-981
-983
-985
-987
-988
-990
-991
-992
-993
-993
-994
-994
-994
-993
-992
-991
-989
-987
-985
-982
-979
-976
-972
-968
-964
-959
-954
-949
-944
-938
-932
-926
-919
-912
-905
-898
-891
-883
-876
-868
-859
-851
-843
-834
-825
-817
-808
-799
-790
-780
-771
-762
-753
-744
-734
-725
-715
-705
-695
-685
-675
-665
-655
-645
-634
-623
-613
-602
-591
-580
-569
-558
-546
-534
-522
-510
-497
-485
-471
-458
-444
-430
-416
-401
-386
-371
-356
-340
-323
-307
-290
-273
-256
-238
-221
-203
-185
-167
-149
-131
-113
-95
-78
-60
-42
-25
-7
10
27
44
61
78
94
111
127
143
158
174
189
204
218
233
247
261
274
287
300
313
325
337
349
361
372
384
395
406
416
427
437
447
456
466
475
484
493
501
509
517
525
532
538
545
551
557
563
568
573
578
583
587
591
595
599
602
606
609
612
616
619
623
626
630
634
638
642
646
651
655
660
665
670
676
681
687
693
700
706
713
719
726
733
740
748
755
762
769
777
784
791
798
805
812
819
825
832
838
844
849
855
860
865
870
875
879
883
888
892
895
899
903
907
911
914
918
922
926
930
934
938
943
947
952
957
961
966
971
976
981
985
990
995
1000
1004
1008
1014
1018
1022
1027
1031
1036
1040
1043
1047
1050
1053
1056
1059
1061
1063
1064
1065
1066
1066
1066
1065
1063
1061
1059
1056
1052
1048
1043
1038
1032
1026
1018
1012
1004
997
989
981
973
965
956
948
940
932
924
917
909
902
895
889
883
877
871
866
861
856
852
847
843
839
835
831
827
823
819
815
811
807
803
799
795
790
786
782
777
773
769
764
760
755
751
746
742
737
733
729
724
720
716
711
707
703
699
695
691
687
684
680
677
673
670
667
664
660
657
654
651
647
644
641
637
633
630
626
621
617
613
608
603
598
593
588
582
577
571
566
560
554
549
543
537
531
526
520
514
508
502
496
491
485
479
474
469
463
458
453
448
444
439
435
431
427
423
419
416
413
410
407
405
402
400
398
396
394
393
391
390
389
388
387
386
386
385
385
385
384
384
384
385
385
386
387
387
388
390
391
392
394
395
397
398
400
401
402
404
405
407
408
409
410
411
412
413
414
415
415
416
416
416
416
415
415
414
413
412
411
409
407
405
403
401
399
396
393
390
387
384
380
376
373
369
365
360
356
352
347
343
338
333
329
324
320
315
311
307
303
300
296
293
290
287
284
281
279
277
275
273
271
270
269
269
268
269
269
270
271
273
275
278
281
284
287
291
296
300
305
310
315
320
326
331
336
342
347
352
357
363
368
373
378
383
388
393
398
403
408
413
418
422
427
431
435
439
443
446
449
452
454
457
458
460
461
462
462
462
462
461
460
458
457
455
452
450
447
443
440
436
433
429
424
420
416
411
407
403
398
394
389
385
381
377
373
369
365
362
359
356
353
350
348
346
344
342
341
340
339
339
338
338
338
339
339
340
341
342
343
344
346
347
349
350
352
353
355
357
359
360
362
364
366
368
371
373
375
378
380
383
385
388
391
393
396
399
402
405
409
412
416
420
424
429
433
438
443
448
454
459
465
471
477
484
490
497
504
511
518
525
532
539
547
554
561
569
576
584
592
599
607
615
624
632
641
649
658
667
677
686
696
706
717
727
738
749
760
771
783
794
806
818
830
842
854
866
878
890
902
913
925
936
947
958
968
979
989
998
1008
1016
1026
1035
1044
1052
1061
1069
1076
1084
1091
1099
1106
1112
1119
1125
1132
1138
1143
1149
1155
1160
1165
1170
1175
1180
1185
1190
1194
1199
1204
1208
1213
1217
1222
1226
1231
1235
1239
1244
1248
1252
1256
1260
1264
1268
1272
1276
1279
1283
1287
1290
1294
1298
1302
1306
1310
1314
1317
1321
1325
1329
1333
1337
1340
1344
1347
1351
1354
1357
1359
1362
1364
1366
1368
1370
1371
1373
1374
1374
1375
1375
1375
1375
1374
1373
1372
1370
1368
1366
1364
1361
1358
1355
1352
1348
1344
1341
1337
1332
1328
1324
1319
1314
1309
1304
1299
1294
1288
1282
1277
1271
1264
1258
1251
1245
1238
1231
1223
1216
1208
1200
1192
1184
1176
1167
1159
1151
1142
1133
1125
1116
1107
1098
1090
1081
1072
1063
1054
1045
1036
1028
1018
1010
1000
993
984
976
968
959
951
943
935
927
920
912
904
897
890
883
875
868
861
854
847
840
833
826
819
812
806
799
792
785
778
771
764
757
751
744
737
730
723
716
710
703
696
689
683
676
670
664
657
651
645
638
632
626
620
614
608
603
597
591
586
581
575
570
565
560
555
550
546
541
537
533
529
524
521
517
513
509
505
502
498
494
491
487
484
480
476
473
469
465
462
458
454
450
446
442
438
434
429
425
421
416
411
407
402
397
392
388
383
378
373
368
364
359
355
350
346
342
338
334
331
328
324
321
319
316
314
312
310
309
308
307
306
306
306
306
306
307
308
309
311
313
315
317
319
321
324
326
329
332
334
337
339
342
344
347
349
352
354
356
358
360
362
364
366
369
371
373
375
377
379
381
383
385
388
390
392
394
397
399
401
404
406
408
410
412
414
416
418
419
421
422
423
424
424
425
425
425
425
425
424
424
423
422
421
420
419
417
416
414
412
410
408
406
404
401
398
395
392
389
386
382
379
375
371
367
363
359
355
351
346
342
337
333
328
323
318
313
308
302
297
292
286
280
275
269
263
257
251
245
239
232
226
219
213
206
200
193
186
179
173
166
159
153
146
140
134
128
122
117
111
106
101
96
92
87
83
79
76
72
69
66
63
60
57
54
52
49
47
44
42
40
38
36
34
32
29
27
25
23
21
19
16
14
12
9
6
3
0
-3
-6
-10
-14
-17
-22
-26
-31
-36
-41
-46
-51
-57
-62
-68
-74
-80
-86
-92
-98
-104
-110
-116
-122
-128
-135
-141
-147
-153
-158
-164
-170
-176
-182
-187
-193
-198
-204
-209
-214
-219
-224
-229
-234
-239
-243
-248
-253
-257
-261
-266
-270
-274
-278
-282
-286
-290
-295
-299
-303
-307
-311
-315
-319
-323
-327
-331
-335
-339
-343
-346
-350
-354
-358
-362
-365
-369
-372
-376
-379
-382
-386
-389
-392
-395
-398
-401
-403
-406
-409
-412
-414
-417
-419
-422
-424
-427
-429
-432
-434
-436
-439
-441
-444
-446
-448
-451
-453
-455
-458
-460
-462
-464
-467
-469
-471
-473
-476
-478
-480
-483
-485
-487
-490
-493
-495
-498
-501
-504
-507
-510
-512
-515
-518
-521
-524
-527
-530
-533
-536
-539
-542
-545
-549
-552
-556
-559
-563
-567
-571
-575
-580
-584
-589
-593
-598
-603
-608
-613
-618
-624
-629
-634
-640
-645
-651
-656
-662
-667
-673
-679
-684
-690
-696
-701
-707
-713
-718
-723
-729
-734
-739
-744
-748
-753
-757
-761
-765
-768
-772
-775
-778
-781
-783
-786
-788
-790
-792
-793
-795
-796
-797
-798
-798
-799
-799
-799
-799
-799
-799
-798
-798
-797
-796
-796
-795
-794
-794
-793
-793
-792
-792
-792
-791
-791
-791
-791
-792
-792
-792
-793
-793
-794
-795
-796
-797
-798
-799
-801
-802
-804
-805
-807
-809
-811
-813
-815
-817
-819
-821
-823
-825
-826
-828
-830
-831
-832
-833
-834
-835
-835
-836
-836
-836
-835
-834
-834
-832
-831
-830
-828
-826
-824
-822
-820
-818
-815
-812
-809
-806
-803
-799
-796
-792
-788
-784
-780
-776
-772
-767
-763
-758
-753
-748
-743
-738
-733
-728
-723
-718
-713
-707
-702
-696
-691
-685
-679
-673
-667
-661
-655
-649
-642
-636
-629
-622
-615
-608
-601
-594
-587
-580
-573
-565
-558
-551
-543
-536
-529
-522
-514
-507
-500
-493
-486
-479
-472
-465
-458
-451
-444
-437
-430
-423
-416
-409
-403
-396
-389
-382
-375
-368
-361
-354
-347
-340
-333
-327
-320
-313
-306
-300
-293
-287
-280
-274
-268
-262
-256
-250
-244
-239
-233
-227
-222
-216
-211
-205
-199
-194
-188
-183
-177
-172
-166
-161
-155
-150
-144
-139
-134
-129
-123
-118
-113
-109
-104
-99
-94
-90
-85
-81
-76
-72
-68
-64
-60
-56
-52
-48
-44
-41
-37
-34
-30
-27
-24
-21
-17
-15
-12
-9
-6
-3
0
3
6
10
13
16
20
23
27
30
34
38
42
46
50
55
59
63
67
72
76
80
85
89
93
97
101
106
110
114
118
122
125
129
133
137
141
145
149
154
158
162
167
171
176
181
186
191
196
202
207
213
218
224
230
235
241
247
253
258
264
270
275
281
286
292
297
302
307
312
317
322
326
331
335
339
343
348
352
356
360
364
368
372
376
380
385
389
393
398
402
407
412
417
422
427
432
437
442
447
452
458
463
468
474
479
485
490
496
502
507
513
519
524
530
536
542
548
553
559
565
571
577
584
590
596
602
608
614
620
627
633
639
645
651
658
664
670
677
683
689
695
702
708
714
721
727
734
740
746
753
759
765
772
778
784
791
797
803
809
815
821
827
833
839
845
851
857
863
868
874
880
886
891
897
903
908
913
919
924
930
935
940
945
951
956
961
966
972
977
982
987
993
998
1002
1006
1012
1016
1022
1026
1030
1034
1038
1042
1046
1049
1052
1055
1058
1061
1063
1066
1068
1070
1072
1074
1075
1077
1078
1079
1080
1081
1082
1083
1083
1083
1084
1084
1084
1084
1083
1083
1083
1082
1082
1081
1080
1080
1079
1078
1077
1076
1076
1075
1074
1073
1072
1071
1070
1069
1068
1067
1065
1064
1063
1062
1060
1059
1058
1056
1055
1053
1052
1050
1049
1047
1046
1044
1042
1040
1038
1036
1034
1032
1029
1027
1024
1022
1018
1016
1012
1010
1006
1002
1000
996
992
989
985
981
977
972
968
964
959
955
951
946
942
937
933
928
924
919
915
910
905
901
896
892
887
882
877
872
867
862
857
851
846
840
835
829
823
817
811
805
799
793
786
780
774
768
761
755
749
742
736
729
723
716
709
703
696
690
683
677
670
664
657
651
645
638
632
626
620
613
607
601
595
588
582
575
569
562
555
548
541
534
527
520
513
506
499
491
484
477
469
462
455
448
441
434
427
420
413
406
399
392
386
379
372
366
359
353
347
341
335
329
323
317
311
305
300
294
288
283
277
271
266
260
254
249
243
237
231
225
219
213
207
201
194
187
181
174
167
160
153
145
138
131
123
116
108
101
93
85
78
70
62
54
47
39
31
24
16
9
1
-6
-13
-20
-27
-34
-41
-48
-54
-60
-66
-72
-78
-84
-89
-95
-100
-105
-109
-114
-118
-122
-126
-130
-134
-137
-140
-143
-146
-149
-151
-154
-156
-158
-159
-161
-162
-163
-164
-165
-166
-166
-166
-166
-166
-166
-165
-164
-163
-162
-160
-158
-156
-154
-152
-149
-146
-143
-140
-136
-133
-129
-125
-120
-116
-111
-106
-101
-96
-90
-85
-79
-73
-67
-60
-54
-48
-41
-34
-28
-21
-14
-8
-1
6
13
20
26
33
40
47
54
60
67
74
81
87
94
100
107
114
120
126
133
139
145
150
156
162
167
172
177
182
186
191
195
199
203
207
211
215
218
222
226
229
233
237
240
244
248
251
255
259
263
267
271
275
279
283
288
292
296
301
305
310
315
319
324
329
333
338
343
348
353
358
363
368
373
378
383
388
394
399
404
409
414
419
425
430
435
440
445
450
454
459
464
468
472
476
480
484
487
491
494
497
499
502
504
507
509
511
512
513
515
516
516
517
517
517
517
517
516
515
514
513
511
510
508
506
504
501
499
496
493
490
487
483
480
476
472
468
464
459
455
450
445
440
435
430
425
419
414
408
403
397
391
386
380
374
368
362
357
351
345
339
333
327
321
315
309
302
296
290
284
278
271
265
259
252
246
240
233
227
221
214
208
202
195
188
182
175
168
161
155
148
141
133
126
119
112
105
97
90
83
75
68
61
54
46
39
32
26
19
12
6
-1
-7
-13
-19
-24
-30
-35
-40
-45
-50
-55
-60
-64
-68
-72
-76
-80
-84
-88
-91
-95
-98
-101
-104
-107
-110
-113
-116
-119
-121
-124
-126
-129
-131
-133
-136
-138
-140
-142
-145
-147
-149
-151
-154
-156
-159
-161
-164
-166
-169
-172
-175
-177
-180
-183
-186
-189
-192
-195
-198
-201
-205
-208
-211
-215
-219
-222
-226
-230
-234
-238
-242
-246
-250
-255
-259
-264
-268
-273
-278
-283
-288
-293
-299
-304
-309
-315
-320
-326
-331
-337
-342
-348
-353
-359
-364
-370
-376
-381
-387
-392
-398
-403
-408
-414
-419
-424
-430
-435
-440
-445
-450
-455
-460
-465
-470
-474
-479
-484
-488
-492
-497
-501
-505
-510
-514
-518
-522
-526
-529
-533
-537
-541
-544
-548
-552
-555
-559
-562
-566
-569
-573
-576
-580
-583
-586
-590
-593
-596
-600
-603
-606
-609
-612
-615
-618
-621
-624
-627
-630
-632
-635
-637
-640
-642
-644
-646
-648
-650
-652
-654
-655
-657
-658
-660
-661
-662
-662
-663
-664
-664
-665
-665
-665
-665
-665
-665
-664
-664
-663
-663
-662
-661
-660
-659
-657
-656
-654
-652
-650
-648
-646
-643
-640
-638
-635
-631
-628
-625
-621
-617
-614
-610
-606
-602
-597
-593
-589
-585
-581
-576
-572
-568
-564
-560
-556
-552
-548
-544
-540
-536
-533
-529
-526
-522
-519
-515
-512
-509
-506
-502
-499
-496
-493
-490
-487
-484
-480
-477
-474
-471
-468
-464
-461
-457
-454
-450
-447
-443
-439
-435
-432
-428
-424
-420
-416
-412
-407
-403
-399
-395
-390
-386
-381
-376
-372
-367
-362
-357
-351
-346
-340
-335
-329
-323
-317
-311
-305
-299
-293
-287
-281
-274
-268
-261
-255
-248
-242
-235
-229
-222
-216
-209
-202
-196
-189
-182
-176
-169
-163
-157
-150
-144
-138
-132
-127
-121
-116
-111
-106
-101
-96
-92
-88
-84
-80
-76
-73
-70
-67
-64
-61
-58
-56
-54
-52
-50
-48
-47
-46
-45
-44
-43
-43
-42
-42
-42
-43
-43
-44
-45
-47
-48
-50
-52
-54
-56
-58
-61
-64
-66
-70
-73
-76
-79
-83
-87
-91
-95
-99
-103
-107
-111
-116
-120
-125
-129
-134
-139
-143
-148
-153
-158
-163
-168
-173
-179
-184
-190
-196
-202
-208
-214
-220
-227
-234
-240
-247
-254
-261
-268
-275
-282
-289
-296
-302
-309
-316
-322
-328
-334
-340
-346
-351
-357
-362
-366
-371
-375
-379
-383
-386
-389
-392
-395
-398
-400
-402
-404
-405
-406
-407
-408
-409
-409
-409
-408
-408
-407
-406
-404
-403
-401
-399
-397
-394
-392
-389
-386
-383
-380
-377
-374
-370
-367
-363
-359
-355
-351
-347
-343
-339
-334
-330
-325
-321
-316
-311
-306
-301
-296
-291
-286
-280
-275
-269
-263
-257
-251
-245
-238
-231
-224
-217
-210
-202
-194
-186
-177
-169
-160
-150
-140
-130
-120
-109
-98
-87
-75
-63
-51
-39
-26
-13
1
14
28
42
56
70
84
99
113
128
143
157
172
187
202
216
231
246
261
275
290
305
319
334
348
362
377
391
405
419
432
446
460
473
486
499
512
524
536
548
560
571
583
593
604
614
624
633
643
652
660
669
677
684
692
699
706
712
719
724
730
736
741
746
750
754
759
762
766
769
773
776
778
781
783
785
787
789
791
792
793
794
795
795
796
796
796
796
796
795
795
794
793
792
791
789
787
786
784
781
779
777
774
771
768
765
762
759
755
752
749
745
741
738
734
730
727
723
719
715
711
707
704
699
695
691
687
683
679
674
670
666
661
657
653
648
644
639
635
631
627
622
618
614
610
607
603
599
596
592
588
585
582
578
575
572
568
565
562
559
556
552
549
546
543
540
537
535
532
529
527
524
522
520
518
516
514
513
511
510
509
508
507
507
506
506
506
505
505
505
505
505
505
504
504
504
504
503
503
503
502
502
501
501
500
500
499
499
498
498
497
496
496
495
495
494
493
493
492
492
491
490
490
489
489
488
488
488
487
487
487
486
486
486
485
485
485
485
484
484
484
484
484
484
484
484
484
484
485
485
485
485
486
486
486
487
487
488
488
488
489
489
489
489
489
490
490
490
489
489
489
489
488
488
487
487
486
485
485
484
483
483
482
481
481
480
480
479
479
479
479
479
479
479
479
479
480
480
481
482
482
483
484
485
486
487
488
489
490
491
493
494
495
496
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
513
514
515
516
517
518
519
520
520
521
522
523
524
525
525
526
527
527
528
529
530
530
531
532
533
534
535
536
537
538
540
541
543
545
546
548
551
553
555
558
561
564
567
570
573
577
581
584
588
593
597
601
606
611
616
621
626
631
636
641
646
652
657
663
668
674
679
685
690
696
701
707
713
718
724
730
735
741
747
753
759
765
770
776
782
788
794
800
806
812
817
823
829
834
840
845
850
855
860
864
869
873
877
881
885
888
891
894
897
899
901
904
905
907
909
910
911
912
913
914
914
915
915
915
915
915
915
914
913
913
912
910
909
908
906
904
902
900
898
896
893
890
888
885
882
879
876
873
869
866
862
859
855
851
848
844
840
836
832
828
823
819
815
811
806
802
797
793
788
784
779
774
769
764
759
754
749
743
738
733
727
722
716
711
705
699
693
688
682
676
670
664
658
652
646
640
634
629
623
617
611
605
599
593
587
581
575
569
563
557
551
545
539
533
528
522
516
510
504
499
493
487
482
476
470
465
459
454
448
443
437
431
426
420
414
409
403
397
391
385
379
373
367
360
354
348
341
334
327
321
314
307
299
292
285
278
270
263
255
248
240
233
225
218
211
203
196
189
182
175
168
161
154
148
141
135
128
122
116
110
104
99
93
88
82
77
72
68
63
59
54
50
46
42
38
34
31
27
23
20
17
13
10
7
4
1
-2
-5
-8
-11
-14
-17
-21
-24
-27
-30
-34
-37
-41
-44
-48
-52
-56
-60
-64
-68
-72
-77
-81
-86
-90
-95
-100
-105
-110
-115
-120
-126
-131
-137
-142
-148
-153
-159
-165
-171
-177
-182
-188
-194
-201
-207
-213
-219
-225
-231
-237
-244
-250
-256
-262
-268
-274
-279
-285
-291
-296
-302
-307
-313
-318
-323
-328
-333
-338
-343
-348
-352
-357
-361
-365
-369
-373
-377
-381
-385
-388
-391
-395
-398
-401
-404
-406
-409
-411
-414
-416
-418
-419
-421
-422
-424
-425
-425
-426
-426
-427
-427
-427
-426
-426
-425
-424
-423
-421
-419
-418
-416
-413
-411
-408
-406
-403
-400
-396
-393
-389
-386
-382
-378
-374
-370
-365
-361
-356
-352
-347
-342
-337
-332
-327
-322
-317
-312
-307
-302
-297
-291
-286
-281
-276
-271
-266
-261
-256
-250
-245
-240
-235
-230
-225
-220
-215
-210
-205
-201
-196
-191
-186
-181
-177
-172
-167
-162
-158
-153
-148
-144
-139
-134
-130
-125
-120
-116
-111
-106
-101
-96
-92
-87
-82
-77
-72
-66
-61
-56
-51
-45
-40
-34
-29
-23
-17
-11
-5
1
7
13
19
25
32
38
44
51
58
64
71
78
85
91
98
105
111
118
125
131
138
144
150
157
163
169
175
181
186
192
197
203
208
213
218
223
227
232
236
241
245
249
253
257
261
264
268
271
275
278
281
284
287
290
293
296
299
302
305
307
310
313
315
318
320
323
325
328
330
333
335
337
339
341
343
345
346
348
349
350
351
352
353
353
354
354
354
353
353
352
351
350
348
347
345
343
340
338
335
332
329
326
323
319
316
312
308
304
300
296
292
288
284
279
275
271
267
262
258
254
250
246
242
238
234
230
226
222
218
214
211
207
204
200
197
193
190
187
184
181
178
175
172
169
166
164
161
159
157
155
153
151
150
148
147
146
145
145
144
144
144
145
145
146
146
147
148
150
151
153
154
156
158
160
162
165
167
170
172
175
178
181
184
187
190
193
197
200
204
207
211
214
218
221
225
228
232
235
239
242
245
248
251
254
257
260
262
265
267
269
272
274
275
277
279
280
282
283
284
285
285
286
286
287
287
287
286
286
285
285
284
283
282
281
279
278
276
274
272
270
268
266
264
262
259
256
254
251
248
245
242
239
236
232
229
225
222
218
214
210
206
201
197
192
187
182
177
172
167
161
156
150
144
138
132
125
119
112
105
99
92
85
79
72
65
58
51
44
37
30
23
16
9
2
-5
-12
-20
-27
-34
-42
-49
-57
-65
-73
-81
-89
-97
-105
-113
-121
-129
-138
-146
-155
-163
-172
-181
-190
-199
-208
-217
-226
-236
-245
-255
-264
-274
-284
-294
-304
-314
-325
-335
-346
-357
-367
-378
-389
-401
-412
-423
-435
-446
-458
-470
-482
-493
-505
-517
-529
-540
-552
-564
-575
-586
-597
-608
-618
-629
-639
-649
-658
-667
-676
-685
-693
-701
-709
-716
-723
-729
-736
-741
-747
-752
-756
-761
-765
-768
-771
-774
-776
-778
-780
-781
-782
-783
-783
-783
-783
-782
-781
-780
-779
-777
-776
-774
-771
-769
-767
-764
-762
-759
-756
-753
-750
-747
-744
-741
-738
-734
-731
-728
-725
-721
-718
-714
-711
-708
-704
-701
-697
-694
-691
-687
-684
-680
-677
-673
-669
-666
-662
-658
-655
-651
-647
-644
-640
-636
-632
-628
-624
-620
-617
-613
-609
-605
-600
-596
-592
-588
-584
-580
-576
-572
-567
-563
-559
-555
-551
-546
-542
-538
-534
-530
-526
-521
-517
-513
-509
-505
-501
-498
-494
-490
-486
-482
-478
-475
-471
-467
-464
-460
-456
-452
-449
-445
-441
-437
-432
-428
-424
-419
-415
-410
-406
-401
-396
-391
-386
-381
-376
-371
-366
-361
-355
-350
-345
-339
-334
-328
-323
-317
-311
-306
-300
-294
-288
-282
-276
-269
-263
-257
-250
-244
-237
-231
-224
-218
-211
-204
-197
-190
-183
-176
-169
-162
-154
-147
-139
-132
-124
-116
-108
-100
-92
-84
-76
-68
-59
-51
-42
-33
-24
-15
-6
3
12
22
31
41
51
61
71
81
91
101
111
122
132
142
152
163
173
184
194
204
215
225
235
245
255
265
275
285
294
304
313
323
332
341
350
359
367
376
384
393
401
409
417
424
432
440
447
454
462
469
476
483
490
496
503
510
516
523
529
536
542
548
555
561
567
573
579
585
591
596
602
608
613
618
624
629
634
638
643
647
652
656
660
664
667
671
674
677
680
682
685
687
689
690
692
693
694
694
695
695
695
695
694
693
692
690
688
686
684
681
678
675
672
668
664
659
654
649
644
638
632
626
620
613
606
599
591
583
575
567
559
550
541
532
523
514
504
494
485
475
465
455
445
434
424
414
404
394
383
373
363
353
342
332
322
312
302
292
282
272
262
253
243
234
225
216
207
198
190
181
173
165
158
150
143
136
129
122
115
109
103
97
91
86
81
76
71
66
62
58
54
51
47
45
42
39
37
36
34
33
32
32
31
31
32
32
33
34
35
37
38
40
42
45
47
50
53
57
60
64
68
73
77
82
87
92
98
103
109
116
122
129
136
143
150
158
166
174
182
190
199
207
216
225
234
243
252
261
271
280
290
299
309
319
329
339
349
359
369
380
390
400
411
422
432
443
454
464
475
486
496
507
517
528
538
548
559
569
579
589
599
609
619
628
638
647
656
666
675
684
692
701
709
718
726
734
743
751
759
766
774
782
790
797
805
812
819
827
834
841
848
855
862
869
876
883
889
896
902
909
915
922
928
934
940
946
952
958
963
969
974
980
985
990
995
1000
1004
1008
1014
1018
1022
1026
1030
1034
1037
1041
1044
1047
1050
1053
1056
1059
1061
1063
1066
1068
1069
1071
1073
1074
1075
1076
1077
1078
1078
1078
1078
1078
1078
1078
1077
1076
1075
1074
1073
1071
1069
1068
1065
1063
1061
1058
1056
1053
1050
1047
1043
1040
1036
1033
1029
1025
1020
1016
1012
1008
1004
1000
997
993
989
985
980
976
972
967
963
958
954
949
944
939
934
930
925
919
914
909
904
898
893
888
882
876
871
865
859
853
847
840
834
828
821
815
808
801
795
788
781
774
768
761
754
747
741
734
727
721
715
708
702
696
690
684
679
673
668
663
658
653
648
644
640
636
632
628
625
622
619
616
613
610
608
606
604
602
600
598
597
596
594
593
592
592
591
590
590
590
589
589
589
589
590
590
590
590
590
591
591
591
592
592
592
593
593
593
593
593
593
593
593
592
592
591
590
590
589
588
586
585
584
582
581
579
577
575
573
571
569
566
564
561
558
555
552
549
545
542
538
534
530
526
521
516
512
507
501
496
490
484
478
471
465
458
451
443
435
427
419
411
402
393
384
375
366
357
347
337
328
318
308
297
287
277
267
256
246
235
225
214
204
193
183
172
162
151
141
130
120
109
99
89
78
68
57
47
37
26
16
6
-5
-15
-25
-36
-46
-56
-66
-76
-86
-96
-106
-116
-126
-136
-146
-155
-165
-175
-184
-194
-203
-212
-221
-230
-240
-249
-257
-266
-275
-284
-292
-301
-310
-318
-326
-335
-343
-351
-359
-367
-375
-382
-390
-398
-405
-412
-419
-427
-433
-440
-447
-453
-460
-466
-472
-477
-483
-488
-493
-498
-503
-508
-512
-516
-520
-524
-528
-532
-535
-538
-541
-544
-547
-549
-552
-554
-556
-558
-559
-561
-562
-563
-564
-564
-565
-565
-565
-565
-565
-564
-564
-563
-562
-561
-560
-558
-557
-555
-554
-552
-550
-548
-546
-543
-541
-539
-536
-534
-531
-528
-525
-522
-520
-517
-513
-510
-507
-504
-500
-497
-493
-490
-486
-483
-479
-476
-472
-468
-464
-460
-457
-453
-449
-445
-441
-437
-433
-429
-426
-422
-418
-415
-411
-408
-404
-401
-398
-395
-392
-389
-387
-384
-381
-379
-377
-374
-372
-370
-368
-366
-364
-362
-360
-358
-357
-355
-353
-351
-350
-348
-346
-345
-343
-341
-340
-338
-336
-334
-333
-331
-329
-327
-326
-324
-322
-320
-318
-317
-315
-313
-311
-309
-307
-305
-302
-300
-298
-295
-293
-291
-288
-285
-283
-280
-277
-274
-271
-268
-265
-262
-258
-255
-252
-248
-245
-241
-237
-234
-230
-226
-223
-219
-215
-212
-208
-204
-201
-197
-193
-190
-187
-183
-180
-177
-174
-171
-169
-166
-164
-162
-160
-158
-156
-154
-153
-152
-151
-150
-149
-148
-148
-148
-148
-148
-148
-149
-149
-150
-151
-152
-154
-155
-157
-158
-160
-162
-164
-166
-169
-171
-173
-176
-179
-181
-184
-187
-190
-193
-197
-200
-203
-206
-210
-213
-216
-220
-223
-226
-229
-232
-235
-238
-241
-244
-246
-249
-251
-254
-256
-258
-260
-261
-263
-265
-266
-267
-268
-269
-270
-271
-271
-272
-272
-273
-273
-273
-273
-273
-272
-272
-271
-271
-270
-269
-268
-267
-266
-265
-264
-262
-261
-259
-258
-256
-254
-253
-251
-249
-247
-245
-244
-242
-240
-238
-236
-234
-232
-230
-228
-227
-225
-223
-221
-220
-218
-216
-215
-213
-212
-211
-209
-208
-207
-206
-205
-204
-203
-202
-201
-201
-200
-200
-199
-199
-199
-198
-198
-198
-198
-198
-198
-198
-198
-198
-198
-198
-197
-197
-197
-197
-197
-197
-196
-196
-196
-195
-195
-195
-194
-194
-193
-193
-192
-192
-191
-190
-189
-189
-188
-186
-185
-184
-183
-181
-179
-178
-176
-174
-171
-169
-166
-164
-161
-158
-155
-152
-149
-146
-142
-139
-135
-132
-128
-125
-121
-117
-114
-110
-106
-102
-99
-95
-91
-87
-84
-80
-76
-72
-68
-64
-60
-56
-52
-48
-44
-40
-35
-31
-27
-22
-18
-13
-8
-4
1
6
10
15
20
25
30
34
39
44
49
54
58
63
68
72
77
81
86
90
95
99
103
107
112
116
120
124
129
133
137
141
145
149
153
157
162
166
170
174
178
182
186
191
195
199
204
208
213
218
222
227
232
237
241
246
251
256
261
267
272
277
282
288
293
299
305
310
316
322
328
334
340
346
353
359
365
372
378
385
391
398
404
411
418
425
432
439
446
453
460
467
474
482
489
496
504
511
519
526
534
541
549
556
564
571
579
587
595
602
610
618
626
634
641
649
657
665
672
680
688
695
703
710
718
725
733
740
748
755
762
769
776
783
790
797
804
811
818
825
831
838
844
851
857
864
870
876
883
889
895
901
907
912
918
924
929
935
940
945
950
955
960
965
970
974
979
983
987
992
995
999
1002
1006
1010
1012
1016
1018
1022
1025
1028
1030
1033
1035
1037
1039
1041
1043
1044
1046
1047
1048
1049
1049
1050
1050
1050
1050
1050
1050
1049
1048
1047
1046
1045
1044
1042
1040
1039
1037
1034
1032
1029
1027
1024
1020
1016
1012
1010
1006
1000
997
992
987
982
976
970
965
958
952
945
939
932
925
917
910
902
894
886
878
870
861
853
844
835
826
817
808
799
790
781
772
762
753
743
734
725
715
706
696
687
678
668
659
650
640
631
622
613
604
595
586
577
568
559
550
541
532
523
514
506
497
488
479
471
462
454
445
436
428
420
411
403
395
386
378
370
362
354
347
339
331
323
316
308
301
293
286
279
271
264
257
250
243
236
229
223
216
209
202
196
189
183
177
171
165
159
153
147
142
136
131
126
121
116
111
107
102
98
94
90
86
82
79
75
72
68
65
62
59
57
54
51
49
47
44
42
40
39
37
36
34
33
32
31
30
29
29
28
28
27
27
27
27
27
27
27
28
28
29
30
31
32
33
34
35
37
38
40
42
43
46
48
50
53
55
58
61
64
68
71
74
78
81
85
89
93
97
101
105
109
114
118
122
127
131
136
141
145
150
155
160
165
170
175
180
185
190
195
199
204
209
214
219
224
228
233
238
242
247
251
255
259
263
267
271
275
278
282
285
288
291
294
297
299
302
304
307
309
311
313
315
317
318
320
321
323
324
325
326
328
329
330
331
331
332
333
333
334
335
335
336
336
337
337
337
338
338
338
339
339
339
340
340
340
341
341
341
341
341
342
342
342
342
342
342
343
343
343
343
343
344
344
344
344
344
344
345
345
345
345
345
346
346
347
347
348
349
349
350
351
352
353
355
356
357
359
360
362
364
366
368
369
372
374
376
378
380
383
385
387
390
392
395
397
400
402
405
408
410
413
416
418
421
424
427
429
432
435
437
440
443
445
448
450
453
455
457
460
462
464
466
468
470
472
474
476
478
480
482
484
485
487
489
490
492
493
495
496
497
498
499
500
501
502
503
504
505
505
506
506
506
507
507
507
507
507
507
507
506
506
506
505
504
504
503
502
501
500
499
498
496
495
493
492
490
488
487
485
483
481
479
477
475
473
471
469
467
464
462
460
458
456
454
452
450
448
446
444
442
440
438
437
435
433
431
429
427
425
423
421
419
417
415
413
411
409
407
405
403
401
399
397
395
392
390
388
386
383
381
379
377
374
372
370
367
365
362
359
356
354
351
348
344
341
338
334
330
327
323
319
314
310
306
301
296
291
286
281
276
270
264
259
253
247
240
234
228
221
214
208
201
194
187
180
172
165
158
150
143
135
127
120
112
104
97
89
81
73
66
58
50
43
35
27
20
12
5
-2
-10
-17
-24
-31
-38
-45
-52
-59
-66
-73
-80
-86
-93
-99
-106
-112
-118
-124
-130
-136
-142
-148
-154
-160
-166
-171
-177
-182
-187
-193
-198
-203
-208
-213
-218
-223
-228
-232
-237
-241
-246
-250
-254
-259
-263
-267
-271
-275
-278
-282
-286
-290
-293
-297
-300
-303
-307
-310
-313
-316
-319
-322
-325
-328
-331
-334
-337
-340
-342
-345
-347
-350
-352
-355
-357
-359
-362
-364
-366
-368
-370
-371
-373
-374
-376
-377
-378
-379
-380
-381
-382
-382
-382
-383
-383
-383
-382
-382
-382
-381
-380
-380
-379
-378
-377
-375
-374
-373
-371
-370
-368
-366
-364
-362
-360
-357
-355
-353
-350
-347
-344
-341
-338
-335
-331
-328
-324
-321
-317
-313
-309
-305
-301
-296
-292
-287
-283
-278
-273
-269
-264
-259
-254
-249
-244
-238
-233
-228
-223
-217
-212
-207
-201
-196
-190
-184
-179
-173
-167
-162
-156
-150
-144
-138
-133
-127
-121
-115
-109
-103
-97
-91
-85
-79
-73
-67
-61
-55
-49
-43
-37
-31
-25
-19
-13
-7
-1
5
11
17
23
29
35
41
47
53
59
65
71
77
83
89
95
100
106
112
118
124
129
135
141
147
153
158
164
170
176
181
187
193
199
205
211
216
222
228
234
240
245
251
257
263
269
274
280
286
291
297
302
308
313
319
324
329
335
340
345
350
355
360
365
370
375
379
384
388
392
397
401
404
408
412
415
419
422
425
428
431
433
436
438
440
443
444
446
448
449
451
452
453
454
455
456
456
457
457
457
457
457
457
457
457
456
455
455
454
453
451
450
449
447
446
444
443
441
439
438
436
434
432
430
428
426
424
422
420
418
415
413
411
409
407
404
402
400
398
395
393
390
388
386
383
381
378
376
374
371
369
367
364
362
360
357
355
353
351
348
346
344
342
339
337
335
333
331
328
326
324
322
320
317
315
313
310
308
306
303
301
298
295
293
290
287
284
281
278
274
271
268
264
260
257
253
249
245
241
237
233
229
225
221
217
213
209
205
201
197
193
189
185
181
177
173
170
166
162
159
155
152
148
145
142
138
135
132
129
126
122
119
116
113
110
107
104
101
98
95
92
90
87
84
80
77
74
71
68
65
62
59
56
53
49
46
43
40
36
33
29
26
23
19
16
13
9
6
2
-1
-4
-8
-11
-14
-18
-21
-24
-27
-31
-34
-37
-40
-43
-46
-49
-52
-55
-57
-60
-63
-65
-68
-70
-72
-75
-77
-79
-82
-84
-86
-88
-90
-92
-94
-96
-98
-100
-102
-104
-106
-108
-110
-111
-113
-115
-117
-118
-120
-122
-123
-125
-126
-128
-129
-131
-133
-134
-136
-137
-139
-140
-142
-143
-145
-146
-148
-149
-150
-152
-153
-154
-155
-156
-158
-159
-159
-160
-161
-162
-162
-163
-163
-164
-164
-165
-165
-165
-165
-165
-166
-166
-166
-166
-166
-165
-165
-165
-165
-165
-165
-164
-164
-164
-163
-163
-162
-162
-161
-161
-160
-160
-159
-159
-158
-157
-157
-156
-155
-155
-154
-153
-153
-152
-151
-151
-150
-149
-148
-147
-146
-146
-145
-144
-143
-142
-141
-140
-139
-138
-137
-136
-135
-134
-133
-132
-131
-130
-129
-128
-127
-126
-125
-124
-123
-122
-120
-119
-118
-117
-115
-114
-113
-112
-110
-109
-108
-106
-105
-104
-102
-101
-99
-98
-96
-94
-92
-91
-89
-87
-84
-82
-80
-78
-75
-73
-70
-68
-65
-62
-60
-57
-54
-51
-49
-46
-43
-41
-38
-35
-33
-30
-28
-25
-23
-20
-18
-16
-14
-11
-9
-7
-5
-3
-1
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
31
33
35
38
40
42
44
46
49
51
53
56
58
60
63
65
68
70
73
76
78
81
84
87
90
93
96
99
102
105
109
112
116
119
123
127
130
134
138
142
146
150
155
159
163
168
172
177
181
186
191
195
200
205
210
215
220
225
230
235
240
245
250
256
261
266
272
277
283
288
294
299
305
311
316
322
328
334
340
345
351
357
363
369
375
381
387
393
399
405
411
417
423
429
435
441
446
452
458
464
470
476
482
488
494
500
505
511
517
523
529
535
540
546
552
558
563
569
574
580
585
590
595
600
605
610
615
620
625
629
634
638
643
647
651
656
660
664
668
672
676
680
683
687
691
694
698
701
705
708
711
715
718
721
724
727
729
732
735
737
739
742
744
746
748
750
752
753
755
757
758
760
761
762
763
764
765
766
766
767
767
767
768
768
768
767
767
767
766
766
765
764
763
762
761
759
758
756
755
753
751
749
747
745
742
740
737
735
732
729
726
723
720
717
714
710
707
703
700
696
692
688
684
680
676
672
668
664
659
655
650
646
642
637
633
628
623
619
614
609
605
600
595
591
586
581
576
572
567
562
557
553
548
543
539
534
530
525
521
516
512
507
503
499
495
491
487
483
479
475
471
468
464
461
458
454
451
448
445
442
440
437
434
432
429
427
425
422
420
418
416
414
412
410
409
407
405
404
402
401
399
398
396
395
394
392
391
390
388
387
386
385
383
382
381
379
378
377
376
374
373
371
370
369
367
366
364
363
361
360
358
357
355
354
352
351
349
348
346
345
343
341
340
338
337
335
334
332
331
329
327
326
324
323
321
319
318
316
314
313
311
309
308
306
304
303
301
299
297
295
294
292
290
288
286
285
283
281
279
277
276
274
272
271
269
267
266
264
263
261
260
259
257
256
255
254
252
251
250
249
248
247
246
245
244
243
242
241
240
239
238
237
236
235
234
233
232
231
230
229
227
226
225
223
222
221
219
218
216
214
213
211
209
208
206
204
202
200
198
196
194
192
190
188
185
183
181
179
176
174
172
169
167
164
162
159
157
154
152
150
147
145
142
140
137
135
132
130
127
125
122
120
118
115
113
111
108
106
104
102
99
97
95
93
91
89
87
85
83
82
80
78
76
75
73
71
70
68
67
65
64
63
61
60
58
57
56
55
54
52
51
50
49
48
47
47
46
45
44
43
42
42
41
40
40
39
39
38
38
37
37
37
36
36
36
36
36
36
36
36
36
37
37
37
38
38
39
39
40
41
42
42
43
44
45
46
47
49
50
51
52
54
55
56
58
59
61
62
64
65
67
69
71
72
74
76
78
80
82
84
86
88
90
92
94
96
98
100
102
104
106
108
110
112
114
116
117
119
121
123
125
126
128
130
131
133
134
136
137
138
140
141
142
143
144
145
146
147
148
149
150
150
151
152
152
153
153
154
154
154
154
155
155
155
155
155
155
154
154
154
154
153
153
153
152
152
152
151
151
151
150
150
149
149
148
148
147
147
146
146
145
145
144
143
143
142
141
140
139
138
137
136
135
134
133
132
131
130
128
127
125
124
122
120
119
117
115
113
111
109
106
104
102
99
97
94
92
89
86
84
81
78
75
72
69
66
63
60
56
53
50
46
43
40
36
33
29
26
22
19
15
11
8
4
1
-3
-7
-10
-14
-18
-22
-25
-29
-33
-37
-40
-44
-48
-52
-56
-59
-63
-67
-71
-75
-79
-82
-86
-90
-94
-98
-102
-105
-109
-113
-117
-121
-124
-128
-132
-135
-139
-143
-146
-150
-153
-156
-160
-163
-166
-169
-172
-175
-178
-181
-184
-186
-189
-191
-193
-196
-198
-200
-202
-204
-206
-207
-209
-211
-212
-214
-215
-217
-218
-220
-221
-222
-224
-225
-226
-227
-229
-230
-231
-232
-233
-234
-235
-236
-237
-237
-238
-239
-239
-240
-241
-241
-242
-243
-243
-244
-244
-245
-245
-245
-246
-246
-247
-247
-247
-248
-248
-249
-249
-249
-250
-250
-250
-251
-251
-251
-252
-252
-253
-253
-253
-253
-254
-254
-254
-255
-255
-255
-255
-255
-255
-255
-255
-255
-255
-255
-254
-254
-253
-253
-252
-251
-251
-250
-249
-248
-247
-245
-244
-243
-241
-239
-238
-236
-234
-232
-230
-227
-225
-223
-220
-217
-215
-212
-209
-206
-202
-199
-196
-192
-188
-185
-181
-177
-173
-169
-165
-160
-156
-152
-147
-142
-138
-133
-128
-124
-119
-114
-109
-104
-99
-94
-89
-84
-79
-73
-68
-63
-58
-52
-47
-42
-36
-31
-25
-20
-14
-9
-3
2
8
14
19
25
31
36
42
48
54
60
65
71
77
83
88
94
100
105
111
117
122
128
133
139
144
150
155
160
166
171
176
182
187
192
198
203
208
213
219
224
229
234
240
245
250
256
261
266
272
277
282
288
293
299
304
310
315
321
326
332
337
343
349
354
360
366
372
377
383
389
395
401
407
413
418
424
430
436
442
448
454
460
466
472
478
484
490
496
502
508
513
519
525
531
536
542
547
553
558
564
569
574
580
585
590
596
601
606
612
617
622
627
632
637
642
647
652
657
662
666
671
676
681
685
690
695
700
704
709
713
718
723
727
732
736
741
745
750
754
758
763
767
771
775
779
783
787
791
795
799
803
807
810
814
818
821
825
828
831
835
838
841
845
848
851
854
857
860
863
866
868
871
874
877
879
882
884
887
889
892
894
896
898
901
903
905
907
909
910
912
914
916
917
919
921
922
923
925
926
927
929
930
931
932
933
934
934
935
936
936
937
937
938
938
938
938
938
938
938
938
938
937
937
936
936
935
935
934
933
933
932
931
930
929
928
927
926
924
923
922
920
919
917
916
914
913
911
909
907
906
904
902
900
898
896
894
892
890
888
886
884
882
880
878
876
873
871
869
867
864
862
860
857
855
852
850
847
844
842
839
837
834
831
828
825
823
820
817
814
811
808
805
801
798
795
792
788
785
781
778
774
771
767
763
760
756
752
748
744
740
737
733
729
724
720
716
712
708
704
700
696
691
687
683
679
675
670
666
662
657
653
649
644
640
635
631
626
622
617
613
608
604
599
594
590
585
580
576
571
566
562
557
552
548
543
538
533
529
524
520
515
510
506
501
497
492
488
483
479
475
470
466
461
457
453
448
444
440
435
431
427
422
418
414
409
405
400
396
391
387
382
378
373
368
363
358
353
348
343
338
333
328
323
317
312
306
301
295
289
283
278
272
266
260
254
247
241
235
229
222
216
210
203
197
190
183
177
170
164
157
150
143
137
130
123
116
109
102
95
88
81
74
67
60
52
45
38
31
24
16
9
2
-5
-13
-20
-27
-35
-42
-49
-57
-64
-72
-79
-86
-94
-101
-109
-117
-124
-132
-139
-147
-154
-162
-170
-177
-185
-192
-200
-207
-215
-222
-230
-237
-245
-252
-260
-267
-275
-282
-290
-297
-304
-312
-319
-326
-334
-341
-348
-355
-362
-369
-376
-383
-390
-397
-404
-411
-418
-424
-431
-437
-444
-450
-457
-463
-469
-475
-481
-487
-493
-498
-504
-509
-515
-520
-525
-530
-535
-540
-544
-549
-553
-557
-561
-566
-569
-573
-577
-580
-584
-587
-590
-594
-597
-600
-602
-605
-608
-610
-613
-615
-617
-620
-622
-624
-625
-627
-629
-630
-632
-633
-634
-635
-636
-637
-637
-638
-638
-638
-638
-638
-638
-638
-637
-637
-636
-635
-634
-633
-632
-631
-630
-628
-627
-625
-623
-622
-620
-618
-616
-614
-612
-610
-608
-606
-603
-601
-599
-596
-594
-592
-589
-587
-584
-582
-579
-577
-574
-571
-569
-566
-563
-561
-558
-555
-552
-549
-546
-543
-540
-537
-534
-531
-528
-525
-522
-518
-515
-512
-508
-505
-501
-498
-494
-490
-487
-483
-479
-475
-472
-468
-464
-460
-456
-452
-448
-443
-439
-435
-431
-427
-422
-418
-414
-410
-405
-401
-397
-392
-388
-383
-379
-375
-370
-366
-361
-357
-352
-348
-343
-339
-334
-329
-325
-320
-316
-311
-307
-302
-298
-293
-289
-284
-279
-275
-270
-266
-262
-257
-253
-248
-244
-240
-235
-231
-227
-223
-219
-214
-210
-206
-202
-198
-194
-191
-187
-183
-179
-175
-172
-168
-164
-161
-157
-153
-150
-146
-143
-140
-136
-133
-130
-127
-123
-120
-117
-114
-111
-108
-105
-102
-99
-96
-93
-90
-87
-84
-81
-78
-75
-72
-69
-66
-62
-59
-56
-53
-50
-47
-44
-41
-38
-35
-31
-28
-25
-22
-19
-15
-12
-9
-6
-2
1
4
7
11
14
17
20
24
27
30
33
37
40
43
46
49
53
56
59
63
66
69
72
76
79
82
86
89
92
96
99
103
106
109
113
116
120
123
127
130
134
137
141
144
148
151
154
158
161
165
168
172
175
178
182
185
188
192
195
198
202
205
208
212
215
219
222
225
229
232
236
239
243
246
250
253
257
261
264
268
272
276
279
283
287
291
295
299
302
306
310
314
318
322
326
330
334
337
341
345
349
353
357
361
365
369
373
376
380
384
388
392
396
400
404
407
411
415
419
423
426
430
434
438
441
445
449
452
456
459
463
467
470
474
477
481
485
488
492
496
499
503
507
511
514
518
522
526
529
533
537
541
544
548
552
555
559
563
566
570
574
577
581
585
588
592
595
599
603
606
610
613
617
621
624
628
631
635
639
642
646
649
653
656
660
664
667
671
674
678
681
685
688
692
695
699
702
706
710
713
717
720
724
727
731
734
738
742
745
749
753
756
760
764
767
771
775
779
782
786
790
793
797
801
805
808
812
816
819
823
827
830
834
837
841
845
848
851
855
858
862
865
868
872
875
878
881
884
887
890
893
896
899
901
904
907
909
912
914
917
919
921
923
925
927
929
931
933
934
936
937
939
940
941
942
943
944
945
945
946
946
947
947
947
947
947
947
947
947
946
946
945
944
944
943
942
941
940
939
938
937
936
934
933
932
930
929
928
926
925
923
922
920
918
917
915
914
912
911
909
908
907
905
904
903
901
900
899
898
897
896
895
894
893
892
891
890
889
888
887
886
885
884
883
882
881
880
879
878
877
875
874
873
872
871
869
868
867
866
864
863
862
861
859
858
857
855
854
852
851
850
848
847
845
844
842
840
839
837
835
833
832
830
828
826
824
822
820
817
815
813
811
809
806
804
802
799
797
794
792
789
787
784
781
778
776
773
770
767
764
761
758
755
751
748
745
741
738
734
731
727
723
719
715
711
707
703
699
694
690
685
681
676
671
666
661
656
651
646
641
636
630
625
620
615
609
604
599
593
588
583
577
572
566
561
556
550
545
539
534
529
523
518
512
507
501
496
490
485
479
473
468
462
457
451
445
440
434
428
423
417
411
405
400
394
388
383
377
371
365
359
354
348
342
336
331
325
319
313
307
301
295
290
284
278
272
266
260
254
248
242
236
230
224
218
212
206
200
195
189
183
177
172
166
161
155
150
145
140
135
130
125
120
115
110
106
101
97
92
88
84
79
75
71
67
63
59
55
51
47
43
39
35
31
27
24
20
16
12
9
5
1
-2
-6
-10
-13
-17
-20
-24
-27
-31
-34
-37
-41
-44
-47
-50
-53
-56
-59
-62
-65
-68
-71
-74
-76
-79
-82
-84
-87
-89
-91
-94
-96
-98
-100
-102
-104
-106
-108
-110
-112
-113
-115
-117
-118
-120
-121
-122
-124
-125
-126
-127
-128
-129
-130
-131
-132
-133
-133
-134
-135
-135
-136
-136
-136
-137
-137
-137
-138
-138
-138
-139
-139
-139
-139
-139
-139
-139
-139
-139
-139
-139
-139
-139
-139
-139
-139
-138
-138
-138
-138
-137
-137
-136
-136
-136
-135
-135
-134
-134
-133
-132
-132
-131
-130
-130
-129
-128
-127
-126
-126
-125
-124
-123
-122
-121
-120
-119
-117
-116
-115
-114
-113
-111
-110
-109
-108
-106
-105
-104
-103
-101
-100
-98
-97
-96
-94
-93
-91
-90
-89
-87
-85
-84
-82
-81
-79
-77
-76
-74
-72
-70
-69
-67
-65
-63
-61
-59
-57
-55
-53
-51
-49
-47
-45
-43
-41
-38
-36
-34
-32
-30
-28
-25
-23
-21
-19
-17
-14
-12
-10
-8
-6
-4
-1
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
31
33
35
37
39
41
42
44
46
48
50
52
54
56
58
60
62
64
66
68
70
72
73
75
77
79
81
83
85
87
89
91
92
94
96
98
100
102
104
105
107
109
111
113
114
116
118
120
122
124
125
127
129
131
133
134
136
138
140
141
143
145
146
148
150
152
153
155
157
158
160
162
163
165
167
169
171
172
174
176
178
180
182
184
186
188
190
192
194
196
198
200
202
203
205
207
209
211
212
214
216
217
219
220
222
223
224
226
227
228
229
230
231
232
233
234
235
236
236
237
238
238
239
239
240
240
241
241
242
242
242
242
243
243
243
243
243
243
243
243
243
243
243
243
243
243
243
242
242
242
242
241
241
241
240
240
240
239
239
238
238
237
237
236
235
235
234
233
233
232
231
231
230
229
228
228
227
226
225
225
224
223
222
222
221
220
220
219
218
218
217
217
216
216
215
215
215
214
214
214
214
214
214
214
214
214
214
214
214
214
214
214
215
215
215
215
216
216
216
217
217
218
218
218
219
219
220
220
221
221
222
222
223
224
224
225
226
227
228
228
229
230
231
232
233
234
235
236
237
238
240
241
242
243
244
245
246
247
248
250
251
252
253
254
255
256
257
259
260
261
262
263
264
265
267
268
269
270
271
272
274
275
276
277
278
280
281
282
283
285
286
287
288
289
291
292
293
294
295
296
297
298
299
300
301
302
303
303
304
305
305
306
306
307
307
308
308
308
308
308
308
308
308
308
308
308
308
307
307
307
306
306
306
305
305
304
303
303
302
301
301
300
299
298
298
297
296
294
293
292
291
289
288
287
285
283
282
280
278
277
275
273
271
269
268
266
264
261
259
257
255
252
250
247
244
242
239
236
234
231
228
225
222
219
216
213
210
207
204
201
198
194
191
188
185
181
178
174
171
168
164
161
158
154
151
147
144
141
137
134
131
128
124
121
118
115
111
108
105
102
99
95
92
89
86
83
80
77
74
71
68
65
63
60
57
54
51
48
45
42
39
36
33
30
28
25
22
19
16
13
10
8
5
2
-1
-3
-6
-9
-11
-14
-17
-19
-22
-24
-26
-29
-31
-33
-35
-37
-39
-41
-43
-45
-47
-49
-50
-52
-53
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-65
-66
-66
-66
-66
-67
-67
-67
-67
-66
-66
-66
-66
-65
-65
-64
-64
-63
-63
-62
-61
-60
-59
-58
-57
-56
-55
-53
-52
-50
-49
-47
-45
-43
-41
-39
-37
-34
-32
-29
-26
-23
-20
-17
-14
-11
-8
-4
-1
3
6
10
14
18
21
25
30
34
38
42
46
50
55
59
63
68
72
77
82
86
91
95
100
105
110
114
119
124
129
133
138
143
148
153
158
162
167
172
177
182
187
192
197
202
207
212
217
222
226
231
236
241
246
251
256
261
266
270
275
280
285
289
294
299
303
308
312
317
321
325
330
334
338
342
346
350
354
358
362
366
370
374
377
381
385
389
392
396
400
404
407
411
415
418
422
426
429
433
437
440
444
447
451
454
458
462
465
469
472
476
479
483
486
490
493
497
500
503
507
510
513
517
520
523
526
529
532
536
539
542
545
547
550
553
556
558
561
564
566
569
571
573
575
577
579
581
583
585
587
588
590
591
592
594
595
596
597
598
599
599
600
600
601
601
601
602
602
602
602
602
601
601
601
600
600
599
598
598
597
596
595
594
592
591
590
588
587
585
584
582
580
579
577
575
573
571
569
567
565
563
561
559
557
554
552
550
548
546
543
541
539
537
535
533
530
528
526
524
522
520
518
516
514
512
510
508
507
505
503
501
500
498
497
495
494
492
491
489
488
487
485
484
483
481
480
479
478
476
475
474
473
472
471
470
469
468
467
466
465
464
463
462
461
460
460
459
458
457
457
456
455
455
454
454
453
453
452
451
451
450
450
449
449
448
447
447
446
445
445
444
443
443
442
441
441
440
439
439
438
437
437
436
435
434
434
433
432
431
430
430
429
428
427
426
425
424
423
422
421
420
419
418
417
416
415
414
413
412
411
410
409
408
408
407
406
405
405
404
403
402
402
401
400
400
399
399
398
397
397
396
396
395
395
395
394
394
394
394
394
393
393
393
393
393
393
393
393
393
393
393
394
394
394
394
394
394
395
395
395
395
395
396
396
396
396
397
397
397
397
398
398
398
398
398
398
399
399
399
399
399
399
399
399
399
399
398
398
398
398
398
398
397
397
397
397
396
396
395
395
395
394
394
393
392
392
391
391
390
389
389
388
387
386
385
384
383
382
381
380
379
378
377
375
374
372
371
369
368
366
364
363
361
359
357
355
352
350
348
346
343
341
338
336
333
330
328
325
322
319
316
313
310
307
304
301
298
295
292
288
285
282
278
275
272
268
265
261
258
255
251
248
244
241
237
234
230
227
223
220
216
213
209
206
202
199
195
192
188
185
181
178
174
170
167
163
160
156
153
149
146
142
139
136
132
129
125
122
119
115
112
109
106
102
99
96
93
90
87
84
81
78
75
72
70
67
64
62
59
57
54
52
49
47
44
42
40
37
35
33
30
28
26
24
21
19
17
15
12
10
8
6
4
2
0
-2
-5
-7
-9
-11
-13
-15
-17
-18
-20
-22
-24
-26
-27
-29
-31
-33
-34
-36
-37
-39
-41
-42
-44
-45
-47
-48
-50
-51
-53
-54
-56
-57
-59
-60
-62
-64
-65
-67
-68
-70
-72
-73
-75
-76
-78
-80
-81
-83
-85
-86
-88
-90
-91
-93
-94
-96
-98
-99
-101
-102
-104
-105
-107
-109
-110
-111
-113
-114
-116
-117
-119
-120
-121
-123
-124
-125
-127
-128
-129
-131
-132
-133
-134
-135
-137
-138
-139
-140
-141
-142
-143
-145
-146
-147
-148
-149
-150
-151
-152
-153
-153
-154
-155
-156
-157
-157
-158
-159
-159
-160
-160
-161
-161
-162
-162
-163
-163
-163
-163
-164
-164
-164
-164
-164
-164
-164
-164
-164
-164
-163
-163
-163
-162
-162
-161
-161
-160
-160
-159
-159
-158
-157
-156
-155
-155
-154
-153
-152
-151
-150
-149
-148
-147
-146
-145
-143
-142
-141
-140
-139
-137
-136
-135
-134
-132
-131
-130
-128
-127
-125
-124
-122
-121
-119
-118
-116
-115
-113
-111
-110
-108
-106
-105
-103
-101
-99
-97
-96
-94
-92
-90
-88
-86
-84
-82
-80
-78
-76
-74
-72
-70
-68
-66
-64
-62
-60
-58
-56
-54
-52
-50
-48
-46
-44
-41
-39
-37
-35
-33
-32
-30
-28
-26
-24
-22
-20
-19
-17
-15
-13
-12
-10
-9
-7
-5
-4
-2
-1
0
2
3
4
6
7
8
9
10
11
13
14
15
16
17
17
18
19
20
21
22
23
23
24
25
26
26
27
28
28
29
29
30
30
31
31
31
32
32
33
33
33
34
34
34
34
35
35
35
36
36
36
37
37
37
38
38
38
39
39
39
40
40
41
41
41
42
42
43
43
44
45
45
46
46
47
48
48
49
50
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
69
70
71
72
74
75
76
78
79
81
82
84
85
87
88
90
91
93
95
96
98
100
101
103
105
107
109
111
113
114
116
118
121
123
125
127
129
131
134
136
138
141
143
146
148
151
153
156
158
161
163
166
168
171
173
176
178
181
183
186
189
191
194
196
199
201
204
206
209
212
214
217
219
222
224
227
229
232
235
237
240
242
245
248
250
253
256
258
261
264
266
269
272
274
277
280
282
285
288
291
293
296
299
301
304
307
310
312
315
318
320
323
325
328
331
333
336
338
340
343
345
348
350
352
354
356
358
361
363
365
367
368
370
372
374
376
377
379
381
383
384
386
387
389
390
392
393
394
396
397
398
400
401
402
403
404
405
406
407
408
409
410
411
411
412
413
414
414
415
416
416
417
417
418
418
418
419
419
419
420
420
420
420
420
421
421
421
421
421
421
421
421
420
420
420
420
420
419
419
418
418
418
417
417
416
416
415
414
414
413
412
411
411
410
409
408
407
406
406
405
404
403
402
401
400
399
398
397
396
395
395
394
393
392
391
390
389
389
388
387
387
386
385
385
384
383
383
382
382
381
381
380
380
379
379
379
378
378
377
377
377
376
376
376
376
375
375
375
374
374
374
374
373
373
373
373
373
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
372
373
373
373
374
374
374
375
375
376
376
377
377
378
378
379
380
380
381
381
382
383
383
384
385
385
386
387
387
388
389
389
390
391
391
392
393
393
394
394
395
395
396
396
397
397
398
398
399
399
400
400
400
401
401
401
401
401
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
402
401
401
401
401
401
401
401
400
400
400
400
399
399
399
399
398
398
398
397
397
397
396
396
395
395
395
394
394
393
393
393
392
392
391
391
390
390
390
389
389
389
388
388
387
387
387
386
386
385
385
385
384
384
384
383
383
382
382
382
381
381
381
380
380
380
379
379
379
379
378
378
378
378
378
378
378
377
377
377
377
377
377
377
377
377
377
377
377
377
377
377
376
376
376
376
376
376
376
376
376
375
375
375
375
374
374
374
373
373
373
372
372
371
371
371
370
370
369
369
368
368
367
367
366
365
365
364
364
363
362
362
361
360
360
359
358
357
357
356
355
354
353
352
351
350
349
348
347
346
345
344
343
341
340
339
337
336
335
333
332
331
329
328
326
325
323
321
320
318
316
314
313
311
309
307
305
303
301
299
297
295
293
291
289
287
284
282
280
277
275
273
270
268
265
262
260
257
254
252
249
246
243
240
237
234
231
228
225
222
219
216
213
210
207
203
200
197
194
190
187
183
180
176
173
169
166
162
158
155
151
147
143
140
136
132
128
124
120
117
113
109
105
101
97
93
89
86
82
78
74
70
66
63
59
55
51
48
44
40
37
33
29
26
22
19
15
12
8
5
1
-2
-5
-8
-12
-15
-18
-21
-24
-27
-29
-32
-35
-38
-40
-43
-45
-48
-50
-53
-55
-57
-59
-61
-63
-65
-67
-68
-70
-72
-73
-75
-77
-78
-79
-81
-82
-83
-85
-86
-87
-88
-89
-90
-91
-92
-93
-93
-94
-95
-96
-96
-97
-98
-98
-99
-99
-100
-100
-100
-101
-101
-101
-101
-102
-102
-102
-102
-102
-102
-102
-102
-101
-101
-101
-101
-100
-100
-99
-99
-98
-97
-97
-96
-95
-94
-93
-92
-91
-89
-88
-87
-85
-84
-82
-81
-79
-77
-75
-73
-71
-69
-67
-65
-63
-61
-58
-56
-54
-51
-49
-46
-44
-41
-38
-36
-33
-30
-27
-25
-22
-19
-17
-14
-11
-8
-6
-3
-1
2
5
7
10
13
15
18
21
23
26
29
32
35
37
40
43
46
49
52
55
58
61
64
68
71
74
77
81
84
87
91
94
98
101
105
108
112
116
120
123
127
131
135
139
143
147
151
155
159
163
167
171
175
179
184
188
192
196
201
205
209
213
218
222
226
230
235
239
243
247
252
256
260
265
269
273
278
282
287
291
295
300
304
309
313
318
322
327
331
336
340
345
349
354
358
363
367
372
376
381
385
390
394
398
403
407
411
416
420
424
429
433
437
441
446
450
454
458
462
466
470
475
479
483
487
491
495
499
503
507
511
515
519
523
526
530
534
538
542
546
549
553
557
560
564
567
571
574
577
580
583
586
589
592
595
598
601
603
606
608
611
613
616
618
620
623
625
627
629
631
633
635
637
639
641
642
644
646
648
649
651
652
654
655
657
658
659
660
662
663
664
665
666
667
668
668
669
670
670
671
672
672
673
673
673
674
674
674
674
675
675
675
675
675
675
674
674
674
674
673
673
672
672
671
671
670
669
669
668
667
666
665
664
663
662
660
659
658
656
655
653
652
650
648
647
645
643
641
639
637
635
633
631
629
626
624
622
620
617
615
613
610
608
605
603
600
597
595
592
589
586
584
581
578
575
572
569
566
563
560
557
554
551
547
544
541
538
535
532
529
525
522
519
516
513
510
507
504
500
497
494
491
488
485
482
479
476
473
470
467
464
461
458
455
453
450
447
444
441
438
436
433
430
428
425
422
420
417
415
412
410
408
405
403
401
398
396
394
392
390
388
386
384
382
380
379
377
375
373
372
370
369
367
365
364
362
361
359
358
357
355
354
353
352
351
349
348
347
346
345
345
344
343
342
341
341
340
340
339
339
338
338
337
337
336
336
335
335
335
334
334
334
333
333
332
332
332
331
331
330
330
329
329
328
328
327
327
326
326
325
325
324
323
323
322
322
321
320
320
319
318
317
317
316
315
315
314
313
313
312
311
311
310
309
309
308
307
307
306
305
304
304
303
302
302
301
300
300
299
298
297
297
296
295
294
294
293
292
291
290
290
289
288
287
286
286
285
284
283
282
281
280
279
278
277
276
275
274
273
272
271
270
269
268
266
265
264
263
261
260
259
257
256
254
253
252
250
249
247
246
244
243
241
240
239
237
236
234
233
232
230
229
228
227
225
224
223
222
221
220
218
217
216
215
214
213
212
211
210
209
208
207
206
205
204
203
201
200
199
198
196
195
194
192
191
190
188
187
185
184
182
181
179
178
176
174
173
171
170
168
166
165
163
161
160
158
157
155
154
152
150
149
147
146
144
143
141
140
138
137
135
134
132
131
129
127
126
124
123
121
120
118
117
115
113
112
110
108
107
105
103
101
100
98
96
94
92
90
88
87
85
83
81
79
77
75
73
71
69
67
65
63
61
59
57
55
53
51
49
47
45
42
40
38
36
34
32
30
28
26
24
22
20
18
16
14
12
9
7
5
3
1
-2
-4
-6
-9
-11
-13
-16
-18
-21
-23
-25
-28
-30
-33
-35
-38
-40
-43
-45
-48
-50
-53
-55
-58
-60
-63
-65
-68
-70
-72
-75
-77
-80
-82
-84
-87
-89
-91
-94
-96
-98
-100
-102
-104
-106
-108
-110
-112
-114
-116
-117
-119
-121
-122
-124
-125
-127
-128
-129
-131
-132
-133
-134
-135
-136
-137
-137
-138
-139
-140
-140
-141
-141
-141
-142
-142
-142
-142
-142
-142
-142
-142
-142
-142
-142
-141
-141
-140
-140
-139
-139
-138
-137
-137
-136
-135
-134
-133
-132
-131
-130
-128
-127
-126
-125
-123
-122
-120
-118
-117
-115
-113
-111
-109
-107
-105
-102
-100
-98
-95
-93
-90
-87
-84
-81
-78
-75
-72
-69
-66
-63
-59
-56
-53
-49
-46
-42
-38
-35
-31
-27
-23
-19
-15
-11
-7
-3
1
5
9
13
18
22
26
30
34
39
43
47
52
56
60
65
69
73
78
82
87
91
96
100
104
109
113
118
123
127
132
136
141
146
150
155
159
164
169
173
178
183
187
192
196
201
205
210
214
219
223
228
232
237
241
246
250
254
259
263
267
272
276
280
284
288
293
297
301
305
309
313
317
321
325
329
333
336
340
344
348
351
355
359
362
366
369
373
377
380
384
387
390
394
397
401
404
407
411
414
417
421
424
427
430
434
437
440
443
447
450
453
456
459
463
466
469
472
475
478
481
484
487
490
493
496
499
502
505
508
510
513
516
519
521
524
526
529
531
534
536
538
541
543
545
547
550
552
554
555
557
559
561
563
564
566
567
569
570
571
572
574
575
576
577
578
579
579
580
581
582
582
583
583
583
584
584
584
584
585
585
585
584
584
584
584
584
583
583
582
582
581
581
580
580
579
578
578
577
576
575
575
574
573
572
571
571
570
569
568
567
566
565
564
563
562
561
561
560
559
558
557
556
554
553
552
551
550
549
548
546
545
544
543
541
540
539
537
536
534
533
531
530
529
527
526
524
523
521
519
518
516
515
513
512
510
509
507
505
504
502
501
499
498
496
495
493
492
490
489
487
486
484
483
481
480
479
477
476
475
473
472
471
469
468
467
466
465
463
462
461
460
459
458
457
456
455
454
453
453
452
451
450
449
449
448
447
447
446
446
445
445
444
444
443
443
443
442
442
442
442
442
442
441
441
441
441
441
441
441
441
441
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
440
439
439
439
439
439
438
438
438
437
437
436
436
435
435
434
434
433
433
432
431
431
430
430
429
428
428
427
426
425
425
424
423
423
422
421
420
420
419
418
418
417
416
415
415
414
413
412
412
411
410
409
409
408
407
406
405
405
404
403
402
401
400
399
398
397
396
394
393
392
391
390
389
387
386
385
383
382
381
380
378
377
376
374
373
371
370
368
367
366
364
363
361
360
358
357
355
354
352
351
350
348
347
345
344
343
341
340
338
337
336
334
333
331
330
329
327
326
324
323
322
320
319
317
316
314
313
311
309
308
306
305
303
301
300
298
296
294
293
291
289
287
285
284
282
280
278
276
274
272
270
268
266
264
263
261
259
257
255
253
251
249
247
245
243
241
239
237
235
233
232
230
228
226
224
222
221
219
217
216
214
212
211
209
207
206
204
203
201
200
198
197
195
194
193
191
190
189
187
186
185
184
182
181
180
179
177
176
175
174
173
172
171
169
168
167
166
165
164
163
162
161
160
159
158
158
157
156
155
154
153
153
152
151
150
150
149
148
147
147
146
145
145
144
144
143
142
142
141
141
140
140
139
139
138
137
137
136
136
135
135
134
134
133
133
132
131
131
130
130
129
129
128
127
127
126
126
125
124
124
123
123
122
121
121
120
120
119
118
118
117
117
116
115
115
114
114
113
112
112
111
111
110
110
109
108
108
107
107
106
106
105
104
104
103
103
102
102
101
101
100
99
99
98
98
98
97
97
96
96
96
95
95
95
94
94
94
94
94
94
94
94
94
94
94
94
94
94
95
95
95
96
96
96
97
97
98
98
99
100
100
101
102
103
103
104
105
106
107
108
108
109
110
111
112
113
114
115
116
118
119
120
121
122
123
124
126
127
128
129
131
132
133
134
136
137
139
140
141
143
145
146
148
149
151
153
154
156
158
160
162
164
166
168
170
172
174
177
179
181
183
186
188
191
193
196
199
201
204
207
210
213
216
219
222
225
228
231
234
237
241
244
247
251
254
258
261
265
268
272
275
279
283
287
290
294
298
302
306
310
313
317
321
325
329
333
337
341
345
349
353
357
361
364
368
372
376
380
384
388
392
396
400
404
408
411
415
419
423
427
431
435
439
442
446
450
454
458
461
465
469
473
476
480
484
487
491
495
498
502
505
509
513
516
519
523
526
530
533
536
540
543
546
549
552
555
558
561
564
567
570
573
576
579
582
584
587
590
592
595
597
600
602
605
607
609
612
614
616
618
620
622
624
626
628
630
632
634
635
637
638
640
641
643
644
645
647
648
649
650
651
651
652
653
654
654
655
655
655
656
656
656
656
656
655
655
655
654
653
653
652
651
650
649
648
646
645
644
642
640
639
637
635
633
631
629
627
624
622
620
617
615
612
609
606
604
601
598
595
592
589
586
583
579
576
573
570
566
563
560
556
553
549
546
542
539
535
532
528
525
521
517
514
510
506
503
499
495
491
487
484
480
476
472
468
464
460
457
453
449
445
441
437
433
429
425
421
417
413
410
406
402
398
394
390
386
382
379
375
371
367
364
360
356
353
349
346
342
338
335
331
328
324
321
317
314
310
307
303
300
296
293
290
286
283
279
276
273
269
266
263
260
256
253
250
247
243
240
237
234
231
228
225
222
219
215
212
209
206
203
200
197
194
191
188
185
182
179
176
173
170
167
164
161
158
155
152
149
147
144
141
138
135
132
129
126
123
120
117
115
112
109
106
103
100
97
94
91
89
86
83
80
77
74
71
68
66
63
60
57
54
51
48
45
43
40
37
34
31
28
26
23
20
17
15
12
9
6
4
1
-2
-4
-7
-9
-12
-15
-17
-20
-22
-24
-27
-29
-32
-34
-36
-38
-40
-42
-45
-47
-48
-50
-52
-54
-56
-58
-59
-61
-62
-64
-65
-67
-68
-69
-71
-72
-73
-74
-75
-76
-77
-78
-78
-79
-80
-80
-81
-81
-82
-82
-82
-82
-83
-83
-83
-82
-82
-82
-82
-82
-81
-81
-80
-80
-79
-78
-77
-77
-76
-75
-74
-73
-72
-70
-69
-68
-66
-65
-64
-62
-60
-59
-57
-55
-53
-51
-49
-47
-45
-42
-40
-38
-35
-33
-30
-28
-25
-22
-19
-17
-14
-11
-8
-5
-2
1
4
7
10
13
17
20
23
27
30
33
37
40
43
47
50
54
57
61
64
68
71
75
79
82
86
90
93
97
101
105
109
113
116
120
124
128
132
136
140
144
148
152
156
160
164
168
172
176
180
184
188
192
196
200
204
208
212
216
220
224
228
232
236
240
244
247
251
255
259
263
267
270
274
278
281
285
289
292
296
300
303
307
310
314
317
321
324
328
331
335
338
341
345
348
351
354
357
361
364
367
370
373
376
379
382
385
388
391
393
396
399
401
404
407
409
412
414
417
419
422
424
426
428
431
433
435
437
439
441
443
445
447
449
451
453
455
457
459
460
462
464
466
467
469
471
472
474
475
477
479
480
481
483
484
486
487
488
489
491
492
493
494
495
496
497
498
499
500
501
502
502
503
504
505
505
506
506
507
507
508
508
509
509
509
509
509
509
509
509
509
509
509
509
509
509
508
508
508
507
507
506
506
505
504
504
503
502
501
500
499
498
497
496
495
494
492
491
490
488
487
485
484
482
480
479
477
475
473
471
469
467
465
463
461
459
456
454
452
449
447
444
441
439
436
434
431
428
425
423
420
417
414
411
408
405
402
399
396
393
390
387
384
381
378
375
371
368
365
362
358
355
352
348
345
341
338
335
331
328
324
321
318
314
311
307
304
301
297
294
291
287
284
281
278
274
271
268
265
262
259
256
253
250
247
244
242
239
236
234
231
228
226
223
221
219
216
214
212
210
208
205
203
201
199
197
195
194
192
190
188
186
185
183
181
180
178
177
175
173
172
170
169
167
166
164
163
162
160
159
157
156
155
154
152
151
150
149
148
147
145
144
143
142
141
141
140
139
138
137
137
136
135
135
134
134
133
133
133
133
132
132
132
132
132
132
132
132
133
133
133
133
134
134
134
135
135
136
136
137
137
138
138
139
140
140
141
142
142
143
144
145
145
146
147
148
149
150
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
166
167
168
169
170
171
173
174
175
176
177
179
180
181
182
184
185
186
187
188
190
191
192
193
194
196
197
198
199
200
201
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
219
220
221
222
223
223
224
225
225
226
227
227
228
229
229
230
230
231
231
232
232
232
233
233
233
234
234
234
235
235
235
236
236
236
237
237
237
237
238
238
238
238
239
239
239
239
239
239
239
239
239
239
239
239
240
240
240
240
240
240
240
240
240
239
239
239
239
239
239
239
239
238
238
238
238
238
237
237
237
237
237
236
236
236
236
235
235
235
235
234
234
234
234
233
233
233
233
232
232
232
231
231
231
231
230
230
230
230
229
229
229
229
228
228
228
228
228
227
227
227
227
226
226
226
225
225
225
224
224
224
224
223
223
223
222
222
222
221
221
220
220
220
219
219
218
218
218
217
217
216
216
215
215
214
214
213
213
212
212
211
211
210
210
209
209
209
208
208
207
207
207
207
206
206
206
206
205
205
205
205
205
205
205
205
205
205
206
206
206
206
206
207
207
207
208
208
208
209
209
209
210
210
210
211
211
211
212
212
212
213
213
213
214
214
214
215
215
215
216
216
216
217
217
218
218
219
219
220
220
221
221
222
222
223
224
224
225
226
226
227
228
229
229
230
231
232
233
234
234
235
236
237
238
239
240
241
241
242
243
244
245
246
246
247
248
249
249
250
251
251
252
253
253
254
254
255
255
256
256
257
257
258
258
258
259
259
259
260
260
260
260
260
260
260
261
261
261
261
261
261
260
260
260
260
260
259
259
259
259
258
258
258
257
257
256
256
256
255
255
254
254
254
253
253
253
252
252
252
252
251
251
251
251
251
250
250
250
250
250
250
250
250
251
251
251
251
251
252
252
252
253
253
254
254
255
255
256
256
257
257
258
258
259
260
260
261
262
262
263
264
264
265
266
266
267
268
268
269
270
271
271
272
273
274
274
275
276
277
277
278
279
280
280
281
282
283
283
284
285
286
286
287
288
288
289
290
290
291
292
292
293
294
294
295
296
296
297
297
298
298
299
300
300
301
301
302
302
303
303
304
305
305
306
306
307
307
308
308
309
310
310
311
312
312
313
314
314
315
316
317
318
319
319
320
321
322
323
325
326
327
328
329
331
332
333
335
336
337
339
340
342
343
344
346
348
349
351
352
354
355
357
358
360
362
363
365
366
368
370
371
373
374
376
377
379
380
382
383
385
386
388
389
390
392
393
394
395
397
398
399
400
401
402
403
404
405
406
407
408
409
410
410
411
412
412
413
413
414
414
415
415
415
416
416
416
416
417
417
417
417
417
417
416
416
416
416
416
415
415
414
414
413
413
412
412
411
410
410
409
408
407
406
405
405
404
403
402
401
399
398
397
396
395
394
392
391
390
389
387
386
385
384
382
381
380
378
377
376
375
373
372
370
369
368
366
365
364
362
361
360
358
357
355
354
353
351
350
348
347
346
344
343
341
340
339
337
336
334
333
331
330
329
327
326
325
323
322
320
319
318
316
315
314
312
311
310
309
307
306
305
304
303
301
300
299
298
297
296
295
294
293
292
291
290
289
288
287
287
286
285
284
283
283
282
282
281
280
280
279
279
278
278
278
277
277
277
276
276
276
276
276
275
275
275
275
275
275
275
275
275
275
275
276
276
276
276
276
276
277
277
277
278
278
278
278
279
279
279
280
280
281
281
282
283
283
284
284
285
286
286
287
288
289
289
290
291
291
292
293
294
295
295
296
297
298
299
299
300
301
302
302
303
304
304
305
306
306
307
308
308
309
309
310
310
311
311
311
312
312
312
313
313
313
313
313
314
314
314
314
314
314
314
314
314
314
313
313
313
313
313
313
312
312
312
312
311
311
311
310
310
310
309
309
309
308
308
307
307
306
306
305
305
304
304
303
302
302
301
301
300
299
299
298
297
297
296
295
295
294
293
292
291
291
290
289
288
287
286
286
285
284
283
282
281
280
279
278
277
276
275
274
273
271
270
269
268
267
265
264
263
262
260
259
258
256
255
254
252
251
250
248
247
246
244
243
241
240
239
237
236
235
233
232
231
229
228
227
226
224
223
222
221
220
219
217
216
215
214
213
212
211
210
209
208
208
207
206
205
204
203
203
202
201
201
200
199
199
198
197
197
196
196
195
195
194
194
193
193
193
192
192
191
191
191
190
190
190
190
189
189
189
189
189
188
188
188
188
188
188
188
188
188
188
188
188
188
189
189
189
189
190
190
190
191
191
191
192
192
193
194
194
195
196
196
197
198
199
200
201
202
203
204
205
206
207
208
209
211
212
213
214
216
217
219
220
221
223
225
226
228
229
231
233
235
236
238
240
242
244
246
248
250
252
254
256
258
260
262
264
266
268
271
273
275
277
279
282
284
286
289
291
293
296
298
301
303
305
308
310
313
315
318
320
323
325
328
330
333
335
338
341
343
346
349
351
354
357
359
362
365
368
370
373
376
378
381
384
386
389
392
395
397
400
403
405
408
411
413
416
419
421
424
426
429
431
433
436
438
441
443
445
447
450
452
454
456
458
460
462
464
466
468
470
471
473
475
477
478
480
481
483
484
486
487
488
490
491
492
493
494
495
496
497
497
498
499
499
500
500
501
501
501
502
502
502
502
502
502
502
502
502
501
501
501
500
500
499
499
498
497
497
496
495
494
493
492
491
490
489
488
487
486
484
483
482
481
479
478
477
475
474
472
471
469
468
466
465
463
462
460
459
457
455
454
452
451
449
447
446
444
443
441
439
438
436
434
432
431
429
427
426
424
422
421
419
417
415
414
412
410
408
407
405
403
401
400
398
396
395
393
391
389
388
386
384
382
381
379
377
375
374
372
370
368
366
365
363
361
359
357
356
354
352
350
348
346
344
343
341
339
337
335
333
331
329
327
325
323
321
319
317
315
313
311
309
307
305
303
301
299
297
295
293
291
289
287
285
283
281
279
277
275
272
270
268
266
264
262
260
258
256
254
252
250
248
247
245
243
241
239
237
235
234
232
230
228
226
225
223
221
219
217
216
214
212
210
209
207
205
203
201
200
198
196
194
192
190
189
187
185
183
181
179
177
175
173
171
169
167
165
163
161
159
157
155
152
150
148
146
144
142
140
138
135
133
131
129
127
125
123
121
119
117
115
113
111
109
107
105
103
102
100
98
96
94
93
91
89
88
86
84
83
81
80
78
77
75
74
72
71
69
68
67
65
64
63
62
60
59
58
57
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
36
35
34
33
33
32
31
30
30
29
29
28
27
27
26
25
25
24
24
23
22
22
21
21
20
20
19
19
18
18
17
17
17
16
16
15
15
15
14
14
14
13
13
12
12
12
12
11
11
11
10
10
10
9
9
9
9
8
8
8
8
7
7
7
7
7
6
6
6
6
6
5
5
5
5
5
5
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
5
5
5
5
6
6
6
7
7
7
8
8
9
9
9
10
11
11
12
12
13
13
14
15
15
16
17
18
18
19
20
21
22
23
23
24
25
26
27
28
29
30
31
32
34
35
36
37
38
39
40
41
42
43
45
46
47
48
49
50
51
53
54
55
56
57
58
60
61
62
63
64
65
66
67
69
70
71
72
73
74
75
76
77
79
80
81
82
83
84
85
86
87
88
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
107
108
109
110
111
111
112
113
113
114
115
115
116
117
117
118
118
119
119
120
120
121
121
122
122
123
123
123
124
124
125
125
125
125
126
126
126
126
126
127
127
127
127
127
126
126
126
126
126
126
125
125
125
124
124
123
123
122
122
121
121
120
119
119
118
117
116
115
115
114
113
112
111
110
109
108
107
106
105
104
103
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
88
87
86
85
84
84
83
82
82
81
80
80
79
79
78
78
78
77
77
76
76
76
76
75
75
75
75
75
75
74
74
74
74
74
75
75
75
75
75
75
76
76
76
77
77
78
78
79
80
80
81
81
82
83
84
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
102
103
104
105
106
108
109
110
112
113
114
116
117
118
120
121
122
124
125
127
128
130
131
132
134
135
137
138
139
141
142
144
145
146
148
149
151
152
153
155
156
158
159
160
162
163
165
166
168
169
170
172
173
175
176
178
179
180
182
183
185
186
187
189
190
191
193
194
195
197
198
199
201
202
203
204
206
207
208
209
210
212
213
214
215
216
217
219
220
221
222
223
224
225
226
228
229
230
231
232
233
234
235
237
238
239
240
241
242
243
244
245
247
248
249
250
251
252
254
255
256
257
258
260
261
262
263
265
266
267
268
270
271
272
273
275
276
277
279
280
281
283
284
286
287
288
290
291
293
294
296
298
299
301
303
304
306
307
309
311
313
314
316
318
320
321
323
325
327
329
330
332
334
336
337
339
341
342
344
346
347
349
351
352
354
355
357
359
360
362
363
365
366
368
369
371
372
374
375
377
378
380
381
383
384
386
388
389
391
392
394
395
397
398
400
402
403
405
406
408
410
411
413
414
416
418
419
421
423
424
426
428
429
431
433
434
436
438
439
441
442
444
446
447
449
451
452
454
456
457
459
460
462
464
465
467
468
470
472
473
475
476
478
480
481
483
484
486
487
489
490
492
493
495
496
497
499
500
501
503
504
505
507
508
509
510
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
530
531
532
533
534
534
535
536
537
537
538
539
539
540
541
541
542
543
543
544
544
545
545
546
546
547
547
548
548
549
549
550
550
550
551
551
552
552
552
553
553
553
554
554
554
554
555
555
555
555
555
555
556
556
556
556
556
556
556
556
556
556
556
556
556
556
555
555
555
555
555
554
554
554
553
553
552
552
552
551
550
550
549
549
548
547
546
546
545
544
543
542
541
540
539
538
537
536
535
534
532
531
530
529
527
526
525
523
522
521
519
518
516
515
514
512
511
509
508
506
505
504
502
501
499
498
496
495
494
492
491
489
488
486
485
483
482
480
479
477
476
474
472
471
469
468
466
464
462
461
459
457
455
454
452
450
448
446
444
442
441
439
437
435
433
431
429
427
424
422
420
418
416
414
412
410
408
405
403
401
399
397
395
393
391
388
386
384
382
380
378
376
374
371
369
367
365
363
361
359
357
355
353
351
349
347
344
342
340
338
336
334
332
330
328
326
324
323
321
319
317
315
313
311
309
307
306
304
302
300
298
297
295
293
291
290
288
286
285
283
282
280
278
277
275
274
273
271
270
268
267
266
264
263
262
261
259
258
257
256
255
254
253
252
251
249
248
247
246
245
245
244
243
242
241
240
239
238
238
237
236
235
235
234
233
233
232
232
231
230
230
230
229
229
228
228
228
227
227
227
227
227
226
226
226
226
226
226
226
226
226
226
226
226
226
226
227
227
227
227
227
228
228
228
228
229
229
229
230
230
230
231
231
231
232
232
233
233
234
234
235
235
236
237
237
238
239
239
240
241
242
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
259
260
261
263
264
265
266
268
269
271
272
273
275
276
278
280
281
283
284
286
288
289
291
293
294
296
298
300
301
303
305
307
309
311
313
315
317
319
321
323
325
327
329
332
334
336
338
340
343
345
347
349
352
354
356
358
361
363
365
368
370
372
374
377
379
381
383
385
387
390
392
394
396
398
400
402
404
406
408
410
411
413
415
417
419
420
422
424
425
427
429
430
432
433
435
436
438
439
441
442
443
445
446
447
448
450
451
452
453
454
455
456
457
458
458
459
460
461
461
462
462
463
464
464
464
465
465
465
466
466
466
467
467
467
467
467
468
468
468
468
468
468
468
468
469
469
469
469
469
469
469
469
469
469
470
470
470
470
470
470
470
470
470
471
471
471
471
471
471
471
471
472
472
472
472
472
472
473
473
473
473
473
473
474
474
474
474
474
475
475
475
475
475
475
476
476
476
476
476
477
477
477
477
477
478
478
478
478
478
479
479
479
479
479
479
480
480
480
480
480
480
480
480
481
481
481
481
481
481
481
481
482
482
482
482
482
482
482
482
482
482
482
482
482
482
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
483
482
482
482
482
482
482
482
482
481
481
481
481
481
481
480
480
480
480
479
479
479
479
478
478
478
478
477
477
477
476
476
476
475
475
474
474
474
473
473
472
472
472
471
471
470
470
470
469
469
468
468
468
467
467
466
466
466
465
465
464
464
464
463
463
462
462
462
461
461
460
460
460
459
459
459
458
458
458
458
457
457
457
456
456
456
455
455
455
455
454
454
454
454
454
453
453
453
453
453
453
452
452
452
452
452
452
452
452
452
451
451
451
451
452
452
452
452
452
452
452
452
452
452
452
452
453
453
453
453
453
453
453
454
454
454
454
454
454
454
454
454
455
455
455
455
455
455
455
455
455
455
454
454
454
454
454
454
453
453
453
452
452
451
451
451
450
450
450
449
449
449
448
448
447
447
447
446
446
446
445
445
445
444
444
443
443
443
442
442
442
441
441
441
440
440
440
439
439
438
438
438
437
437
437
436
436
436
435
435
435
434
434
434
433
433
433
432
432
432
431
431
430
430
430
429
429
429
428
428
428
427
427
427
426
426
426
425
425
425
424
424
424
423
423
423
422
422
422
422
421
421
421
420
420
420
419
419
419
418
418
418
417
417
417
416
416
416
415
415
415
414
414
414
414
413
413
413
412
412
412
411
411
411
410
410
410
410
409
409
409
408
408
408
407
407
407
406
406
406
406
405
405
405
404
404
404
404
403
403
403
402
402
402
401
401
401
401
400
400
400
399
399
399
399
398
398
398
397
397
397
397
396
396
396
395
395
395
395
394
394
394
393
393
393
393
392
392
392
392
391
391
391
390
390
390
390
389
389
389
389
388
388
388
387
387
387
387
386
386
386
386
385
385
385
385
384
384
384
384
383
383
383
382
382
382
382
381
381
381
381
380
380
380
380
379
379
379
379
378
378
378
378
377
377
377
377
376
376
376
376
375
375
375
375
374
374
374
374
374
373
373
373
373
372
372
372
372
371
371
371
371
370
370
370
370
369
369
369
369
369
368
368
368
368
367
367
367
367
366
366
366
366
366
365
365
365
365
364
364
364
364
364
363
363
363
363
362
362
362
362
362
361
361
361
361
361
360
360
360
360
359
359
359
359
359
358
358
358
358
358
357
357
357
357
357
356
356
356
356
356
355
355
355
355
355
354
354
354
354
354
353
353
353
353
353
352
352
352
352
352
351
351
351
351
351
350
350
350
350
350
349
349
349
349
349
348
348
348
348
348
348
347
347
347
347
347
346
346
346
346
346
346
345
345
345
345
345
344
344
344
344
344
344
343
343
343
343
343
343
342
342
342
342
342
341
341
341
341
341
341
340
340
340
340
340
340
339
339
339
339
339
339
338
338
338
338
338
338
337
337
337
337
337
337
337
336
336
336
336
336
336
335
335
335
335
335
335
334
334
334
334
334
334
334
333
333
333
333
333
333
332
332
332
332
332
332
332
331
331
331
331
331
331
331
330
330
330
330
330
330
330
329
329
329
329
329
329
329
328
328
328
328
328
328
328
327
327
327
327
327
327
327
327
326
326
326
326
326
326
326
325
325
325
325
325
325
325
325
324
324
324
324
324
324
324
324
323
323
323
323
323
323
323
323
322
322
322
322
322
322
322
322
321
321
321
321
321
321
321
321
321
320
320
320
320
320
320
320
320
319
319
319
319
319
319
319
319
319
318
318
318
318
318
318
318
318
318
317
317
317
317
317
317
317
317
317
317
316
316
316
316
316
316
316
316
316
316
315
315
315
315
315
315
315
315
315
315
314
314
314
314
314
314
314
314
314
314
313
313
313
313
313
313
313
313
313
313
313
312
312
312
312
312
312
312
312
312
312
312
311
311
311
311
311
311
311
311
311
311
311
310
310
310
310
310
310
310
310
310
310
310
310
309
309
309
309
309
309
309
309
309
309
309
309
309
308
308
308
308
308
308
308
308
308
308
308
308
308
307
307
307
307
307
307
307
307
307
307
307
307
307
307
306
306
306
306
306
306
306
306
306
306
306
306
306
306
306
305
305
305
305
305
305
305
305
305
305
305
305
305
305
305
304
304
304
304
304
304
304
304
304
304
304
304
304
304
304
304
304
303
303
303
303
303
303
303
303
303
303
303
303
303
303
303
303
303
303
302
302
302
302
302
302
302
302
302
302
302
302
302
302
302
302
302
302
302
302
301
301
301
301
301
301
301
301
301
301
301
301
301
301
301
301
301
301
301
301
301
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
300
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
299
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
298
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
297
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
296
