5
3645
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
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
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
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
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
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
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
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
15
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
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
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
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
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
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
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
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
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
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
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
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
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
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
21
22
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
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
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
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
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
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
33
33
33
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
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
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
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
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
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
46
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
47
47
47
47
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
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
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
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
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
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
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
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
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
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
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
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
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
51
51
51
51
51
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
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
48
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
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
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
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
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
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
46
46
46
46
46
46
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
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
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
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
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
48
48
48
48
48
48
48
48
48
48
48
48
48
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
47
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
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
45
44
44
44
44
44
44
44
44
44
44
44
44
44
44
44
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
43
42
42
42
42
42
42
42
42
42
42
42
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
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
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
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
34
34
34
34
34
34
34
34
34
34
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
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
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
31
30
30
30
30
30
30
30
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
29
29
29
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
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
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
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
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
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
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
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
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
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
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
32
32
32
32
32
32
32
33
33
33
33
33
33
33
33
33
33
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
34
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
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
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
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
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
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
34
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
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
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
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
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
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
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
49
49
49
49
49
49
49
49
49
49
49
50
50
50
50
50
50
50
50
50
50
50
50
50
51
51
51
51
51
51
51
51
51
51
51
52
52
52
52
52
52
52
52
52
52
52
52
53
53
53
53
53
53
53
53
53
53
53
53
53
53
54
54
54
54
54
54
54
54
54
54
54
54
54
55
55
55
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
56
56
57
57
57
57
57
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
58
58
58
58
58
58
58
58
58
58
58
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
59
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
60
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
61
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
62
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
63
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
62
62
62
62
62
62
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
61
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
60
60
60
60
59
59
59
59
59
59
59
59
59
59
59
59
59
59
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
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
58
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
56
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
55
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
54
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
53
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
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
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
45
45
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
43
43
42
42
42
42
42
42
42
42
42
42
41
41
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
38
38
38
38
38
38
38
38
38
38
37
37
37
37
37
37
37
37
37
37
36
36
36
36
36
36
36
36
36
36
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
32
31
31
31
31
31
31
31
31
31
31
30
30
30
30
30
30
30
30
30
30
29
29
29
29
29
29
29
29
29
29
29
29
28
28
28
28
28
28
28
28
28
28
28
28
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
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
23
23
23
23
23
23
23
23
23
23
23
22
22
22
22
22
22
22
22
22
22
22
21
21
21
21
21
21
21
21
21
21
21
21
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
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
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
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
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
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
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
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
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
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
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
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
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
19
19
19
19
19
19
19
19
19
19
19
19
19
19
19
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
21
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
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
25
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
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
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
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
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
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
34
34
34
34
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
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
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
40
40
40
40
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
41
41
41
41
41
41
41
41
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
42
41
41
41
41
41
41
40
40
40
40
40
39
39
39
39
38
38
38
38
37
37
37
36
36
36
36
35
35
35
34
34
34
34
33
33
33
32
32
32
32
31
31
31
30
30
30
30
29
29
29
28
28
28
28
28
28
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
27
28
28
28
28
28
29
29
29
30
30
31
31
32
32
33
33
34
34
35
36
36
37
37
38
38
39
39
40
41
41
42
42
43
44
44
45
46
47
48
49
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
88
89
90
91
92
93
95
96
97
98
100
101
102
103
105
106
107
108
110
111
112
113
114
116
117
118
119
121
122
123
124
126
127
129
130
131
133
134
136
137
139
140
142
143
144
145
147
148
149
150
151
152
153
153
154
155
155
156
157
157
158
159
160
160
161
162
163
164
165
166
167
168
169
169
170
171
172
173
173
174
174
175
175
175
175
175
176
176
176
176
176
176
176
176
177
177
177
177
177
177
177
178
178
178
179
179
180
180
180
181
181
181
181
181
182
182
182
182
182
182
182
182
182
182
182
182
182
182
183
183
183
183
183
183
183
183
184
184
185
185
186
187
187
188
189
189
190
191
191
192
192
193
193
193
193
193
193
194
194
194
194
194
195
195
195
195
196
197
197
198
199
200
201
202
203
204
205
206
207
208
209
209
210
211
211
211
212
212
212
212
212
213
213
213
213
213
213
213
213
213
214
214
214
215
216
216
217
217
218
218
219
219
219
220
220
220
220
220
220
220
220
220
220
220
220
220
221
221
222
222
223
223
224
225
225
226
227
228
228
229
230
231
232
233
234
234
235
236
237
238
239
239
240
240
241
242
243
243
244
245
246
247
248
249
250
251
252
253
255
256
258
259
261
263
265
267
269
271
273
275
277
279
280
282
283
285
286
288
289
290
291
292
293
294
294
295
295
296
296
297
297
298
298
299
300
302
303
304
305
307
308
309
311
312
313
314
314
315
316
316
316
317
317
317
317
318
317
317
317
317
316
316
316
315
315
315
315
315
315
315
314
314
314
313
313
313
312
312
311
311
310
309
309
308
307
306
305
305
304
303
303
303
302
302
301
301
300
299
298
297
296
294
293
291
289
288
286
285
283
282
281
280
279
279
278
278
277
277
277
276
276
276
276
276
275
275
275
275
274
274
273
272
271
270
269
267
266
264
262
260
258
256
254
252
250
249
247
246
245
244
243
242
241
240
238
237
235
233
231
229
227
225
222
220
217
215
213
211
209
207
206
205
204
203
202
201
200
199
198
197
196
194
193
192
190
189
188
186
185
184
183
182
181
180
179
178
177
177
176
176
176
176
177
177
177
178
178
178
178
178
178
178
178
178
177
177
177
177
177
177
176
177
177
177
178
178
179
180
181
182
184
185
187
189
191
193
195
197
199
201
202
204
206
208
210
212
214
216
217
219
220
221
223
224
225
226
228
229
230
231
232
233
234
234
235
236
237
238
239
240
241
242
243
244
244
245
245
246
246
246
246
247
247
247
247
247
247
247
247
247
247
246
246
245
244
242
241
239
236
234
231
227
224
220
217
213
209
204
200
196
192
189
185
182
178
175
172
169
166
163
160
157
154
151
149
146
143
140
137
135
132
130
127
125
123
120
117
115
112
109
106
103
100
98
95
93
90
88
86
83
81
79
78
76
74
73
71
70
69
68
67
67
66
66
65
65
65
65
64
64
64
64
64
63
63
63
63
62
62
61
61
60
59
58
57
57
56
54
53
52
51
50
50
49
48
47
46
46
45
44
43
42
42
41
40
40
39
39
39
39
40
40
40
40
41
41
41
41
42
42
42
43
43
43
44
44
45
45
46
46
47
48
48
49
49
50
50
51
51
51
51
51
51
50
50
49
48
47
46
45
44
43
42
41
39
38
37
35
33
31
29
28
26
24
22
21
19
18
16
15
14
13
12
12
12
12
12
12
12
13
13
13
14
15
16
17
18
19
20
21
23
24
25
26
27
27
28
28
28
27
27
26
25
23
22
21
19
18
17
15
14
13
13
12
11
10
9
8
7
6
5
4
3
2
1
1
1
1
2
2
4
5
7
9
12
14
17
20
23
27
30
34
37
41
45
48
52
55
59
62
65
68
70
73
75
77
80
81
83
85
86
87
88
88
88
88
89
89
89
89
89
89
89
89
90
91
92
93
94
96
98
100
102
104
106
108
110
112
114
115
117
118
120
121
122
124
125
126
127
128
129
130
130
131
130
130
129
128
127
125
123
121
118
116
112
109
105
102
98
93
89
84
79
74
69
64
59
54
49
45
41
38
35
32
30
27
25
23
21
20
18
16
14
11
9
6
3
0
-4
-7
-11
-15
-18
-22
-26
-30
-34
-38
-42
-45
-49
-53
-57
-61
-65
-70
-74
-78
-82
-86
-90
-94
-97
-101
-104
-106
-109
-111
-113
-114
-116
-116
-117
-117
-118
-118
-117
-117
-116
-115
-114
-112
-111
-110
-109
-108
-107
-106
-105
-104
-103
-102
-100
-99
-97
-96
-94
-92
-90
-87
-85
-82
-80
-77
-74
-71
-68
-65
-61
-57
-53
-49
-44
-39
-33
-28
-22
-16
-10
-3
3
10
16
22
29
35
41
47
53
59
64
70
76
81
87
92
96
100
104
108
111
114
117
120
122
125
127
129
132
134
137
140
142
145
148
150
153
155
158
160
162
164
166
167
169
171
172
173
174
175
176
176
176
176
175
174
174
172
171
170
168
167
165
162
160
157
154
150
146
142
138
133
128
123
118
113
108
103
99
94
89
85
81
77
73
69
65
61
57
53
49
45
41
38
35
31
28
25
23
20
17
15
12
10
8
5
3
1
-2
-4
-6
-8
-11
-13
-15
-18
-20
-23
-26
-29
-32
-35
-38
-42
-46
-50
-55
-59
-64
-68
-73
-77
-82
-86
-90
-95
-99
-103
-107
-112
-115
-119
-123
-126
-129
-132
-134
-136
-137
-138
-139
-140
-140
-140
-140
-140
-140
-139
-139
-138
-137
-136
-135
-133
-131
-130
-128
-126
-125
-123
-120
-118
-116
-114
-112
-109
-107
-105
-103
-101
-99
-97
-95
-94
-92
-91
-90
-89
-88
-88
-88
-88
-88
-89
-90
-91
-92
-94
-95
-97
-99
-101
-104
-106
-108
-111
-113
-115
-116
-118
-118
-119
-119
-119
-118
-117
-115
-112
-109
-106
-102
-97
-91
-86
-79
-73
-66
-59
-52
-45
-38
-31
-24
-17
-10
-4
2
8
13
18
23
27
31
35
38
42
44
46
48
49
50
50
50
49
48
47
45
43
41
39
37
35
33
31
30
29
28
27
27
27
27
27
28
29
30
32
34
37
39
42
45
48
51
53
56
58
61
64
66
69
71
74
77
80
82
85
88
90
92
94
96
98
99
100
101
102
103
103
103
102
101
101
99
98
97
95
93
91
89
87
85
83
80
78
76
74
71
69
67
64
61
58
55
52
49
45
41
37
33
29
25
20
16
12
8
4
0
-3
-6
-8
-10
-12
-14
-15
-16
-17
-17
-17
-17
-16
-15
-14
-14
-13
-12
-11
-11
-10
-10
-10
-10
-10
-10
-11
-11
-12
-12
-13
-14
-15
-17
-18
-20
-22
-25
-27
-30
-32
-35
-38
-41
-45
-48
-52
-55
-59
-63
-67
-71
-75
-78
-82
-86
-90
-94
-97
-101
-104
-107
-110
-112
-113
-115
-115
-116
-115
-115
-114
-112
-111
-109
-106
-104
-102
-99
-97
-94
-92
-90
-87
-86
-84
-83
-82
-81
-80
-80
-79
-79
-80
-80
-80
-81
-81
-81
-81
-81
-81
-81
-81
-80
-80
-79
-79
-78
-78
-77
-77
-77
-76
-76
-76
-76
-75
-75
-75
-75
-74
-74
-73
-72
-71
-70
-69
-68
-66
-65
-63
-61
-60
-58
-56
-54
-52
-50
-48
-47
-45
-43
-41
-38
-36
-34
-32
-29
-27
-25
-24
-22
-21
-20
-19
-19
-19
-19
-20
-21
-23
-25
-27
-29
-31
-34
-37
-40
-43
-47
-50
-54
-58
-62
-65
-69
-73
-76
-80
-84
-87
-91
-95
-99
-103
-107
-112
-116
-120
-124
-128
-132
-136
-139
-141
-143
-145
-146
-147
-147
-147
-146
-146
-145
-144
-143
-142
-140
-139
-136
-134
-131
-128
-125
-122
-118
-114
-110
-107
-103
-100
-97
-93
-91
-88
-85
-83
-81
-78
-76
-74
-71
-69
-67
-66
-64
-63
-63
-62
-62
-62
-62
-63
-63
-64
-65
-65
-66
-66
-67
-67
-68
-68
-69
-69
-70
-71
-71
-72
-73
-74
-75
-76
-77
-78
-79
-79
-80
-81
-81
-82
-82
-83
-83
-83
-84
-84
-84
-84
-84
-84
-85
-85
-86
-87
-88
-89
-91
-92
-94
-95
-97
-100
-102
-105
-108
-111
-114
-117
-120
-124
-128
-132
-136
-141
-146
-151
-156
-162
-168
-174
-181
-187
-194
-201
-208
-215
-222
-228
-234
-240
-245
-250
-255
-260
-265
-270
-274
-279
-283
-288
-292
-296
-300
-304
-308
-311
-315
-318
-321
-324
-326
-329
-332
-335
-338
-341
-345
-348
-351
-353
-356
-359
-361
-363
-365
-366
-368
-369
-369
-370
-370
-370
-370
-369
-368
-367
-365
-362
-359
-356
-353
-349
-344
-340
-335
-330
-325
-320
-315
-310
-304
-299
-294
-288
-283
-278
-272
-267
-262
-256
-251
-245
-240
-235
-229
-224
-219
-214
-209
-203
-198
-193
-187
-182
-176
-170
-164
-158
-153
-147
-141
-135
-129
-123
-117
-111
-105
-99
-93
-86
-80
-73
-66
-60
-53
-47
-41
-35
-29
-23
-17
-12
-7
-1
4
8
13
18
22
25
29
32
35
37
38
39
40
40
40
39
38
36
34
32
29
26
22
19
15
10
5
0
-5
-10
-15
-20
-25
-30
-35
-40
-44
-49
-53
-57
-62
-66
-70
-75
-79
-84
-88
-94
-99
-105
-111
-117
-123
-130
-137
-143
-150
-156
-162
-167
-172
-177
-181
-184
-187
-189
-191
-192
-193
-194
-194
-194
-195
-195
-195
-195
-196
-196
-195
-195
-194
-194
-192
-191
-190
-188
-186
-184
-182
-180
-177
-175
-172
-170
-167
-165
-162
-159
-156
-154
-151
-149
-146
-144
-142
-140
-138
-137
-135
-133
-132
-131
-129
-128
-126
-125
-123
-121
-119
-116
-113
-109
-104
-99
-94
-87
-81
-73
-66
-58
-50
-42
-34
-26
-18
-10
-3
5
13
21
29
38
46
54
63
71
79
88
96
104
111
118
125
132
138
144
150
155
161
166
170
174
178
182
185
188
190
193
195
197
199
201
203
204
206
208
209
211
213
214
216
218
220
222
224
227
230
233
236
239
243
246
250
254
258
262
265
268
270
272
274
275
276
276
276
275
275
274
273
272
271
270
269
268
267
266
265
263
262
260
259
257
255
253
251
248
246
244
242
239
237
235
232
230
227
225
222
219
216
213
210
207
203
200
196
192
188
184
180
177
173
170
166
163
160
157
155
152
149
147
144
142
139
137
135
134
132
131
131
131
131
132
133
135
137
140
143
146
149
153
157
161
166
171
177
182
189
196
203
210
219
227
236
245
254
263
273
283
292
301
310
318
327
334
342
349
356
362
368
374
379
385
390
395
401
406
411
417
422
427
433
438
443
448
453
458
462
467
471
475
479
482
485
488
491
493
495
497
499
500
502
503
504
505
505
506
506
505
505
503
502
500
498
496
493
491
488
484
481
477
472
468
463
458
453
449
444
439
434
429
424
419
414
409
404
399
394
390
385
380
375
371
366
361
355
350
344
338
331
324
317
310
302
295
287
279
271
264
256
249
241
234
227
219
212
205
199
192
186
180
174
168
163
157
152
147
142
137
132
128
123
118
114
109
105
101
97
93
90
88
85
83
82
81
80
80
80
81
83
84
87
90
94
98
103
108
114
120
127
134
141
149
156
164
172
180
189
197
206
215
224
233
242
250
260
269
278
287
296
306
315
325
335
345
355
364
374
384
394
404
413
423
432
440
448
456
463
470
476
482
487
491
495
499
502
504
507
508
509
510
510
509
508
506
504
501
498
495
491
487
483
479
474
470
465
460
455
450
445
439
434
428
422
416
410
403
396
390
383
377
370
364
358
353
348
343
339
335
332
329
327
326
325
324
324
325
326
327
329
331
334
336
340
343
347
351
355
358
362
366
370
374
378
381
385
388
392
396
400
404
408
412
417
422
426
431
435
439
443
446
449
451
453
454
455
456
456
456
455
455
454
453
451
449
447
445
442
439
435
432
428
424
420
416
413
410
407
405
404
402
402
402
402
403
404
406
408
411
414
418
422
426
431
436
442
447
453
459
465
472
478
485
492
498
505
511
518
524
530
535
540
544
548
550
553
554
555
555
555
554
553
552
551
549
547
544
542
540
537
535
532
529
526
524
521
518
515
513
510
507
505
502
500
497
494
492
489
486
483
480
477
473
470
466
462
457
453
448
443
438
433
428
422
416
410
403
396
388
380
372
363
353
343
333
323
312
302
291
281
270
259
248
237
226
215
204
193
182
172
161
151
142
133
124
117
109
103
97
92
87
83
80
77
74
72
70
69
67
66
65
64
63
62
61
60
59
58
57
56
55
54
52
51
49
47
45
43
41
39
36
34
31
28
26
23
20
17
15
12
10
8
7
6
6
6
8
10
12
16
20
25
31
38
45
52
60
68
77
85
94
103
112
121
130
140
149
158
167
176
185
193
201
209
217
224
231
237
243
248
252
256
259
262
264
266
268
269
270
271
272
273
273
274
275
276
277
278
279
280
280
281
281
281
281
280
278
276
273
269
265
259
253
247
240
232
223
215
206
196
186
176
166
155
144
133
122
111
99
88
76
65
53
42
31
20
10
0
-10
-19
-28
-36
-43
-51
-57
-63
-69
-73
-78
-82
-85
-88
-91
-93
-95
-96
-97
-97
-97
-97
-96
-94
-93
-91
-88
-86
-83
-80
-77
-73
-70
-66
-63
-59
-56
-52
-49
-45
-42
-39
-37
-34
-32
-31
-30
-29
-29
-29
-30
-31
-32
-33
-35
-37
-39
-41
-43
-46
-50
-53
-58
-62
-68
-74
-80
-88
-96
-104
-113
-122
-132
-142
-152
-163
-174
-185
-197
-210
-223
-237
-251
-267
-283
-300
-317
-336
-354
-373
-393
-413
-433
-453
-473
-494
-515
-536
-557
-578
-600
-621
-642
-663
-685
-706
-727
-747
-768
-788
-807
-826
-844
-862
-880
-896
-912
-928
-942
-956
-969
-982
-993
-1004
-1014
-1022
-1030
-1037
-1043
-1048
-1052
-1055
-1058
-1060
-1061
-1061
-1060
-1059
-1056
-1052
-1046
-1039
-1031
-1022
-1010
-998
-985
-970
-955
-938
-920
-902
-882
-862
-842
-820
-798
-775
-750
-725
-699
-672
-644
-615
-584
-553
-520
-487
-452
-417
-380
-343
-305
-267
-227
-187
-147
-106
-64
-22
21
63
106
150
193
236
279
321
363
405
446
486
526
564
602
640
676
711
745
777
809
839
869
897
923
948
972
994
1014
1033
1050
1066
1080
1092
1102
1111
1118
1124
1128
1130
1131
1131
1129
1125
1120
1114
1107
1099
1089
1079
1068
1056
1043
1029
1014
999
982
965
946
926
906
884
862
839
816
792
767
743
719
695
672
649
627
605
585
565
547
529
512
496
480
465
450
436
422
408
394
381
368
355
342
330
318
306
295
284
273
262
251
240
229
218
207
196
184
173
161
149
136
123
110
96
82
67
52
37
20
3
-14
-32
-50
-69
-87
-106
-124
-143
-161
-180
-199
-218
-237
-257
-278
-299
-320
-342
-364
-386
-408
-430
-452
-474
-495
-516
-537
-557
-576
-596
-615
-634
-653
-672
-691
-711
-731
-752
-772
-793
-814
-835
-855
-875
-894
-912
-930
-946
-961
-974
-986
-996
-1004
-1010
-1014
-1016
-1016
-1014
-1008
-1002
-994
-984
-973
-960
-945
-930
-913
-895
-877
-857
-836
-815
-792
-768
-743
-716
-689
-661
-631
-601
-569
-537
-505
-472
-439
-405
-373
-340
-308
-277
-247
-218
-190
-164
-139
-116
-94
-74
-55
-39
-24
-10
2
12
20
27
33
37
39
39
38
35
30
24
15
4
-8
-22
-38
-55
-74
-94
-115
-137
-159
-182
-205
-228
-251
-273
-296
-317
-338
-359
-379
-399
-418
-436
-454
-472
-489
-505
-521
-536
-551
-564
-576
-586
-595
-601
-606
-608
-609
-607
-603
-597
-590
-581
-570
-558
-545
-532
-517
-502
-485
-468
-450
-431
-410
-389
-366
-342
-317
-290
-262
-233
-202
-170
-136
-102
-67
-30
7
44
82
120
157
194
230
266
301
335
367
399
429
459
486
513
538
561
583
603
621
637
652
665
677
687
696
704
712
719
725
730
735
740
744
747
750
753
755
758
760
763
765
768
771
775
779
785
791
799
807
817
829
842
856
873
891
911
932
956
981
1008
1037
1067
1099
1132
1166
1201
1236
1272
1308
1344
1380
1415
1449
1483
1517
1550
1582
1615
1647
1679
1711
1744
1777
1809
1842
1876
1909
1942
1975
2008
2040
2072
2104
2134
2164
2192
2219
2245
2269
2291
2312
2332
2349
2365
2379
2391
2401
2409
2416
2420
2423
2423
2422
2419
2415
2408
2399
2388
2375
2359
2341
2321
2298
2272
2244
2215
2183
2149
2113
2076
2037
1998
1957
1915
1871
1826
1779
1730
1679
1627
1572
1516
1458
1398
1337
1276
1213
1150
1087
1025
963
902
842
784
726
671
617
565
514
465
418
373
329
286
245
205
167
130
95
61
29
-1
-29
-55
-79
-101
-122
-140
-156
-170
-182
-192
-201
-208
-214
-218
-221
-224
-225
-226
-226
-225
-223
-221
-217
-212
-206
-198
-189
-177
-165
-150
-134
-117
-98
-79
-58
-37
-15
7
30
52
74
96
118
140
161
182
203
224
245
266
287
307
327
348
368
388
407
427
447
467
488
509
531
554
577
602
628
655
683
712
742
773
804
835
866
897
927
957
987
1016
1045
1074
1102
1131
1159
1186
1214
1241
1269
1296
1324
1351
1378
1406
1433
1460
1488
1516
1544
1572
1600
1629
1658
1687
1716
1745
1773
1802
1830
1857
1884
1911
1936
1962
1987
2011
2035
2058
2081
2103
2124
2143
2161
2178
2193
2206
2218
2227
2233
2238
2240
2239
2235
2229
2219
2207
2192
2174
2153
2129
2103
2075
2044
2011
1976
1939
1901
1861
1819
1775
1730
1684
1636
1586
1535
1482
1428
1372
1315
1257
1198
1139
1079
1018
957
897
836
776
716
657
598
540
483
426
369
313
257
202
148
94
40
-12
-64
-115
-165
-214
-261
-307
-351
-394
-434
-472
-508
-543
-574
-604
-632
-657
-680
-701
-719
-736
-750
-762
-772
-779
-784
-787
-788
-786
-783
-778
-770
-761
-751
-739
-725
-710
-694
-677
-659
-639
-619
-598
-576
-553
-529
-504
-477
-450
-421
-391
-359
-325
-290
-253
-214
-175
-134
-92
-49
-6
38
82
127
172
217
263
309
356
402
450
497
544
592
639
685
731
776
820
863
905
946
986
1025
1063
1100
1136
1172
1207
1242
1276
1309
1341
1373
1403
1432
1460
1486
1511
1533
1553
1571
1587
1600
1611
1620
1627
1631
1634
1635
1633
1630
1625
1619
1610
1600
1588
1575
1559
1542
1523
1501
1478
1453
1426
1396
1365
1332
1298
1262
1224
1185
1145
1104
1062
1020
976
932
887
842
796
749
703
655
608
560
512
464
416
367
319
270
222
174
126
80
34
-11
-54
-96
-136
-174
-211
-246
-281
-315
-349
-383
-417
-452
-488
-526
-564
-604
-645
-687
-730
-774
-819
-864
-908
-953
-997
-1041
-1084
-1126
-1168
-1210
-1251
-1292
-1334
-1376
-1418
-1461
-1505
-1549
-1594
-1638
-1683
-1727
-1770
-1813
-1854
-1895
-1934
-1972
-2009
-2044
-2078
-2110
-2140
-2169
-2196
-2222
-2246
-2268
-2289
-2307
-2324
-2339
-2352
-2364
-2375
-2384
-2392
-2398
-2403
-2406
-2408
-2408
-2405
-2401
-2394
-2385
-2372
-2356
-2337
-2314
-2288
-2258
-2223
-2185
-2142
-2096
-2045
-1992
-1934
-1874
-1810
-1744
-1675
-1603
-1529
-1452
-1372
-1290
-1207
-1121
-1033
-944
-855
-765
-674
-584
-495
-407
-321
-237
-154
-74
3
79
151
222
290
355
418
479
538
594
649
701
751
799
845
890
933
974
1014
1052
1089
1123
1156
1187
1216
1243
1268
1291
1311
1330
1347
1361
1374
1386
1396
1404
1411
1417
1421
1424
1426
1425
1423
1420
1414
1407
1398
1387
1375
1361
1347
1332
1316
1299
1282
1265
1247
1229
1209
1189
1168
1145
1121
1094
1066
1035
1002
968
930
890
848
803
756
707
656
602
546
487
426
363
297
229
160
89
16
-57
-131
-205
-278
-351
-423
-494
-563
-631
-698
-763
-827
-889
-951
-1012
-1071
-1131
-1189
-1248
-1306
-1363
-1419
-1475
-1530
-1584
-1636
-1687
-1736
-1783
-1828
-1870
-1911
-1948
-1983
-2016
-2045
-2074
-2100
-2124
-2146
-2165
-2183
-2199
-2213
-2225
-2235
-2243
-2249
-2253
-2256
-2257
-2255
-2252
-2247
-2239
-2229
-2218
-2204
-2188
-2170
-2150
-2128
-2105
-2080
-2055
-2029
-2001
-1975
-1948
-1922
-1896
-1871
-1847
-1823
-1799
-1776
-1754
-1732
-1710
-1689
-1667
-1646
-1625
-1603
-1582
-1560
-1538
-1516
-1494
-1471
-1448
-1425
-1401
-1378
-1353
-1328
-1303
-1277
-1249
-1221
-1192
-1162
-1131
-1098
-1065
-1030
-995
-958
-920
-881
-842
-802
-762
-721
-681
-642
-603
-565
-529
-493
-459
-427
-395
-366
-337
-311
-285
-261
-238
-217
-197
-178
-161
-144
-130
-117
-105
-95
-85
-78
-71
-65
-60
-55
-51
-48
-44
-40
-37
-33
-29
-25
-20
-16
-11
-6
0
5
11
17
22
28
34
40
45
50
55
59
63
66
69
71
72
72
71
70
67
64
59
54
48
42
35
28
20
12
5
-3
-10
-16
-22
-27
-30
-32
-32
-31
-28
-22
-15
-6
5
18
32
48
65
82
100
118
135
153
170
187
203
218
233
248
262
275
289
302
315
328
341
354
367
380
393
406
418
431
443
455
466
476
486
494
502
508
513
518
521
523
524
525
525
524
523
522
520
518
515
512
508
503
498
492
484
476
466
455
442
427
411
393
373
351
328
303
277
249
221
192
162
132
101
71
41
11
-18
-46
-73
-99
-124
-148
-171
-193
-214
-234
-254
-272
-290
-307
-324
-341
-358
-374
-391
-407
-423
-439
-454
-468
-481
-494
-505
-515
-524
-531
-538
-543
-546
-549
-551
-552
-552
-552
-550
-549
-546
-543
-539
-535
-529
-523
-515
-506
-496
-485
-473
-459
-444
-427
-409
-389
-368
-345
-322
-296
-270
-243
-214
-185
-155
-125
-95
-64
-33
-2
28
57
86
114
140
166
189
211
232
250
266
280
291
301
308
313
316
318
318
317
315
312
309
306
303
300
298
296
294
293
293
293
293
294
295
297
299
302
304
307
310
314
317
320
323
326
329
331
332
333
333
331
329
326
322
316
310
302
293
283
272
260
247
233
218
202
186
168
150
131
112
93
72
51
30
8
-14
-36
-58
-80
-102
-124
-145
-166
-186
-205
-224
-243
-261
-278
-296
-312
-329
-345
-362
-378
-395
-411
-428
-445
-462
-480
-498
-515
-533
-551
-568
-585
-603
-620
-637
-654
-671
-689
-707
-725
-745
-764
-785
-805
-827
-848
-870
-893
-915
-937
-959
-981
-1002
-1025
-1047
-1068
-1090
-1112
-1135
-1158
-1181
-1205
-1229
-1253
-1277
-1300
-1324
-1347
-1369
-1390
-1411
-1430
-1448
-1465
-1481
-1495
-1507
-1518
-1526
-1533
-1537
-1539
-1539
-1536
-1531
-1523
-1513
-1500
-1485
-1467
-1447
-1424
-1399
-1371
-1341
-1309
-1274
-1237
-1199
-1159
-1118
-1076
-1032
-988
-943
-898
-852
-805
-758
-711
-663
-615
-567
-519
-471
-422
-374
-326
-278
-230
-183
-136
-89
-44
1
45
88
130
170
210
249
286
322
357
391
424
455
485
514
542
568
592
616
638
658
678
696
714
730
746
760
774
786
798
809
818
827
834
841
846
849
851
852
851
848
845
839
832
824
814
802
789
774
758
740
721
699
676
651
624
596
565
532
498
462
424
385
344
303
260
215
170
124
77
30
-19
-68
-118
-169
-220
-272
-325
-378
-431
-485
-539
-593
-647
-701
-755
-808
-861
-914
-966
-1016
-1066
-1115
-1162
-1208
-1253
-1295
-1336
-1375
-1412
-1447
-1480
-1511
-1540
-1566
-1591
-1614
-1634
-1652
-1669
-1683
-1695
-1705
-1713
-1719
-1723
-1724
-1723
-1720
-1715
-1707
-1696
-1683
-1668
-1651
-1631
-1608
-1583
-1557
-1528
-1497
-1464
-1429
-1393
-1355
-1316
-1276
-1234
-1191
-1147
-1101
-1054
-1006
-957
-907
-856
-804
-751
-697
-642
-586
-530
-473
-416
-359
-302
-245
-189
-133
-78
-23
30
82
133
183
232
280
326
372
416
460
502
544
585
625
664
702
739
775
810
843
875
906
936
963
989
1014
1037
1058
1078
1096
1113
1128
1142
1154
1166
1176
1186
1195
1203
1211
1218
1226
1233
1239
1246
1253
1259
1265
1272
1278
1284
1291
1297
1304
1311
1317
1324
1332
1339
1346
1354
1361
1369
1376
1384
1391
1397
1404
1409
1414
1417
1420
1421
1420
1418
1414
1407
1399
1388
1374
1358
1340
1318
1294
1266
1236
1203
1166
1127
1085
1040
992
941
888
832
774
713
651
586
520
452
383
313
242
171
100
29
-42
-113
-183
-251
-319
-386
-451
-514
-576
-637
-695
-752
-807
-860
-912
-961
-1008
-1055
-1099
-1141
-1181
-1219
-1255
-1290
-1322
-1353
-1381
-1407
-1431
-1453
-1473
-1490
-1505
-1518
-1529
-1539
-1546
-1552
-1556
-1559
-1560
-1559
-1557
-1554
-1549
-1543
-1535
-1526
-1515
-1503
-1489
-1473
-1456
-1438
-1418
-1396
-1373
-1349
-1323
-1297
-1270
-1242
-1214
-1185
-1156
-1126
-1097
-1067
-1037
-1008
-978
-948
-918
-889
-859
-829
-799
-770
-740
-710
-681
-652
-623
-594
-566
-538
-510
-483
-457
-431
-405
-380
-355
-331
-307
-283
-260
-238
-215
-194
-172
-152
-132
-113
-94
-77
-61
-45
-32
-19
-9
1
8
14
18
20
21
20
17
13
7
0
-8
-19
-30
-43
-57
-73
-90
-108
-128
-148
-169
-190
-212
-234
-257
-279
-301
-322
-343
-364
-383
-402
-419
-436
-451
-464
-477
-488
-497
-505
-510
-515
-517
-518
-516
-513
-509
-502
-494
-484
-474
-461
-448
-434
-419
-403
-386
-369
-352
-334
-316
-297
-279
-260
-241
-221
-201
-181
-161
-140
-118
-96
-74
-51
-27
-3
22
47
73
100
127
155
182
211
239
268
297
325
353
381
408
434
459
484
507
529
550
569
587
604
620
635
648
660
672
682
692
701
710
718
726
733
740
747
753
759
764
769
773
777
780
782
783
783
783
781
779
776
772
768
762
756
750
743
736
728
720
712
703
694
684
674
664
652
640
628
615
601
587
572
558
542
527
511
496
480
464
448
432
416
401
385
369
353
337
321
305
289
274
258
242
226
211
196
182
168
155
142
130
118
108
97
88
79
71
63
56
50
45
40
36
33
30
28
27
26
26
26
27
28
29
31
33
35
38
42
46
51
56
62
68
75
82
89
97
105
113
120
128
135
143
149
156
162
167
172
177
180
184
186
189
190
191
192
192
191
190
188
186
184
181
177
173
169
164
159
154
149
144
138
133
128
123
119
115
112
109
107
105
104
104
104
104
105
106
108
110
113
116
119
121
124
127
130
133
136
139
142
145
148
151
155
158
162
166
171
176
181
186
191
197
203
209
215
221
227
232
238
244
249
255
259
264
268
272
275
278
280
281
283
283
284
283
283
283
282
281
280
279
279
278
277
277
276
276
276
276
276
277
278
279
280
282
284
286
288
290
293
296
298
301
304
306
309
312
315
318
322
326
330
334
339
344
350
355
361
367
374
380
386
391
397
402
407
411
414
417
419
420
420
419
418
415
412
408
403
398
393
387
381
374
368
362
357
351
346
340
335
330
325
320
315
310
305
299
294
289
284
279
275
271
268
266
265
265
266
268
272
277
283
290
299
309
320
332
345
359
374
390
406
424
442
461
480
500
521
542
563
584
605
627
649
670
692
714
735
756
777
798
819
839
859
878
897
915
933
951
967
983
998
1012
1025
1037
1048
1058
1066
1074
1080
1085
1088
1090
1090
1089
1086
1082
1077
1070
1062
1053
1044
1033
1020
1008
995
981
966
950
934
917
900
882
864
845
826
807
787
767
747
727
707
687
667
647
628
609
590
572
553
536
518
502
485
470
455
440
426
413
401
389
378
368
358
350
342
334
328
323
318
314
311
309
307
306
306
306
307
308
310
313
315
318
322
325
329
334
338
343
348
353
359
365
371
378
386
394
403
412
423
433
445
456
469
481
494
508
521
535
549
563
577
591
604
618
631
645
658
670
683
695
707
718
730
741
752
762
773
782
792
801
810
819
827
834
841
848
854
859
864
869
873
877
881
884
888
891
894
897
900
903
906
910
913
917
921
925
930
934
939
944
950
956
962
969
977
985
993
1002
1010
1020
1031
1042
1053
1064
1076
1087
1098
1110
1121
1131
1141
1151
1159
1167
1174
1180
1185
1189
1191
1192
1192
1190
1186
1181
1174
1165
1155
1142
1128
1113
1095
1076
1055
1033
1008
982
955
925
894
862
827
792
754
716
675
634
591
547
502
456
408
360
311
262
212
161
110
59
8
-44
-95
-145
-196
-246
-296
-344
-392
-439
-485
-530
-573
-615
-655
-694
-730
-765
-799
-830
-859
-887
-912
-936
-958
-978
-997
-1012
-1028
-1042
-1054
-1064
-1073
-1080
-1086
-1090
-1093
-1094
-1093
-1091
-1087
-1082
-1075
-1067
-1058
-1047
-1036
-1022
-1010
-996
-981
-965
-949
-933
-915
-898
-879
-861
-841
-822
-801
-780
-759
-737
-714
-691
-667
-643
-618
-593
-569
-544
-519
-494
-469
-445
-421
-398
-375
-353
-331
-310
-290
-271
-253
-236
-219
-204
-190
-177
-166
-155
-146
-138
-132
-127
-124
-122
-122
-123
-126
-131
-136
-144
-152
-162
-174
-187
-201
-217
-233
-251
-271
-291
-312
-334
-357
-381
-406
-431
-458
-485
-512
-541
-570
-600
-631
-662
-694
-727
-761
-795
-830
-865
-900
-936
-971
-1006
-1042
-1077
-1112
-1147
-1181
-1214
-1247
-1280
-1311
-1342
-1373
-1402
-1430
-1458
-1484
-1509
-1534
-1557
-1579
-1599
-1619
-1637
-1654
-1670
-1685
-1699
-1712
-1724
-1735
-1746
-1756
-1765
-1773
-1780
-1787
-1792
-1797
-1800
-1802
-1803
-1802
-1800
-1797
-1792
-1785
-1776
-1766
-1754
-1740
-1725
-1707
-1688
-1666
-1642
-1616
-1588
-1558
-1526
-1491
-1454
-1414
-1373
-1329
-1283
-1235
-1185
-1133
-1079
-1022
-966
-908
-847
-786
-724
-660
-595
-530
-464
-397
-329
-261
-193
-124
-55
14
83
152
221
289
358
426
493
561
628
694
760
826
891
955
1018
1083
1146
1209
1272
1335
1397
1459
1522
1584
1645
1707
1769
1831
1892
1953
2013
2075
2135
2195
2254
2313
2371
2428
2485
2540
2595
2649
2702
2754
2805
2855
2903
2951
2997
3042
3086
3128
3170
3210
3248
3285
3321
3355
3387
3418
3447
3475
3500
3524
3546
3566
3583
3599
3613
3624
3633
3639
3644
3645
3644
3641
3635
3626
3615
3602
3585
3567
3546
3523
3497
3469
3439
3406
3371
3334
3295
3254
3211
3166
3120
3071
3020
2968
2914
2858
2801
2742
2681
2620
2556
2492
2427
2360
2293
2225
2156
2087
2017
1947
1877
1807
1737
1667
1597
1527
1458
1389
1321
1253
1185
1118
1052
986
920
856
792
728
666
604
542
482
422
363
305
248
192
136
82
29
-23
-75
-125
-173
-221
-267
-311
-354
-395
-434
-472
-507
-540
-571
-600
-626
-651
-672
-691
-708
-722
-734
-743
-749
-754
-755
-754
-751
-746
-738
-728
-716
-702
-686
-668
-648
-626
-602
-577
-550
-521
-491
-460
-428
-394
-360
-325
-289
-253
-216
-179
-141
-104
-66
-29
8
45
81
117
152
187
221
255
288
320
352
383
413
443
471
499
526
553
578
602
625
646
667
686
703
719
734
746
757
767
774
780
783
785
785
782
778
771
763
752
739
724
707
688
666
643
617
590
561
530
497
463
428
391
353
313
273
232
190
147
104
61
17
-27
-71
-115
-159
-203
-246
-289
-331
-373
-415
-455
-495
-534
-573
-610
-647
-683
-718
-753
-786
-818
-850
-880
-909
-938
-965
-991
-1016
-1041
-1065
-1087
-1109
-1130
-1149
-1169
-1187
-1204
-1221
-1236
-1251
-1265
-1278
-1289
-1300
-1310
-1319
-1326
-1333
-1338
-1342
-1344
-1346
-1346
-1344
-1341
-1337
-1331
-1323
-1314
-1303
-1291
-1277
-1261
-1243
-1224
-1204
-1181
-1157
-1132
-1105
-1076
-1046
-1014
-980
-946
-910
-873
-834
-795
-754
-712
-669
-626
-581
-535
-488
-441
-392
-342
-290
-238
-184
-129
-72
-14
45
106
168
232
296
363
430
499
569
640
712
785
859
933
1008
1085
1161
1238
1315
1392
1468
1544
1620
1695
1769
1842
1913
1984
2053
2121
2187
2251
2314
2375
2434
2492
2547
2601
2653
2702
2750
2796
2840
2881
2920
2957
2991
3023
3052
3079
3103
3124
3142
3158
3171
3181
3188
3193
3195
3194
3191
3185
3177
3167
3154
3139
3121
3101
3079
3054
3028
2999
2967
2934
2898
2860
2821
2779
2735
2688
2640
2590
2539
2485
2430
2373
2315
2255
2194
2133
2070
2007
1943
1879
1814
1749
1684
1619
1554
1489
1424
1360
1296
1233
1170
1107
1045
984
924
864
805
746
688
631
575
519
463
409
355
302
249
197
145
94
43
-6
-56
-104
-152
-199
-246
-292
-337
-381
-424
-466
-507
-547
-585
-623
-659
-693
-726
-757
-787
-814
-840
-864
-886
-906
-923
-939
-952
-963
-972
-978
-982
-984
-984
-981
-976
-968
-959
-947
-933
-917
-899
-879
-857
-834
-808
-782
-754
-724
-693
-661
-628
-593
-557
-521
-483
-444
-404
-363
-321
-279
-236
-192
-147
-102
-57
-11
35
81
127
173
220
266
313
359
405
451
497
543
588
633
677
721
764
806
847
886
925
963
1000
1036
1070
1103
1135
1166
1196
1224
1250
1275
1299
1321
1341
1360
1377
1392
1405
1416
1425
1432
1437
1439
1440
1438
1434
1428
1419
1408
1395
1381
1364
1345
1324
1301
1277
1250
1223
1193
1162
1129
1095
1060
1022
985
945
905
863
820
776
731
685
638
590
542
493
443
394
343
293
242
192
142
91
42
-7
-56
-104
-151
-197
-243
-287
-330
-373
-414
-454
-493
-531
-568
-603
-638
-672
-704
-735
-765
-794
-821
-847
-872
-895
-916
-936
-954
-971
-986
-1000
-1012
-1022
-1032
-1040
-1046
-1050
-1053
-1055
-1054
-1053
-1050
-1045
-1039
-1031
-1022
-1010
-999
-986
-971
-955
-938
-921
-902
-882
-862
-840
-818
-796
-772
-748
-724
-699
-673
-647
-620
-593
-565
-537
-508
-478
-448
-417
-386
-354
-322
-289
-257
-224
-192
-159
-127
-95
-64
-33
-2
27
56
85
113
140
166
191
216
240
263
286
308
328
348
367
385
401
417
431
444
455
466
474
481
487
491
494
495
495
493
491
486
481
474
467
458
448
437
426
413
400
386
372
357
341
325
309
293
276
259
242
224
207
190
172
155
138
121
105
89
73
58
43
28
15
2
-10
-22
-32
-42
-51
-59
-66
-73
-78
-82
-86
-88
-89
-90
-90
-88
-86
-83
-80
-75
-70
-64
-57
-50
-41
-33
-23
-13
-2
9
21
34
47
60
73
87
101
115
129
143
157
170
183
196
209
220
232
243
253
262
271
279
286
293
299
304
308
312
315
317
319
320
320
319
318
317
315
312
309
306
302
298
294
289
283
278
271
265
258
250
242
234
225
215
205
194
183
171
159
146
133
119
105
89
74
57
40
23
5
-14
-34
-54
-75
-97
-120
-143
-167
-191
-216
-242
-268
-295
-321
-348
-375
-401
-428
-454
-480
-506
-531
-555
-579
-603
-626
-648
-670
-691
-711
-730
-749
-766
-783
-798
-813
-827
-839
-850
-861
-870
-877
-884
-890
-894
-897
-899
-900
-900
-899
-897
-894
-890
-884
-878
-870
-862
-852
-842
-830
-817
-803
-789
-773
-756
-738
-720
-700
-680
-659
-637
-614
-590
-566
-541
-515
-489
-462
-435
-407
-379
-350
-321
-292
-263
-233
-204
-174
-145
-115
-86
-57
-28
0
28
56
83
110
136
161
185
208
230
252
271
290
307
323
337
350
361
371
379
385
390
393
394
394
393
390
386
380
374
366
357
347
336
325
312
299
286
271
257
242
227
211
196
181
166
151
136
122
108
95
82
70
59
48
39
30
22
15
9
3
-2
-6
-9
-12
-14
-15
-16
-16
-16
-15
-14
-12
-10
-8
-6
-4
-1
1
3
6
7
9
10
11
12
12
11
10
9
7
4
1
-2
-6
-11
-16
-21
-27
-33
-39
-45
-52
-58
-65
-72
-79
-85
-92
-99
-106
-113
-120
-127
-134
-141
-148
-155
-162
-170
-177
-184
-192
-199
-206
-214
-221
-228
-235
-243
-250
-257
-264
-271
-278
-285
-292
-300
-307
-314
-322
-330
-338
-346
-354
-363
-372
-381
-390
-400
-410
-421
-432
-443
-454
-465
-477
-489
-501
-514
-526
-539
-551
-564
-577
-590
-603
-616
-629
-642
-656
-669
-682
-695
-708
-721
-734
-747
-759
-771
-784
-796
-807
-819
-830
-841
-852
-863
-874
-884
-895
-905
-915
-924
-934
-943
-952
-960
-969
-976
-984
-990
-997
-1002
-1006
-1010
-1014
-1018
-1018
-1020
-1020
-1020
-1018
-1016
-1012
-1008
-1004
-1000
-994
-987
-980
-972
-964
-955
-945
-936
-925
-915
-904
-893
-881
-868
-856
-843
-829
-815
-800
-785
-769
-752
-735
-717
-699
-680
-660
-640
-619
-598
-576
-554
-531
-508
-484
-460
-436
-412
-387
-363
-338
-313
-289
-264
-240
-216
-193
-170
-147
-126
-104
-84
-64
-44
-26
-8
9
26
41
57
71
85
97
110
121
132
142
152
161
169
177
184
191
198
204
210
216
222
228
234
239
245
250
255
260
265
269
274
279
283
288
292
297
301
306
311
316
320
325
330
336
341
346
351
357
362
367
372
377
382
387
391
395
399
403
407
410
414
417
419
422
424
426
427
429
430
430
430
430
429
428
426
424
421
418
414
410
405
400
394
387
380
373
364
356
346
336
326
315
303
291
278
265
251
237
222
207
191
176
159
143
126
109
92
75
57
39
21
3
-15
-33
-52
-71
-89
-108
-127
-146
-165
-184
-202
-221
-240
-259
-277
-296
-315
-333
-352
-370
-388
-407
-425
-443
-460
-478
-495
-512
-529
-545
-561
-577
-592
-606
-621
-634
-647
-659
-671
-682
-692
-702
-711
-719
-727
-734
-740
-746
-751
-755
-759
-762
-765
-767
-768
-769
-770
-769
-768
-766
-764
-760
-756
-751
-745
-738
-730
-720
-710
-699
-687
-673
-659
-643
-627
-609
-591
-571
-551
-530
-509
-487
-464
-441
-418
-395
-371
-348
-324
-300
-277
-253
-230
-206
-183
-160
-137
-114
-92
-69
-48
-26
-5
15
35
55
74
92
110
128
145
161
177
192
207
221
235
248
260
272
283
293
302
310
318
324
330
335
339
341
343
344
344
343
341
337
333
328
322
315
307
299
289
279
267
255
242
229
215
200
185
170
154
138
121
105
88
70
53
36
18
0
-17
-35
-53
-71
-89
-106
-124
-141
-159
-176
-192
-209
-226
-242
-258
-273
-289
-304
-319
-334
-349
-363
-377
-391
-405
-418
-432
-445
-458
-471
-483
-495
-507
-519
-530
-541
-551
-561
-571
-580
-588
-596
-603
-610
-616
-622
-627
-632
-636
-640
-644
-647
-650
-653
-656
-658
-660
-662
-664
-666
-668
-669
-670
-672
-672
-673
-674
-674
-674
-674
-673
-673
-671
-670
-668
-666
-663
-660
-656
-652
-648
-644
-639
-634
-629
-623
-618
-612
-607
-601
-595
-590
-584
-578
-573
-567
-562
-556
-551
-545
-540
-534
-528
-523
-517
-512
-506
-501
-496
-491
-487
-483
-479
-475
-472
-469
-466
-464
-461
-459
-456
-453
-451
-448
-445
-442
-438
-434
-430
-426
-421
-417
-411
-406
-401
-395
-389
-383
-376
-369
-362
-355
-347
-339
-331
-323
-314
-306
-297
-288
-280
-271
-263
-255
-247
-239
-232
-225
-218
-211
-205
-198
-193
-187
-181
-176
-170
-165
-160
-156
-151
-146
-142
-137
-133
-128
-124
-120
-115
-111
-107
-102
-98
-93
-88
-84
-79
-74
-69
-64
-59
-54
-49
-44
-40
-35
-31
-26
-22
-18
-13
-9
-5
-1
3
7
11
15
19
24
28
32
36
40
45
50
54
60
65
71
77
84
90
98
105
113
121
129
137
146
155
163
173
182
191
200
210
220
230
240
250
260
270
281
291
302
312
323
334
344
355
365
376
386
396
406
416
426
436
445
454
464
473
482
491
499
508
517
525
534
542
550
559
567
575
583
591
599
607
615
622
630
638
646
653
661
668
676
683
691
698
705
712
719
725
731
738
743
749
755
760
765
769
773
777
780
783
786
787
789
789
789
789
788
786
783
781
777
773
768
763
758
751
745
738
730
722
714
705
696
686
676
666
655
645
634
622
611
599
587
575
563
551
538
526
514
502
489
477
465
453
442
430
418
407
396
384
373
362
352
341
330
320
310
300
291
282
273
265
257
249
242
236
229
223
217
212
207
202
197
192
188
184
179
175
172
168
164
161
158
155
152
149
147
145
142
140
138
137
135
134
132
131
130
129
128
128
127
127
127
127
128
128
129
130
131
133
134
136
138
140
142
144
146
149
151
153
156
158
161
163
165
168
170
172
175
177
179
181
183
185
187
189
190
192
194
195
196
197
198
199
200
201
201
202
202
202
202
202
202
201
200
199
197
196
194
191
188
185
182
178
173
169
164
159
153
147
141
135
129
123
117
110
104
98
92
87
81
76
71
67
63
59
55
52
49
47
45
44
44
44
44
45
47
49
52
55
59
64
69
74
80
87
94
101
109
117
126
134
144
153
163
174
185
196
207
219
231
244
257
270
283
296
310
324
339
353
368
384
399
415
432
449
466
484
503
522
541
561
581
602
623
644
666
687
709
731
753
775
796
818
839
860
880
900
920
939
958
976
993
1008
1025
1039
1053
1066
1078
1089
1099
1108
1116
1123
1129
1134
1138
1141
1142
1143
1143
1141
1139
1135
1130
1125
1118
1111
1103
1093
1083
1072
1060
1047
1033
1018
1002
987
970
952
934
915
896
875
855
834
812
790
768
746
723
700
677
653
630
606
582
558
534
510
486
462
438
415
391
368
345
322
300
277
256
234
213
193
173
153
134
115
97
79
62
46
30
15
1
-13
-26
-37
-48
-58
-68
-76
-83
-89
-94
-98
-101
-103
-104
-104
-102
-99
-96
-91
-84
-77
-68
-59
-48
-36
-23
-9
7
23
41
60
79
100
122
145
168
193
218
245
272
299
327
356
385
415
445
475
506
537
568
598
629
660
691
721
752
782
811
840
869
897
924
951
977
1002
1026
1050
1072
1094
1115
1135
1154
1171
1188
1204
1218
1232
1243
1254
1264
1272
1278
1284
1288
1291
1292
1292
1290
1287
1283
1277
1269
1260
1250
1238
1226
1211
1196
1179
1161
1142
1122
1102
1080
1057
1034
1010
985
960
934
907
880
852
824
795
765
735
705
674
643
611
579
547
514
481
448
415
381
347
313
279
245
211
177
143
109
75
42
8
-24
-57
-89
-120
-151
-182
-211
-240
-268
-295
-322
-347
-371
-395
-417
-437
-457
-475
-492
-507
-521
-534
-546
-556
-565
-572
-578
-583
-587
-589
-590
-590
-588
-585
-581
-575
-568
-560
-550
-539
-527
-514
-500
-485
-469
-453
-435
-417
-397
-377
-357
-335
-313
-290
-266
-241
-216
-190
-164
-136
-109
-80
-51
-22
8
39
70
101
133
165
198
231
264
298
332
366
400
434
468
503
537
571
605
638
671
704
737
769
800
831
862
892
921
949
977
1004
1030
1055
1079
1102
1124
1146
1166
1185
1203
1221
1237
1252
1267
1280
1293
1304
1315
1325
1335
1343
1351
1358
1365
1371
1377
1381
1386
1390
1393
1396
1399
1401
1403
1404
1405
1405
1405
1405
1404
1403
1401
1399
1395
1392
1387
1382
1376
1370
1362
1354
1346
1336
1326
1315
1304
1291
1278
1265
1251
1236
1221
1205
1188
1171
1153
1135
1116
1096
1076
1056
1035
1012
991
968
945
922
898
874
849
823
798
772
746
719
692
665
637
609
581
552
524
495
465
436
406
376
347
317
287
258
229
199
171
142
114
86
59
32
6
-20
-45
-69
-93
-116
-138
-159
-180
-199
-218
-235
-251
-267
-281
-294
-305
-316
-325
-333
-340
-345
-350
-352
-354
-355
-354
-352
-349
-346
-341
-335
-328
-321
-313
-304
-295
-284
-274
-262
-251
-238
-226
-213
-199
-185
-171
-157
-142
-127
-111
-96
-80
-65
-49
-33
-16
0
17
33
50
66
83
99
116
133
149
165
181
197
213
229
244
259
274
289
303
317
330
344
356
369
381
393
404
415
425
434
443
451
459
465
471
476
480
483
485
486
486
485
483
480
476
470
464
456
448
438
427
416
403
389
374
359
342
324
305
286
265
244
221
198
173
148
122
96
68
41
12
-16
-45
-75
-104
-134
-163
-193
-223
-253
-282
-311
-340
-369
-397
-425
-453
-479
-506
-532
-557
-581
-605
-629
-651
-673
-693
-713
-732
-751
-768
-785
-800
-815
-829
-843
-855
-867
-877
-888
-897
-906
-914
-921
-928
-935
-941
-946
-951
-955
-959
-962
-965
-967
-969
-971
-972
-973
-974
-974
-974
-974
-973
-972
-971
-970
-968
-966
-963
-961
-958
-954
-951
-947
-942
-938
-933
-928
-923
-918
-913
-907
-902
-896
-891
-885
-879
-873
-867
-861
-855
-849
-843
-836
-830
-824
-817
-811
-804
-798
-791
-785
-778
-771
-765
-758
-751
-744
-737
-730
-723
-715
-708
-700
-693
-685
-678
-670
-662
-655
-647
-640
-632
-625
-617
-610
-602
-595
-587
-580
-573
-565
-558
-551
-544
-537
-530
-524
-517
-511
-504
-498
-491
-484
-478
-471
-464
-457
-450
-443
-435
-427
-420
-411
-403
-394
-385
-376
-367
-357
-347
-337
-327
-317
-306
-295
-284
-273
-262
-251
-239
-228
-216
-205
-193
-182
-171
-160
-149
-138
-127
-116
-106
-96
-86
-76
-67
-58
-49
-41
-32
-24
-17
-9
-3
4
11
17
22
28
33
38
43
47
52
56
59
63
66
70
73
76
78
81
83
85
87
89
90
92
93
94
95
96
97
97
97
97
97
97
96
96
95
94
92
91
89
87
84
82
79
76
73
70
66
63
59
55
52
48
45
41
38
35
32
29
27
25
23
21
20
19
19
19
19
20
21
23
25
27
30
34
38
42
47
52
57
63
69
76
82
89
96
104
111
119
127
135
144
153
161
170
180
189
198
208
217
227
236
246
255
265
274
283
292
301
309
317
325
333
341
348
355
361
367
373
379
384
390
394
399
404
408
412
416
420
424
428
431
435
438
442
446
449
453
457
460
464
468
472
476
480
483
487
491
495
498
502
506
509
513
516
519
523
526
530
533
537
540
544
548
551
555
558
562
566
569
573
577
580
584
587
591
594
598
601
605
608
611
615
618
621
624
627
630
632
635
637
639
641
643
644
646
647
647
648
648
648
648
647
646
645
644
643
641
639
637
635
632
629
626
623
620
616
612
608
603
599
593
588
582
576
570
564
557
550
543
535
528
520
512
504
496
488
480
472
464
456
447
439
430
422
413
405
396
388
380
372
364
356
348
341
334
327
320
313
307
301
295
289
283
278
272
267
261
256
250
245
239
234
229
223
218
213
207
202
197
191
186
181
175
170
164
159
154
148
143
137
132
126
121
115
110
104
99
94
89
84
79
74
69
65
61
56
52
48
44
40
37
33
29
26
23
20
16
13
10
8
5
2
-1
-3
-6
-8
-10
-12
-14
-16
-18
-19
-20
-21
-22
-23
-23
-23
-22
-22
-21
-19
-18
-16
-14
-11
-8
-5
-2
2
5
9
14
18
23
28
34
39
45
51
57
64
71
78
85
93
101
109
118
127
136
146
156
166
177
189
200
213
225
238
251
264
278
292
306
320
334
348
362
376
390
404
417
431
444
457
470
482
494
506
517
528
538
548
558
567
575
584
591
598
605
611
616
621
626
629
633
635
638
639
641
642
642
642
641
641
639
638
636
633
630
627
624
619
615
610
605
599
592
586
578
570
562
554
544
535
525
514
504
492
481
469
457
444
431
418
405
391
377
363
349
334
320
305
290
275
260
245
230
215
199
184
169
154
139
125
110
96
81
67
54
40
27
15
2
-9
-21
-32
-42
-52
-61
-70
-78
-86
-93
-100
-105
-111
-115
-119
-123
-126
-128
-129
-130
-130
-130
-129
-127
-125
-122
-118
-114
-109
-103
-97
-90
-83
-75
-66
-58
-48
-39
-29
-19
-8
3
14
25
37
48
60
72
84
97
109
121
133
145
157
169
181
193
204
216
227
238
248
259
269
278
288
297
305
314
321
329
335
342
348
353
358
362
365
369
371
373
375
376
376
376
375
374
372
370
367
363
359
354
348
342
335
326
317
308
297
286
273
260
246
231
215
199
182
164
146
126
107
86
65
43
21
-1
-25
-48
-72
-97
-121
-146
-172
-197
-223
-249
-274
-300
-326
-351
-377
-402
-427
-451
-475
-499
-522
-544
-566
-587
-608
-628
-648
-667
-685
-703
-719
-736
-751
-766
-780
-794
-807
-819
-830
-840
-850
-859
-868
-875
-882
-888
-894
-898
-902
-905
-908
-909
-910
-910
-909
-908
-905
-902
-898
-893
-887
-880
-872
-864
-854
-844
-833
-821
-808
-794
-780
-764
-748
-732
-714
-696
-677
-657
-637
-616
-594
-572
-550
-526
-502
-478
-453
-428
-403
-377
-350
-323
-296
-269
-241
-213
-185
-157
-128
-99
-70
-41
-12
17
47
76
105
134
163
192
220
249
277
305
332
359
386
412
437
463
487
511
534
557
579
600
621
640
659
678
695
712
728
743
757
771
784
796
807
818
828
837
846
854
861
868
875
881
886
891
896
900
904
907
910
912
915
916
918
919
920
921
921
921
921
921
920
919
918
916
914
912
909
906
903
899
895
890
885
880
874
868
861
854
846
838
829
820
811
801
791
781
770
759
748
736
724
711
699
686
673
660
647
633
620
606
592
578
565
551
537
524
510
497
484
471
459
447
436
425
414
405
395
387
379
372
365
360
354
350
345
342
339
336
334
332
330
329
328
328
328
327
328
328
329
330
331
332
333
335
336
338
340
342
344
346
348
350
353
355
358
361
363
367
370
373
377
381
385
390
394
399
405
410
416
422
429
435
442
449
457
464
472
480
488
496
504
512
521
530
539
548
557
566
575
585
594
604
614
624
634
644
654
664
674
683
693
703
712
721
730
738
746
753
760
767
773
779
784
789
793
797
800
802
805
806
807
808
808
807
806
805
802
800
797
793
789
784
779
773
767
760
754
746
739
731
723
715
706
697
688
679
670
661
652
642
633
624
614
605
596
587
577
568
559
550
540
531
522
512
503
494
484
475
465
456
447
437
428
418
409
400
390
381
372
362
353
344
334
325
315
305
296
286
277
267
257
248
238
229
219
209
200
190
180
170
160
151
141
131
121
111
101
91
81
71
61
51
41
31
21
11
0
-10
-21
-32
-43
-54
-65
-77
-89
-100
-112
-125
-137
-149
-162
-175
-187
-200
-213
-226
-239
-251
-264
-277
-290
-302
-315
-327
-339
-351
-363
-375
-386
-397
-408
-419
-429
-440
-449
-459
-468
-477
-485
-493
-501
-508
-515
-522
-528
-534
-539
-544
-548
-552
-555
-558
-560
-562
-563
-564
-564
-564
-563
-562
-561
-559
-557
-554
-551
-548
-545
-541
-537
-533
-529
-524
-519
-515
-510
-504
-499
-494
-488
-483
-477
-471
-465
-459
-454
-448
-442
-436
-429
-423
-417
-411
-405
-399
-393
-387
-381
-375
-369
-363
-357
-350
-344
-338
-331
-324
-318
-311
-304
-296
-289
-282
-274
-266
-259
-251
-243
-235
-227
-219
-211
-203
-194
-186
-178
-170
-162
-154
-146
-138
-130
-122
-114
-106
-99
-91
-84
-76
-69
-62
-54
-47
-40
-33
-26
-19
-11
-4
3
10
17
25
32
40
47
55
63
71
78
87
95
103
111
119
128
136
144
152
161
169
177
185
192
200
208
216
223
231
238
245
253
260
267
274
281
288
294
301
307
313
319
324
329
334
338
343
346
350
353
356
358
360
362
363
364
364
365
365
364
364
363
361
360
358
355
353
350
346
343
339
335
331
326
322
317
312
306
301
295
289
284
278
271
265
259
253
246
240
234
227
221
215
208
202
195
189
183
176
170
164
158
152
146
140
134
128
123
117
112
107
102
98
93
89
86
82
79
76
74
71
70
68
67
66
66
66
66
67
69
70
72
75
78
81
85
89
93
98
103
109
114
120
127
134
140
148
155
163
171
179
188
196
205
215
224
234
243
253
264
274
285
295
306
317
329
340
351
363
375
387
399
412
424
437
450
463
477
490
504
518
532
546
561
576
591
606
621
636
652
668
683
699
715
731
748
764
780
796
812
828
843
859
874
889
904
918
933
946
960
973
985
997
1008
1020
1031
1041
1050
1059
1068
1075
1082
1089
1095
1100
1104
1108
1112
1114
1116
1117
1118
1118
1117
1115
1113
1110
1107
1102
1098
1092
1086
1079
1072
1064
1056
1047
1038
1028
1018
1006
996
985
974
962
951
939
926
914
902
890
877
865
853
840
828
816
804
792
781
769
758
747
736
725
715
705
696
686
678
669
661
654
647
640
634
629
623
619
614
610
607
604
602
600
598
597
596
595
595
595
596
597
598
600
601
603
606
609
611
615
618
622
626
630
634
638
643
648
652
657
662
667
672
677
682
687
692
697
702
706
710
715
719
722
726
729
733
735
738
741
743
745
747
748
750
751
752
753
754
755
756
757
757
758
759
759
760
761
761
762
762
763
764
764
765
765
766
767
767
768
768
768
769
769
769
768
768
767
766
764
763
761
758
756
752
749
745
740
735
729
723
716
708
700
691
682
671
661
649
637
624
611
597
583
568
552
536
520
503
486
469
451
433
414
396
377
358
339
320
301
282
263
244
225
207
189
171
153
136
119
102
86
70
55
40
25
11
-3
-17
-30
-42
-54
-66
-77
-87
-97
-106
-115
-124
-131
-138
-145
-151
-157
-162
-167
-172
-176
-180
-183
-186
-189
-191
-193
-195
-196
-198
-198
-199
-199
-199
-199
-198
-198
-197
-196
-194
-193
-191
-189
-188
-185
-183
-181
-178
-176
-173
-170
-167
-164
-161
-157
-154
-151
-147
-143
-140
-136
-132
-129
-125
-121
-117
-114
-110
-106
-103
-99
-96
-92
-89
-86
-82
-79
-75
-72
-69
-65
-62
-58
-55
-51
-48
-44
-41
-37
-34
-30
-27
-23
-20
-17
-14
-10
-8
-5
-2
0
2
5
6
8
10
11
12
13
14
14
14
14
14
13
12
11
9
7
5
2
-1
-4
-7
-11
-15
-19
-24
-29
-34
-39
-45
-51
-57
-64
-70
-77
-85
-92
-100
-108
-117
-125
-134
-143
-153
-163
-173
-183
-193
-204
-215
-226
-237
-249
-261
-272
-285
-297
-309
-322
-335
-347
-360
-373
-386
-399
-411
-424
-436
-448
-460
-472
-484
-495
-505
-516
-526
-535
-544
-553
-561
-569
-576
-583
-589
-595
-600
-605
-610
-614
-618
-621
-624
-627
-630
-632
-633
-635
-636
-637
-637
-638
-638
-637
-637
-636
-635
-634
-633
-631
-630
-628
-626
-625
-623
-621
-619
-617
-615
-613
-611
-609
-607
-605
-602
-600
-597
-595
-592
-589
-587
-584
-581
-577
-574
-571
-567
-564
-560
-556
-552
-548
-544
-540
-536
-532
-527
-523
-519
-515
-511
-507
-503
-499
-495
-491
-487
-484
-480
-477
-474
-471
-468
-465
-463
-461
-459
-457
-455
-453
-451
-449
-448
-446
-445
-444
-442
-441
-440
-439
-437
-436
-435
-434
-433
-432
-431
-430
-429
-428
-426
-425
-424
-422
-420
-419
-417
-415
-413
-411
-409
-406
-404
-401
-398
-395
-392
-389
-386
-382
-379
-375
-371
-367
-363
-358
-354
-349
-344
-339
-334
-329
-323
-317
-311
-305
-298
-292
-285
-278
-271
-264
-257
-250
-242
-235
-228
-220
-213
-205
-198
-190
-182
-175
-167
-159
-151
-143
-134
-126
-118
-109
-101
-92
-84
-75
-66
-58
-49
-41
-32
-24
-15
-7
1
9
17
25
33
41
49
57
65
73
81
88
96
104
112
119
127
134
141
149
156
163
169
176
182
188
194
200
206
211
216
220
225
229
233
236
239
242
245
247
249
251
252
253
253
254
254
253
252
251
250
248
246
243
240
237
234
230
226
222
217
213
208
203
197
191
186
179
173
167
160
153
146
139
132
125
117
110
103
96
89
82
75
69
62
56
50
44
39
34
29
25
20
17
13
10
8
5
4
2
1
0
-1
-1
-1
0
0
1
3
4
6
9
11
14
17
20
24
27
31
36
40
45
49
54
59
65
70
76
82
89
95
102
109
116
123
130
138
146
154
163
171
180
188
197
206
215
224
233
242
251
260
269
278
287
295
304
313
321
330
338
346
355
363
370
378
386
393
400
407
413
420
426
432
438
443
448
453
457
461
465
469
472
475
477
479
481
483
484
484
485
484
484
483
481
479
477
474
471
467
462
457
451
445
439
431
423
415
406
396
386
376
364
353
341
328
315
301
287
273
258
243
228
213
197
181
165
149
133
117
101
84
68
51
35
19
2
-14
-31
-47
-63
-79
-95
-110
-126
-141
-156
-170
-185
-199
-212
-225
-238
-251
-263
-274
-286
-296
-307
-317
-326
-336
-344
-353
-360
-367
-374
-380
-386
-391
-396
-400
-403
-406
-408
-410
-411
-412
-412
-411
-410
-409
-407
-405
-402
-398
-395
-391
-386
-382
-377
-371
-366
-360
-354
-348
-342
-336
-329
-323
-316
-309
-303
-296
-290
-283
-277
-270
-264
-258
-251
-245
-240
-234
-229
-223
-218
-213
-209
-204
-200
-196
-192
-188
-185
-182
-179
-176
-174
-172
-170
-168
-167
-166
-166
-166
-166
-167
-168
-170
-172
-174
-177
-181
-184
-188
-193
-197
-202
-207
-212
-218
-223
-229
-235
-241
-247
-253
-259
-264
-270
-276
-282
-287
-293
-298
-303
-308
-312
-317
-321
-325
-329
-333
-336
-339
-342
-344
-347
-349
-350
-352
-353
-354
-355
-356
-356
-356
-356
-356
-356
-355
-355
-354
-353
-352
-351
-350
-348
-347
-345
-344
-342
-340
-338
-337
-335
-333
-332
-330
-328
-327
-326
-325
-324
-323
-322
-322
-321
-321
-321
-321
-321
-321
-321
-321
-322
-322
-322
-323
-323
-323
-324
-324
-324
-325
-325
-325
-325
-325
-325
-324
-323
-322
-321
-320
-318
-315
-313
-310
-307
-303
-299
-294
-289
-283
-277
-271
-264
-257
-249
-241
-232
-223
-214
-204
-194
-184
-173
-162
-150
-138
-126
-114
-101
-88
-75
-62
-48
-34
-20
-5
9
24
40
55
70
86
102
118
134
150
167
183
199
216
232
249
265
281
298
314
330
346
362
378
394
410
425
440
455
470
484
498
512
525
538
551
563
575
586
597
607
617
627
636
644
652
660
667
673
679
685
690
695
699
703
706
709
712
714
716
717
719
720
720
720
720
720
720
719
718
717
715
713
711
709
707
704
702
699
696
693
690
687
683
680
676
672
669
665
661
657
653
649
645
640
636
632
627
622
618
613
608
603
597
592
586
581
575
569
563
557
551
545
539
532
526
520
513
507
500
493
487
480
473
466
459
452
444
437
430
422
414
406
398
390
381
373
364
355
347
338
329
320
312
303
294
286
277
269
260
252
244
236
228
220
212
205
197
190
182
175
168
161
154
147
141
134
128
121
115
109
103
97
92
86
80
75
70
65
59
54
49
44
39
35
30
25
20
15
11
6
1
-3
-8
-12
-17
-21
-25
-29
-33
-36
-39
-42
-45
-47
-49
-51
-52
-53
-54
-54
-54
-53
-53
-52
-50
-49
-47
-45
-43
-41
-38
-35
-33
-30
-27
-24
-21
-18
-15
-12
-9
-6
-3
0
3
5
8
10
12
15
16
18
20
21
22
23
24
24
24
24
24
24
24
23
22
21
20
19
18
16
15
13
12
10
9
7
6
4
2
1
-1
-2
-4
-5
-6
-8
-9
-10
-10
-11
-12
-12
-13
-13
-14
-14
-14
-14
-13
-13
-13
-12
-11
-11
-10
-8
-7
-6
-4
-3
-1
1
3
5
7
10
12
14
16
19
21
24
27
29
32
35
37
40
43
46
50
53
56
59
62
66
69
73
76
80
83
87
90
94
97
101
104
108
111
115
118
121
125
128
131
134
136
139
142
144
147
149
151
153
155
157
159
161
162
164
166
167
169
170
171
173
174
175
177
178
179
180
182
183
184
185
187
188
189
190
191
192
193
194
195
196
196
197
197
198
198
198
198
198
198
198
198
197
197
196
196
195
194
194
193
192
191
190
189
188
187
185
184
183
182
181
181
180
179
178
178
178
177
177
177
177
177
177
177
177
178
178
178
179
179
180
180
181
181
182
183
184
185
186
187
188
190
191
193
195
197
200
202
205
208
211
215
218
222
226
230
235
239
244
249
254
260
265
271
277
283
289
295
301
307
312
318
324
330
335
341
346
351
356
361
365
370
374
377
381
385
388
391
394
396
399
401
403
405
407
409
410
412
413
415
416
417
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
434
435
436
436
436
436
436
436
435
435
434
433
431
430
428
426
424
421
419
416
413
409
405
401
397
392
387
382
377
371
365
358
352
345
338
330
323
315
306
298
290
281
272
263
254
245
236
227
217
208
199
190
181
172
164
155
147
139
131
123
116
109
102
96
90
84
79
73
69
65
61
57
54
52
49
48
46
45
45
45
45
46
47
49
51
53
56
59
63
67
71
76
81
87
93
99
105
112
119
126
134
142
150
158
167
176
185
195
204
214
225
235
245
256
267
278
290
301
313
325
337
348
360
372
384
396
408
419
431
442
453
464
474
485
495
505
514
524
533
542
551
559
568
576
583
591
598
605
612
618
624
630
635
640
645
649
654
657
661
664
667
669
671
673
674
675
676
676
676
676
675
674
673
671
669
667
665
663
660
657
654
651
648
644
641
637
633
629
625
621
617
613
609
604
600
595
591
586
581
577
572
568
563
558
554
549
545
540
536
531
527
522
518
513
509
504
500
495
490
485
480
474
469
463
458
452
446
440
434
427
421
415
409
402
396
390
384
377
371
365
359
354
348
342
337
331
326
321
316
312
307
303
298
294
290
287
283
280
277
274
271
268
266
264
262
260
259
258
257
256
256
255
255
256
256
257
258
259
260
262
264
266
268
270
273
276
278
281
285
288
291
295
298
302
306
310
313
317
321
325
329
333
338
342
346
350
354
358
362
366
370
374
378
382
386
390
393
397
401
404
408
411
414
418
421
424
427
430
433
436
439
442
445
448
451
453
456
459
461
464
466
469
471
473
476
478
481
483
485
488
490
492
495
497
499
501
503
505
507
509
510
512
513
515
516
517
518
519
520
521
521
522
522
522
523
523
522
522
522
521
521
520
519
519
518
517
516
514
513
512
510
509
507
505
503
501
498
496
493
491
488
485
481
478
474
471
467
462
458
453
449
444
438
433
427
421
414
408
401
394
386
379
371
363
355
347
338
330
322
313
305
296
288
280
272
264
256
249
241
234
227
220
214
207
201
195
190
184
179
175
170
166
162
158
154
151
148
145
143
140
138
137
135
134
132
131
130
130
129
128
128
128
127
127
127
127
127
127
127
127
127
127
128
128
128
128
128
128
128
128
128
128
128
128
127
127
126
126
125
125
124
123
122
121
120
118
117
115
114
112
110
108
106
104
102
100
97
95
92
90
87
84
81
79
76
73
70
67
65
62
59
56
54
51
48
46
43
40
38
35
32
29
26
23
21
18
14
11
8
5
2
-1
-5
-8
-11
-14
-18
-21
-24
-27
-30
-32
-35
-38
-40
-42
-45
-46
-48
-50
-51
-52
-53
-54
-54
-54
-54
-53
-52
-51
-50
-48
-46
-44
-41
-38
-35
-32
-29
-25
-21
-17
-13
-8
-4
1
6
11
16
21
26
32
37
43
48
54
60
65
71
77
83
89
94
100
106
112
118
123
129
135
140
146
151
157
162
167
172
177
182
186
191
195
199
202
206
209
211
213
215
217
218
218
218
218
217
216
214
212
209
206
202
198
194
189
184
178
172
166
159
152
145
137
129
120
112
103
94
84
74
64
54
44
33
23
12
1
-11
-22
-34
-46
-58
-70
-82
-95
-107
-120
-132
-145
-158
-170
-183
-195
-208
-220
-233
-245
-257
-269
-281
-292
-304
-315
-326
-337
-348
-358
-369
-379
-389
-398
-408
-417
-425
-434
-442
-450
-457
-464
-471
-477
-483
-488
-493
-497
-501
-504
-507
-510
-511
-513
-514
-514
-514
-513
-511
-510
-507
-504
-501
-497
-493
-488
-482
-476
-470
-463
-456
-448
-440
-431
-422
-412
-402
-392
-381
-370
-358
-346
-334
-322
-309
-296
-283
-269
-256
-242
-228
-213
-199
-185
-170
-156
-142
-127
-113
-99
-85
-72
-59
-45
-33
-20
-8
4
15
26
36
46
56
65
74
82
90
97
104
110
116
121
126
130
134
137
140
143
145
147
148
149
150
150
151
150
150
149
148
147
146
145
143
141
139
137
135
133
131
128
126
123
121
118
115
112
110
107
104
101
99
96
93
91
88
85
83
80
78
75
73
70
68
66
64
62
60
58
57
56
54
54
53
52
52
52
52
53
54
55
56
58
59
62
64
67
70
74
77
82
86
91
97
102
109
115
122
129
137
145
154
162
171
181
190
200
210
220
231
241
252
263
273
284
295
306
317
328
339
350
361
371
381
391
401
411
420
429
437
446
454
461
468
475
481
487
492
497
501
505
509
512
514
517
519
520
521
522
522
522
522
522
522
521
520
519
518
517
516
515
513
512
511
509
508
506
505
503
502
500
499
497
496
495
494
492
491
491
490
489
489
489
488
488
488
489
489
489
490
491
492
493
494
495
496
498
499
501
503
505
507
509
511
514
516
519
521
523
526
528
531
533
535
538
540
542
544
546
548
550
551
553
554
555
556
557
558
558
559
559
559
560
560
560
560
560
560
560
560
560
559
559
559
559
559
559
559
559
559
559
559
559
559
559
558
558
557
557
556
555
554
553
551
549
548
546
543
541
538
536
533
529
526
522
518
514
510
505
500
496
491
485
480
475
469
464
458
453
447
441
436
430
425
419
414
408
403
398
393
388
383
377
372
367
362
357
352
347
342
337
331
326
321
315
310
305
299
293
288
282
276
271
265
259
253
248
242
236
230
224
219
213
207
201
196
190
185
179
174
169
164
159
154
149
144
140
136
131
127
124
120
116
113
110
107
104
101
98
96
94
92
90
89
87
86
85
84
83
83
83
83
83
83
84
85
86
87
88
90
92
94
96
99
101
104
107
110
114
118
121
125
130
134
139
143
148
153
158
163
168
173
178
183
188
193
197
202
207
212
217
222
226
231
236
240
245
249
254
259
263
268
272
277
282
286
291
296
301
305
310
315
320
325
330
335
340
345
350
355
360
365
370
374
379
384
389
393
397
402
406
409
413
416
419
422
425
427
429
431
432
433
434
434
435
435
434
434
433
432
430
429
427
425
423
420
418
415
412
409
406
403
400
396
393
389
386
382
379
375
372
368
365
361
358
355
352
348
345
342
339
337
334
331
328
325
323
320
317
315
312
310
308
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
255
253
251
250
249
247
246
245
244
244
244
243
243
244
244
245
245
246
248
249
251
252
254
256
259
261
264
266
269
271
274
277
280
283
286
289
291
294
297
300
302
305
307
309
311
313
315
317
318
319
320
321
322
322
322
322
322
321
320
320
319
317
316
314
313
311
309
307
304
302
299
297
294
291
288
285
282
278
275
272
268
265
261
258
255
252
248
245
242
239
237
234
231
229
227
225
223
221
219
218
216
215
214
213
212
212
211
211
211
211
211
211
212
212
212
213
214
214
215
215
216
217
218
218
219
220
221
221
222
223
224
224
225
226
227
228
229
230
231
232
233
234
235
237
238
240
242
243
245
247
249
252
254
256
259
262
265
268
271
274
277
280
284
288
291
295
299
304
308
312
317
321
326
331
336
342
347
353
358
364
370
376
383
389
395
402
409
415
422
429
436
443
450
457
464
470
477
484
491
498
505
512
518
525
532
538
544
550
556
562
568
573
578
583
587
591
595
599
602
605
608
610
612
613
614
615
615
615
615
614
613
611
609
607
604
601
597
593
589
584
579
574
568
562
556
549
542
535
527
519
510
502
493
484
474
464
454
444
433
422
411
400
388
376
363
351
338
325
312
299
285
271
257
243
229
215
201
186
172
157
143
129
114
100
86
72
58
44
30
17
3
-10
-22
-35
-48
-60
-72
-83
-94
-105
-116
-126
-136
-146
-155
-164
-173
-181
-189
-196
-203
-210
-217
-223
-229
-235
-240
-246
-250
-255
-259
-263
-267
-270
-274
-277
-280
-282
-285
-287
-289
-291
-292
-294
-295
-297
-298
-299
-299
-300
-300
-301
-301
-301
-301
-301
-300
-300
-299
-298
-297
-296
-295
-294
-292
-291
-289
-287
-284
-282
-279
-276
-273
-269
-266
-262
-258
-254
-249
-245
-240
-235
-230
-225
-219
-214
-208
-202
-197
-191
-185
-179
-173
-167
-161
-155
-149
-143
-137
-131
-125
-119
-113
-107
-101
-95
-89
-83
-77
-71
-64
-58
-52
-46
-40
-33
-27
-21
-14
-8
-2
4
11
17
23
29
35
41
47
52
58
63
68
73
78
83
87
91
95
99
102
105
108
111
113
115
116
117
118
118
118
118
117
116
114
112
110
108
105
102
99
95
92
88
84
80
75
71
66
62
57
52
47
42
37
32
27
22
17
13
8
3
-1
-5
-10
-13
-17
-21
-24
-27
-29
-31
-33
-35
-36
-37
-38
-38
-38
-38
-37
-36
-34
-32
-30
-28
-25
-22
-18
-15
-11
-7
-3
2
6
11
15
20
24
29
34
38
43
47
51
56
60
64
67
71
75
78
81
84
86
89
91
93
94
96
97
98
99
100
100
100
100
100
100
100
100
99
99
99
98
98
98
97
97
97
97
97
98
98
99
99
100
102
103
105
106
108
111
113
116
118
121
124
128
131
134
138
141
145
149
152
156
159
163
166
170
173
176
179
182
184
187
189
191
192
194
195
196
197
197
197
197
196
196
194
193
191
189
187
184
181
178
174
171
167
162
158
153
148
143
138
133
127
121
116
110
104
98
92
85
79
73
67
61
55
48
42
36
30
24
18
12
6
0
-5
-11
-17
-23
-29
-34
-40
-46
-51
-57
-62
-67
-73
-78
-83
-88
-93
-98
-102
-107
-112
-116
-120
-125
-129
-133
-137
-141
-145
-149
-153
-157
-160
-164
-168
-171
-175
-178
-182
-185
-189
-192
-195
-198
-201
-204
-207
-210
-212
-214
-217
-219
-220
-222
-223
-225
-226
-226
-227
-227
-227
-227
-226
-225
-224
-223
-222
-220
-218
-215
-213
-210
-207
-204
-201
-198
-194
-191
-187
-184
-180
-176
-172
-169
-165
-162
-158
-155
-152
-149
-146
-143
-140
-138
-136
-133
-131
-129
-128
-126
-125
-123
-122
-121
-120
-119
-119
-118
-117
-117
-116
-116
-115
-115
-114
-114
-113
-113
-112
-111
-111
-110
-109
-108
-107
-106
-105
-103
-102
-100
-99
-97
-95
-93
-91
-88
-86
-83
-81
-78
-75
-73
-70
-67
-64
-60
-57
-54
-51
-48
-44
-41
-37
-34
-31
-27
-24
-20
-17
-13
-10
-7
-3
0
4
7
10
14
17
20
24
27
30
34
37
41
44
48
52
56
60
64
68
73
78
83
88
93
99
105
111
118
124
132
139
147
155
163
172
181
190
200
210
220
231
242
253
264
276
288
300
312
325
338
351
364
377
390
404
417
431
444
458
472
485
498
512
525
538
551
564
576
588
600
612
623
635
646
656
666
676
686
695
704
713
721
729
737
745
752
759
765
771
777
783
788
793
798
802
806
810
814
817
820
823
825
827
829
831
832
834
834
835
835
836
835
835
835
834
833
832
831
829
828
826
824
822
820
818
816
813
811
808
805
802
800
797
794
791
788
785
782
778
775
772
769
766
763
761
758
755
753
750
748
746
744
743
741
740
739
738
737
737
737
737
737
738
738
739
740
742
743
745
747
749
751
754
756
759
762
765
769
772
775
779
783
787
791
794
798
802
806
810
814
818
822
825
829
832
836
839
842
845
848
851
854
857
859
862
864
866
868
870
872
874
876
877
878
880
881
882
883
883
884
884
885
885
885
884
884
883
883
882
880
879
877
876
873
871
868
866
862
859
855
851
847
842
837
832
826
820
813
807
799
792
784
776
767
758
749
740
730
719
709
698
687
676
664
653
641
629
617
604
592
580
567
555
542
530
518
506
493
481
470
458
446
435
423
412
401
390
380
370
359
349
340
330
321
312
303
294
285
277
269
261
253
245
237
230
223
215
208
201
194
187
181
174
167
160
154
147
141
134
128
122
115
109
103
96
90
84
78
72
66
60
54
48
42
36
31
25
20
14
9
4
-2
-7
-12
-17
-22
-26
-31
-35
-40
-44
-48
-53
-57
-60
-64
-68
-71
-74
-78
-81
-83
-86
-89
-91
-93
-95
-97
-99
-100
-102
-103
-104
-105
-106
-107
-107
-108
-108
-108
-109
-109
-109
-109
-109
-109
-108
-108
-108
-107
-107
-107
-106
-106
-105
-104
-104
-103
-102
-102
-101
-100
-99
-99
-98
-97
-96
-96
-95
-95
-94
-94
-93
-93
-93
-93
-93
-93
-94
-94
-95
-96
-97
-98
-99
-100
-102
-103
-105
-107
-109
-112
-114
-117
-119
-122
-125
-128
-132
-135
-139
-142
-146
-150
-154
-158
-162
-166
-170
-174
-179
-183
-187
-191
-195
-199
-203
-207
-211
-215
-219
-222
-226
-229
-232
-235
-238
-241
-244
-246
-249
-251
-253
-255
-257
-258
-260
-261
-262
-263
-264
-264
-265
-265
-265
-265
-264
-263
-263
-261
-260
-259
-257
-255
-253
-251
-248
-246
-243
-240
-237
-234
-230
-227
-224
-220
-216
-212
-209
-205
-201
-197
-193
-189
-185
-181
-177
-174
-170
-166
-163
-159
-156
-152
-149
-146
-143
-140
-138
-135
-132
-130
-128
-125
-123
-121
-119
-118
-116
-115
-113
-112
-111
-110
-109
-108
-107
-106
-106
-105
-105
-105
-105
-105
-105
-105
-106
-106
-107
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-118
-119
-121
-122
-124
-126
-128
-130
-132
-134
-136
-138
-141
-143
-146
-148
-151
-153
-156
-159
-161
-164
-167
-170
-173
-176
-179
-183
-186
-189
-192
-196
-199
-202
-206
-209
-212
-216
-219
-222
-225
-228
-231
-234
-236
-239
-241
-243
-245
-247
-249
-250
-251
-252
-252
-253
-253
-253
-252
-252
-251
-249
-248
-246
-244
-241
-239
-236
-232
-229
-225
-220
-216
-210
-205
-199
-193
-187
-180
-173
-165
-158
-150
-141
-133
-124
-115
-106
-96
-87
-77
-67
-57
-46
-36
-26
-15
-4
6
17
28
39
50
60
71
82
93
103
114
124
135
145
155
165
175
184
194
203
212
221
229
238
246
254
262
269
277
284
291
298
305
311
318
324
330
336
342
348
353
359
364
369
374
379
384
389
394
398
403
407
411
415
419
423
427
430
433
436
439
442
444
447
449
451
452
454
455
456
457
457
458
458
457
457
456
455
454
453
451
449
447
445
442
439
437
434
430
427
424
420
416
412
408
405
401
396
392
388
384
380
376
372
369
365
361
357
354
350
347
344
340
337
335
332
329
327
325
322
321
319
317
316
314
313
312
311
310
310
309
309
308
308
308
307
307
307
307
307
307
307
307
307
307
307
307
307
307
306
306
305
305
304
303
302
301
299
298
296
294
292
290
287
285
282
279
276
272
269
265
262
258
254
250
246
241
237
232
228
223
218
214
209
204
199
194
190
185
180
175
170
165
160
155
150
146
141
136
131
126
121
116
111
106
102
97
92
87
82
77
72
67
62
57
53
48
43
38
34
29
25
21
16
12
8
4
1
-3
-6
-9
-12
-15
-18
-20
-22
-24
-26
-27
-28
-29
-29
-30
-30
-29
-29
-28
-27
-26
-24
-23
-21
-18
-16
-14
-11
-8
-5
-2
2
5
9
12
16
20
24
28
32
36
40
44
48
52
56
59
63
67
71
74
78
81
85
88
91
94
97
100
103
105
108
110
113
115
117
119
121
123
125
127
129
131
133
134
136
138
139
141
142
143
145
146
147
148
149
150
151
152
153
154
155
155
156
157
157
157
158
158
158
158
158
157
157
157
156
155
155
154
153
152
151
150
148
147
146
144
143
141
140
138
136
135
133
131
129
127
125
123
121
119
117
115
113
111
108
106
104
101
99
96
94
91
88
85
83
80
77
74
71
68
65
62
58
55
52
49
45
42
39
36
32
29
25
22
19
15
11
8
4
1
-3
-7
-10
-14
-18
-21
-25
-29
-32
-36
-40
-43
-47
-50
-54
-57
-60
-64
-67
-70
-73
-75
-78
-80
-83
-85
-86
-88
-89
-91
-91
-92
-92
-92
-92
-92
-91
-90
-88
-87
-85
-82
-80
-77
-74
-71
-68
-64
-60
-56
-52
-48
-44
-39
-34
-30
-25
-20
-15
-10
-5
1
6
11
16
21
27
32
37
42
47
53
58
63
68
73
79
84
89
94
100
105
110
116
121
126
132
137
142
147
153
158
163
168
173
178
183
188
193
198
202
207
212
216
221
225
229
233
237
241
245
248
252
255
258
261
264
267
269
271
273
275
277
278
280
281
282
282
282
283
282
282
281
281
280
278
277
275
273
271
269
266
264
261
258
255
251
248
245
241
237
233
230
226
222
218
214
210
206
202
198
194
190
186
182
178
174
170
166
162
159
155
151
148
144
140
137
133
130
126
123
120
116
113
110
107
104
101
98
95
92
89
86
84
81
78
76
74
72
69
68
66
64
63
61
60
60
59
59
59
59
60
61
62
63
65
67
70
73
76
80
83
88
92
97
102
108
114
120
127
134
141
149
157
165
174
183
192
201
211
221
232
242
253
264
275
286
298
309
321
332
344
355
367
379
390
401
413
424
435
446
456
467
477
487
497
506
515
524
533
541
549
556
564
570
577
583
589
594
599
604
609
613
617
620
623
626
628
631
633
634
635
637
637
638
638
638
638
638
637
636
635
634
632
630
628
626
624
621
618
615
612
609
605
601
597
593
588
583
579
574
568
563
557
551
545
539
533
527
520
513
507
500
493
486
479
472
464
457
450
443
436
428
421
414
407
400
393
386
380
373
367
360
354
348
342
336
331
325
320
315
310
306
301
297
293
289
286
283
280
277
274
272
270
268
266
265
263
262
261
261
261
260
260
261
261
262
262
263
264
265
267
268
270
271
273
275
277
280
282
284
287
290
292
295
298
301
304
308
311
314
317
321
324
328
331
335
338
342
345
349
352
356
359
363
366
370
374
377
381
385
389
393
396
400
404
408
412
416
419
423
427
431
435
438
442
445
449
452
456
459
462
465
468
471
473
475
478
480
481
483
484
485
486
487
487
487
487
486
486
485
483
482
480
478
475
473
470
467
463
459
456
452
447
443
438
433
428
423
418
412
406
401
395
389
383
376
370
364
357
351
345
338
332
325
319
313
306
300
294
288
282
276
270
264
259
253
248
243
238
233
229
225
221
217
213
210
207
204
202
199
198
196
194
193
193
192
192
192
192
193
194
195
197
199
201
203
206
209
212
215
219
223
227
231
236
240
245
250
256
261
266
272
278
283
289
295
301
308
314
320
326
333
339
345
351
358
364
370
376
382
388
394
400
406
411
417
422
427
432
437
441
446
450
453
457
460
463
466
468
470
472
473
474
475
475
475
475
475
474
473
471
469
467
465
462
459
456
453
449
445
441
437
432
427
422
417
412
406
401
395
389
383
377
370
364
357
350
343
336
329
322
314
307
299
291
284
276
268
260
252
244
236
228
220
211
203
195
187
179
171
163
156
148
140
133
125
118
111
104
97
90
84
77
71
65
59
53
47
42
37
32
27
22
18
14
10
6
3
0
-3
-6
-8
-10
-12
-13
-15
-16
-17
-17
-18
-18
-18
-18
-17
-16
-16
-14
-13
-12
-11
-9
-7
-6
-4
-2
0
2
4
6
8
9
11
13
15
16
18
19
20
21
22
22
23
23
23
23
22
22
21
20
19
17
16
14
12
10
8
5
3
0
-3
-6
-9
-11
-14
-18
-21
-24
-27
-30
-33
-36
-39
-42
-45
-48
-50
-53
-56
-59
-61
-64
-66
-68
-71
-73
-75
-76
-78
-80
-81
-82
-83
-84
-85
-86
-86
-86
-87
-86
-86
-86
-85
-85
-84
-82
-81
-79
-78
-76
-74
-71
-69
-66
-63
-60
-56
-52
-49
-45
-40
-36
-31
-27
-22
-17
-11
-6
0
6
12
18
24
31
37
44
51
58
65
73
80
87
95
103
111
119
127
135
143
151
159
168
176
185
193
201
210
219
227
236
244
253
261
269
278
286
294
302
310
318
325
333
340
348
355
361
368
375
381
387
393
399
404
410
415
420
425
430
434
438
443
447
450
454
457
461
464
467
469
472
474
476
478
480
481
483
484
485
486
486
487
487
487
486
486
485
484
483
482
480
478
476
473
471
468
464
461
457
453
449
445
440
436
431
425
420
414
408
402
396
389
383
376
369
362
354
347
339
331
323
315
307
298
290
281
273
264
255
246
238
229
220
211
203
194
185
177
168
160
151
143
135
127
119
111
103
96
89
82
75
68
62
55
49
43
38
33
28
23
18
14
10
7
3
0
-2
-5
-7
-9
-10
-11
-12
-13
-13
-13
-13
-13
-12
-11
-9
-8
-6
-4
-1
1
4
7
11
14
18
22
26
31
35
40
45
50
55
61
66
72
77
83
89
95
101
107
113
119
126
132
138
145
151
157
163
170
176
182
188
194
200
206
212
218
224
229
235
240
245
250
255
260
264
268
272
276
280
284
287
290
293
295
298
300
302
303
304
305
306
306
306
306
306
305
304
302
300
298
296
293
290
287
283
279
275
270
265
260
254
249
242
236
230
223
216
208
201
193
185
177
169
160
152
143
134
125
115
106
96
87
77
67
57
47
37
27
17
7
-3
-13
-24
-34
-43
-53
-63
-73
-82
-92
-101
-110
-119
-128
-137
-145
-153
-161
-169
-176
-184
-190
-197
-203
-209
-215
-220
-225
-230
-234
-239
-242
-246
-249
-251
-254
-256
-258
-259
-260
-261
-261
-261
-261
-260
-260
-258
-257
-255
-253
-251
-248
-245
-242
-238
-235
-230
-226
-222
-217
-212
-207
-201
-196
-190
-184
-178
-171
-165
-158
-151
-144
-137
-130
-123
-115
-108
-100
-93
-85
-77
-70
-62
-54
-46
-39
-31
-23
-16
-8
-1
6
14
21
28
35
42
49
55
62
69
75
81
87
93
99
105
111
116
121
126
131
136
141
145
150
154
158
162
166
170
173
176
180
183
186
188
191
193
196
198
200
202
204
205
207
208
209
210
211
212
213
214
214
215
215
216
216
217
217
217
217
218
218
218
218
219
219
219
220
220
221
221
221
222
223
223
224
225
225
226
227
228
229
230
231
232
233
235
236
237
239
241
242
244
246
248
251
253
255
258
260
263
266
269
272
275
278
282
285
288
292
295
299
303
306
310
314
317
321
325
329
332
336
340
343
347
350
354
357
360
363
366
369
372
375
377
379
381
383
385
386
387
388
389
389
389
389
389
389
388
387
386
384
382
380
378
376
373
370
367
363
359
355
351
347
342
337
332
327
321
315
310
304
297
291
285
278
271
264
257
250
243
236
229
222
214
207
200
192
185
178
171
163
156
149
142
135
128
122
115
108
102
96
89
83
77
71
66
60
55
50
45
40
35
31
26
22
18
14
11
7
4
1
-2
-4
-7
-9
-11
-13
-15
-16
-17
-18
-19
-20
-20
-20
-20
-19
-18
-17
-16
-15
-13
-11
-9
-6
-4
-1
2
6
9
13
17
21
25
29
34
38
43
48
53
58
63
68
74
79
85
91
96
102
108
114
120
126
132
138
144
150
156
162
168
174
180
186
192
198
204
210
216
222
228
234
239
245
251
256
262
268
273
278
283
289
294
299
303
308
313
317
321
325
329
333
337
340
344
347
350
353
355
358
360
362
364
365
366
367
368
369
369
369
369
369
368
368
367
365
364
362
360
358
355
352
350
346
343
339
336
331
327
323
318
313
308
303
297
292
286
280
274
268
262
255
249
242
235
229
222
215
208
201
194
187
180
173
166
159
152
145
139
132
125
119
112
106
100
94
88
82
76
71
65
60
55
50
46
41
37
33
29
25
22
19
16
13
11
9
7
5
4
3
2
1
1
1
2
3
4
5
7
9
11
14
17
21
25
29
33
38
43
49
55
61
68
75
82
89
97
105
114
122
131
140
149
158
168
177
187
196
206
216
226
235
245
255
264
274
283
292
301
310
319
327
336
344
352
360
367
375
382
389
395
402
408
413
419
424
429
433
437
441
445
448
451
453
456
458
459
461
462
463
463
464
464
463
463
462
461
460
458
457
455
453
451
448
445
442
439
436
433
429
426
422
418
414
410
406
401
397
393
388
384
379
375
370
365
361
356
352
347
342
338
333
329
324
320
315
311
306
302
298
294
290
286
282
278
274
270
266
263
259
255
252
249
245
242
239
235
232
229
226
223
220
217
215
212
209
207
204
202
199
197
195
193
191
189
187
185
184
182
181
180
179
178
177
176
175
174
173
173
172
171
171
170
170
169
168
168
167
167
166
165
164
164
163
162
161
160
159
157
156
155
154
152
151
149
147
145
143
141
139
137
135
133
130
128
125
123
120
117
114
111
108
105
102
99
95
92
89
85
82
78
74
71
67
63
60
56
52
49
45
41
38
34
31
28
24
21
18
15
13
10
8
5
3
1
-1
-2
-4
-5
-6
-7
-7
-8
-8
-8
-8
-7
-7
-6
-5
-4
-3
-1
0
2
4
6
8
11
13
16
18
21
24
28
31
34
38
41
45
49
53
57
61
65
69
73
77
81
86
90
94
98
102
106
110
114
118
122
126
129
133
136
139
142
145
148
150
152
155
156
158
160
161
162
163
163
163
163
163
163
162
161
160
158
157
155
153
150
148
145
142
139
136
133
129
125
122
118
113
109
105
100
96
91
86
82
77
72
67
61
56
51
45
40
35
29
24
18
13
8
2
-3
-9
-14
-19
-25
-30
-35
-40
-45
-50
-55
-60
-64
-69
-74
-78
-82
-87
-91
-95
-99
-102
-106
-109
-113
-116
-119
-122
-125
-127
-130
-132
-134
-137
-138
-140
-142
-143
-145
-146
-147
-148
-149
-150
-151
-151
-152
-152
-152
-152
-152
-152
-152
-151
-151
-150
-149
-148
-147
-146
-144
-142
-141
-139
-136
-134
-131
-129
-126
-123
-119
-116
-112
-108
-104
-100
-95
-91
-86
-81
-75
-70
-64
-58
-53
-46
-40
-34
-27
-20
-14
-7
1
8
15
22
30
37
45
52
60
68
75
83
91
98
106
113
121
129
136
143
151
158
166
173
180
187
195
202
209
216
223
230
236
243
250
257
263
270
276
283
289
295
301
307
313
319
325
331
336
342
347
353
358
363
368
373
378
383
388
393
397
402
407
411
416
420
425
429
433
437
442
446
450
454
458
462
465
469
473
476
480
483
486
490
493
496
498
501
504
506
508
510
512
514
515
517
518
519
520
520
520
520
520
520
519
518
517
516
514
513
511
509
506
504
501
498
495
492
489
486
483
479
476
472
469
466
462
459
455
452
448
445
441
438
435
432
428
425
422
419
416
413
411
408
405
403
401
398
396
394
392
390
388
386
385
383
382
380
379
378
377
376
375
374
374
373
373
372
372
372
372
371
371
372
372
372
372
372
373
373
374
374
375
376
376
377
378
379
379
380
381
382
383
384
385
386
387
388
390
391
392
393
395
396
397
399
400
402
404
405
407
409
411
413
415
417
420
422
425
427
430
432
435
438
441
444
447
450
453
457
460
463
466
470
473
476
479
483
486
489
492
495
498
501
504
506
509
511
514
516
518
520
522
523
525
526
527
528
529
530
530
531
531
531
531
530
530
529
528
527
526
525
524
522
520
518
516
514
512
510
507
505
502
499
496
493
490
487
484
481
477
474
470
467
463
459
456
452
448
444
440
437
433
429
425
421
417
413
409
405
401
397
393
389
385
381
377
374
370
366
363
359
356
352
349
346
343
340
337
334
332
329
327
325
323
321
319
317
316
314
313
312
311
310
310
309
309
309
309
309
309
310
310
311
312
313
314
315
316
318
319
320
322
323
325
327
328
330
332
333
335
337
339
340
342
344
345
347
348
350
351
353
354
355
356
357
358
359
360
361
361
362
362
362
362
362
362
362
362
361
361
360
360
359
358
357
356
355
354
352
351
350
348
346
345
343
341
339
337
335
332
330
328
325
323
320
317
315
312
309
306
304
301
298
295
292
289
285
282
279
276
273
269
266
263
260
256
253
250
247
244
240
237
234
231
228
225
222
219
217
214
211
208
206
203
201
198
196
193
191
189
187
185
183
181
180
178
177
175
174
173
172
171
170
169
168
168
167
167
166
166
166
166
166
166
166
166
167
167
167
168
168
168
169
169
170
170
170
171
171
171
171
171
171
171
171
171
171
170
170
169
168
168
167
166
164
163
162
160
159
157
155
153
151
149
147
145
143
140
138
136
133
131
128
126
123
121
118
116
113
111
108
105
103
100
98
95
93
90
88
85
83
81
78
76
74
72
69
67
65
63
61
59
58
56
54
52
50
49
47
45
43
41
40
38
36
34
32
30
28
25
23
21
18
16
13
10
7
4
1
-2
-6
-9
-13
-17
-21
-25
-29
-33
-37
-42
-46
-50
-55
-60
-64
-69
-74
-78
-83
-88
-93
-97
-102
-106
-111
-115
-119
-123
-127
-131
-135
-138
-142
-145
-148
-151
-154
-156
-159
-161
-163
-165
-167
-169
-170
-172
-173
-174
-175
-176
-176
-177
-177
-178
-178
-178
-178
-178
-177
-177
-176
-175
-175
-174
-173
-171
-170
-169
-167
-165
-164
-162
-160
-157
-155
-152
-149
-146
-143
-140
-137
-133
-129
-125
-121
-116
-112
-107
-102
-96
-91
-85
-80
-74
-68
-61
-55
-49
-42
-36
-29
-22
-15
-8
-1
6
13
20
27
34
40
47
54
61
68
74
81
87
93
100
106
111
117
122
128
133
137
142
147
151
155
159
162
166
169
172
175
177
179
182
183
185
187
188
189
190
191
191
192
192
192
191
191
190
190
189
188
187
186
184
183
181
179
178
176
174
172
170
167
165
163
161
158
156
153
151
148
146
143
140
138
135
133
130
128
125
123
120
118
115
113
111
109
106
104
102
100
99
97
95
94
93
91
90
89
88
87
87
86
86
85
85
85
86
86
87
87
88
90
91
92
94
96
98
101
103
106
109
113
116
120
124
128
132
137
142
147
152
157
163
168
174
180
186
193
199
206
212
219
226
232
239
246
253
260
267
274
282
289
296
303
310
317
324
332
339
346
352
359
366
373
379
386
392
398
404
410
415
421
426
431
436
441
446
450
454
458
462
466
469
472
475
478
480
482
484
486
488
489
491
492
493
493
494
495
495
495
495
495
495
495
495
494
494
493
493
492
491
490
489
488
487
486
485
484
483
482
481
480
479
479
478
477
476
475
475
474
474
473
473
472
472
472
472
472
473
473
473
474
475
475
476
477
479
480
481
483
484
486
487
489
491
493
495
497
499
501
503
505
507
509
510
512
514
516
518
519
521
523
524
526
527
528
529
531
532
533
533
534
535
536
536
537
537
537
538
538
538
538
538
538
538
538
537
537
537
536
536
535
535
534
534
533
532
532
531
530
529
529
528
527
526
525
524
523
521
520
519
518
516
515
513
512
510
509
507
505
504
502
500
498
497
495
493
491
489
487
485
483
481
478
476
474
472
470
468
466
464
461
459
457
455
453
451
448
446
444
442
439
437
435
433
430
428
426
423
421
419
416
414
411
409
407
404
401
399
396
394
391
388
385
382
380
377
374
370
367
364
361
357
354
350
347
343
339
336
332
328
324
320
317
313
309
305
301
297
293
290
286
282
278
275
271
268
264
261
258
255
252
249
246
244
241
239
236
234
232
230
229
227
225
224
223
221
220
219
218
217
217
216
215
215
215
214
214
214
214
214
214
214
214
214
214
215
215
216
216
217
217
218
219
219
220
221
222
223
224
225
227
228
229
230
232
233
235
236
238
240
242
243
245
247
249
251
253
256
258
260
263
265
268
270
273
276
278
281
284
287
290
293
296
299
302
305
308
311
314
317
320
322
325
328
331
334
336
339
342
344
347
349
352
354
356
359
361
363
365
367
369
371
373
375
376
378
380
381
383
384
386
387
388
390
391
392
393
395
396
397
398
399
400
401
402
402
403
404
404
405
405
406
406
406
406
406
406
406
405
405
404
403
402
401
400
399
397
396
394
392
391
389
386
384
382
379
377
374
371
368
365
362
359
356
352
349
346
342
338
335
331
327
323
320
316
312
308
304
300
296
292
288
284
280
276
272
268
264
260
255
251
247
243
238
234
230
225
221
216
212
207
203
199
194
190
185
181
176
172
167
163
158
154
149
144
140
135
131
126
122
117
113
108
104
99
95
90
85
81
76
72
67
63
58
54
49
45
40
36
32
27
23
19
15
11
6
2
-2
-6
-10
-14
-17
-21
-25
-29
-33
-36
-40
-43
-47
-50
-54
-57
-60
-64
-67
-70
-73
-76
-79
-81
-84
-87
-89
-91
-94
-96
-98
-100
-101
-103
-105
-106
-107
-108
-109
-110
-111
-111
-112
-112
-112
-112
-112
-112
-111
-111
-110
-109
-108
-107
-105
-104
-102
-100
-99
-97
-94
-92
-90
-87
-84
-82
-79
-76
-73
-70
-66
-63
-60
-56
-53
-49
-46
-42
-39
-35
-32
-28
-24
-21
-17
-13
-10
-6
-3
1
4
8
11
15
18
22
25
28
31
35
38
41
44
47
51
54
57
60
63
66
68
71
74
77
80
82
85
87
90
92
95
97
100
102
104
106
108
110
112
114
116
117
119
121
122
123
124
125
126
127
128
128
129
129
129
129
129
129
128
128
128
127
126
125
124
123
122
121
119
118
116
115
113
111
110
108
106
104
102
100
98
96
94
92
90
88
86
83
81
79
77
75
73
71
69
67
65
63
62
60
58
57
55
53
52
50
49
48
47
45
44
43
42
42
41
40
40
40
40
40
40
40
40
41
42
43
44
45
47
48
50
52
54
56
58
61
64
66
69
72
76
79
82
86
89
93
97
101
104
108
112
116
120
124
129
133
137
141
145
149
153
158
162
166
170
174
178
182
186
190
194
198
202
206
209
213
216
220
223
226
230
233
236
239
241
244
246
249
251
253
255
257
259
261
262
264
265
266
268
269
269
270
271
271
272
272
273
273
273
273
273
272
272
271
271
270
270
269
268
267
266
265
264
263
262
261
260
259
258
256
255
254
253
252
251
250
249
248
248
247
246
246
245
245
245
244
244
244
244
245
245
245
246
246
247
248
248
249
250
252
253
254
256
257
259
261
263
265
267
269
271
273
275
278
280
283
285
288
290
293
295
298
301
303
306
309
312
314
317
320
323
326
328
331
334
337
339
342
345
348
350
353
356
359
362
364
367
370
372
375
378
380
383
385
388
390
393
395
397
399
401
403
405
407
409
411
412
414
415
417
418
419
420
421
422
422
423
423
424
424
424
424
424
424
423
423
422
422
421
420
419
418
417
416
415
413
412
410
409
407
405
403
401
398
396
394
391
388
386
383
380
377
374
371
368
365
361
358
355
352
348
345
342
338
335
332
328
325
322
318
315
312
309
306
303
300
297
294
291
289
286
284
281
279
277
275
273
271
269
268
266
265
263
262
261
260
259
258
258
257
257
257
257
257
257
257
257
257
258
258
259
259
260
261
262
263
264
265
266
267
268
269
271
272
273
275
276
278
279
281
282
284
285
287
288
290
291
293
294
295
297
298
300
301
303
304
305
307
308
310
311
313
314
315
317
318
320
321
322
324
325
326
328
329
330
331
332
333
335
336
337
338
338
339
340
341
342
342
343
343
344
344
344
345
345
345
345
344
344
344
343
343
342
341
340
339
338
337
335
334
332
330
328
326
324
321
319
316
313
310
307
304
300
297
293
289
285
281
276
272
267
263
258
253
248
243
238
232
227
221
215
210
204
198
192
186
180
174
168
162
155
149
143
136
130
124
118
111
105
99
93
87
81
75
69
63
58
52
47
41
36
31
26
21
16
12
7
3
-1
-5
-9
-13
-17
-20
-23
-26
-29
-32
-35
-38
-40
-42
-45
-47
-48
-50
-52
-53
-54
-55
-56
-57
-58
-58
-59
-59
-59
-59
-59
-59
-58
-57
-57
-56
-55
-54
-52
-51
-49
-47
-45
-43
-41
-39
-36
-34
-31
-28
-25
-22
-19
-16
-12
-9
-5
-2
2
6
9
13
17
21
25
29
33
37
41
45
49
54
58
62
66
71
75
79
84
88
93
97
101
106
110
114
119
123
127
131
135
139
143
147
151
155
159
163
166
170
173
177
180
183
186
189
192
195
198
200
203
205
207
209
211
213
215
217
218
220
221
222
223
224
225
226
226
227
227
228
228
228
228
228
228
228
228
228
227
227
227
227
226
226
225
225
224
224
223
223
222
222
221
221
220
220
220
219
219
218
218
217
217
216
216
216
215
215
214
214
214
213
213
213
212
212
212
211
211
211
210
210
210
209
209
209
208
208
208
208
207
207
207
207
207
207
206
206
206
206
207
207
207
207
208
208
208
209
210
211
211
212
213
215
216
217
219
220
222
224
226
228
231
233
236
239
241
244
248
251
255
258
262
266
270
274
278
283
288
292
297
302
307
313
318
323
329
335
340
346
352
358
364
370
376
382
388
394
401
407
413
419
424
430
436
442
447
453
458
464
469
474
479
484
489
494
498
502
506
510
514
518
521
525
528
531
533
536
538
540
542
544
546
547
548
549
550
550
551
551
551
550
550
549
548
547
546
544
543
541
539
536
534
532
529
526
523
520
516
513
509
506
502
498
494
490
486
481
477
472
468
463
458
454
449
444
439
434
429
424
420
415
410
405
400
395
390
385
380
375
370
366
361
356
351
347
342
337
333
328
324
320
315
311
307
303
299
295
291
288
284
281
277
274
271
268
265
262
259
257
254
252
250
248
246
244
242
240
238
237
235
234
233
232
231
230
229
228
227
226
226
225
225
225
224
224
224
224
224
224
224
224
224
225
225
225
226
226
226
227
227
228
228
228
229
229
230
230
230
231
231
231
231
231
232
232
232
231
231
231
231
230
230
229
228
227
227
225
224
223
222
220
219
217
215
213
211
209
207
205
203
201
198
196
193
191
188
186
183
181
178
175
172
170
167
164
162
159
156
154
151
148
146
143
140
138
135
133
130
128
125
123
120
117
115
112
110
107
105
102
100
97
94
92
89
87
84
81
79
76
73
71
68
65
63
60
58
55
52
50
47
45
42
40
37
35
32
30
28
26
24
21
19
17
16
14
12
10
9
7
6
4
3
2
1
0
-1
-1
-2
-3
-3
-3
-4
-4
-4
-4
-4
-3
-3
-3
-2
-2
-1
0
0
1
2
3
4
5
6
7
8
9
10
12
13
14
15
17
18
19
21
22
23
25
26
27
29
30
31
33
34
35
37
38
39
41
42
43
45
46
47
49
50
51
53
54
55
57
58
59
61
62
63
64
65
67
68
69
70
71
71
72
73
74
74
75
76
76
76
77
77
77
78
78
78
78
78
77
77
77
77
76
76
75
75
74
73
73
72
71
70
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
41
40
39
39
38
38
38
37
37
37
37
37
37
37
37
38
38
39
39
40
41
42
43
44
46
47
49
51
52
54
56
59
61
63
66
69
71
74
77
80
84
87
91
94
98
102
106
110
115
119
123
128
132
137
142
147
152
156
161
166
172
177
182
187
192
197
202
207
212
217
222
226
231
236
241
245
250
254
258
263
267
271
275
279
283
287
291
294
298
301
304
308
311
314
317
319
322
324
326
329
331
332
334
336
337
338
340
341
341
342
343
343
343
343
343
343
343
342
342
341
340
339
338
337
336
335
333
331
330
328
326
324
323
321
319
317
315
313
311
309
307
305
303
301
299
297
295
293
292
290
288
287
285
284
282
281
280
278
277
276
275
274
274
273
272
271
271
270
270
270
270
270
269
270
270
270
270
270
271
271
272
273
273
274
275
276
277
279
280
281
283
284
286
288
290
292
294
296
298
300
302
305
307
310
312
315
317
320
323
325
328
331
333
336
339
341
344
346
349
351
354
356
359
361
363
365
367
369
371
373
375
377
379
380
382
383
385
386
387
388
389
390
391
392
393
393
394
394
395
395
395
395
395
395
395
395
394
394
393
393
392
392
391
390
389
388
387
386
385
384
383
382
381
380
379
378
376
375
374
373
372
371
369
368
367
366
365
364
363
362
361
360
359
358
357
357
356
355
354
354
353
353
352
352
351
351
350
350
350
349
349
349
349
348
348
348
348
348
348
348
347
347
347
347
347
347
347
348
348
348
348
348
348
349
349
349
350
350
351
351
352
353
353
354
355
355
356
357
358
359
360
361
363
364
365
367
368
370
371
373
374
376
378
380
382
384
386
388
390
392
394
396
399
401
403
405
408
410
412
415
417
419
422
424
426
429
431
434
436
439
441
444
446
449
451
453
456
458
461
463
465
468
470
472
474
476
478
480
482
483
485
486
488
489
490
491
492
493
494
495
495
496
496
496
496
496
496
496
495
495
494
493
492
491
490
489
488
486
485
483
481
479
478
476
474
471
469
467
465
462
460
457
455
452
449
447
444
441
439
436
433
430
427
424
421
418
416
413
410
407
404
401
398
395
392
390
387
384
382
379
376
374
371
369
366
364
362
359
357
355
352
350
348
346
344
341
339
337
335
333
331
329
327
325
323
321
319
317
315
313
311
309
307
305
304
302
300
299
297
295
294
293
291
290
289
288
286
285
284
283
283
282
281
280
279
279
278
278
277
276
276
275
275
275
274
274
274
273
273
273
272
272
272
271
271
271
271
270
270
269
269
269
268
268
267
266
266
265
264
264
263
262
261
260
259
258
256
255
254
252
251
249
248
246
244
242
240
238
236
234
232
229
227
224
222
219
216
214
211
208
205
202
199
196
193
189
186
183
180
176
173
170
167
163
160
157
154
151
148
144
141
139
136
133
130
128
125
123
120
118
116
114
112
111
109
108
107
105
105
104
103
103
103
103
103
103
104
105
106
107
109
110
112
114
117
119
122
125
128
131
134
138
142
146
150
154
159
163
168
173
178
183
188
194
199
205
210
216
222
227
233
239
245
251
257
262
268
274
280
285
291
297
302
308
313
319
324
329
335
340
345
350
354
359
364
368
372
377
381
385
389
392
396
400
403
406
409
412
415
418
421
424
426
428
431
433
435
437
439
441
442
444
445
447
448
449
451
452
453
453
454
455
456
456
457
457
457
458
458
458
458
458
458
458
458
457
457
457
457
456
456
455
455
455
454
453
453
452
452
451
450
450
449
448
447
446
445
444
443
442
441
440
439
438
437
436
435
433
432
431
430
428
427
425
424
422
421
419
418
416
414
412
410
409
407
405
403
400
398
396
394
392
389
387
385
382
380
377
375
372
370
367
365
362
359
357
354
351
349
346
343
341
338
335
332
330
327
324
321
318
315
312
309
306
303
300
297
294
291
288
285
282
278
275
272
269
265
262
259
255
252
248
245
241
237
234
230
226
222
218
215
211
207
203
199
194
190
186
182
178
173
169
164
160
156
151
147
142
138
133
129
124
120
115
111
106
102
98
94
89
85
81
77
73
69
66
62
58
55
52
48
45
42
40
37
34
32
29
27
25
23
21
20
18
17
16
15
14
13
12
12
11
11
11
11
11
11
12
12
13
14
15
16
17
18
19
21
22
24
26
27
29
31
33
35
38
40
42
45
47
50
52
55
57
60
63
65
68
71
73
76
79
81
84
87
89
92
94
97
99
101
104
106
108
110
113
115
117
119
121
122
124
126
127
129
130
132
133
134
135
136
137
138
139
140
140
141
141
142
142
142
143
143
143
143
143
143
143
142
142
142
141
141
140
140
139
138
138
137
136
135
134
133
132
131
129
128
127
125
124
122
121
119
117
115
114
112
110
108
106
104
101
99
97
95
93
90
88
86
83
81
79
76
74
72
70
67
65
63
61
59
57
55
53
52
50
49
47
46
45
44
43
42
41
41
40
40
39
39
39
39
40
40
40
41
42
43
44
45
46
47
48
50
51
53
55
57
59
61
63
65
67
70
72
75
78
81
83
86
89
93
96
99
102
106
109
112
116
119
123
126
130
134
137
141
144
148
151
155
158
162
165
168
172
175
178
181
185
188
191
194
196
199
202
205
207
210
212
215
217
219
222
224
226
228
230
231
233
235
236
238
239
241
242
243
244
246
247
248
249
250
251
251
252
253
254
254
255
256
256
257
257
258
258
258
258
258
259
259
258
258
258
258
257
257
256
256
255
254
253
252
251
250
249
248
246
245
243
241
240
238
236
234
232
229
227
225
222
220
217
215
212
209
206
203
200
197
194
190
187
184
180
177
173
170
166
163
159
155
152
148
144
140
137
133
129
126
122
118
114
110
107
103
99
96
92
88
85
81
78
74
71
67
64
60
57
54
50
47
44
41
38
35
32
29
26
24
21
18
16
13
11
9
6
4
2
0
-2
-4
-6
-8
-9
-11
-13
-14
-15
-17
-18
-19
-20
-21
-22
-23
-24
-25
-25
-26
-26
-27
-27
-27
-28
-28
-28
-28
-28
-28
-28
-28
-28
-28
-27
-27
-27
-27
-26
-26
-26
-25
-25
-25
-24
-24
-24
-23
-23
-23
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-22
-23
-23
-23
-24
-24
-25
-25
-26
-27
-27
-28
-29
-30
-31
-32
-32
-33
-35
-36
-37
-38
-39
-40
-41
-42
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-57
-58
-59
-59
-59
-60
-60
-60
-60
-60
-60
-59
-59
-58
-58
-57
-56
-55
-54
-53
-51
-50
-48
-47
-45
-43
-41
-39
-36
-34
-31
-29
-26
-23
-20
-17
-14
-10
-7
-3
0
4
8
12
16
20
24
28
33
37
42
46
51
56
60
65
70
75
80
85
91
96
101
106
112
117
123
128
134
139
145
150
156
161
167
173
178
184
189
195
200
206
211
217
222
228
233
238
244
249
254
260
265
270
275
280
286
291
296
301
306
311
316
320
325
330
335
339
344
349
353
358
362
367
371
376
380
384
388
392
397
400
404
408
412
416
419
423
426
430
433
436
439
442
445
448
451
454
456
459
461
464
466
468
470
472
474
476
478
479
481
482
483
484
485
486
487
488
488
489
489
489
490
490
490
489
489
489
489
488
487
487
486
485
484
483
482
481
480
479
478
476
475
474
472
471
470
468
467
465
464
463
461
460
459
458
456
455
454
453
452
451
450
449
448
448
447
446
446
445
444
444
444
443
443
443
442
442
442
442
442
442
442
442
442
443
443
443
444
444
445
445
446
446
447
448
449
450
451
452
453
454
455
456
457
459
460
461
463
464
466
467
469
470
472
473
475
477
478
480
481
483
485
486
488
489
491
492
494
495
496
498
499
500
501
502
503
504
505
505
506
506
507
507
508
508
508
508
508
508
508
508
508
507
507
506
506
505
504
503
502
501
500
499
498
496
495
493
492
490
488
486
485
483
481
478
476
474
472
469
467
465
462
460
457
454
451
449
446
443
440
437
434
431
428
425
421
418
415
412
408
405
402
398
395
391
388
384
381
377
373
370
366
363
359
355
352
348
345
341
337
334
330
327
323
320
316
313
310
306
303
300
297
294
291
288
285
282
279
276
273
271
268
265
263
261
258
256
253
251
249
247
245
243
241
239
237
235
233
231
229
227
225
224
222
220
219
217
215
214
212
210
209
207
206
204
203
201
200
198
197
196
194
193
192
190
189
188
187
185
184
183
182
181
180
179
178
177
176
175
175
174
173
173
172
171
171
170
170
169
169
169
168
168
167
167
167
166
166
165
165
165
164
164
163
163
162
161
161
160
159
158
158
157
156
155
154
152
151
150
149
147
146
144
143
141
140
138
136
134
133
131
129
127
125
123
121
119
117
115
112
110
108
106
104
101
99
97
95
92
90
88
85
83
81
78
76
74
72
69
67
65
62
60
58
56
53
51
49
47
45
43
41
38
37
35
33
31
29
27
26
24
22
21
20
18
17
16
15
13
12
11
11
10
9
8
8
7
7
6
6
6
5
5
5
5
5
5
5
5
5
5
6
6
6
7
7
7
8
8
9
9
9
10
10
11
11
11
12
12
13
13
13
14
14
14
14
15
15
15
15
15
15
15
15
15
15
15
14
14
14
14
13
13
13
12
12
11
11
11
10
10
9
9
9
8
8
8
7
7
7
7
7
7
7
7
8
8
8
9
9
10
10
11
12
13
14
15
16
18
19
20
22
24
25
27
29
31
33
36
38
40
43
45
48
51
54
57
60
63
66
69
73
76
80
83
87
91
95
99
103
107
112
116
120
125
130
134
139
144
149
154
159
164
169
174
179
184
189
194
199
204
209
214
220
225
230
235
240
245
250
255
259
264
269
273
278
282
287
291
296
300
304
308
312
316
320
323
327
331
334
338
341
344
347
350
353
356
359
362
364
367
370
372
374
377
379
381
383
385
387
389
391
393
395
397
399
401
402
404
406
408
410
412
413
415
417
419
421
423
425
427
430
432
434
436
439
441
443
446
448
451
453
456
459
461
464
467
470
472
475
478
481
484
487
490
493
496
499
502
505
508
511
513
516
519
522
525
527
530
533
535
538
540
543
545
548
550
552
554
556
558
560
561
563
565
566
567
568
569
570
571
571
572
572
572
572
572
571
571
570
569
568
566
565
563
561
559
557
555
552
550
547
544
541
538
534
531
527
523
519
515
511
507
502
497
493
488
483
478
473
467
462
457
451
445
440
434
428
422
416
410
404
398
392
385
379
373
367
360
354
348
342
336
329
323
317
311
305
299
294
288
282
277
271
266
261
256
251
246
241
236
232
227
223
219
215
212
208
205
201
198
195
193
190
188
185
183
182
180
178
177
176
175
175
174
174
174
174
174
174
175
175
176
177
178
179
181
182
184
186
187
189
192
194
196
198
201
203
206
208
211
214
217
219
222
225
228
231
234
237
240
243
246
249
252
255
258
261
263
266
269
272
275
277
280
282
285
287
290
292
294
297
299
301
303
305
307
308
310
311
313
314
316
317
318
319
320
320
321
322
322
322
322
322
322
322
321
321
320
319
319
318
316
315
314
312
310
308
306
304
302
299
297
294
291
288
285
282
278
275
271
267
264
260
255
251
247
243
238
234
229
224
219
215
210
205
200
195
190
185
180
175
170
165
160
155
150
145
140
135
130
125
120
116
111
107
102
98
94
89
85
82
78
74
71
67
64
61
58
55
53
50
48
46
44
42
41
39
38
37
36
36
35
35
35
35
36
36
37
38
39
40
42
44
46
48
50
53
55
58
61
64
68
71
75
78
82
86
90
94
98
102
106
111
115
119
124
128
133
137
142
146
150
155
159
164
168
172
176
181
185
189
193
196
200
204
207
211
214
217
220
223
226
229
232
234
237
239
241
243
245
247
248
250
251
252
253
254
255
256
256
257
257
257
257
257
257
257
257
256
256
255
255
254
253
252
251
250
249
248
247
246
245
244
242
241
240
238
237
236
234
233
231
230
228
227
225
223
222
220
219
217
215
214
212
210
209
207
205
203
202
200
198
196
195
193
191
189
188
186
184
183
181
179
178
176
174
173
171
170
168
167
166
164
163
162
160
159
158
157
156
155
154
153
153
152
151
151
150
150
149
149
148
148
148
148
148
148
148
148
148
148
148
149
149
150
150
151
151
152
153
154
155
156
157
158
159
160
162
163
164
166
167
169
171
172
174
176
178
179
181
183
185
187
189
191
193
195
197
199
201
204
206
208
210
213
215
217
220
222
225
227
230
232
235
237
240
243
245
248
251
254
256
259
262
265
268
271
274
277
280
283
286
289
292
295
298
301
304
308
311
314
317
320
323
327
330
333
336
339
342
345
348
351
353
356
359
362
364
367
370
372
374
377
379
381
384
386
388
390
391
393
395
397
398
400
401
403
404
405
406
407
408
409
410
410
411
412
412
412
413
413
413
413
413
413
413
413
412
412
411
410
410
409
408
407
406
404
403
402
400
399
397
395
394
392
390
388
386
383
381
379
377
374
372
369
367
364
362
359
357
354
351
348
346
343
340
337
334
332
329
326
323
320
318
315
312
309
307
304
302
299
296
294
292
289
287
285
283
281
279
277
275
274
272
271
269
268
267
266
265
264
263
263
262
262
262
262
262
262
262
262
263
263
264
265
265
266
267
269
270
271
273
275
276
278
280
282
284
286
288
291
293
295
298
301
303
306
309
312
315
318
321
324
327
330
333
336
339
342
345
349
352
355
358
361
364
367
370
373
376
379
382
385
388
391
393
396
399
401
404
406
409
411
413
416
418
420
422
424
426
428
429
431
433
434
435
437
438
439
440
441
442
443
444
445
445
446
446
446
447
447
447
447
447
447
446
446
446
445
445
444
444
443
442
442
441
440
439
438
437
436
434
433
432
430
429
428
426
424
423
421
419
418
416
414
412
410
408
406
404
401
399
397
395
392
390
388
385
383
380
378
376
373
371
368
366
363
361
358
356
353
351
348
346
343
341
338
335
333
330
328
325
322
320
317
314
311
309
306
303
301
298
295
292
289
287
284
281
278
275
272
269
266
264
261
258
255
252
249
246
243
240
237
234
231
229
226
223
220
217
214
211
209
206
203
200
198
195
193
190
188
185
183
181
179
176
174
173
171
169
167
166
164
163
161
160
159
158
157
156
155
155
154
154
153
153
153
153
153
153
153
154
154
155
155
156
156
157
158
159
160
161
162
163
164
165
166
168
169
170
172
173
175
176
177
179
180
182
184
185
187
188
190
191
193
194
196
197
199
200
202
203
205
206
208
209
210
212
213
214
216
217
218
219
220
221
222
223
224
225
226
227
228
228
229
230
230
231
231
232
232
232
233
233
233
233
233
233
232
232
232
231
231
230
229
229
228
227
226
225
224
223
221
220
219
218
216
215
213
212
210
208
207
205
203
202
200
198
196
194
193
191
189
187
185
183
182
180
178
176
175
173
171
170
168
166
165
163
162
160
159
157
156
155
153
152
151
149
148
147
146
145
144
143
142
142
141
140
140
139
138
138
138
137
137
137
137
137
137
137
137
137
137
138
138
139
140
140
141
142
143
144
145
146
148
149
151
152
154
155
157
159
161
163
165
167
169
171
173
175
178
180
183
185
187
190
192
195
197
200
202
205
208
210
213
215
217
220
222
225
227
229
231
234
236
238
240
242
244
246
248
250
252
253
255
257
259
260
262
264
265
267
268
270
271
273
274
275
277
278
279
281
282
283
284
286
287
288
289
290
292
293
294
295
296
298
299
300
301
303
304
305
307
308
310
311
313
314
316
317
319
320
322
323
325
327
328
330
332
333
335
337
338
340
342
343
345
347
348
350
352
353
355
357
358
360
361
363
365
366
368
369
370
372
373
375
376
377
379
380
381
382
384
385
386
387
388
389
390
391
391
392
393
393
394
395
395
396
396
397
397
397
398
398
398
398
398
398
398
398
398
398
398
398
398
398
398
398
397
397
397
397
397
397
397
397
397
397
397
397
398
398
398
398
399
399
400
401
401
402
403
403
404
405
406
407
408
409
410
412
413
414
415
417
418
419
421
422
424
425
426
428
429
431
432
433
435
436
437
439
440
441
443
444
445
446
447
448
449
450
451
452
453
453
454
455
455
455
456
456
456
456
457
457
456
456
456
455
455
454
454
453
452
451
450
449
448
446
445
443
442
440
438
436
434
432
430
428
426
423
421
419
416
413
411
408
405
402
399
396
393
390
387
384
380
377
374
370
367
363
360
356
353
349
346
342
338
335
331
328
324
320
317
313
310
306
303
299
296
293
289
286
283
280
276
273
270
267
264
261
258
256
253
251
248
246
243
241
239
237
235
233
232
230
229
227
226
225
224
223
222
221
221
220
220
219
219
219
219
219
219
220
220
221
221
222
223
224
225
226
227
229
230
232
233
235
237
239
241
243
245
247
249
252
254
256
259
261
264
266
269
272
275
277
280
283
286
288
291
294
296
299
302
304
307
309
312
314
317
319
321
323
325
327
329
330
332
334
335
336
338
339
340
341
342
342
343
344
344
344
345
345
345
345
345
344
344
344
343
342
342
341
340
339
338
337
336
335
334
333
332
330
329
328
326
325
324
322
321
320
319
317
316
315
314
312
311
310
309
308
307
307
306
305
304
304
303
303
303
302
302
302
302
302
303
303
304
304
305
306
307
308
310
311
313
314
316
318
320
322
324
327
329
332
334
337
340
343
346
349
352
356
359
363
366
370
374
377
381
385
389
393
398
402
406
410
415
419
423
428
432
436
441
445
450
454
458
463
467
471
476
480
484
488
492
496
500
504
508
511
515
518
522
525
528
531
534
537
539
542
545
547
549
551
553
555
557
558
559
561
562
563
564
565
565
566
566
566
566
566
566
566
566
565
565
564
563
562
561
560
559
558
556
555
553
551
550
548
546
544
542
539
537
535
532
530
527
524
521
518
515
512
509
505
502
499
495
491
488
484
480
476
472
468
464
459
455
451
446
442
438
433
429
424
419
415
410
406
401
397
392
387
383
378
374
370
365
361
357
353
349
345
341
338
334
330
327
324
320
317
314
311
308
306
303
300
298
296
294
292
290
289
287
286
284
283
282
282
281
280
280
280
279
279
279
280
280
281
281
282
283
284
285
286
287
288
290
291
293
295
296
298
300
302
304
306
308
310
312
314
316
318
320
322
325
327
329
331
333
335
336
338
340
342
343
345
346
348
349
350
351
352
353
353
354
354
355
355
355
355
354
354
354
353
352
351
350
349
348
346
345
343
341
339
337
334
332
329
327
324
321
318
315
311
308
305
301
297
294
290
286
282
278
273
269
265
260
256
251
247
242
237
232
227
222
217
212
207
202
197
192
187
182
176
171
166
161
156
150
145
140
135
130
125
120
115
111
106
101
97
92
88
84
80
76
72
68
64
61
57
54
51
48
46
43
40
38
36
34
32
30
29
28
26
25
25
24
23
23
23
23
23
23
24
24
25
26
27
28
30
31
33
34
36
38
40
42
45
47
50
52
55
57
60
63
66
69
72
75
79
82
85
88
92
95
98
101
105
108
111
114
117
120
123
126
129
132
135
137
140
143
145
147
150
152
154
156
158
159
161
163
164
165
167
168
169
170
170
171
172
172
173
173
173
173
174
174
174
173
173
173
173
172
172
171
171
170
169
169
168
167
166
165
164
163
162
161
160
159
158
157
156
154
153
152
151
150
149
148
147
146
145
143
143
142
141
140
139
138
137
137
136
136
135
135
134
134
133
133
133
133
132
132
132
132
132
133
133
133
133
133
134
134
135
135
136
136
137
138
138
139
140
141
142
142
143
144
145
146
147
148
150
151
152
153
154
156
157
158
159
161
162
164
165
167
168
170
171
173
174
176
177
179
181
182
184
185
187
189
190
192
193
195
197
198
200
202
203
205
206
208
210
211
213
215
216
218
220
221
223
225
226
228
230
231
233
235
236
238
240
241
243
245
246
248
250
251
253
254
256
257
259
260
262
263
264
266
267
268
269
270
271
273
274
275
276
276
277
278
279
279
280
281
281
282
282
282
283
283
283
283
283
283
283
283
283
283
283
282
282
282
281
281
280
279
278
278
277
276
275
274
273
272
270
269
268
266
265
264
262
261
259
257
256
254
252
250
248
246
245
243
241
239
236
234
232
230
228
226
224
221
219
217
215
213
210
208
206
204
202
199
197
195
193
191
189
187
185
183
181
179
177
175
173
171
169
167
165
163
161
159
158
156
154
152
150
149
147
145
143
142
140
139
137
136
134
133
131
130
129
127
126
125
123
122
121
120
119
118
117
116
115
115
114
113
112
112
111
111
110
109
109
108
108
108
107
107
106
106
106
105
105
104
104
104
103
103
103
102
102
101
101
101
100
100
99
99
99
98
98
98
97
97
97
96
96
96
95
95
95
95
95
94
94
94
94
94
93
93
93
93
93
93
93
93
92
92
92
92
92
92
92
92
92
92
93
93
93
93
93
94
94
94
95
95
95
96
96
97
98
98
99
100
100
101
102
103
104
105
107
108
109
111
112
114
115
117
118
120
122
124
126
128
130
132
134
136
139
141
143
146
148
151
154
156
159
162
165
167
170
173
176
179
182
185
188
191
194
198
201
204
207
210
213
217
220
223
226
229
232
235
238
241
244
247
250
253
256
259
262
265
267
270
273
275
278
280
283
285
287
290
292
294
297
299
301
303
305
307
309
311
313
315
317
319
321
323
325
326
328
330
332
333
335
336
338
340
341
343
344
346
347
348
350
351
352
353
355
356
357
358
359
360
361
362
363
364
365
366
366
367
368
369
369
370
370
371
371
372
372
372
373
373
373
373
373
374
374
374
374
374
374
374
374
374
374
374
374
374
374
374
374
374
374
374
374
374
373
373
373
373
373
373
373
373
372
372
372
372
372
371
371
371
371
370
370
370
369
369
368
368
367
367
366
365
365
364
363
363
362
361
360
359
358
357
356
355
353
352
351
349
348
347
345
344
342
340
339
337
335
333
331
330
328
326
323
321
319
317
315
313
310
308
306
303
301
299
296
294
291
289
286
284
281
279
276
274
271
269
267
264
262
259
257
254
252
250
247
245
243
241
238
236
234
232
230
228
226
225
223
221
219
218
217
215
214
213
211
210
210
209
208
207
207
206
206
206
206
206
206
206
207
207
208
209
210
211
212
214
215
217
219
221
223
225
227
229
232
234
237
240
242
245
248
251
254
258
261
264
268
271
275
278
282
285
289
292
296
299
303
306
310
313
317
320
323
327
330
333
336
339
342
345
348
350
353
355
358
360
362
364
366
368
370
372
374
375
377
378
380
381
382
383
384
385
386
387
388
389
389
390
390
391
391
392
392
392
392
393
393
393
393
392
392
392
392
392
391
391
390
390
390
389
388
388
387
386
386
385
384
383
383
382
381
380
379
378
377
376
375
374
373
372
371
370
369
369
368
367
366
365
364
363
362
362
361
360
359
359
358
357
356
356
355
355
354
354
353
353
352
352
351
351
351
350
350
349
349
349
348
348
348
348
347
347
346
346
346
345
345
345
344
344
343
343
342
342
341
341
340
340
339
339
338
337
337
336
336
335
334
334
333
332
332
331
330
329
329
328
327
327
326
325
325
324
324
323
322
322
321
321
320
320
319
318
318
318
317
317
316
316
315
315
315
315
314
314
314
314
314
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
313
312
312
312
312
312
311
311
311
311
310
310
310
310
309
309
309
309
308
308
308
307
307
307
306
306
306
305
305
305
304
304
304
303
303
302
302
301
301
301
300
300
299
299
298
298
297
297
297
296
296
295
295
295
294
294
294
293
293
293
293
292
292
292
292
292
292
291
291
291
291
291
291
291
291
291
291
291
291
292
292
292
292
292
292
293
293
293
293
293
294
294
294
294
294
295
295
295
295
296
296
296
296
296
297
297
297
297
297
297
297
297
298
298
298
298
298
298
298
298
298
298
298
297
297
297
297
296
296
296
295
295
295
294
293
293
292
291
291
290
289
288
287
286
285
284
283
282
281
280
278
277
276
274
273
271
270
268
267
265
264
262
260
259
257
255
254
252
250
248
246
245
243
241
239
237
235
233
232
230
228
226
224
223
221
219
217
215
214
212
210
209
207
205
204
202
201
199
198
196
195
194
192
191
190
188
187
186
185
184
182
181
180
179
178
177
175
174
173
172
171
170
169
168
167
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
144
143
142
141
141
140
140
139
138
138
138
137
137
137
137
136
136
136
136
136
137
137
137
137
138
138
139
139
140
141
141
142
143
144
145
146
147
148
149
150
152
153
154
155
157
158
159
161
162
164
165
167
168
170
171
173
175
176
178
180
181
183
185
187
188
190
192
194
195
197
199
201
202
204
206
208
209
211
213
214
216
218
219
221
223
224
225
227
228
230
231
232
233
234
235
236
237
238
239
240
240
241
242
242
243
243
244
244
244
244
244
244
244
244
244
244
244
244
244
243
243
243
242
242
241
241
240
240
239
239
238
238
237
237
236
236
235
235
234
234
234
233
233
233
233
232
232
232
232
232
233
233
233
234
234
235
235
236
237
238
239
240
241
242
243
245
246
248
250
251
253
255
257
259
261
264
266
268
271
274
276
279
282
285
287
290
294
297
300
303
306
310
313
316
320
323
326
330
333
337
341
344
348
351
355
358
362
365
369
372
376
379
383
386
389
393
396
399
402
405
408
412
415
417
420
423
426
429
431
434
436
439
441
444
446
448
450
452
454
456
458
460
461
463
465
466
467
469
470
471
472
473
474
475
476
476
477
477
478
478
478
478
478
478
478
478
477
477
476
476
475
474
474
473
472
471
470
468
467
466
465
463
462
460
459
457
456
454
453
451
450
448
446
445
443
442
440
439
437
436
434
433
432
430
429
428
427
426
425
424
423
422
421
420
420
419
418
418
417
417
416
416
415
415
415
414
414
414
414
413
413
413
413
413
413
413
412
412
412
412
412
412
412
412
411
411
411
411
411
411
410
410
410
410
409
409
409
409
408
408
408
407
407
407
406
406
406
405
405
404
404
403
403
402
401
401
400
399
399
398
397
396
396
395
394
393
392
391
390
389
388
387
386
385
384
383
382
381
380
379
377
376
375
374
373
371
370
369
368
366
365
364
362
361
359
358
357
355
354
352
351
349
347
346
344
343
341
339
337
336
334
332
330
328
326
324
323
321
319
317
314
312
310
308
306
304
302
300
297
295
293
290
288
286
283
281
279
276
274
271
269
266
264
261
259
256
254
251
249
246
244
241
239
236
233
231
228
226
223
221
218
216
213
211
208
206
204
201
199
197
194
192
190
188
186
184
182
180
178
176
174
173
171
169
168
166
165
164
163
161
160
159
158
158
157
156
155
155
154
154
153
153
153
152
152
152
152
152
152
152
152
152
152
152
152
152
153
153
153
153
153
154
154
154
154
155
155
155
155
155
155
155
155
155
155
156
156
155
155
155
155
155
155
155
155
155
155
155
154
154
154
154
153
153
153
153
152
152
152
152
151
151
151
151
150
150
150
150
149
149
149
149
148
148
148
148
148
148
148
147
147
147
147
147
147
147
147
148
148
148
148
148
148
149
149
150
150
151
151
152
152
153
154
155
156
157
158
159
160
161
163
164
165
167
169
170
172
174
175
177
179
181
183
186
188
190
192
195
197
200
202
205
208
211
213
216
219
222
225
228
231
234
238
241
244
247
250
254
257
260
263
267
270
273
276
280
283
286
289
292
295
298
301
304
307
310
313
316
319
321
324
327
329
332
334
336
339
341
343
345
348
350
352
353
355
357
359
360
362
363
365
366
367
369
370
371
372
373
374
374
375
376
376
377
377
377
377
377
377
377
377
377
377
376
376
376
375
374
374
373
372
371
370
369
368
367
366
365
364
362
361
360
358
357
355
354
352
350
349
347
345
343
342
340
338
336
334
332
330
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
273
271
269
268
266
264
262
261
259
257
256
254
253
251
250
248
247
246
244
243
242
241
240
239
238
237
236
236
235
234
234
233
233
232
232
231
231
231
231
230
230
230
230
230
231
231
231
231
232
232
232
233
233
234
234
235
236
236
237
238
239
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
269
270
271
272
272
273
273
274
274
275
275
275
275
275
275
275
275
275
274
274
273
272
272
271
270
269
267
266
265
263
261
260
258
256
254
251
249
247
244
241
239
236
233
230
226
223
220
216
213
209
206
202
198
194
191
187
183
179
175
171
167
162
158
154
150
146
142
138
134
130
126
122
118
114
110
106
102
99
95
91
88
85
81
78
75
72
69
66
63
61
58
56
53
51
49
47
45
43
42
40
39
37
36
35
34
34
33
33
32
32
32
32
32
32
32
33
34
34
35
36
37
38
39
41
42
44
46
47
49
51
53
56
58
60
63
66
68
71
74
77
80
83
87
90
93
97
100
104
107
111
115
118
122
126
130
134
137
141
145
149
153
157
161
165
169
172
176
180
184
188
191
195
199
202
206
209
213
216
219
222
226
229
232
235
237
240
243
245
248
250
252
254
256
258
260
262
263
265
266
267
268
269
270
271
271
272
272
273
273
273
273
273
273
272
272
272
271
270
270
269
268
267
266
265
264
263
262
260
259
258
256
255
253
252
250
249
247
246
244
243
241
239
238
236
234
233
231
229
228
226
224
223
221
220
218
216
215
213
212
210
209
207
206
204
203
202
200
199
198
197
195
194
193
192
191
190
189
188
187
186
186
185
184
183
183
182
182
181
181
180
180
179
179
179
178
178
178
178
178
178
178
178
178
178
178
179
179
179
179
180
180
181
181
182
182
183
183
184
185
186
187
187
188
189
190
191
192
194
195
196
197
198
200
201
202
204
205
206
208
209
211
212
214
215
217
218
220
221
223
224
226
227
229
230
232
233
235
236
238
239
240
242
243
244
246
247
248
249
250
251
253
254
255
256
256
257
258
259
260
260
261
262
262
263
263
263
264
264
264
264
265
265
265
265
265
265
264
264
264
264
264
263
263
263
262
262
261
261
260
260
259
259
258
258
257
257
256
256
255
255
254
254
253
253
252
252
252
251
251
251
251
250
250
250
250
250
250
250
250
250
250
251
251
251
252
252
253
253
254
254
255
256
256
257
258
259
260
261
262
263
264
265
267
268
269
271
272
273
275
277
278
280
281
283
285
287
288
290
292
294
296
298
300
302
303
305
307
309
311
313
315
317
319
321
322
324
326
328
329
331
333
334
336
337
339
340
341
343
344
345
346
347
348
349
349
350
351
351
352
352
353
353
353
353
353
353
353
353
353
352
352
351
351
350
350
349
348
347
347
346
345
344
343
341
340
339
338
337
335
334
333
331
330
329
328
326
325
324
322
321
320
319
318
317
316
314
313
312
311
311
310
309
308
307
306
306
305
304
304
303
303
302
302
301
301
300
300
299
299
298
298
297
297
296
296
296
295
295
294
294
294
293
293
293
292
292
292
291
291
291
291
290
290
290
290
290
290
290
290
290
290
290
290
290
290
290
291
291
291
291
292
292
292
293
293
293
294
294
295
295
296
296
297
297
298
299
299
300
301
302
303
304
305
306
307
308
309
310
311
313
314
315
317
318
320
321
323
324
326
327
329
331
333
334
336
338
340
342
344
345
347
349
351
353
355
357
359
361
363
365
367
369
371
373
375
377
378
380
382
384
386
388
390
392
394
395
397
399
401
402
404
406
408
409
411
413
414
416
417
419
420
422
423
425
426
428
429
430
431
433
434
435
436
437
438
439
440
441
442
443
444
445
445
446
447
447
448
449
449
450
450
451
451
451
452
452
452
452
453
453
453
453
453
453
453
453
453
453
452
452
452
452
451
451
451
451
450
450
450
450
449
449
449
448
448
448
447
447
447
447
446
446
446
446
446
445
445
445
445
445
445
445
445
445
445
445
445
445
445
445
446
446
446
446
446
447
447
447
448
448
448
449
449
449
450
450
451
451
452
452
453
453
453
454
454
455
455
456
456
457
457
458
458
459
459
460
460
461
461
461
462
462
462
463
463
463
464
464
464
464
464
464
464
464
464
464
464
464
464
464
463
463
463
463
462
462
461
461
460
460
459
459
458
457
456
456
455
454
453
452
451
450
449
448
447
446
445
444
443
441
440
439
437
436
435
433
432
430
429
428
426
424
423
421
420
418
417
415
413
411
410
408
406
404
403
401
399
397
395
394
392
390
388
386
384
382
380
378
377
375
373
371
369
367
365
363
361
359
357
355
353
351
349
348
346
344
342
340
338
337
335
333
332
330
329
327
326
324
323
322
320
319
318
317
316
315
314
313
312
312
311
310
310
309
309
309
309
308
308
308
308
308
308
309
309
309
309
310
310
311
311
312
312
313
314
314
315
316
317
317
318
319
320
321
322
322
323
324
325
326
327
327
328
329
330
331
331
332
333
333
334
335
335
336
336
337
337
338
338
338
339
339
339
339
340
340
340
340
340
340
340
340
340
339
339
339
339
338
338
338
337
337
336
335
335
334
334
333
332
331
331
330
329
328
327
326
325
324
323
322
320
319
318
317
316
314
313
312
310
309
308
306
305
303
302
300
299
297
296
294
293
291
290
288
287
285
284
282
281
279
278
276
275
274
273
271
270
269
268
267
266
265
264
264
263
262
262
261
261
260
260
260
260
259
259
259
260
260
260
261
261
262
262
263
264
265
266
267
268
269
270
272
273
275
276
278
280
282
284
286
288
291
293
296
298
301
303
306
309
312
315
317
320
324
327
330
333
336
339
343
346
349
353
356
359
363
366
369
373
376
379
382
386
389
392
395
398
402
405
408
411
414
416
419
422
425
427
430
433
435
437
440
442
444
446
448
450
452
454
456
457
459
460
462
463
464
466
467
468
469
470
471
472
472
473
474
474
475
475
476
476
476
476
476
477
477
477
477
477
476
476
476
476
475
475
474
474
473
473
472
471
471
470
469
468
467
466
465
464
463
462
461
460
458
457
456
455
453
452
451
450
448
447
446
445
443
442
441
440
438
437
436
435
434
433
432
431
430
429
428
428
427
426
426
425
425
424
424
423
423
422
422
422
421
421
421
420
420
419
419
419
418
418
417
417
417
416
416
416
415
415
414
414
414
413
413
412
412
412
411
411
411
410
410
410
409
409
408
408
408
407
407
407
406
406
405
405
405
404
404
404
403
403
403
402
402
401
401
401
400
400
400
399
399
399
398
398
398
397
397
397
396
396
395
395
395
394
394
394
393
393
393
392
392
392
391
391
391
390
390
390
389
389
389
388
388
388
387
387
387
386
386
386
385
385
385
384
384
384
383
383
383
382
382
382
381
381
381
380
380
380
380
379
379
379
378
378
378
377
377
377
376
376
376
375
375
375
374
374
374
374
373
373
373
372
372
372
371
371
371
371
370
370
370
369
369
369
368
368
368
368
367
367
367
366
366
366
365
365
365
365
364
364
364
363
363
363
363
362
362
362
361
361
361
361
360
360
360
359
359
359
359
358
358
358
358
357
357
357
356
356
356
356
355
355
355
355
354
354
354
353
353
353
353
352
352
352
352
351
351
351
351
350
350
350
349
349
349
349
348
348
348
348
347
347
347
347
346
346
346
346
345
345
345
345
344
344
344
344
343
343
343
343
342
342
342
342
341
341
341
341
340
340
340
340
340
339
339
339
339
338
338
338
338
337
337
337
337
336
336
336
336
336
335
335
335
335
334
334
334
334
333
333
333
333
333
332
332
332
332
331
331
331
331
331
330
330
330
330
330
329
329
329
329
328
328
328
328
328
327
327
327
327
327
326
326
326
326
325
325
325
325
325
324
324
324
324
324
323
323
323
323
323
322
322
322
322
322
321
321
321
321
321
320
320
320
320
320
319
319
319
319
319
319
318
318
318
318
318
317
317
317
317
317
316
316
316
316
316
316
315
315
315
315
315
314
314
314
314
314
314
313
313
313
313
313
313
312
312
312
312
312
311
311
311
311
311
311
310
310
310
310
310
310
309
309
309
309
309
309
308
308
308
308
308
308
307
307
307
307
307
307
307
306
306
306
306
306
306
305
305
305
305
305
305
304
304
304
304
304
304
304
303
303
303
303
303
303
303
302
302
302
302
302
302
302
301
301
301
301
301
301
301
300
300
300
300
300
300
300
299
299
299
299
299
299
299
298
298
298
298
298
298
298
297
297
297
297
297
297
297
297
296
296
296
296
296
296
296
296
295
295
295
295
295
295
295
295
294
294
294
294
294
294
294
294
293
293
293
293
293
293
293
293
292
292
292
292
292
292
292
292
292
291
291
291
291
291
291
291
291
291
290
290
290
290
290
290
290
290
290
289
289
289
289
289
289
289
289
289
288
288
288
288
288
288
288
288
288
288
287
287
287
287
287
287
287
287
287
287
286
286
286
286
286
286
286
286
286
286
285
285
285
285
285
285
285
285
285
285
285
284
284
284
284
284
284
284
284
284
284
284
283
283
283
283
283
283
283
283
283
283
283
283
282
282
282
282
282
282
282
282
282
282
282
282
281
281
281
281
281
281
281
281
281
281
281
281
281
280
280
280
280
280
280
280
280
280
280
280
280
280
280
279
279
279
279
279
279
279
279
279
279
279
279
279
279
279
278
278
278
278
278
278
278
278
278
278
278
278
278
278
278
277
277
277
277
277
277
277
277
277
277
277
277
277
277
277
277
277
276
276
276
276
276
276
276
276
276
276
276
276
276
276
276
276
276
276
275
275
275
275
275
275
275
275
275
275
275
275
275
275
275
275
275
275
275
275
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
274
273
273
273
273
273
273
273
273
273
273
273
273
273
273
273
273
273
273
273
273
273
273
273
273
273
273
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
272
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
271
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
270
269
269
269
269
269
269
269
269
269
269
269
269
269
269
269
269
269
269
269
269
269
269
269
