21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
22
22
22
23
23
23
24
24
24
24
25
25
25
25
25
25
26
26
26
26
26
26
26
26
26
25
25
24
23
23
22
22
21
21
21
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
22
22
22
22
22
22
22
22
23
23
23
23
23
24
24
24
24
24
23
23
23
20
20
20
20
20
20
19
19
18
18
17
17
17
16
16
16
16
16
17
18
18
19
19
19
20
20
20
23
23
23
23
23
23
23
23
23
24
25
27
28
30
31
32
32
34
35
35
36
36
36
37
37
37
37
37
37
37
37
38
38
38
38
38
37
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
35
35
36
36
36
36
36
36
36
36
36
36
36
36
37
37
37
37
37
37
37
38
40
40
40
40
39
38
38
38
38
38
37
34
34
34
34
34
34
34
34
34
34
34
33
33
33
33
33
33
33
33
33
33
33
34
34
34
35
35
35
35
35
35
35
36
36
36
36
37
37
37
37
38
38
38
39
39
39
39
39
39
40
40
40
40
40
40
40
40
40
40
40
40
40
40
40
41
41
41
41
41
42
43
43
43
43
43
43
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
47
47
47
47
47
47
48
48
49
49
49
49
49
49
50
50
50
51
52
52
52
52
52
53
54
55
55
55
57
58
58
58
58
57
57
57
56
57
57
60
60
64
64
63
62
62
62
62
62
62
62
62
62
62
62
62
62
62
61
60
60
59
59
59
59
59
59
58
58
58
58
58
58
58
58
58
58
58
56
56
56
56
56
55
54
53
53
53
53
53
53
53
53
53
53
52
52
52
51
51
51
51
52
52
52
52
52
52
52
52
52
52
52
52
52
52
52
45
36
33
32
29
28
27
26
25
25
25
26
26
23
22
19
16
15
15
15
15
15
15
15
14
13
13
13
12
12
12
12
12
12
12
11
11
11
11
11
8
8
8
8
8
8
8
8
8
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
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
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
9
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
11
11
11
11
12
12
12
12
11
11
11
10
10
10
10
9
8
8
8
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
9
9
9
10
10
11
11
12
12
12
12
11
11
9
9
8
8
8
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
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
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
12
13
13
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
16
16
16
16
16
16
17
17
18
20
20
20
20
20
20
21
21
21
22
22
23
24
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
26
26
29
29
29
30
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
32
32
32
32
32
32
32
33
33
33
33
33
33
33
33
35
37
38
39
41
44
45
45
46
46
48
49
49
50
50
51
54
57
59
59
60
61
61
60
60
59
58
57
57
56
55
55
55
54
54
51
49
49
48
48
47
47
43
42
41
39
35
34
33
31
31
29
28
25
25
24
23
23
23
23
22
22
22
22
21
20
20
20
20
20
19
19
19
18
18
17
17
17
17
16
14
13
13
13
13
13
13
12
12
12
12
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
13
13
13
13
13
13
13
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
16
16
16
16
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
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
14
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
14
14
14
14
14
14
14
14
14
14
15
15
15
15
16
16
16
17
17
18
18
18
18
18
18
20
20
20
20
21
21
21
22
22
22
22
22
23
23
24
24
23
23
23
23
23
23
23
23
23
23
23
23
22
22
22
21
20
20
20
20
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
18
18
18
18
18
18
18
18
18
18
18
18
19
19
19
19
19
19
19
19
27
28
30
31
32
35
36
38
39
40
40
42
43
44
45
46
54
55
57
57
56
56
56
56
55
55
55
55
54
54
54
54
53
53
53
52
52
52
52
51
51
49
49
49
48
48
48
48
46
46
45
45
44
44
43
41
40
39
39
38
38
37
37
36
36
35
35
34
34
34
33
33
33
33
32
32
32
32
31
31
29
29
29
28
28
27
27
26
26
25
25
25
25
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
25
25
25
25
25
25
25
25
25
25
25
25
25
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
28
28
28
29
29
29
29
29
29
29
29
29
29
30
30
30
30
30
30
30
30
30
30
30
30
31
31
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
32
33
33
33
32
31
31
31
31
31
31
31
31
31
31
31
30
30
30
30
29
29
29
29
28
28
28
28
27
26
26
26
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
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
28
28
28
28
30
30
30
35
36
36
37
37
38
41
41
41
43
43
45
48
47
47
47
47
47
46
35
35
34
34
30
29
29
29
28
28
28
27
27
27
27
27
27
25
25
25
25
25
25
25
25
25
25
24
23
23
22
22
22
21
21
20
20
20
19
19
19
19
18
18
18
18
18
17
16
16
16
16
15
15
15
15
15
22
25
25
25
25
25
25
26
26
27
26
24
20
20
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
18
18
18
18
18
18
18
18
18
19
19
19
19
19
19
19
19
19
19
19
20
21
25
25
31
32
33
33
36
36
39
41
42
42
42
42
42
42
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
38
34
32
32
31
31
27
30
30
14
12
12
11
11
11
11
11
11
11
11
11
10
10
10
10
9
9
9
9
9
9
9
9
9
13
17
17
17
19
19
19
20
20
20
20
21
21
21
21
21
23
24
25
27
27
27
26
25
23
23
17
13
11
12
12
12
12
13
14
14
14
14
15
15
16
17
17
17
20
20
20
20
21
21
21
21
21
21
23
24
27
27
28
28
30
31
32
32
33
34
35
38
38
38
38
39
42
43
43
43
41
40
39
39
34
32
28
28
27
25
25
25
25
25
25
25
26
26
26
26
26
26
25
25
23
23
20
20
18
18
18
19
19
19
19
19
19
20
20
20
20
22
21
21
21
20
20
20
20
20
20
20
17
17
16
15
14
13
13
12
11
11
11
11
11
11
11
12
12
12
12
12
13
13
13
13
13
13
15
15
15
15
15
15
15
15
15
16
16
16
16
16
17
17
17
17
18
18
18
18
18
18
18
18
18
18
18
18
19
19
19
19
19
19
19
19
19
19
19
19
29
31
33
42
42
40
39
34
33
31
29
25
23
20
19
19
19
19
20
20
21
21
22
22
23
23
24
15
11
10
10
9
6
6
5
5
5
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
5
6
6
6
7
7
7
7
8
8
8
9
9
13
13
13
9
8
8
8
8
8
8
8
8
8
7
7
7
7
7
6
6
6
5
5
5
5
5
6
6
6
7
7
7
9
9
11
12
13
13
13
13
16
17
17
17
17
16
16
11
6
6
8
8
8
9
9
9
9
9
9
10
10
12
12
12
13
13
13
14
15
15
16
17
17
17
18
18
18
18
19
21
22
23
24
24
24
24
23
23
22
21
20
20
19
18
17
17
16
15
15
15
15
14
14
13
13
12
12
11
11
11
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
8
8
8
8
8
8
8
8
8
8
8
8
8
8
9
9
9
10
10
10
11
11
11
11
12
12
13
13
13
13
13
14
13
13
13
13
13
13
13
13
13
13
13
13
11
11
11
11
10
10
9
9
9
8
8
8
8
8
8
8
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
5
5
5
5
5
4
4
4
4
4
4
4
4
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
5
5
5
5
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
8
8
9
9
9
9
9
9
7
6
6
6
6
6
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
5
5
5
5
5
5
5
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
6
6
7
7
8
8
8
9
9
9
10
10
10
10
11
11
11
11
12
12
12
13
13
13
13
13
12
12
12
12
12
12
11
11
11
11
11
11
11
10
10
9
9
8
8
8
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
4
4
4
4
4
4
4
3
3
3
3
3
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
3
4
4
4
4
4
5
5
5
6
6
6
7
7
7
7
9
9
9
9
9
9
9
9
10
10
11
12
13
14
14
14
15
15
17
18
18
19
19
19
20
21
21
22
22
23
24
24
25
26
27
28
29
31
31
32
32
33
33
33
34
35
36
37
37
37
39
39
40
41
42
43
43
44
45
47
47
47
46
43
43
43
43
43
43
42
42
42
41
40
40
39
39
39
38
38
38
36
35
35
35
36
36
36
36
36
36
36
37
37
40
43
44
45
46
47
47
49
50
53
54
54
55
56
57
57
57
57
57
57
57
57
56
56
56
56
55
55
55
55
54
53
53
53
53
52
52
52
51
51
51
50
50
50
49
48
46
44
42
42
41
41
41
41
40
40
40
40
40
39
38
34
34
33
32
32
21
17
16
16
16
16
17
17
18
18
18
18
18
18
19
19
20
21
21
22
22
24
24
24
24
24
25
25
25
25
25
25
26
26
26
27
32
33
33
33
34
34
34
34
34
35
36
37
38
41
42
47
51
52
54
55
55
57
57
58
59
60
63
64
67
68
69
72
73
74
74
74
74
73
73
73
73
73
72
72
72
72
72
72
72
72
72
72
72
71
71
71
71
71
71
68
67
65
56
55
53
48
47
47
42
41
40
27
18
16
14
12
7
6
6
7
8
9
9
9
9
9
9
9
9
9
10
12
14
16
16
17
17
17
17
18
18
18
19
19
19
20
20
21
21
22
23
23
24
25
25
25
25
26
26
27
27
27
27
27
27
28
28
28
28
28
28
29
29
29
29
30
31
31
31
31
32
32
32
32
31
30
30
30
29
28
28
27
27
26
26
25
25
24
24
23
23
23
22
22
22
22
21
21
20
20
18
18
19
22
22
22
23
26
26
27
28
28
29
29
30
31
32
32
31
31
31
30
27
24
23
22
21
20
19
18
18
15
15
15
15
14
14
13
12
12
11
10
10
10
8
8
8
6
6
4
3
3
4
5
6
7
8
9
11
12
13
16
16
17
18
20
21
22
22
22
22
22
22
22
22
22
21
21
21
21
21
21
21
21
19
18
18
18
17
17
17
17
16
16
16
15
14
12
12
12
12
11
11
5
5
5
5
5
5
5
4
3
3
4
5
5
5
6
6
6
6
6
6
6
7
7
7
8
8
9
9
10
10
11
12
12
12
12
13
13
13
13
14
14
14
15
15
15
15
15
14
14
14
14
14
13
13
13
13
13
13
13
13
13
13
13
13
13
13
15
15
16
16
16
17
17
18
18
19
21
22
24
24
24
29
30
32
33
33
34
33
33
32
31
30
29
27
25
24
24
23
22
22
21
20
20
20
19
17
16
16
16
15
15
15
14
14
14
14
14
14
15
15
16
16
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
19
19
19
20
20
20
20
20
21
21
21
21
21
21
21
21
21
21
22
22
22
22
22
23
23
23
25
26
27
27
28
29
31
32
32
33
34
34
36
38
38
39
39
40
41
41
42
48
49
50
55
56
57
58
60
61
63
63
62
59
58
56
55
55
54
53
52
52
51
51
51
50
50
50
48
47
46
45
44
40
38
38
37
36
35
33
32
32
31
30
29
29
28
25
24
23
22
22
21
20
20
19
19
18
18
17
17
17
16
16
15
15
15
15
15
15
15
14
14
14
14
13
13
13
12
12
12
11
11
11
11
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
12
12
12
13
13
13
13
13
13
14
14
14
14
14
14
15
15
15
16
16
16
16
16
16
16
16
17
17
17
17
17
17
16
16
16
15
15
14
14
13
11
7
6
6
5
5
5
4
4
4
4
4
4
3
3
2
2
2
6
6
7
7
7
7
7
8
8
8
8
9
9
9
10
10
10
11
12
12
12
12
13
13
13
15
16
16
16
16
17
17
17
17
22
24
27
27
27
31
31
31
31
31
32
32
32
33
33
33
33
33
33
33
33
33
32
32
32
32
32
32
31
31
31
31
31
30
30
29
27
27
27
27
27
25
25
25
25
25
24
24
24
24
24
23
23
22
22
22
22
22
21
21
20
20
19
18
18
17
15
14
14
14
14
14
14
13
13
13
13
13
12
10
10
10
9
9
9
9
9
9
9
10
10
10
11
11
12
12
13
13
13
13
13
13
13
14
14
15
16
16
17
18
20
21
22
22
23
23
25
25
26
26
26
27
27
28
29
29
30
30
31
32
32
33
34
35
35
35
36
36
36
37
37
37
37
38
38
38
39
39
39
40
40
40
40
41
41
41
41
42
42
42
42
42
42
42
43
43
43
43
43
44
44
44
45
45
45
46
46
46
47
47
48
48
48
49
50
50
51
51
51
52
52
52
53
54
54
54
54
54
55
55
55
55
55
56
56
56
57
57
58
58
58
58
59
60
61
61
61
61
62
62
62
62
62
62
62
63
63
63
63
64
64
64
64
64
64
63
63
62
62
62
61
61
60
59
58
58
56
55
54
54
53
53
52
52
52
52
51
51
51
51
51
51
50
49
49
49
49
49
49
49
48
48
48
46
46
45
41
39
36
34
32
30
29
23
21
17
11
11
11
11
12
12
12
12
12
12
12
13
13
13
13
13
13
14
14
14
14
14
14
14
14
14
15
15
16
16
16
16
16
15
14
14
14
14
14
14
14
14
13
13
13
12
12
12
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
12
17
20
22
24
24
24
24
25
25
29
29
30
34
36
37
38
39
39
39
39
40
40
40
42
43
46
48
49
47
46
46
46
46
45
42
41
40
40
39
39
39
39
38
33
27
21
19
17
17
16
15
13
13
12
12
12
11
11
11
10
10
9
9
9
8
8
7
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
9
9
9
10
10
10
10
12
12
12
14
16
17
18
20
21
21
22
23
23
23
23
23
24
25
26
27
28
28
30
30
31
32
33
33
33
34
34
34
34
34
42
43
43
43
44
47
47
47
48
49
49
49
48
48
46
33
32
31
30
29
25
25
24
24
23
22
22
21
21
21
20
20
20
20
20
20
20
20
19
19
18
18
18
18
18
18
18
18
17
16
14
14
14
13
13
13
13
13
13
13
12
12
12
12
12
12
12
12
12
12
13
13
14
15
16
17
17
18
18
18
19
19
20
21
21
22
22
23
23
24
24
24
24
25
26
26
27
28
28
28
29
30
30
31
31
32
32
32
33
34
34
34
34
35
36
36
36
37
37
38
38
39
39
40
40
42
42
43
44
45
46
46
47
47
48
48
50
50
50
51
52
54
55
55
56
56
57
58
60
61
62
64
65
67
70
71
72
73
79
80
83
88
89
90
91
93
94
96
97
98
99
100
102
106
107
108
117
118
119
125
126
127
128
133
137
140
141
143
144
147
148
149
150
152
152
153
155
156
157
158
160
161
162
164
169
174
176
177
182
183
184
186
187
192
195
197
199
203
206
208
211
212
210
210
209
207
207
204
204
201
200
198
196
196
194
193
191
190
190
188
187
186
185
184
183
182
181
180
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
178
177
175
170
168
164
159
158
156
154
150
148
145
142
137
128
121
115
109
103
101
100
94
89
85
79
73
67
63
60
58
56
55
54
53
52
51
51
50
50
49
49
49
48
48
48
48
48
47
46
46
46
45
45
45
45
45
44
44
43
43
43
42
41
40
39
38
37
36
35
34
34
33
32
32
30
29
29
28
26
25
24
24
24
23
23
22
21
19
18
17
17
15
14
13
12
12
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
9
9
9
9
9
9
9
8
8
8
8
8
7
7
7
7
7
6
6
6
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
7
7
7
8
8
8
8
9
9
9
10
10
10
10
11
11
11
11
11
11
12
15
19
21
23
24
27
29
37
42
44
46
50
52
58
61
63
64
67
69
72
75
76
79
80
80
81
83
85
86
87
88
90
91
91
91
88
87
85
85
84
83
81
80
80
79
75
70
69
68
66
65
62
60
58
56
56
54
54
53
52
51
48
47
44
41
38
37
34
33
32
31
30
26
23
21
20
18
15
11
10
10
8
6
4
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
5
6
6
6
9
10
11
13
13
13
14
14
14
17
17
18
18
19
19
20
21
21
21
21
22
23
24
24
27
28
28
29
29
29
31
31
33
33
33
34
35
35
37
38
39
39
39
40
40
40
41
41
42
42
42
43
47
50
50
50
51
51
52
52
53
54
55
55
55
56
57
57
57
57
58
58
58
61
62
62
63
64
64
66
68
68
74
77
79
79
79
80
80
81
81
85
86
87
87
88
88
89
89
91
93
94
99
101
102
103
105
106
108
109
110
111
112
112
113
113
114
114
115
116
116
116
116
117
117
118
118
119
119
119
119
120
120
120
121
121
121
121
121
123
124
126
126
126
127
127
128
129
129
131
133
133
132
132
131
130
128
127
126
124
123
123
122
122
121
121
120
120
119
118
117
116
115
113
112
111
111
110
110
110
108
108
107
107
106
103
102
98
97
96
96
94
93
92
92
91
90
87
86
86
84
83
80
80
76
75
75
74
73
72
71
70
69
68
67
65
64
63
61
57
55
53
50
50
49
48
48
48
46
46
46
45
44
42
42
40
39
38
37
36
35
35
32
32
32
31
31
31
30
30
27
24
24
23
23
22
22
17
16
15
14
14
14
14
13
13
13
13
13
12
10
10
10
9
9
9
9
8
8
8
7
7
7
7
7
7
7
7
7
8
8
9
9
10
11
12
12
13
14
14
15
16
16
17
17
17
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
21
21
21
21
21
22
22
22
22
22
22
22
22
23
23
23
23
23
24
24
24
24
25
25
25
25
25
25
26
26
26
27
27
27
29
30
31
32
33
34
36
36
36
37
37
41
42
44
45
49
50
51
54
59
63
64
66
66
68
68
68
71
72
73
74
75
76
77
80
81
82
82
83
84
85
85
86
86
87
87
88
88
89
90
91
92
93
94
94
95
96
97
98
99
102
102
103
103
103
104
105
105
106
106
107
107
109
110
110
110
111
112
113
113
113
114
116
117
118
119
119
120
120
126
129
130
131
132
134
140
143
146
149
151
153
156
157
158
159
160
160
161
165
167
166
166
165
164
162
161
160
160
159
159
157
155
155
154
153
153
152
152
152
151
150
149
149
148
147
147
147
146
145
144
144
142
142
141
141
140
139
139
137
137
138
139
139
139
140
142
142
143
144
144
145
146
146
149
153
155
156
156
157
159
159
160
161
161
164
164
165
166
167
168
168
169
170
171
175
176
181
183
185
186
190
194
196
196
197
198
199
199
200
200
201
202
202
203
205
206
206
207
207
216
217
218
219
222
223
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
224
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
225
221
218
216
214
211
206
204
200
196
190
188
187
186
185
184
183
177
176
175
174
171
169
169
168
168
167
165
164
163
160
159
157
155
153
152
150
149
148
144
141
139
138
137
136
135
134
133
131
129
124
119
118
113
111
105
104
103
102
101
99
98
97
94
92
91
90
89
87
86
83
79
77
76
74
70
68
64
62
59
58
56
56
55
52
48
47
47
46
45
45
40
40
35
30
29
28
26
25
24
23
23
21
18
16
15
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
18
18
18
18
18
18
18
19
19
19
19
19
20
20
21
21
21
21
23
23
23
24
24
24
24
25
25
25
25
25
25
26
26
26
26
27
30
31
31
31
32
33
33
34
37
37
38
39
40
45
46
46
47
49
49
50
50
51
51
51
52
53
53
54
55
55
56
56
56
57
57
57
57
57
57
57
56
56
55
55
55
55
54
54
52
52
52
51
51
50
50
50
50
49
49
48
48
47
47
46
45
44
43
42
42
41
41
41
40
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
42
42
42
42
42
42
42
42
42
43
43
43
43
43
43
43
43
44
44
44
44
44
44
44
44
45
45
45
45
45
45
45
45
45
45
44
44
44
43
43
43
43
42
41
40
34
32
32
31
31
30
29
24
23
23
29
33
35
40
56
60
86
87
90
91
97
97
102
104
105
106
108
109
114
116
121
122
124
125
126
129
132
133
135
137
141
142
145
146
147
150
167
168
169
170
174
176
178
181
181
180
179
178
174
170
166
163
162
160
159
158
156
154
150
149
148
146
142
142
139
137
134
133
132
130
129
129
127
125
124
123
122
120
114
112
107
105
104
104
100
97
96
95
91
87
86
83
76
75
73
71
69
68
67
63
62
61
60
59
56
54
53
52
51
50
50
49
48
48
48
48
47
47
45
45
45
44
43
42
41
40
40
39
39
39
39
39
39
38
38
37
37
36
35
35
34
33
32
32
31
30
29
27
26
26
25
24
24
24
24
23
23
22
22
23
23
24
25
25
26
28
28
29
29
30
30
30
30
32
32
33
33
35
36
37
37
37
38
39
39
39
39
39
40
41
42
43
43
44
45
47
48
49
50
50
51
52
53
55
55
56
57
58
58
59
59
61
61
64
65
66
67
70
72
73
75
80
80
80
81
81
82
86
87
87
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
85
85
85
85
84
83
83
82
82
81
81
81
81
81
81
80
80
80
80
80
80
79
79
79
78
77
77
76
76
76
76
76
75
75
75
75
74
73
73
72
72
72
71
71
71
70
69
69
69
69
68
68
68
68
68
67
67
66
65
65
65
65
64
64
64
64
63
63
63
62
62
62
62
62
61
61
61
61
61
61
60
60
60
60
60
59
59
59
58
58
58
58
58
57
57
57
57
56
56
56
56
55
55
54
54
53
53
52
52
52
51
50
50
50
50
49
49
48
48
48
47
47
47
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
46
47
47
49
49
50
50
51
51
54
54
55
55
56
58
58
59
61
61
62
63
63
65
66
67
67
69
70
71
72
74
74
76
78
80
81
81
82
83
84
84
86
89
89
90
92
93
94
101
104
108
108
111
112
113
116
117
120
121
123
123
124
128
135
136
137
137
138
142
143
144
148
149
149
150
150
153
157
160
163
169
170
171
177
178
179
180
177
177
176
171
170
167
164
162
160
158
156
154
152
151
150
148
145
144
142
141
139
134
133
131
120
115
113
111
108
105
103
100
97
94
92
91
89
88
87
85
83
81
80
78
77
77
75
74
72
71
65
58
54
52
50
49
48
46
45
44
44
29
24
24
23
23
23
23
25
27
31
32
35
38
40
41
42
43
43
44
44
45
46
47
47
48
49
50
51
52
52
52
53
53
53
53
52
51
50
49
49
48
48
47
46
45
43
43
42
42
41
40
39
39
39
38
38
36
35
35
34
25
29
31
32
32
33
33
34
35
35
36
36
37
38
38
39
39
40
40
41
42
43
43
44
45
45
47
48
48
48
49
49
49
49
50
50
50
51
51
52
52
53
53
53
54
54
54
54
54
54
55
56
56
56
57
58
59
59
59
59
58
58
56
55
57
58
59
60
60
62
63
63
63
64
64
65
65
65
66
66
68
69
70
70
70
71
71
73
73
74
75
75
75
76
76
76
76
77
79
82
82
83
83
84
84
84
85
86
86
86
87
87
87
87
87
87
88
88
90
91
91
93
103
103
103
104
105
106
108
110
112
114
116
119
121
121
122
122
123
125
127
127
128
129
129
130
130
131
131
132
133
134
134
135
135
136
137
138
138
139
144
148
151
152
153
154
155
156
157
158
160
160
161
162
163
163
163
164
168
170
173
175
175
176
177
178
179
180
181
181
182
182
182
182
182
182
182
182
182
182
182
183
183
183
183
183
183
183
183
184
184
184
184
184
184
184
184
184
184
184
184
185
185
186
191
192
196
198
199
200
201
202
202
204
206
208
209
214
215
217
217
217
218
218
219
224
225
227
227
228
229
230
231
232
233
237
242
242
243
243
245
245
246
248
249
250
251
251
252
256
257
257
259
262
263
264
265
266
271
272
273
273
274
276
277
278
279
280
281
282
286
290
291
292
293
294
294
295
296
297
298
299
300
304
305
306
307
309
310
311
312
312
319
324
324
325
326
326
329
331
333
334
334
335
335
338
340
343
345
349
350
352
354
354
355
355
357
358
359
360
361
362
363
366
370
371
372
373
375
383
386
391
392
393
395
397
398
399
401
402
403
404
408
408
409
409
409
410
410
410
410
411
411
411
412
412
412
413
414
414
414
414
415
415
415
415
415
415
416
416
416
416
416
416
409
407
403
402
400
399
399
398
397
396
394
394
393
393
392
388
388
387
387
386
385
383
381
380
380
380
379
379
378
376
374
371
371
369
369
367
366
366
365
364
361
360
360
359
359
359
359
358
358
357
357
356
355
355
353
353
352
352
351
351
351
351
351
350
350
349
348
348
347
346
345
345
344
344
344
344
345
345
345
345
346
346
346
347
347
347
348
348
349
350
350
352
352
352
353
354
354
355
356
356
356
358
358
358
358
359
359
360
360
361
362
362
363
364
365
366
366
366
366
366
366
366
366
366
367
367
367
367
367
367
367
368
368
368
368
368
368
369
369
369
369
369
369
369
369
369
369
369
370
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
371
370
370
370
370
370
370
370
370
370
370
370
369
369
369
369
369
369
369
369
369
368
368
368
368
368
368
368
368
368
368
368
367
367
366
366
364
362
361
361
361
359
358
357
356
355
355
355
354
353
353
352
351
349
348
347
347
347
345
345
345
344
344
343
342
342
342
341
338
333
333
333
333
333
333
333
333
332
332
332
332
332
332
332
332
332
332
332
332
331
331
331
331
331
331
331
331
330
330
330
330
330
330
329
327
312
308
307
306
305
304
304
302
300
299
298
297
296
294
290
289
288
285
280
276
276
275
274
272
271
270
270
270
271
273
276
277
278
279
281
283
284
289
289
290
291
293
294
296
296
298
298
299
297
295
292
284
282
278
277
276
273
271
265
263
262
259
259
257
256
254
252
250
247
245
243
238
232
230
227
226
221
217
213
208
204
202
200
198
196
193
191
184
181
180
179
178
176
175
175
173
173
172
171
171
170
169
168
168
167
167
166
165
165
163
162
161
160
159
158
157
156
155
155
155
154
154
153
152
151
150
150
149
149
146
146
146
145
142
141
141
140
139
139
138
138
137
136
136
135
134
134
132
132
131
130
126
123
123
121
121
120
119
116
115
114
113
113
112
110
109
108
107
106
105
104
102
98
93
92
91
90
88
88
88
87
87
86
86
83
82
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
81
82
82
82
82
82
82
82
82
82
83
83
83
83
83
83
83
83
83
83
88
88
88
88
89
89
89
93
93
93
93
94
94
94
94
94
95
96
97
98
99
99
99
99
99
100
100
101
101
101
101
102
102
102
102
102
102
102
101
101
101
101
101
99
99
99
99
98
98
98
98
98
98
92
90
90
90
89
88
87
87
86
86
84
82
82
82
81
81
81
81
81
81
79
78
78
77
70
69
69
68
68
64
63
63
63
63
63
62
62
62
62
61
61
60
60
60
60
59
59
59
59
59
59
59
59
59
59
59
58
58
57
57
57
57
56
56
56
55
52
49
49
49
48
48
48
47
47
47
47
47
47
47
47
47
47
47
47
47
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
49
49
49
49
49
49
49
49
48
48
47
47
47
47
47
47
47
47
45
45
45
43
42
42
41
40
40
40
40
39
38
38
38
37
35
35
35
34
34
34
34
34
34
34
37
38
38
38
38
38
38
38
39
39
39
40
41
41
42
43
45
47
51
52
53
53
53
53
53
52
51
49
49
48
47
47
46
46
46
45
44
44
43
42
42
40
39
39
36
36
36
35
34
34
34
33
33
32
32
32
33
33
33
34
34
35
37
37
37
38
38
38
38
38
39
39
39
39
40
40
40
42
43
44
44
44
44
45
45
46
46
46
47
47
48
49
52
53
53
53
54
54
54
54
54
57
57
58
60
60
60
60
60
60
60
61
61
61
61
61
61
61
61
62
63
64
65
65
62
59
57
54
52
52
51
51
50
50
47
46
45
45
44
44
44
41
40
40
38
37
33
31
28
27
26
25
24
22
21
21
19
19
20
22
24
24
26
27
27
27
27
30
30
31
30
30
29
29
28
27
27
27
27
27
27
27
27
24
23
23
23
23
23
23
23
22
22
22
22
22
22
21
21
21
21
21
20
19
18
17
16
15
15
15
15
15
14
13
13
12
11
11
11
11
11
10
10
10
10
10
9
9
9
9
8
8
7
7
6
6
5
5
5
5
4
4
4
4
4
3
3
3
3
2
2
2
2
2
1
1
0
0
0
1
1
1
1
1
1
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
3
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
2
4
4
4
4
5
5
5
6
6
6
6
6
6
6
6
7
7
7
8
8
9
9
9
12
14
14
15
15
15
15
16
16
16
16
16
16
17
17
18
19
19
20
20
21
22
24
25
26
27
28
29
31
31
32
32
33
34
34
35
35
36
36
38
38
39
39
40
40
40
40
40
41
42
42
42
42
43
43
43
44
45
45
47
48
49
50
51
52
53
54
54
54
55
56
57
57
58
59
61
62
63
64
65
66
66
67
68
68
69
70
71
73
74
74
75
76
76
77
77
78
78
80
82
83
85
85
86
87
87
87
87
88
90
90
91
92
92
92
94
95
96
96
97
98
98
99
99
100
101
101
101
102
102
105
105
106
106
106
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
107
106
106
106
106
106
106
106
106
106
106
106
106
106
106
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
105
104
104
103
103
102
101
100
99
98
98
98
97
97
97
97
96
96
95
94
94
94
93
92
92
91
91
90
90
90
89
89
89
87
87
87
86
84
82
81
80
65
60
60
59
58
57
55
54
53
52
52
51
47
46
45
42
42
40
33
31
29
25
25
24
23
23
22
21
21
21
20
20
19
18
18
18
18
17
17
17
16
14
13
11
10
9
9
8
8
8
6
5
5
5
5
5
6
6
7
7
7
7
8
13
15
15
16
18
19
20
21
22
22
22
23
23
25
26
26
26
27
28
29
29
30
31
32
33
33
34
35
36
38
39
41
41
41
42
43
43
44
44
45
46
48
48
48
51
52
53
54
55
55
55
56
59
59
59
60
61
61
62
63
64
64
65
66
66
67
69
69
70
71
71
72
72
73
74
75
77
77
79
80
81
81
85
86
86
86
88
89
90
90
91
91
93
93
93
94
97
97
97
98
99
99
100
101
102
102
102
103
107
108
109
111
111
111
112
112
113
113
113
114
114
114
115
115
115
116
116
117
118
118
117
116
113
112
110
107
107
106
106
106
105
105
104
104
103
103
102
101
83
74
63
61
55
55
56
57
57
57
57
57
57
58
58
58
58
58
58
58
59
59
59
59
59
59
59
60
60
60
61
61
61
61
62
62
62
62
62
62
63
64
65
66
67
69
72
74
75
76
76
77
78
84
85
87
87
88
88
89
91
92
93
95
99
104
105
106
107
108
113
114
115
115
116
128
129
130
131
132
133
147
149
148
146
140
138
132
129
120
118
116
115
114
112
112
111
110
109
108
108
104
104
103
102
101
101
100
100
99
98
97
97
96
95
95
94
93
91
90
89
88
88
86
86
85
84
82
82
79
77
74
73
72
71
71
70
66
65
64
64
63
61
59
58
57
56
56
53
50
48
47
47
46
45
44
43
43
42
41
41
38
37
37
36
35
34
31
31
30
26
22
19
19
21
22
24
24
27
27
33
36
37
39
41
48
49
54
54
57
58
61
66
68
69
71
73
78
80
81
82
84
86
88
91
67
63
60
51
45
42
42
40
38
36
35
33
32
29
27
26
25
25
24
24
23
23
23
22
19
13
14
14
15
15
15
16
17
17
17
18
19
20
20
21
22
22
23
23
24
24
24
24
24
24
24
24
24
24
24
24
24
23
23
23
23
22
22
21
21
20
20
20
19
19
18
18
18
17
17
17
15
15
15
15
15
14
14
14
14
14
13
13
13
14
14
15
17
17
19
20
22
22
23
23
24
25
25
26
26
27
27
29
30
32
32
33
34
35
36
36
36
37
41
41
42
42
43
44
44
45
45
45
45
45
45
45
45
45
44
44
44
44
44
44
44
43
43
43
43
43
43
42
42
42
43
43
44
44
45
45
46
46
47
48
48
49
51
55
56
57
58
59
61
63
64
66
67
68
69
70
72
72
73
73
73
73
74
74
74
75
75
75
75
76
76
77
77
78
78
79
80
81
81
81
80
80
79
79
79
78
78
76
76
75
74
73
73
72
71
71
71
70
68
67
66
64
61
59
58
57
56
55
55
54
54
54
53
53
52
52
51
51
50
50
48
46
38
37
37
36
35
33
32
30
30
29
29
28
28
28
27
27
26
26
26
26
25
25
25
24
24
24
24
23
23
23
23
22
21
21
21
20
20
19
19
18
18
18
18
17
17
17
17
16
15
15
14
14
14
14
13
13
12
11
11
11
10
9
8
7
7
7
6
6
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
7
7
7
7
7
7
8
8
8
8
8
8
10
11
13
20
24
26
26
27
28
28
29
29
30
31
32
32
33
33
37
43
45
45
46
48
50
51
52
53
54
55
57
58
59
60
61
63
65
66
68
69
71
74
74
75
76
79
79
80
81
82
85
86
86
87
87
88
95
95
96
98
98
99
100
101
102
103
104
105
106
108
109
109
113
119
120
120
121
121
122
123
125
126
126
127
128
128
128
129
129
130
131
132
132
133
134
135
135
136
136
138
139
140
140
140
139
138
137
135
132
130
128
127
125
124
123
122
122
119
116
115
111
108
107
105
104
100
97
94
92
85
82
79
78
75
74
72
70
68
67
64
62
58
56
53
52
50
49
47
45
44
42
39
38
37
36
24
21
20
20
20
20
20
20
21
21
21
21
21
22
22
22
22
22
22
22
22
23
23
23
23
23
24
24
24
24
24
25
26
27
27
28
30
32
32
35
36
37
38
38
39
39
40
41
41
43
44
44
45
47
47
48
48
49
49
50
51
52
53
53
58
58
59
60
61
62
64
65
67
68
70
72
74
76
77
79
80
80
80
81
82
88
92
95
99
100
102
106
109
111
112
115
119
122
124
126
129
131
131
131
131
131
131
130
130
130
130
130
130
130
129
129
129
129
129
129
128
128
128
128
128
128
128
128
127
127
125
116
111
104
100
97
92
91
91
90
90
88
87
86
85
84
81
81
80
79
79
75
74
73
72
71
70
69
68
67
64
62
60
58
56
55
55
51
50
50
49
49
48
45
44
44
42
41
40
39
39
37
36
36
36
35
35
33
32
23
21
21
17
15
13
11
9
7
7
7
7
7
7
6
6
5
5
5
5
5
5
4
4
4
3
3
3
3
3
3
3
3
3
3
3
0
0
2
3
3
5
5
6
6
6
8
9
9
9
8
7
7
7
6
5
5
5
5
5
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
3
2
2
2
2
2
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
2
5
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
8
8
8
8
8
9
10
10
10
10
10
11
11
11
11
12
12
12
13
13
13
14
14
14
14
14
14
14
14
15
15
15
15
15
16
16
16
16
18
18
18
18
18
18
19
19
19
20
20
20
21
22
22
22
22
23
23
24
24
25
25
25
26
26
26
26
27
27
27
28
29
29
30
30
30
31
31
31
31
31
31
31
32
32
32
32
41
41
47
48
48
48
48
48
48
47
45
44
44
43
40
40
39
38
38
39
39
41
41
41
41
42
43
45
46
46
47
48
48
48
48
48
49
49
49
49
49
49
49
48
48
48
48
48
48
48
48
48
47
47
47
47
45
44
43
33
32
31
29
27
26
24
22
20
19
19
19
19
19
19
18
18
18
18
18
18
18
18
18
19
19
20
21
21
23
24
25
26
26
26
26
27
27
28
29
29
29
31
31
31
33
34
34
34
35
36
37
37
37
38
38
38
39
39
40
40
40
40
41
41
41
41
41
42
42
42
42
43
43
43
44
45
46
46
46
47
47
48
48
48
49
49
49
49
49
49
49
48
48
48
48
48
47
47
47
46
45
45
45
44
44
43
43
43
43
45
47
47
49
52
60
61
63
67
68
69
70
70
71
73
74
75
75
76
77
78
79
79
79
80
81
81
83
84
85
87
88
91
94
95
95
98
99
101
101
103
103
103
104
104
105
105
105
106
106
106
107
107
108
110
110
110
111
111
111
111
111
112
112
113
113
113
113
114
115
115
116
116
117
118
119
120
120
121
121
121
123
123
123
123
123
119
118
117
116
115
114
112
111
109
103
98
95
95
94
92
92
92
91
91
90
87
85
84
83
82
81
80
76
75
71
69
66
65
63
60
59
56
55
54
51
50
49
47
45
45
45
44
44
44
43
43
43
43
42
42
42
42
42
42
41
41
40
40
40
40
39
39
38
38
38
37
37
37
36
36
36
35
35
35
34
34
34
33
32
32
32
31
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
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
27
25
25
24
23
23
22
22
21
21
19
19
18
18
17
17
17
17
16
16
16
15
14
14
14
14
13
13
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
12
12
12
12
12
13
13
14
14
14
14
15
17
18
18
18
19
19
20
21
21
22
23
23
23
23
23
23
24
24
25
25
25
26
27
28
28
28
28
27
26
26
26
26
26
26
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
24
24
24
24
23
23
22
22
21
21
20
20
20
19
19
19
18
18
18
17
17
17
17
16
16
15
14
14
12
11
11
11
10
10
9
9
9
8
9
10
10
12
13
13
14
15
15
16
16
17
17
18
19
19
20
20
21
21
22
22
23
24
24
25
25
25
26
26
27
27
29
29
29
30
30
30
30
30
30
29
29
29
28
28
27
27
26
26
25
25
25
25
24
24
23
23
23
23
23
23
22
22
22
20
20
20
20
20
21
22
22
23
24
25
25
26
27
28
29
30
30
31
31
31
33
33
34
34
35
34
33
32
32
30
28
28
27
27
26
26
26
25
25
24
23
23
22
21
21
21
20
20
18
18
17
15
14
14
14
13
13
12
11
11
10
9
9
9
9
9
8
8
8
8
8
8
8
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
7
7
7
7
8
8
10
10
11
11
11
11
11
11
11
11
11
11
12
12
12
13
13
14
14
16
17
17
18
19
19
19
19
19
20
20
21
21
22
23
23
23
24
24
25
25
25
26
26
26
26
27
27
28
28
28
29
29
30
30
31
31
32
32
32
31
28
27
26
25
25
25
24
24
23
22
22
22
22
21
21
20
19
15
14
14
13
13
12
12
11
11
10
10
9
9
9
9
8
8
8
8
8
8
8
7
7
7
7
7
7
7
6
6
6
5
5
4
4
3
3
3
3
3
3
3
4
4
4
5
5
5
5
6
6
6
6
6
6
6
6
6
6
7
7
8
9
10
11
11
11
11
11
11
11
11
11
11
11
11
11
12
12
13
13
13
14
24
25
33
34
35
36
38
39
40
40
41
42
44
45
51
52
53
54
56
56
57
58
61
61
60
60
60
59
59
58
57
57
56
56
56
56
56
55
54
54
52
52
50
50
61
62
73
75
75
76
77
80
81
84
85
86
87
90
93
94
95
96
98
98
97
95
93
90
88
85
79
77
76
75
74
73
72
70
69
68
67
67
66
65
56
56
54
51
50
47
26
24
23
21
20
20
19
19
19
18
18
18
17
17
17
17
16
16
16
15
15
14
14
14
14
14
13
13
13
13
12
12
12
12
11
11
11
11
10
10
10
10
10
10
10
10
10
10
10
9
9
8
8
8
8
7
6
6
5
5
5
5
5
5
5
8
8
9
9
10
10
11
13
14
14
14
15
18
19
19
23
25
26
27
28
32
32
32
33
33
33
37
41
43
45
46
47
47
48
48
50
51
52
52
53
53
53
54
54
55
55
56
56
57
58
59
59
60
61
61
62
63
63
64
65
66
66
67
68
68
70
71
72
73
73
74
74
74
75
75
76
77
77
78
79
80
80
83
84
88
88
89
90
91
88
87
87
85
84
81
80
79
77
74
70
66
62
59
58
57
57
55
53
52
51
50
49
48
47
46
45
43
42
41
36
35
34
33
29
27
25
22
16
15
14
14
14
15
16
17
17
18
19
19
20
21
23
23
24
25
25
27
28
29
29
29
30
31
32
33
34
35
37
38
39
39
40
41
41
41
41
42
42
42
43
43
43
45
45
45
45
46
46
47
47
47
47
48
48
48
48
48
48
47
45
45
43
43
43
43
43
43
41
40
40
40
39
39
38
36
35
34
34
33
33
32
30
29
28
27
26
26
25
24
24
24
23
23
22
22
21
21
20
20
20
19
19
19
18
18
17
17
16
15
15
15
15
14
14
14
14
12
11
10
10
8
7
7
7
7
7
7
7
6
6
6
6
6
6
6
5
5
5
5
3
3
3
3
3
3
2
2
2
2
2
2
2
1
1
1
1
1
1
8
8
9
9
10
10
12
13
15
15
16
16
16
19
20
21
22
22
24
26
28
28
29
30
32
33
34
34
35
36
36
37
39
39
40
41
41
41
42
43
43
43
45
46
49
49
50
51
51
52
54
56
56
57
57
58
59
59
59
59
60
61
63
65
66
67
67
68
68
69
69
70
70
71
72
72
75
76
76
78
78
79
79
79
80
80
81
81
82
83
83
84
85
85
86
87
87
87
87
87
87
88
88
88
88
88
88
89
89
89
89
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
92
92
92
92
92
92
92
92
92
92
93
93
93
93
93
93
93
94
94
94
94
94
94
94
94
94
94
94
94
94
94
93
93
92
92
91
91
90
90
89
87
87
87
87
86
86
85
85
84
84
83
83
83
83
83
83
83
83
83
83
84
84
84
84
84
84
84
84
85
88
91
92
93
96
97
99
100
103
105
108
110
111
114
116
120
122
123
126
128
129
130
131
133
140
142
146
148
152
154
156
158
162
173
179
182
184
185
187
188
190
191
193
194
197
200
202
202
202
200
199
198
197
197
197
195
195
195
194
193
192
190
189
188
186
185
185
184
183
182
182
181
181
181
181
181
181
180
179
179
179
179
178
178
178
177
177
176
176
176
176
175
174
173
172
169
169
168
167
167
166
166
165
163
162
154
151
148
147
144
141
137
136
137
137
137
137
138
138
138
138
138
139
139
139
139
139
140
140
140
141
141
141
144
144
146
147
148
149
150
151
151
152
152
153
154
155
157
161
166
171
173
174
174
175
176
176
178
179
179
181
182
185
186
187
188
190
191
192
193
193
194
196
196
198
199
199
203
205
206
208
216
216
217
218
219
220
223
224
224
229
233
243
245
279
279
278
273
273
265
265
264
263
262
261
260
253
253
251
250
249
247
246
244
244
243
243
243
242
242
241
241
241
239
239
238
236
231
230
227
224
221
220
217
216
215
215
214
213
209
209
208
207
205
204
202
201
200
198
196
196
195
194
191
190
186
185
183
183
182
180
179
178
177
176
175
174
174
173
173
172
171
167
167
166
165
164
163
163
162
162
161
161
160
158
158
157
156
151
150
149
148
146
146
145
144
143
143
142
141
141
140
139
137
137
132
131
130
129
128
128
128
127
125
125
124
124
123
123
122
122
121
120
120
120
119
118
118
117
117
114
114
113
112
111
111
110
110
109
108
108
107
106
105
105
102
101
101
100
99
98
97
97
96
96
96
96
96
95
95
94
94
94
93
92
92
92
91
90
89
89
88
87
87
87
87
87
87
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
88
88
88
88
88
88
88
88
88
88
88
88
89
90
92
92
92
93
93
95
95
95
96
97
97
98
99
99
99
100
101
101
102
103
103
103
104
104
104
105
105
105
106
106
106
107
108
108
110
111
111
112
113
113
115
116
117
119
120
122
122
123
124
125
126
127
129
129
130
131
134
136
138
141
145
150
152
155
156
158
160
162
166
170
172
173
177
181
187
193
204
207
210
213
220
223
225
226
227
230
232
233
233
234
234
234
234
233
233
233
232
232
231
231
231
231
230
230
229
229
229
228
228
228
227
227
227
226
225
225
224
223
223
223
222
221
221
219
217
216
213
212
212
211
210
210
209
208
208
207
207
207
207
206
206
205
205
205
204
204
204
204
204
203
203
203
203
203
202
202
202
202
202
202
201
201
201
201
200
200
200
200
199
198
198
198
198
198
198
197
197
197
197
196
195
192
191
190
188
187
186
182
180
179
178
177
177
176
174
174
172
171
170
170
169
168
166
164
162
162
160
157
156
153
150
149
149
147
145
146
149
150
151
152
154
155
157
157
159
166
178
180
182
182
181
180
176
175
174
173
171
169
165
164
162
161
161
160
158
156
156
154
153
150
149
148
147
146
145
144
144
141
136
133
131
127
125
123
122
121
120
119
118
117
116
115
113
110
108
106
105
103
102
100
98
98
97
96
95
95
94
94
93
93
93
93
93
92
92
92
92
91
91
90
89
89
89
89
88
88
88
87
86
86
85
85
85
84
84
84
84
84
83
83
83
82
82
82
82
81
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
80
79
79
78
78
78
78
77
77
76
76
75
74
74
74
73
72
72
72
71
71
71
70
70
70
69
69
69
68
68
66
65
65
65
64
64
63
63
61
61
61
60
60
59
58
58
57
57
56
56
56
55
55
55
54
53
52
52
52
52
52
53
53
53
53
54
54
55
55
55
56
56
57
57
57
57
58
58
58
58
58
59
60
60
60
60
61
61
61
61
61
61
62
62
63
63
64
64
64
64
64
64
65
67
70
76
80
81
85
87
88
92
93
95
102
104
105
109
111
112
112
113
113
115
115
116
119
119
119
120
125
131
135
139
142
146
153
161
166
171
175
180
183
185
189
196
198
199
200
202
202
205
208
209
211
212
212
215
217
218
217
215
215
214
213
212
211
210
210
209
209
209
209
208
208
208
206
205
202
201
201
200
200
200
200
202
204
205
207
208
208
212
217
220
226
232
234
242
244
249
254
261
264
268
268
269
269
272
272
273
273
274
274
276
276
277
278
278
279
279
280
280
281
282
282
283
283
284
285
285
286
286
287
288
288
289
290
292
292
293
293
295
296
298
299
300
301
305
306
307
308
310
312
313
314
315
315
316
318
319
320
322
322
322
322
322
321
321
321
321
321
320
320
320
319
319
319
318
317
316
315
315
313
313
312
311
311
311
311
310
310
310
310
307
306
304
304
300
299
299
299
298
294
290
290
289
288
280
278
277
274
271
269
268
267
266
266
265
263
263
260
256
254
251
247
245
244
243
242
241
240
240
239
237
235
233
231
229
228
227
226
224
223
222
221
219
214
212
211
210
210
209
207
206
205
203
202
201
200
199
199
197
195
194
190
186
185
181
180
178
173
172
171
164
163
158
158
154
151
146
145
144
144
143
142
139
135
134
133
132
131
129
127
124
123
122
122
121
120
118
113
106
102
102
103
103
103
104
104
104
104
105
105
105
105
106
106
106
106
107
108
108
108
108
109
109
110
110
110
110
110
111
114
115
117
117
118
119
119
123
124
128
129
130
131
132
132
133
133
134
135
137
140
142
145
145
145
145
145
145
145
144
144
144
143
143
143
143
143
143
142
142
142
142
142
142
142
142
142
142
142
141
141
141
141
141
141
141
141
141
140
140
139
139
139
138
137
136
133
132
131
130
129
128
127
121
116
114
112
103
102
100
95
93
91
90
89
89
92
93
95
97
97
100
101
103
107
109
110
117
118
119
120
121
123
124
125
131
131
133
133
134
136
137
138
142
143
143
144
146
147
151
152
153
156
160
162
167
171
177
183
186
191
195
195
196
199
199
200
201
202
203
205
208
210
212
213
214
215
216
213
212
211
211
210
207
206
205
204
203
202
202
201
199
198
196
193
187
186
185
184
182
181
180
179
178
176
173
172
169
165
161
157
152
146
137
134
128
125
124
123
122
121
120
119
118
113
107
105
104
103
103
102
99
95
93
92
90
89
86
84
81
79
78
74
69
67
66
63
59
58
57
56
55
55
54
53
53
52
52
52
51
51
50
49
49
48
48
48
47
47
47
47
47
46
46
45
45
45
44
43
42
41
40
39
38
36
34
33
33
32
30
29
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
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
27
27
28
28
29
29
30
33
33
34
34
36
37
39
40
42
44
44
44
45
45
46
46
46
46
47
47
47
48
48
48
50
50
51
51
51
52
52
52
52
53
53
53
53
53
54
54
54
55
55
56
56
56
56
57
57
57
57
57
58
58
58
58
59
59
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
61
62
62
62
62
62
62
62
63
63
63
63
63
63
64
64
64
64
64
64
64
64
65
65
66
66
66
66
67
67
68
69
69
69
70
70
70
71
72
73
73
74
74
76
77
78
79
79
79
79
79
79
79
79
79
79
78
78
78
78
78
78
78
78
78
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
77
78
78
78
79
79
79
79
79
79
79
80
80
80
80
81
81
82
82
82
83
83
83
83
83
83
83
83
84
85
85
86
87
88
90
91
91
91
92
93
94
94
95
95
96
98
99
100
102
103
104
105
106
107
108
109
110
111
113
115
116
117
117
118
119
119
120
120
121
121
121
121
121
121
121
120
120
119
118
118
118
118
117
117
117
117
117
116
116
116
115
115
115
115
115
114
114
113
113
112
112
112
111
111
110
110
110
110
110
110
112
113
113
114
115
116
117
118
119
120
121
122
123
123
124
125
128
128
129
130
130
131
132
136
139
140
142
145
146
147
148
149
149
151
154
155
156
156
157
158
158
159
159
161
162
163
163
165
166
167
170
171
172
173
174
175
178
179
180
180
181
181
182
184
186
186
186
187
187
188
188
188
188
190
190
191
191
191
192
192
193
193
195
195
196
196
198
198
201
202
204
206
207
208
209
209
211
212
213
213
214
215
215
216
217
218
219
220
220
221
222
222
222
222
221
220
220
219
218
218
217
215
215
214
214
213
213
212
211
210
210
209
209
208
208
207
206
206
206
205
204
203
202
202
201
201
201
200
199
199
199
199
199
199
199
199
199
199
200
200
200
200
200
200
200
201
201
201
201
201
201
201
201
201
201
202
202
202
203
203
203
203
203
203
204
204
204
204
204
204
204
204
204
204
204
204
204
204
204
204
204
204
205
205
205
205
205
205
205
205
205
205
205
205
205
205
206
206
207
207
208
208
208
209
210
211
211
211
211
212
212
212
212
212
213
213
214
214
214
215
215
216
217
217
218
218
219
219
220
220
221
221
222
223
223
223
224
224
225
227
228
228
228
228
229
229
229
229
230
230
231
231
231
232
232
233
233
234
234
235
235
235
236
236
236
236
237
237
238
240
240
241
241
241
241
241
241
241
241
241
241
241
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
242
243
243
243
243
244
244
244
244
244
245
245
245
245
245
246
246
247
247
247
247
247
248
248
248
248
248
249
249
249
249
250
250
250
250
251
251
251
251
252
252
253
253
253
254
254
254
254
255
255
256
256
256
257
257
258
258
259
259
259
260
260
260
260
260
260
260
261
261
261
261
261
262
262
262
263
263
263
263
264
264
265
265
265
267
268
269
269
270
273
274
276
277
278
278
280
280
281
281
281
282
282
282
282
283
283
283
287
288
288
289
290
291
292
293
296
296
297
297
297
297
298
298
298
298
298
298
299
299
299
299
299
299
299
299
299
299
300
300
300
300
300
300
300
300
300
301
301
301
301
301
301
301
301
301
302
302
302
303
303
306
309
311
313
313
314
315
316
317
317
318
319
320
320
322
323
324
325
326
326
327
328
328
329
329
329
330
330
330
331
331
332
332
333
333
334
334
335
335
335
335
336
336
336
337
337
338
338
339
339
342
343
343
344
344
347
349
350
352
353
355
357
363
364
365
366
368
369
370
371
373
374
375
375
375
375
375
376
376
376
376
376
377
377
378
379
380
380
381
381
381
382
382
382
382
383
383
383
383
384
385
387
394
398
399
401
402
405
407
408
408
409
411
412
412
413
414
419
422
422
423
423
425
435
437
438
440
441
445
446
449
450
451
452
453
454
454
455
456
457
458
460
461
462
463
465
468
472
473
477
483
487
490
492
492
493
494
495
498
501
503
505
507
514
516
519
521
524
526
527
529
531
534
537
540
541
545
545
547
548
550
551
557
559
563
564
573
580
580
580
581
581
581
581
581
581
581
582
582
582
582
582
583
583
583
583
583
584
584
584
584
584
585
585
585
585
586
586
587
587
588
588
589
589
590
591
591
592
592
593
593
594
594
595
596
596
597
598
599
599
600
602
602
603
604
605
605
606
606
606
607
613
614
615
620
621
621
622
623
625
626
628
629
630
630
631
631
632
634
636
637
637
638
639
641
642
644
646
648
650
652
654
656
657
658
664
665
666
667
668
669
670
670
671
671
672
672
674
674
674
675
675
675
675
675
676
676
677
677
677
677
678
678
678
678
679
679
680
680
680
681
681
681
682
683
684
686
686
687
688
688
693
695
698
699
699
700
701
702
702
705
706
706
707
708
709
710
711
712
713
713
715
716
716
717
720
722
722
723
725
725
725
726
727
728
728
728
729
730
731
732
732
733
733
734
735
737
738
739
742
744
744
745
747
748
748
748
749
749
750
750
751
753
754
757
758
758
759
760
763
763
764
765
765
766
769
770
771
773
774
775
778
780
782
782
785
788
789
791
793
794
796
798
799
800
801
802
803
803
804
804
805
806
807
807
808
809
810
810
811
814
814
815
817
818
820
822
825
827
828
830
831
832
833
835
836
837
837
838
838
841
841
842
844
845
846
846
848
848
849
850
851
852
852
855
856
856
857
858
859
859
860
862
863
866
867
869
870
873
873
874
874
875
876
877
877
879
880
882
884
885
886
887
887
888
888
889
890
896
901
905
907
911
925
926
927
928
929
937
944
947
957
969
971
973
975
980
982
992
993
997
998
1002
1003
1003
1004
1005
1005
1007
1008
1011
1016
1019
1023
1030
1032
1034
1035
1036
1041
1041
1053
1054
1054
1056
1060
1060
1061
1064
1064
1065
1066
1067
1067
1070
1071
1074
1076
1078
1080
1081
1085
1087
1089
1091
1096
1097
1098
1098
1099
1101
1102
1108
1109
1111
1112
1113
1113
1114
1115
1116
1116
1117
1120
1121
1123
1124
1125
1126
1126
1127
1132
1136
1154
1158
1163
1167
1169
1171
1172
1174
1177
1179
1182
1184
1185
1186
1189
1192
1194
1197
1199
1201
1203
1205
1207
1211
1213
1216
1219
1220
1226
1229
1232
1234
1237
1239
1243
1248
1255
1256
1257
1259
1262
1268
1272
1274
1280
1292
1296
1303
1306
1309
1312
1313
1316
1321
1327
1329
1331
1335
1337
1339
1344
1347
1357
1364
1366
1376
1382
1383
1386
1395
1400
1402
1403
1406
1408
1410
1418
1425
1429
1432
1436
1438
1448
1452
1457
1464
1469
1473
1477
1479
1482
1484
1488
1491
1494
1496
1499
1501
1505
1506
1508
1510
1513
1516
1519
1521
1522
1528
1530
1532
1534
1536
1538
1540
1543
1543
1547
1549
1551
1554
1557
1558
1559
1560
1561
1562
1564
1566
1567
1568
1569
1572
1575
1576
1577
1579
1580
1582
1583
1584
1586
1590
1591
1593
1598
1600
1602
1605
1606
1608
1609
1613
1615
1619
1623
1624
1628
1630
1631
1632
1632
1633
1634
1635
1636
1638
1639
1642
1645
1647
1650
1655
1658
1666
1684
1689
1693
1696
1701
1711
1720
1720
1720
1721
1722
1722
1723
1723
1723
1723
1724
1724
1724
1725
1725
1725
1725
1726
1726
1726
1726
1727
1727
1727
1728
1728
1728
1729
1729
1729
1729
1729
1730
1730
1730
1730
1730
1730
1731
1731
1731
1731
1732
1732
1732
1732
1733
1733
1733
1733
1733
1733
1732
1732
1732
1731
1731
1731
1730
1730
1730
1729
1729
1728
1728
1728
1728
1727
1727
1727
1727
1726
1726
1725
1725
1724
1724
1723
1723
1723
1722
1722
1722
1721
1721
1721
1720
1720
1719
1718
1717
1716
1713
1712
1709
1707
1704
1702
1699
1696
1695
1694
1693
1692
1689
1688
1686
1684
1679
1678
1677
1675
1674
1672
1670
1667
1664
1655
1644
1638
1634
1630
1628
1623
1619
1617
1610
1609
1608
1607
1605
1603
1602
1601
1599
1598
1593
1592
1591
1590
1588
1587
1586
1585
1584
1581
1580
1579
1578
1576
1575
1572
1571
1568
1565
1562
1560
1558
1555
1552
1550
1549
1544
1542
1540
1538
1535
1533
1532
1531
1528
1526
1523
1522
1521
1518
1515
1514
1514
1512
1511
1511
1509
1509
1508
1504
1503
1501
1500
1498
1496
1496
1495
1493
1491
1490
1488
1488
1487
1486
1484
1483
1482
1481
1480
1478
1477
1476
1474
1472
1471
1470
1469
1469
1468
1467
1464
1463
1462
1461
1457
1456
1449
1444
1443
1443
1442
1441
1438
1433
1432
1432
1431
1424
1423
1414
1413
1411
1409
1408
1388
1385
1382
1379
1370
1359
1358
1356
1354
1352
1351
1343
1341
1339
1336
1325
1323
1312
1310
1308
1307
1307
1304
1302
1301
1298
1297
1293
1292
1291
1289
1288
1283
1281
1279
1279
1276
1275
1273
1272
1271
1270
1268
1267
1264
1264
1263
1261
1259
1257
1256
1254
1253
1253
1252
1250
1249
1245
1244
1242
1241
1238
1235
1232
1232
1230
1229
1224
1222
1221
1219
1217
1215
1214
1213
1210
1207
1206
1202
1190
1181
1177
1175
1169
1165
1161
1156
1153
1147
1142
1140
1138
1136
1135
1130
1115
1109
1107
1102
1101
1094
1089
1087
1086
1082
1081
1078
1077
1069
1067
1065
1063
1060
1058
1051
1048
1046
1044
1042
1037
1035
1030
1026
1020
1018
1015
1010
1008
1005
1003
1001
995
989
983
979
975
971
968
965
964
963
962
961
957
956
955
953
945
943
942
941
941
939
939
938
938
937
937
936
936
933
932
931
931
929
930
931
931
932
934
936
937
937
938
941
941
942
945
946
947
948
950
951
954
955
956
960
962
964
966
969
971
973
974
975
981
982
984
988
992
998
1002
1004
1009
1010
1011
1012
1013
1014
1018
1019
1023
1026
1028
1029
1029
1030
1031
1031
1032
1035
1036
1037
1038
1039
1041
1042
1043
1045
1046
1048
1050
1058
1059
1061
1063
1063
1066
1069
1069
1070
1071
1072
1074
1074
1075
1076
1077
1077
1082
1083
1083
1084
1085
1087
1088
1089
1090
1091
1095
1097
1099
1100
1102
1104
1105
1107
1108
1110
1112
1114
1117
1119
1126
1128
1130
1134
1138
1142
1143
1145
1150
1154
1160
1164
1166
1176
1179
1182
1183
1185
1188
1189
1191
1192
1192
1193
1195
1196
1197
1197
1201
1202
1203
1205
1206
1207
1208
1210
1211
1211
1212
1212
1215
1217
1217
1218
1218
1219
1221
1222
1224
1228
1230
1235
1238
1239
1240
1240
1242
1244
1245
1247
1247
1248
1250
1251
1259
1264
1266
1267
1268
1269
1270
1270
1275
1278
1280
1282
1283
1284
1290
1291
1292
1295
1297
1302
1305
1307
1309
1311
1313
1314
1314
1315
1317
1318
1320
1322
1324
1326
1332
1337
1338
1340
1343
1344
1345
1353
1357
1362
1364
1366
1368
1377
1379
1385
1387
1389
1393
1394
1396
1399
1401
1401
1402
1403
1404
1405
1407
1408
1410
1411
1412
1412
1414
1415
1415
1416
1419
1421
1422
1423
1424
1425
1427
1429
1430
1432
1438
1442
1445
1446
1447
1450
1451
1453
1454
1459
1460
1461
1465
1463
1463
1461
1461
1459
1457
1454
1448
1446
1445
1441
1438
1436
1434
1432
1427
1426
1425
1421
1420
1419
1417
1416
1415
1413
1406
1404
1402
1394
1392
1391
1388
1383
1378
1373
1371
1369
1364
1362
1361
1359
1355
1352
1350
1349
1347
1343
1340
1339
1338
1336
1335
1334
1330
1329
1328
1327
1325
1324
1322
1320
1319
1318
1314
1313
1312
1304
1303
1300
1299
1298
1296
1289
1288
1284
1283
1282
1282
1279
1276
1271
1266
1265
1264
1262
1259
1258
1258
1257
1256
1256
1255
1254
1253
1252
1248
1236
1234
1233
1226
1226
1225
1224
1223
1223
1222
1220
1220
1219
1218
1215
1212
1211
1210
1207
1206
1206
1205
1204
1203
1202
1200
1199
1198
1197
1197
1195
1192
1192
1192
1191
1190
1188
1186
1184
1182
1181
1180
1180
1179
1178
1176
1175
1172
1171
1169
1168
1163
1160
1158
1150
1146
1146
1145
1120
1120
1119
1118
1117
1116
1116
1115
1115
1115
1115
1115
1114
1113
1112
1109
1108
1110
1111
1112
1112
1113
1114
1115
1115
1116
1117
1118
1118
1119
1120
1120
1124
1125
1127
1128
1130
1127
1124
1124
1123
1122
1120
1118
1117
1116
1114
1114
1110
1108
1108
1108
1107
1107
1107
1106
1106
1106
1105
1105
1105
1105
1106
1106
1106
1108
1109
1109
1110
1112
1112
1113
1114
1114
1114
1114
1115
1115
1116
1116
1116
1117
1118
1118
1119
1119
1120
1121
1121
1122
1122
1122
1123
1123
1123
1123
1124
1125
1125
1125
1125
1126
1126
1127
1127
1128
1128
1129
1129
1130
1130
1131
1131
1131
1131
1132
1132
1132
1132
1133
1133
1134
1134
1134
1134
1135
1135
1135
1135
1135
1136
1136
1136
1137
1137
1137
1138
1138
1138
1138
1139
1139
1139
1139
1140
1140
1140
1141
1141
1141
1141
1141
1141
1142
1142
1142
1142
1143
1143
1143
1143
1143
1144
1144
1145
1146
1146
1147
1148
1149
1149
1150
1150
1151
1151
1151
1152
1152
1152
1153
1153
1154
1154
1155
1155
1155
1156
1156
1156
1155
1154
1152
1152
1150
1150
1149
1147
1147
1146
1146
1145
1144
1141
1141
1140
1139
1136
1134
1134
1132
1132
1132
1129
1127
1126
1126
1125
1125
1123
1121
1118
1118
1117
1117
1117
1114
1112
1110
1110
1108
1108
1107
1105
1103
1102
1101
1100
1098
1097
1093
1092
1091
1090
1090
1089
1090
1121
1125
1126
1127
1128
1129
1130
1130
1131
1131
1131
1132
1132
1135
1136
1137
1137
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1138
1137
1137
1137
1136
1135
1135
1135
1134
1134
1133
1132
1132
1132
1131
1131
1129
1129
1129
1129
1128
1128
1127
1127
1127
1126
1126
1126
1125
1125
1125
1125
1125
1125
1126
1126
1126
1127
1127
1127
1127
1128
1130
1130
1130
1131
1131
1132
1132
1138
1138
1138
1140
1140
1140
1141
1141
1142
1143
1144
1144
1145
1146
1146
1148
1148
1149
1151
1152
1153
1153
1154
1154
1154
1155
1155
1156
1156
1156
1156
1155
1153
1152
1151
1150
1149
1148
1147
1146
1146
1145
1145
1143
1142
1139
1137
1133
1132
1131
1130
1129
1127
1125
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1124
1123
1123
1123
1123
1123
1123
1122
1122
1122
1122
1121
1121
1120
1120
1120
1120
1120
1119
1119
1119
1119
1119
1118
1118
1118
1118
1118
1116
1114
1112
1106
1100
1097
1091
1087
1085
1082
1080
1079
1077
1076
1074
1071
1067
1065
1063
1062
1062
1060
1056
1053
1052
1050
1045
1045
1044
1042
1040
1039
1039
1038
1038
1038
1037
1036
1035
1034
1033
1033
1032
1032
1031
1031
1030
1029
1029
1029
1028
1028
1027
1027
1027
1026
1024
1023
1022
1021
1021
1020
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1019
1017
1017
1016
1015
1015
1015
1014
1014
1014
1013
1012
1011
1011
1010
1010
1010
1009
1009
1009
1008
1008
1008
1008
1008
1007
1007
1006
1006
1006
1006
1005
1004
1004
1004
1004
1004
1004
1004
1004
1004
1004
1004
1004
1004
1004
1004
1004
1003
1003
1003
1003
1003
1003
1003
1003
1003
1003
1003
1002
1002
1002
1002
1002
1002
1002
1002
1002
1002
1002
1002
1002
1002
1002
1002
1002
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
1001
1001
1001
1001
1001
1001
1001
1002
1002
1002
1002
1003
1003
1003
1003
1003
1003
1004
1004
1004
1004
1005
1005
1005
1005
1005
1006
1006
1006
1006
1005
1004
1003
1002
1001
1000
1000
1000
999
999
999
999
998
998
997
997
996
996
995
995
995
994
994
994
993
993
993
994
995
997
997
998
1001
1003
1003
1006
1006
1007
1008
1008
1011
1011
1014
1014
1015
1015
1016
1016
1018
1019
1019
1019
1020
1020
1021
1021
1022
1023
1023
1024
1025
1026
1026
1026
1026
1026
1026
1026
1026
1026
1026
1025
1025
1025
1025
1024
1024
1024
1023
1023
1023
1023
1023
1023
1023
1023
1022
1022
1022
1022
1022
1022
1021
1021
1021
1021
1021
1021
1021
1021
1021
1021
1021
1021
1021
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1020
1019
1018
1017
1017
1014
1014
1013
1012
1007
1006
1005
1003
1002
1001
1000
996
995
992
989
988
987
983
982
981
980
978
977
975
974
973
972
972
971
971
968
968
968
967
967
967
967
967
967
966
966
965
965
965
965
964
964
964
964
963
962
962
961
960
959
959
959
958
958
958
957
957
957
953
953
952
952
948
948
948
948
948
948
948
948
948
948
948
948
948
948
948
948
948
948
947
947
947
946
946
946
945
944
944
944
943
943
942
942
942
942
942
942
942
943
943
943
943
943
944
944
945
945
945
944
944
944
944
944
943
943
943
943
943
943
943
943
943
943
943
943
942
942
942
942
942
942
942
942
941
941
941
941
941
941
941
941
941
941
940
940
940
939
939
939
938
937
937
936
935
935
934
933
933
933
932
932
932
932
932
932
932
932
931
931
931
930
930
929
928
928
927
927
927
927
926
926
926
926
926
926
926
927
927
929
929
930
930
930
931
931
931
931
932
933
933
931
928
927
926
924
924
921
919
919
917
917
917
917
917
917
917
917
917
917
917
916
916
916
916
916
915
915
915
914
912
912
911
910
910
910
909
907
907
907
906
906
906
905
905
904
903
903
902
901
901
901
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
900
899
899
898
898
898
897
896
895
894
893
893
890
890
889
888
887
887
887
887
887
887
887
887
887
887
887
887
887
887
885
885
885
885
885
884
883
882
880
879
879
878
877
877
876
875
872
871
870
870
870
870
870
869
869
868
868
868
868
868
868
868
868
868
868
868
868
868
868
867
867
867
866
864
863
860
860
859
859
857
857
856
856
855
855
854
854
854
854
853
853
853
852
852
852
852
851
851
851
846
846
845
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
844
843
842
839
839
838
838
838
837
836
836
835
835
835
835
836
836
836
837
837
837
837
837
837
837
837
837
837
836
836
836
836
836
836
836
836
836
835
835
835
834
834
834
834
834
834
833
833
833
832
831
831
831
831
831
830
830
830
830
829
828
828
827
826
826
826
826
825
825
825
825
824
824
822
818
818
818
818
818
817
817
817
817
817
817
817
816
816
815
814
814
814
814
814
814
814
814
814
814
814
814
814
814
814
814
814
814
814
812
812
811
811
811
811
810
810
810
810
810
809
808
807
807
806
803
802
802
802
801
801
801
801
801
801
801
801
801
801
801
801
801
800
800
800
800
800
800
800
800
800
800
800
800
800
800
800
800
799
798
798
798
798
797
797
797
797
797
797
796
796
796
796
796
796
795
795
795
795
794
794
793
793
793
793
793
793
792
792
792
792
792
791
791
791
791
791
791
791
791
791
792
792
792
792
792
792
793
793
793
793
793
793
793
794
794
795
795
795
795
796
796
796
796
796
796
797
797
797
798
798
798
799
799
799
798
797
797
796
796
795
794
791
787
788
788
787
787
786
786
786
785
782
782
781
781
780
780
779
779
779
778
777
777
777
777
776
775
775
774
773
773
772
772
772
772
772
771
771
771
771
771
771
771
771
772
773
773
773
773
773
773
773
773
773
773
773
773
773
773
774
774
775
776
776
778
778
778
781
781
781
782
782
782
782
782
782
782
782
782
782
782
782
782
782
782
782
782
782
783
784
784
785
786
786
787
790
790
790
791
791
791
789
787
785
785
783
783
782
781
781
780
780
779
779
779
780
781
781
782
784
786
788
789
792
792
792
793
793
793
793
794
794
795
796
799
802
802
802
802
802
802
802
803
803
804
804
804
804
804
804
804
805
805
805
806
807
809
808
808
808
807
807
806
806
805
804
803
803
803
802
801
801
801
801
801
801
802
802
803
804
804
806
807
808
809
809
810
811
812
812
812
813
813
816
817
818
819
822
822
822
822
823
823
823
824
824
824
824
825
824
823
821
821
819
819
818
815
814
815
816
816
816
817
817
817
818
818
819
820
821
822
822
823
823
823
823
823
823
823
823
823
823
823
823
822
821
821
820
820
819
819
819
818
818
818
818
818
818
818
818
818
818
818
818
818
818
818
818
818
819
819
819
819
819
819
819
819
819
819
819
818
818
817
817
816
815
815
814
814
814
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
813
812
812
812
812
812
812
812
812
812
812
812
812
812
811
811
810
810
810
809
809
809
808
807
805
805
804
804
804
804
804
804
803
803
803
800
800
799
799
798
798
798
798
798
798
798
798
798
797
797
797
797
797
797
797
796
796
796
795
795
795
795
794
793
793
792
792
791
790
790
790
789
789
789
789
789
788
788
787
786
786
786
786
785
785
785
785
784
784
783
783
783
783
783
783
783
783
783
783
783
783
783
782
782
782
780
780
779
777
776
776
775
775
773
772
771
771
771
771
770
770
770
770
770
770
770
770
770
771
771
771
771
771
771
771
773
773
775
775
775
775
775
775
775
775
775
775
776
778
778
779
779
779
779
779
779
780
780
782
782
783
784
785
786
787
788
789
790
790
791
792
790
789
789
789
789
789
789
789
788
786
785
785
784
784
783
783
783
783
783
783
783
783
784
785
786
790
796
796
796
796
797
806
806
806
806
806
806
798
798
798
797
797
796
795
795
794
794
793
792
790
790
789
789
789
790
790
790
790
790
791
791
791
791
795
795
795
796
798
803
826
835
836
839
843
843
857
857
856
856
855
854
852
852
851
851
850
850
850
850
849
848
848
848
847
845
845
845
844
842
843
843
843
845
846
863
873
878
893
894
899
900
901
906
907
908
909
909
914
916
916
915
914
912
911
910
909
909
906
905
905
904
902
902
896
895
895
894
891
890
889
888
887
885
884
883
881
880
879
878
877
877
877
877
877
877
876
876
876
873
873
873
877
882
886
890
917
918
919
919
920
920
921
925
926
927
929
932
933
934
934
935
936
936
937
937
939
939
940
941
946
948
950
951
952
953
957
959
960
962
962
963
964
973
974
974
978
978
979
980
981
982
982
985
985
986
989
990
992
993
994
995
998
1000
1001
1009
1010
1015
1016
1018
1020
1021
1022
1023
1024
1025
1025
1025
1024
1024
1024
1024
1022
1022
1022
1022
1021
1021
1021
1021
1020
1020
1020
1020
1018
1018
1017
1017
1016
1015
1014
1014
1013
1012
1011
1010
1009
1008
1001
1000
999
998
998
997
997
994
993
993
992
991
990
989
988
987
986
985
981
981
980
980
979
978
977
976
975
972
972
971
970
969
968
968
967
966
964
964
945
945
944
943
943
943
942
941
941
941
940
940
938
937
937
937
937
936
936
936
936
938
939
939
939
940
940
940
941
941
941
942
943
944
944
945
945
946
946
947
949
950
950
952
952
953
953
954
954
955
960
960
959
959
959
959
959
955
955
955
955
955
955
954
954
954
954
953
953
954
955
968
969
970
974
976
984
985
986
987
988
990
999
1000
1001
1001
1002
1002
1003
1003
1009
1010
1010
1010
1012
1013
1015
1017
1018
1019
1019
1020
1020
1020
1017
997
984
984
983
983
979
979
979
978
978
977
977
976
976
975
975
974
974
973
969
968
966
964
963
960
959
959
958
958
954
951
950
949
949
946
946
945
943
941
940
940
940
941
942
942
943
944
950
951
953
960
961
961
962
963
963
964
964
965
966
966
972
973
973
974
974
975
975
975
976
977
982
982
982
982
982
982
982
982
983
983
983
983
984
984
986
986
987
987
987
987
988
989
989
989
989
990
990
991
991
991
991
991
992
994
994
994
994
994
993
993
993
990
990
990
990
990
989
989
989
988
988
991
992
993
993
993
995
995
995
996
996
998
998
998
999
999
998
998
998
997
991
991
990
990
990
990
991
991
995
995
997
997
998
998
998
998
999
1000
1000
1000
1000
1001
1001
1001
1001
1002
1002
1006
1016
1016
1018
1023
1024
1024
1025
1027
1028
1028
1032
1032
1033
1033
1034
1035
1035
1037
1037
1038
1039
1039
1038
1038
1038
1038
1036
1035
1035
1034
1034
1034
1034
1033
1033
1033
1033
1031
1031
1031
1031
1031
1031
1030
1030
1030
1030
1029
1029
1029
1029
1029
1029
1029
1029
1028
1028
1028
1028
1028
1028
1028
1027
1027
1026
1026
1020
1014
1013
1012
1008
1007
1007
1007
1006
1006
1006
1004
1003
1003
1002
1002
1001
1001
999
998
997
997
996
994
992
987
986
980
979
979
978
977
976
975
974
973
971
970
970
969
968
967
967
966
966
965
965
965
963
963
963
962
962
957
942
940
939
939
938
937
936
935
933
931
930
928
926
925
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
923
926
926
927
928
928
928
929
930
931
931
932
932
932
932
933
933
934
934
934
935
935
935
936
938
939
939
940
945
949
952
957
957
961
962
963
965
966
967
969
971
972
973
978
979
980
980
983
983
983
984
984
984
984
985
985
986
986
987
987
988
990
991
991
991
992
992
992
993
994
994
994
995
995
995
996
997
997
995
995
995
993
993
992
992
991
991
991
989
989
989
988
987
987
987
986
985
984
983
983
983
983
983
983
983
983
983
983
984
984
984
984
984
984
984
984
984
984
984
984
984
984
984
984
984
984
984
984
985
985
985
985
985
985
985
985
985
985
985
986
986
987
988
989
990
991
993
994
995
997
997
997
998
998
999
999
1001
1002
1002
1003
1004
1005
1006
1007
1007
1008
1008
1008
1009
1009
1010
1010
1011
1011
1011
1010
1010
1010
1009
1009
1008
1007
1007
1007
1006
1006
1005
1005
1005
1004
1004
1003
1003
1003
1002
1001
1001
1001
1000
1000
1000
999
997
996
995
995
995
994
994
993
993
992
992
992
992
992
992
991
991
990
990
989
988
988
988
988
987
987
987
987
987
986
986
986
986
985
985
985
985
984
984
984
984
984
983
983
983
983
983
983
982
982
982
982
981
980
977
976
976
975
975
975
973
973
971
970
967
967
966
965
964
963
961
960
959
959
959
958
958
958
958
958
958
958
957
957
957
957
957
957
957
957
957
956
956
956
955
955
955
955
955
955
955
955
955
955
955
955
954
954
954
954
954
954
954
954
954
954
954
954
954
954
954
954
955
955
955
955
955
955
955
955
955
955
955
955
955
955
955
955
955
955
955
955
954
953
951
948
947
944
942
942
940
936
936
935
934
933
933
932
932
930
930
929
929
929
928
928
927
927
926
925
925
924
924
923
922
921
921
921
921
921
921
920
920
920
919
919
919
919
918
918
918
918
918
917
917
917
917
917
917
916
916
916
916
916
916
916
916
915
915
915
915
915
915
915
913
913
913
913
914
914
914
914
914
914
915
915
915
915
915
916
916
917
917
917
918
918
918
919
919
919
920
920
920
920
921
921
921
922
922
922
922
922
922
923
923
924
924
924
925
925
925
926
926
926
926
926
926
927
927
927
927
927
928
928
929
930
931
931
931
933
934
935
936
936
937
939
939
940
941
941
942
945
947
948
950
951
952
954
955
956
961
970
973
974
974
974
975
977
978
982
983
983
984
985
985
989
991
992
993
1006
1012
1013
1015
1017
1021
1021
1020
1018
1017
1016
1015
1014
1014
1014
1014
1012
1012
1011
1010
1010
1009
1009
1009
1008
1008
1008
1007
1007
1006
1006
1004
1003
1002
1002
1000
999
998
996
994
994
993
993
992
991
991
991
990
990
989
988
987
986
985
985
983
982
977
976
975
974
970
969
968
967
966
961
959
957
957
956
955
954
953
953
951
951
950
949
949
948
947
946
946
946
946
945
945
943
943
940
939
939
940
941
942
943
944
945
945
945
946
949
950
950
965
986
987
987
988
989
990
990
990
993
993
993
993
994
994
995
995
995
995
996
996
997
997
998
999
999
1000
1000
1001
1001
1002
1003
1005
1005
1006
1006
1006
1006
1006
1007
1008
1012
1015
1017
1018
1019
1020
1022
1024
1035
1037
1038
1038
1040
1042
1050
1052
1054
1056
1057
1060
1062
1072
1076
1078
1080
1086
1088
1089
1092
1093
1096
1097
1116
1117
1119
1121
1122
1124
1126
1128
1129
1131
1132
1133
1133
1134
1136
1138
1139
1147
1148
1149
1150
1152
1153
1154
1156
1157
1160
1161
1162
1163
1164
1165
1170
1173
1174
1175
1176
1177
1179
1180
1181
1181
1182
1183
1184
1185
1185
1195
1197
1199
1200
1200
1201
1201
1203
1203
1204
1206
1207
1207
1208
1209
1210
1211
1212
1213
1215
1216
1217
1217
1219
1221
1223
1224
1225
1226
1227
1228
1229
1230
1231
1231
1233
1234
1234
1235
1235
1238
1240
1244
1246
1248
1250
1251
1252
1254
1255
1255
1256
1259
1263
1265
1267
1269
1270
1272
1274
1276
1280
1281
1283
1284
1286
1287
1289
1291
1293
1294
1294
1294
1295
1296
1297
1298
1300
1304
1306
1306
1309
1310
1310
1312
1313
1316
1317
1318
1321
1323
1324
1325
1327
1328
1329
1333
1334
1336
1336
1337
1337
1337
1338
1338
1338
1338
1338
1338
1338
1338
1338
1338
1338
1338
1338
1338
1338
1338
1337
1337
1337
1337
1337
1337
1337
1337
1337
1337
1336
1336
1336
1336
1336
1336
1336
1336
1336
1336
1336
1336
1336
1336
1335
1331
1331
1331
1330
1330
1329
1329
1328
1328
1328
1328
1326
1325
1325
1323
1323
1322
1320
1319
1317
1317
1315
1313
1312
1309
1308
1308
1308
1307
1306
1306
1305
1304
1304
1303
1302
1301
1301
1299
1297
1297
1296
1295
1294
1292
1291
1288
1282
1281
1279
1277
1274
1273
1270
1258
1258
1254
1253
1251
1249
1247
1244
1243
1242
1241
1239
1238
1231
1228
1225
1220
1212
1211
1209
1208
1204
1204
1203
1198
1198
1196
1195
1192
1191
1189
1188
1186
1186
1185
1180
1179
1179
1178
1177
1176
1176
1175
1174
1173
1168
1166
1165
1165
1164
1164
1162
1162
1158
1157
1156
1156
1153
1153
1152
1152
1152
1150
1146
1146
1145
1145
1141
1138
1137
1136
1130
1128
1128
1127
1125
1125
1125
1124
1124
1123
1122
1121
1120
1120
1119
1118
1112
1107
1100
1099
1096
1096
1097
1099
1099
1100
1102
1102
1102
1103
1103
1103
1103
1104
1104
1104
1105
1106
1106
1106
1107
1107
1110
1110
1111
1112
1113
1114
1115
1116
1116
1111
1110
1110
1109
1108
1107
1107
1106
1105
1105
1105
1104
1097
1096
1096
1093
1093
1092
1091
1089
1088
1088
1086
1086
1085
1082
1081
1081
1079
1078
1077
1077
1077
1076
1076
1076
1076
1076
1075
1075
1075
1075
1074
1074
1074
1074
1073
1073
1073
1071
1071
1071
1070
1070
1070
1069
1068
1067
1067
1067
1066
1066
1066
1066
1064
1062
1062
1061
1061
1061
1060
1060
1059
1058
1057
1057
1054
1054
1054
1051
1051
1050
1049
1048
1047
1047
1046
1046
1045
1043
1043
1042
1042
1041
1041
1039
1038
1038
1037
1037
1036
1035
1035
1034
1034
1034
1034
1033
1033
1032
1031
1030
1030
1029
1027
1021
1019
1018
1017
1017
1016
1014
1013
1013
1011
1011
1010
1009
1007
1006
1006
1006
1006
1006
1006
1006
1006
1006
1006
1006
1006
1006
1006
1006
1006
1006
1006
1006
1005
1005
1005
1005
1005
1005
1005
1005
1005
1005
1005
1005
1005
1005
1005
1005
1004
1004
1004
1004
1004
1004
1004
1004
1004
1004
1004
1004
1004
1005
1006
1007
1008
1008
1009
1010
1011
1013
1013
1015
1015
1016
1016
1016
1018
1019
1024
1025
1025
1026
1029
1030
1031
1032
1034
1036
1036
1036
1039
1039
1043
1044
1044
1045
1045
1045
1047
1047
1048
1048
1049
1050
1051
1052
1052
1052
1053
1054
1056
1057
1057
1059
1061
1063
1064
1065
1065
1067
1068
1072
1075
1076
1077
1077
1078
1078
1079
1079
1082
1084
1085
1085
1085
1086
1086
1086
1091
1092
1093
1094
1095
1096
1097
1097
1099
1100
1100
1101
1106
1107
1108
1108
1108
1109
1109
1110
1111
1111
1112
1112
1112
1113
1114
1116
1118
1125
1128
1130
1132
1134
1139
1140
1141
1141
1143
1146
1147
1149
1150
1153
1154
1156
1157
1157
1158
1158
1161
1162
1162
1162
1163
1163
1164
1165
1167
1168
1171
1174
1175
1176
1177
1178
1179
1180
1180
1181
1182
1182
1182
1183
1187
1189
1190
1193
1196
1197
1200
1201
1202
1204
1205
1205
1205
1206
1206
1207
1207
1208
1209
1209
1210
1212
1216
1216
1217
1217
1218
1218
1219
1220
1221
1221
1221
1222
1223
1224
1225
1225
1226
1228
1228
1232
1234
1236
1236
1236
1237
1240
1240
1241
1242
1239
1238
1238
1238
1238
1238
1236
1235
1235
1233
1233
1231
1230
1230
1229
1229
1228
1228
1226
1226
1225
1224
1223
1223
1222
1222
1222
1222
1221
1221
1221
1221
1220
1220
1219
1219
1219
1218
1218
1218
1217
1217
1217
1216
1215
1215
1215
1214
1214
1213
1211
1209
1209
1208
1207
1207
1206
1204
1200
1199
1198
1196
1196
1195
1195
1193
1192
1191
1189
1188
1185
1184
1182
1181
1180
1178
1176
1174
1173
1172
1171
1169
1168
1166
1165
1163
1162
1162
1160
1158
1157
1155
1152
1152
1150
1145
1140
1139
1136
1135
1131
1130
1128
1125
1122
1119
1111
1106
1104
1101
1098
1092
1089
1087
1086
1086
1081
1079
1078
1077
1075
1071
1070
1068
1066
1065
1064
1063
1062
1061
1060
1060
1057
1057
1055
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1054
1053
1053
1053
1052
1052
1052
1052
1052
1052
1051
1050
1049
1049
1048
1048
1048
1047
1047
1047
1046
1046
1046
1045
1045
1044
1044
1044
1044
1043
1043
1043
1042
1042
1042
1041
1041
1040
1040
1040
1039
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1038
1037
1037
1036
1035
1034
1034
1033
1023
1023
1022
1021
1021
1019
1019
1018
1017
1016
1016
1015
1015
1015
1015
1015
1015
1016
1017
1017
1018
1018
1018
1018
1018
1018
1019
1019
1020
1020
1020
1020
1020
1021
1021
1021
1021
1023
1023
1023
1023
1023
1024
1025
1026
1028
1028
1029
1029
1030
1030
1033
1034
1035
1036
1036
1037
1042
1042
1043
1044
1046
1046
1046
1046
1047
1047
1047
1049
1049
1050
1050
1051
1051
1051
1051
1052
1052
1052
1052
1052
1052
1053
1054
1054
1054
1055
1055
1055
1056
1056
1058
1059
1059
1060
1060
1061
1061
1062
1062
1062
1063
1065
1066
1066
1066
1067
1067
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1068
1067
1067
1067
1067
1067
1067
1067
1066
1066
1066
1066
1066
1065
1064
1063
1062
1062
1062
1062
1062
1060
1058
1056
1052
1050
1048
1047
1045
1044
1043
1042
1041
1038
1035
1032
1031
1027
1025
1024
1023
1022
1021
1020
1019
1015
1014
1011
1007
1006
1005
1005
1004
1003
1002
1002
1000
999
998
997
997
995
994
994
993
992
992
989
988
988
987
985
984
979
978
980
982
984
984
984
985
986
986
986
987
987
988
989
990
991
991
992
993
995
995
996
997
998
1000
1001
1002
1003
1004
1006
1007
1007
1007
1010
1010
1011
1011
1012
1014
1015
1018
1021
1022
1024
1027
1028
1029
1030
1031
1032
1036
1037
1039
1040
1040
1042
1045
1053
1054
1055
1057
1058
1059
1059
1060
1061
1061
1062
1062
1063
1064
1064
1065
1066
1066
1067
1069
1069
1070
1070
1070
1071
1071
1071
1072
1073
1074
1074
1074
1074
1077
1078
1080
1082
1082
1082
1081
1081
1081
1081
1080
1080
1079
1079
1078
1078
1078
1077
1077
1077
1077
1076
1076
1076
1076
1076
1076
1075
1075
1075
1075
1075
1075
1075
1075
1074
1074
1074
1074
1073
1073
1073
1073
1073
1073
1073
1072
1072
1072
1072
1072
1071
1071
1071
1071
1071
1070
1070
1070
1070
1069
1068
1067
1067
1066
1066
1066
1066
1065
1064
1063
1062
1062
1060
1060
1059
1058
1056
1055
1054
1054
1053
1052
1052
1049
1048
1048
1047
1045
1045
1044
1044
1043
1043
1042
1042
1042
1041
1041
1041
1041
1040
1040
1040
1040
1040
1039
1039
1039
1039
1038
1038
1038
1038
1037
1037
1037
1037
1037
1037
1037
1036
1036
1036
1035
1035
1034
1034
1033
1033
1033
1033
1033
1033
1033
1033
1033
1034
1034
1034
1034
1034
1034
1036
1036
1036
1036
1036
1036
1036
1036
1036
1036
1037
1037
1037
1037
1037
1037
1036
1032
1032
1032
1031
1028
1024
1024
1024
1024
1023
1022
1022
1021
1021
1021
1020
1018
1018
1018
1018
1017
1016
1016
1016
1019
1019
1020
1022
1023
1024
1029
1030
1032
1033
1034
1036
1038
1039
1039
1040
1041
1043
1047
1047
1048
1050
1050
1051
1054
1054
1056
1057
1058
1059
1062
1064
1066
1067
1068
1068
1068
1068
1070
1070
1070
1072
1072
1073
1073
1074
1074
1074
1076
1076
1077
1077
1079
1080
1082
1083
1084
1084
1085
1085
1085
1086
1086
1086
1086
1086
1087
1088
1089
1089
1090
1091
1092
1093
1093
1093
1094
1094
1094
1094
1095
1096
1096
1096
1096
1096
1096
1097
1097
1098
1098
1098
1098
1098
1098
1098
1097
1097
1096
1096
1095
1095
1095
1095
1094
1094
1094
1094
1093
1093
1093
1093
1092
1092
1091
1090
1090
1090
1090
1089
1089
1089
1088
1088
1087
1087
1086
1086
1086
1085
1085
1085
1085
1084
1084
1084
1084
1083
1083
1082
1082
1082
1082
1082
1083
1083
1083
1083
1084
1084
1084
1084
1085
1086
1086
1087
1087
1087
1088
1088
1088
1089
1089
1089
1089
1090
1092
1093
1093
1095
1095
1096
1096
1096
1096
1096
1097
1097
1098
1099
1099
1100
1100
1100
1101
1101
1101
1102
1103
1103
1104
1105
1106
1107
1107
1108
1109
1110
1110
1111
1112
1112
1113
1113
1114
1114
1113
1112
1111
1108
1106
1105
1100
1095
1093
1090
1087
1086
1082
1080
1079
1076
1075
1073
1072
1071
1070
1069
1067
1065
1062
1060
1057
1056
1055
1054
1053
1052
1051
1051
1050
1050
1047
1046
1045
1044
1044
1044
1044
1045
1045
1045
1046
1048
1048
1049
1050
1050
1051
1052
1052
1053
1054
1055
1055
1056
1057
1062
1062
1062
1063
1064
1065
1066
1067
1068
1070
1072
1072
1072
1071
1071
1071
1070
1070
1070
1070
1069
1069
1069
1068
1068
1068
1067
1067
1067
1066
1066
1066
1066
1066
1066
1066
1066
1066
1066
1066
1067
1068
1069
1070
1070
1070
1071
1071
1072
1072
1073
1073
1073
1074
1075
1075
1076
1076
1076
1077
1079
1079
1080
1080
1081
1081
1082
1085
1085
1087
1087
1087
1088
1088
1089
1090
1090
1092
1093
1095
1097
1099
1104
1109
1112
1113
1115
1120
1124
1125
1125
1127
1128
1129
1129
1130
1131
1132
1134
1134
1135
1136
1137
1138
1140
1143
1144
1144
1145
1146
1152
1153
1154
1158
1160
1161
1162
1163
1163
1164
1165
1166
1167
1167
1168
1169
1168
1166
1164
1163
1161
1160
1159
1158
1158
1155
1152
1151
1151
1150
1150
1148
1146
1145
1136
1135
1134
1128
1123
1121
1119
1118
1116
1115
1115
1114
1111
1110
1110
1109
1109
1106
1105
1104
1103
1102
1101
1098
1098
1097
1096
1093
1091
1090
1090
1089
1089
1088
1088
1086
1083
1082
1081
1078
1078
1077
1076
1076
1075
1075
1062
1061
1061
1060
1060
1059
1057
1057
1054
1053
1053
1053
1052
1052
1051
1049
1048
1047
1046
1045
1044
1041
1038
1037
1036
1027
1026
1025
1024
1022
1019
1017
1015
1015
1014
1012
1011
1010
1009
1009
1008
1007
1003
1002
1001
997
996
995
994
994
993
991
989
988
987
983
983
982
981
980
979
975
975
974
973
969
968
968
965
964
963
954
950
948
945
944
943
943
942
941
938
936
930
929
925
920
918
914
912
908
906
903
902
901
900
899
893
892
891
890
889
887
885
884
882
881
880
878
875
874
873
871
870
870
869
867
866
865
865
864
863
862
861
860
853
852
851
851
850
844
844
842
842
841
840
840
839
839
837
836
836
835
833
832
830
829
828
827
825
823
823
822
821
820
819
812
811
810
806
804
802
801
800
799
798
796
795
791
789
788
784
780
779
777
775
774
773
772
767
766
765
764
762
761
760
759
757
755
755
754
751
750
750
747
744
743
743
742
742
741
741
737
734
734
733
732
731
730
730
729
728
727
727
726
725
724
724
724
723
723
721
720
719
718
710
709
708
707
705
703
702
700
698
697
696
695
692
692
691
690
689
689
688
684
683
682
682
680
677
677
674
672
665
659
657
648
646
643
642
640
638
637
633
632
631
627
626
626
624
623
622
619
619
618
614
611
596
595
592
590
589
575
574
572
571
566
565
565
563
562
555
555
553
550
549
548
545
544
541
539
536
536
535
534
533
533
532
531
530
530
529
528
527
527
527
526
524
523
523
522
521
517
516
515
514
514
513
512
511
506
505
504
492
490
485
482
479
477
472
465
457
455
454
452
450
449
449
449
449
448
448
448
448
448
448
447
447
428
424
424
423
422
421
420
420
419
416
416
415
415
414
414
413
412
411
410
409
408
406
406
405
404
403
402
401
400
400
400
399
398
397
395
394
393
393
391
390
390
390
389
389
389
389
389
389
388
388
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
387
386
386
386
386
385
385
385
385
385
384
384
384
383
382
382
382
382
381
381
381
380
379
379
379
377
377
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
376
377
377
377
378
378
378
378
378
378
378
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
379
380
380
380
380
380
381
381
381
381
381
381
381
381
382
382
382
383
383
383
386
387
388
389
390
390
391
395
395
396
397
404
406
409
412
415
415
419
420
422
424
424
425
425
426
428
428
429
430
432
433
434
436
443
443
444
446
449
450
451
452
453
455
460
463
467
468
469
470
471
475
478
486
489
501
502
509
512
514
516
518
521
527
529
532
534
537
542
544
546
548
551
553
554
561
562
565
567
568
570
571
574
575
578
579
580
583
585
586
587
588
589
590
590
590
592
592
593
596
597
598
598
598
599
599
600
601
602
602
606
607
608
609
609
610
610
611
611
611
611
612
612
612
613
614
616
617
619
622
624
625
627
628
629
631
638
639
641
644
645
648
654
655
656
656
657
658
661
662
666
667
668
669
670
672
673
674
673
672
670
669
667
666
665
661
658
654
651
650
650
649
646
646
645
645
641
641
642
642
642
643
643
643
643
644
645
646
646
647
651
651
651
652
652
652
653
653
651
649
646
644
642
641
640
640
639
638
637
636
636
635
635
634
634
633
632
630
629
624
623
625
626
628
629
630
633
633
634
638
639
640
642
644
645
645
646
646
648
649
650
653
655
658
659
659
659
661
664
665
666
667
668
671
671
673
674
675
680
683
685
686
688
688
689
690
691
691
691
692
692
693
694
695
695
695
696
697
698
699
699
700
702
703
704
704
705
706
707
707
708
709
709
709
710
710
710
718
719
723
723
724
729
730
732
733
734
735
736
736
738
740
743
743
743
744
744
744
745
745
745
745
745
746
746
747
747
747
747
747
748
748
748
748
749
749
749
749
749
750
750
751
751
752
752
752
752
754
754
754
755
755
755
756
756
757
757
757
757
758
759
759
759
760
760
760
761
761
761
762
762
762
763
763
763
764
765
765
765
766
766
763
763
762
761
761
758
757
756
753
748
747
746
744
742
741
740
740
740
738
738
737
746
747
758
759
760
764
767
768
771
772
775
780
782
785
792
794
795
796
800
800
809
810
815
815
818
820
821
823
823
823
823
823
825
825
825
826
826
826
826
827
828
829
830
832
833
833
834
834
834
834
835
836
836
837
840
841
842
842
842
842
844
845
846
847
849
853
860
864
868
873
878
884
885
889
890
895
896
899
901
902
904
906
907
908
912
912
915
923
924
933
935
941
950
951
955
964
967
967
956
954
953
950
948
946
945
944
942
941
940
938
937
934
932
932
921
915
913
913
913
914
914
915
923
926
930
936
939
944
958
960
962
964
968
970
973
974
974
969
951
950
950
950
950
950
950
950
950
950
943
943
943
943
943
943
943
943
943
943
943
943
943
943
943
943
943
943
943
943
943
942
942
942
942
942
942
942
942
942
941
941
941
940
940
940
939
938
938
937
937
937
936
936
936
936
936
936
936
936
936
936
937
938
941
943
943
943
944
944
945
945
947
948
948
948
947
947
947
947
946
946
945
945
944
944
944
944
943
942
942
942
942
940
939
936
936
935
933
933
931
930
929
929
928
925
925
924
921
919
919
919
919
918
917
916
915
915
915
914
914
912
912
910
909
908
908
907
906
903
903
903
902
900
899
898
898
898
898
898
898
898
899
899
900
900
900
900
901
901
901
901
904
904
904
904
904
904
905
906
911
913
914
916
916
918
918
921
923
924
926
928
929
930
928
926
924
917
911
907
903
900
899
898
897
894
889
887
887
885
884
884
885
887
887
888
889
889
890
890
891
892
892
893
893
895
897
897
898
900
901
902
903
909
910
910
912
913
913
916
919
921
922
922
932
933
950
951
952
961
962
964
965
966
969
970
979
981
982
984
986
985
982
982
981
979
977
977
975
974
969
969
968
967
967
966
964
963
962
962
960
960
959
958
957
953
951
950
949
946
946
945
943
943
942
940
939
937
936
935
934
933
932
931
930
928
927
925
924
922
920
919
915
914
912
911
910
910
910
910
911
911
911
911
911
912
912
912
913
913
913
913
913
913
913
914
914
914
915
915
915
915
915
916
916
916
916
916
916
915
915
915
914
914
913
913
912
910
910
908
907
906
906
906
905
904
904
904
903
902
901
900
899
899
898
898
898
897
897
896
895
895
894
894
893
893
893
891
891
890
889
889
889
889
888
888
888
888
887
887
886
886
886
886
885
885
885
885
885
884
884
884
883
883
883
882
882
882
882
882
880
879
878
873
872
871
870
869
868
867
866
864
861
857
856
855
854
847
845
842
841
839
832
831
830
825
824
823
822
818
818
819
820
820
821
821
821
821
828
829
830
832
833
833
836
836
837
839
839
840
842
843
844
844
848
849
850
851
851
853
855
857
860
865
866
867
869
871
873
873
875
875
878
879
880
881
883
889
892
892
894
895
897
899
901
903
904
908
911
912
915
916
917
917
918
919
920
924
925
926
926
928
929
932
932
933
934
937
940
941
942
944
945
945
947
948
949
950
952
953
954
954
954
953
952
952
952
950
950
949
948
948
947
947
946
946
946
945
945
944
944
942
942
942
941
941
940
940
939
939
938
937
935
935
935
934
933
933
932
932
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
931
930
928
926
920
918
915
913
912
911
909
904
898
890
888
887
884
883
882
869
863
860
851
847
845
844
842
841
839
833
831
829
828
814
810
809
808
803
803
803
803
803
803
803
804
804
804
804
804
804
804
804
805
805
805
805
805
805
805
804
804
803
803
803
802
802
802
801
801
801
801
801
800
800
800
800
800
799
799
799
799
799
799
798
798
798
798
796
792
791
790
787
784
780
779
777
776
775
772
771
767
764
763
759
758
756
755
754
751
749
746
745
743
741
737
736
734
733
730
728
726
725
723
720
719
718
716
715
713
711
710
709
708
705
703
701
700
698
697
694
693
689
687
686
686
689
690
691
692
693
693
694
695
696
697
698
699
700
701
701
701
702
703
703
704
705
705
705
707
707
707
707
707
707
707
707
707
707
706
706
706
706
706
706
706
706
705
705
705
705
704
704
704
703
703
703
703
703
702
702
702
701
701
701
701
700
700
700
700
700
700
700
699
699
699
698
698
698
697
697
697
697
697
696
695
695
695
694
693
692
691
691
690
690
689
689
689
688
688
688
687
687
687
686
685
684
684
684
684
684
683
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
681
682
682
683
684
686
687
688
689
692
693
694
695
699
700
702
703
704
705
707
708
709
710
715
717
718
729
730
731
732
736
737
737
737
737
736
736
735
735
735
734
734
734
734
733
733
733
733
733
732
732
732
732
732
731
731
731
731
731
731
730
730
730
730
730
730
729
729
729
729
729
729
730
731
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
750
752
752
753
757
758
761
763
763
766
767
768
770
770
771
771
772
774
775
777
777
780
781
782
783
785
787
788
789
790
790
791
791
791
792
792
792
793
793
794
795
795
795
795
795
796
796
797
797
798
798
798
799
799
799
799
800
800
800
801
801
802
802
803
803
803
804
805
805
805
805
804
803
802
802
801
801
801
800
800
799
798
798
797
795
795
795
794
793
792
792
792
791
790
790
789
789
788
788
787
787
786
786
785
784
784
783
781
781
780
779
778
778
777
777
777
776
776
776
775
775
774
773
773
773
772
772
772
771
771
770
770
769
769
769
769
769
768
768
767
767
766
766
766
765
765
765
764
764
764
764
767
768
768
770
775
777
780
781
781
782
783
784
785
785
787
788
791
792
792
793
794
795
796
797
800
800
801
802
804
807
809
813
813
814
814
814
815
815
817
817
817
818
818
818
819
819
820
821
821
824
824
824
826
826
828
829
830
829
822
820
817
816
815
809
807
804
799
798
795
794
772
768
762
760
758
754
752
750
749
748
746
744
739
738
731
725
724
722
719
717
715
713
711
702
700
699
697
696
693
692
691
690
689
688
685
683
682
681
680
679
678
676
675
674
671
670
669
663
662
661
660
659
656
655
655
653
651
650
646
639
637
635
632
623
621
618
614
613
612
603
599
598
596
595
594
587
584
582
577
573
566
561
559
557
555
552
549
547
542
540
538
536
534
529
523
518
516
510
507
504
501
500
495
491
490
488
487
482
481
480
479
477
476
473
465
461
460
460
459
458
457
457
456
456
454
452
450
450
448
446
445
445
444
443
442
441
439
439
438
436
435
434
433
433
432
432
431
430
429
428
428
428
428
426
426
425
425
424
423
422
421
420
418
418
417
417
416
413
412
411
411
408
406
405
403
401
397
395
393
393
392
390
387
385
380
379
377
376
376
376
376
376
376
376
376
376
377
377
377
377
377
377
377
377
377
377
377
377
377
377
377
377
377
377
378
378
379
379
379
379
380
381
381
381
384
385
386
390
390
390
391
391
391
392
393
393
393
394
396
399
402
403
404
405
406
409
410
412
413
418
419
421
424
426
426
427
430
430
432
432
435
435
436
437
438
439
440
443
443
444
444
446
446
447
447
451
452
454
455
455
457
457
458
461
462
464
464
467
470
470
471
473
473
477
479
481
482
483
486
487
488
490
491
492
492
493
495
498
499
500
500
501
501
502
503
503
505
505
506
509
511
512
516
519
520
525
526
531
532
531
524
522
521
512
511
510
505
502
497
495
493
485
478
474
473
468
463
462
441
439
423
417
415
407
404
402
395
393
387
385
376
374
360
359
358
357
345
335
334
333
331
310
309
308
304
303
299
299
298
296
296
295
292
291
290
290
289
287
286
281
281
280
280
277
276
274
274
273
271
270
270
269
268
267
267
265
264
262
258
258
254
253
253
249
248
247
245
245
244
243
242
241
239
238
234
233
232
232
231
230
227
223
222
216
209
209
209
209
210
211
211
213
213
213
213
213
214
215
215
215
216
217
218
218
218
218
219
219
219
219
220
220
220
220
220
219
218
217
216
215
214
212
211
210
210
208
208
206
202
191
190
189
188
187
182
182
182
181
180
176
175
173
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
171
170
170
170
170
169
169
168
168
168
167
167
165
164
164
163
163
162
162
161
159
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
156
155
155
155
155
155
155
155
155
155
155
155
155
155
155
155
156
158
158
159
160
161
161
165
166
167
168
168
169
169
169
170
173
178
179
179
178
178
178
177
177
176
176
175
175
174
173
173
172
170
169
169
168
167
167
166
166
166
167
168
169
169
170
172
172
172
172
172
172
173
173
173
173
164
162
155
154
154
154
154
153
153
151
147
145
144
143
142
142
140
140
140
139
139
139
139
139
139
138
137
137
136
136
136
136
136
134
134
133
133
132
131
131
131
131
131
131
131
132
132
133
133
134
134
134
134
134
134
134
134
135
135
136
136
137
137
137
138
138
138
138
139
139
139
139
140
140
139
139
139
138
138
137
136
135
135
134
133
133
132
131
131
129
129
129
128
127
126
126
126
126
125
124
124
124
123
123
123
123
124
125
125
126
127
128
128
128
128
130
131
132
133
133
133
134
134
134
134
135
135
136
136
136
136
137
137
137
138
139
139
140
141
142
143
144
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
145
142
142
141
139
138
136
136
135
132
131
131
131
131
130
130
130
128
128
127
126
125
123
122
122
122
121
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
120
121
121
121
122
122
122
123
123
123
123
123
123
124
124
124
124
124
124
124
124
125
125
125
126
126
127
128
128
128
130
130
131
132
132
132
133
133
133
133
134
135
135
135
135
135
136
136
136
136
137
138
138
138
138
138
138
139
139
139
139
140
140
140
140
141
141
141
142
142
142
142
142
143
143
144
145
146
150
150
151
151
152
152
153
153
153
154
155
155
156
157
157
158
159
159
160
160
161
163
164
165
167
169
169
169
168
167
166
165
165
164
163
161
160
160
160
159
159
159
158
158
157
157
158
158
161
162
163
164
165
166
169
170
170
170
171
171
172
172
174
176
177
178
178
178
179
179
179
179
179
180
180
180
180
181
181
181
181
182
182
183
183
183
184
184
185
185
185
185
183
183
182
181
180
179
178
177
176
176
175
175
175
174
174
173
173
172
171
170
170
169
168
168
168
167
166
165
164
162
162
162
161
161
159
159
159
157
156
155
154
154
152
149
148
147
147
145
144
144
144
143
143
143
141
140
139
138
138
137
136
135
133
131
129
129
127
125
125
122
120
120
120
119
119
119
119
119
119
118
118
118
118
118
118
118
118
118
118
117
117
117
117
117
117
116
116
116
116
116
116
116
117
117
118
120
121
122
123
125
125
126
127
128
128
129
130
132
132
133
134
136
136
136
137
137
137
137
137
137
137
137
137
137
137
137
137
137
137
137
137
137
137
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
136
134
133
133
132
131
130
123
121
120
119
119
119
119
119
119
119
119
119
119
119
119
119
119
120
120
120
120
120
120
120
120
120
120
120
120
118
117
116
116
115
115
114
112
112
111
109
109
108
107
107
105
105
105
104
103
103
102
98
97
95
94
92
92
90
89
88
87
85
84
84
83
82
80
79
76
75
75
73
73
72
68
67
67
66
65
64
64
63
62
62
59
59
59
59
59
59
58
58
58
58
58
58
58
56
56
53
53
53
53
53
53
53
53
52
52
52
51
50
50
50
53
54
54
55
59
63
63
63
63
64
64
64
64
64
65
65
67
69
74
76
78
82
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
93
94
97
99
101
102
103
104
107
110
111
111
111
112
112
115
115
119
120
125
125
127
138
140
143
146
154
171
172
177
178
180
191
193
198
207
210
211
213
214
215
221
221
222
222
225
226
227
228
229
231
231
232
236
236
237
238
239
240
240
241
241
242
243
241
239
238
237
235
224
223
222
221
218
217
216
215
208
207
206
205
204
187
186
185
182
181
180
179
173
172
171
168
167
167
166
163
162
161
159
158
157
157
156
155
155
154
153
152
152
151
145
144
137
131
130
129
126
126
125
124
124
124
123
123
122
122
122
122
122
122
122
122
122
121
120
120
120
120
119
119
118
118
118
118
118
117
117
117
116
116
115
113
112
112
112
111
107
107
106
105
104
103
103
102
102
101
100
99
98
97
96
90
89
89
86
85
84
81
81
80
80
77
77
76
75
75
74
74
74
78
88
90
91
91
92
92
93
94
95
96
97
98
99
100
100
101
102
103
104
106
107
107
109
110
110
110
111
112
112
112
113
113
114
115
115
115
116
116
117
118
119
120
123
123
123
124
125
125
126
126
127
127
127
129
130
131
131
131
131
131
131
131
130
130
130
130
130
129
129
128
127
126
125
123
123
122
120
118
117
117
116
115
114
114
114
114
114
113
113
113
112
112
112
112
112
112
111
110
110
110
110
110
110
110
109
109
109
109
109
108
108
108
108
108
107
107
107
107
106
106
106
105
105
104
104
103
102
101
98
97
97
97
96
96
96
95
95
95
95
94
94
93
93
92
92
92
92
92
92
92
91
91
91
90
90
90
90
90
90
90
90
90
90
90
90
91
91
91
91
91
92
92
92
92
92
92
92
93
93
93
93
93
93
94
94
94
94
94
95
95
95
95
95
101
102
105
105
106
107
107
109
112
113
114
114
114
115
115
115
116
118
118
120
121
122
124
124
124
124
124
124
124
123
123
123
123
123
123
123
122
122
122
122
122
121
121
121
121
121
121
120
120
120
120
120
120
118
117
116
116
115
115
113
113
112
112
111
111
110
110
109
109
108
107
107
105
104
103
102
98
96
96
96
95
94
94
94
94
93
92
92
92
91
90
90
90
89
89
89
89
88
88
88
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
87
88
88
88
88
88
88
89
89
89
89
89
89
89
89
89
89
89
90
90
90
90
90
90
91
91
91
91
91
91
89
89
88
88
88
88
88
87
87
87
87
87
87
87
86
86
86
86
86
86
86
86
86
86
86
86
86
83
83
82
81
81
80
80
79
78
78
76
75
75
75
74
73
72
72
71
71
71
70
70
70
69
67
66
66
65
62
61
61
60
60
59
59
59
58
58
58
57
57
57
57
56
56
56
56
55
55
55
54
53
51
50
50
50
50
49
48
47
46
45
42
41
41
40