All Downloads are FREE. Search and download functionalities are using the official Maven repository.

data.distances.dd Maven / Gradle / Ivy

There is a newer version: 2.0.1.0
Show newest version
0
1
0
2
1
0
3
2
1
0
4
3
2
1
0
5
4
3
2
1
0
6
5
4
3
2
1
0
7
6
5
4
3
2
1
0
8
7
6
5
4
3
2
1
0
9
8
7
6
5
4
3
2
1
0
10
9
8
7
6
5
4
3
2
1
0
11
10
9
8
7
6
5
4
3
2
1
0
12
11
10
9
8
7
6
5
4
3
2
1
0
13
12
11
10
9
8
7
6
5
4
3
2
1
0
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
0
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
14
0
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
34
22
0
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
70
58
38
0
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
90
78
58
22
0
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
102
90
70
34
14
0
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
1
15
35
71
91
103
0
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
15
1
23
59
79
91
16
0
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
35
23
1
39
59
71
36
24
0
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
71
59
39
1
23
35
72
60
40
0
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
91
79
59
23
1
15
92
80
60
24
0
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
103
91
71
35
15
1
104
92
72
36
16
0
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
2
16
36
72
92
104
1
17
37
73
93
105
0
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
16
2
24
60
80
92
17
1
25
61
81
93
18
0
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
36
24
2
40
60
72
37
25
1
41
61
73
38
26
0
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
72
60
40
2
24
36
73
61
41
1
25
37
74
62
42
0
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
92
80
60
24
2
16
93
81
61
25
1
17
94
82
62
26
0
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
104
92
72
36
16
2
105
93
73
37
17
1
106
94
74
38
18
0
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
3
17
37
73
93
105
2
18
38
74
94
106
1
19
39
75
95
107
0
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
17
3
25
61
81
93
18
2
26
62
82
94
19
1
27
63
83
95
20
0
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
37
25
3
41
61
73
38
26
2
42
62
74
39
27
1
43
63
75
40
28
0
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
73
61
41
3
25
37
74
62
42
2
26
38
75
63
43
1
27
39
76
64
44
0
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
93
81
61
25
3
17
94
82
62
26
2
18
95
83
63
27
1
19
96
84
64
28
0
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
105
93
73
37
17
3
106
94
74
38
18
2
107
95
75
39
19
1
108
96
76
40
20
0
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
4
18
38
74
94
106
3
19
39
75
95
107
2
20
40
76
96
108
1
21
41
77
97
109
0
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
18
4
26
62
82
94
19
3
27
63
83
95
20
2
28
64
84
96
21
1
29
65
85
97
22
0
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
38
26
4
42
62
74
39
27
3
43
63
75
40
28
2
44
64
76
41
29
1
45
65
77
42
30
0
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
74
62
42
4
26
38
75
63
43
3
27
39
76
64
44
2
28
40
77
65
45
1
29
41
78
66
46
0
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
94
82
62
26
4
18
95
83
63
27
3
19
96
84
64
28
2
20
97
85
65
29
1
21
98
86
66
30
0
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
106
94
74
38
18
4
107
95
75
39
19
3
108
96
76
40
20
2
109
97
77
41
21
1
110
98
78
42
22
0
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
5
19
39
75
95
107
4
20
40
76
96
108
3
21
41
77
97
109
2
22
42
78
98
110
1
23
43
79
99
111
0
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
19
5
27
63
83
95
20
4
28
64
84
96
21
3
29
65
85
97
22
2
30
66
86
98
23
1
31
67
87
99
24
0
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
39
27
5
43
63
75
40
28
4
44
64
76
41
29
3
45
65
77
42
30
2
46
66
78
43
31
1
47
67
79
44
32
0
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
75
63
43
5
27
39
76
64
44
4
28
40
77
65
45
3
29
41
78
66
46
2
30
42
79
67
47
1
31
43
80
68
48
0
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
95
83
63
27
5
19
96
84
64
28
4
20
97
85
65
29
3
21
98
86
66
30
2
22
99
87
67
31
1
23
100
88
68
32
0
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
107
95
75
39
19
5
108
96
76
40
20
4
109
97
77
41
21
3
110
98
78
42
22
2
111
99
79
43
23
1
112
100
80
44
24
0
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
6
20
40
76
96
108
5
21
41
77
97
109
4
22
42
78
98
110
3
23
43
79
99
111
2
24
44
80
100
112
1
25
45
81
101
113
0
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
20
6
28
64
84
96
21
5
29
65
85
97
22
4
30
66
86
98
23
3
31
67
87
99
24
2
32
68
88
100
25
1
33
69
89
101
26
0
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
40
28
6
44
64
76
41
29
5
45
65
77
42
30
4
46
66
78
43
31
3
47
67
79
44
32
2
48
68
80
45
33
1
49
69
81
46
34
0
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
76
64
44
6
28
40
77
65
45
5
29
41
78
66
46
4
30
42
79
67
47
3
31
43
80
68
48
2
32
44
81
69
49
1
33
45
82
70
50
0
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
96
84
64
28
6
20
97
85
65
29
5
21
98
86
66
30
4
22
99
87
67
31
3
23
100
88
68
32
2
24
101
89
69
33
1
25
102
90
70
34
0
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
108
96
76
40
20
6
109
97
77
41
21
5
110
98
78
42
22
4
111
99
79
43
23
3
112
100
80
44
24
2
113
101
81
45
25
1
114
102
82
46
26
0
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
7
21
41
77
97
109
6
22
42
78
98
110
5
23
43
79
99
111
4
24
44
80
100
112
3
25
45
81
101
113
2
26
46
82
102
114
1
27
47
83
103
115
0
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
21
7
29
65
85
97
22
6
30
66
86
98
23
5
31
67
87
99
24
4
32
68
88
100
25
3
33
69
89
101
26
2
34
70
90
102
27
1
35
71
91
103
28
0
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
41
29
7
45
65
77
42
30
6
46
66
78
43
31
5
47
67
79
44
32
4
48
68
80
45
33
3
49
69
81
46
34
2
50
70
82
47
35
1
51
71
83
48
36
0
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
77
65
45
7
29
41
78
66
46
6
30
42
79
67
47
5
31
43
80
68
48
4
32
44
81
69
49
3
33
45
82
70
50
2
34
46
83
71
51
1
35
47
84
72
52
0
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
97
85
65
29
7
21
98
86
66
30
6
22
99
87
67
31
5
23
100
88
68
32
4
24
101
89
69
33
3
25
102
90
70
34
2
26
103
91
71
35
1
27
104
92
72
36
0
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
109
97
77
41
21
7
110
98
78
42
22
6
111
99
79
43
23
5
112
100
80
44
24
4
113
101
81
45
25
3
114
102
82
46
26
2
115
103
83
47
27
1
116
104
84
48
28
0
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
8
22
42
78
98
110
7
23
43
79
99
111
6
24
44
80
100
112
5
25
45
81
101
113
4
26
46
82
102
114
3
27
47
83
103
115
2
28
48
84
104
116
1
29
49
85
105
117
0
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
22
8
30
66
86
98
23
7
31
67
87
99
24
6
32
68
88
100
25
5
33
69
89
101
26
4
34
70
90
102
27
3
35
71
91
103
28
2
36
72
92
104
29
1
35
73
93
105
30
0
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
42
30
8
46
66
78
43
31
7
47
67
79
44
32
6
48
68
80
45
33
5
49
69
81
46
34
4
50
70
82
47
35
3
51
71
83
48
36
2
52
72
84
49
35
1
53
73
85
50
34
0
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
78
66
46
8
30
42
79
67
47
7
31
43
80
68
48
6
32
44
81
69
49
5
33
45
82
70
50
4
34
46
83
71
51
3
35
47
84
72
52
2
36
48
85
73
53
1
35
49
86
74
54
0
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
98
86
66
30
8
22
99
87
67
31
7
23
100
88
68
32
6
24
101
89
69
33
5
25
102
90
70
34
4
26
103
91
71
35
3
27
104
92
72
36
2
28
105
93
73
35
1
29
106
94
74
34
0
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
110
98
78
42
22
8
111
99
79
43
23
7
112
100
80
44
24
6
113
101
81
45
25
5
114
102
82
46
26
4
115
103
83
47
27
3
116
104
84
48
28
2
117
105
85
49
29
1
118
106
86
50
30
0
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
9
23
43
79
99
111
8
24
44
80
100
112
7
25
45
81
101
113
6
26
46
82
102
114
5
27
47
83
103
115
4
28
48
84
104
116
3
29
49
85
105
117
2
30
50
86
106
118
1
31
51
87
107
118
0
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
23
9
31
67
87
99
24
8
32
68
88
100
25
7
33
69
89
101
26
6
34
70
90
102
27
5
35
71
91
103
28
4
36
72
92
104
29
3
35
73
93
105
30
2
34
74
94
106
31
1
33
75
95
107
32
0
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
43
31
9
47
67
79
44
32
8
48
68
80
45
33
7
49
69
81
46
34
6
50
70
82
47
35
5
51
71
83
48
36
4
52
72
84
49
35
3
53
73
85
50
34
2
54
74
86
51
33
1
55
75
87
52
32
0
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
79
67
47
9
31
43
80
68
48
8
32
44
81
69
49
7
33
45
82
70
50
6
34
46
83
71
51
5
35
47
84
72
52
4
36
48
85
73
53
3
35
49
86
74
54
2
34
50
87
75
55
1
33
51
88
76
56
0
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
99
87
67
31
9
23
100
88
68
32
8
24
101
89
69
33
7
25
102
90
70
34
6
26
103
91
71
35
5
27
104
92
72
36
4
28
105
93
73
35
3
29
106
94
74
34
2
30
107
95
75
33
1
31
108
96
76
32
0
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
111
99
79
43
23
9
112
100
80
44
24
8
113
101
81
45
25
7
114
102
82
46
26
6
115
103
83
47
27
5
116
104
84
48
28
4
117
105
85
49
29
3
118
106
86
50
30
2
118
107
87
51
31
1
117
108
88
52
32
0
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
10
24
44
80
100
112
9
25
45
81
101
113
8
26
46
82
102
114
7
27
47
83
103
115
6
28
48
84
104
116
5
29
49
85
105
117
4
30
50
86
106
118
3
31
51
87
107
118
2
32
52
88
108
117
1
33
53
89
109
116
0
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
24
10
32
68
88
100
25
9
33
69
89
101
26
8
34
70
90
102
27
7
35
71
91
103
28
6
36
72
92
104
29
5
35
73
93
105
30
4
34
74
94
106
31
3
33
75
95
107
32
2
32
76
96
108
33
1
31
77
97
109
34
0
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
44
32
10
48
68
80
45
33
9
49
69
81
46
34
8
50
70
82
47
35
7
51
71
83
48
36
6
52
72
84
49
35
5
53
73
85
50
34
4
54
74
86
51
33
3
55
75
87
52
32
2
56
76
88
53
31
1
57
77
89
54
30
0
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
80
68
48
10
32
44
81
69
49
9
33
45
82
70
50
8
34
46
83
71
51
7
35
47
84
72
52
6
36
48
85
73
53
5
35
49
86
74
54
4
34
50
87
75
55
3
33
51
88
76
56
2
32
52
89
77
57
1
31
53
90
78
58
0
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
100
88
68
32
10
24
101
89
69
33
9
25
102
90
70
34
8
26
103
91
71
35
7
27
104
92
72
36
6
28
105
93
73
35
5
29
106
94
74
34
4
30
107
95
75
33
3
31
108
96
76
32
2
32
109
97
77
31
1
33
110
98
78
30
0
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
112
100
80
44
24
10
113
101
81
45
25
9
114
102
82
46
26
8
115
103
83
47
27
7
116
104
84
48
28
6
117
105
85
49
29
5
118
106
86
50
30
4
118
107
87
51
31
3
117
108
88
52
32
2
116
109
89
53
33
1
115
110
90
54
34
0
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
11
25
45
81
101
113
10
26
46
82
102
114
9
27
47
83
103
115
8
28
48
84
104
116
7
29
49
85
105
117
6
30
50
86
106
118
5
31
51
87
107
118
4
32
52
88
108
117
3
33
53
89
109
116
2
34
54
90
110
115
1
35
55
91
111
114
0
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
25
11
33
69
89
101
26
10
34
70
90
102
27
9
35
71
91
103
28
8
36
72
92
104
29
7
35
73
93
105
30
6
34
74
94
106
31
5
33
75
95
107
32
4
32
76
96
108
33
3
31
77
97
109
34
2
30
78
98
110
35
1
29
79
99
111
36
0
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
45
33
11
49
69
81
46
34
10
50
70
82
47
35
9
51
71
83
48
36
8
52
72
84
49
35
7
53
73
85
50
34
6
54
74
86
51
33
5
55
75
87
52
32
4
56
76
88
53
31
3
57
77
89
54
30
2
58
78
90
55
29
1
59
79
91
56
28
0
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
89
75
55
67
87
101
90
74
54
66
86
102
91
73
53
65
85
103
92
72
52
64
84
104
93
71
51
63
83
105
94
70
50
62
82
106
95
69
49
61
81
107
96
68
48
60
80
108
97
67
47
59
79
109
98
66
46
58
78
110
99
65
45
57
77
111
100
64
44
0
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
90
76
56
66
86
100
91
75
55
65
85
101
92
74
54
64
84
102
93
73
53
63
83
103
94
72
52
62
82
104
95
71
51
61
81
105
96
70
50
60
80
106
97
69
49
59
79
107
98
68
48
58
78
108
99
67
47
57
77
109
100
66
46
56
76
110
101
65
45
1
0
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
91
77
57
65
85
99
92
76
56
64
84
100
93
75
55
63
83
101
94
74
54
62
82
102
95
73
53
61
81
103
96
72
52
60
80
104
97
71
51
59
79
105
98
70
50
58
78
106
99
69
49
57
77
107
100
68
48
56
76
108
101
67
47
55
75
109
102
66
46
2
1
0
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
92
78
58
64
84
98
93
77
57
63
83
99
94
76
56
62
82
100
95
75
55
61
81
101
96
74
54
60
80
102
97
73
53
59
79
103
98
72
52
58
78
104
99
71
51
57
77
105
100
70
50
56
76
106
101
69
49
55
75
107
102
68
48
54
74
108
103
67
47
3
2
1
0
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
93
79
59
63
83
97
94
78
58
62
82
98
95
77
57
61
81
99
96
76
56
60
80
100
97
75
55
59
79
101
98
74
54
58
78
102
99
73
53
57
77
103
100
72
52
56
76
104
101
71
51
55
75
105
102
70
50
54
74
106
103
69
49
53
73
107
104
68
48
4
3
2
1
0
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
80
60
62
82
96
95
79
59
61
81
97
96
78
58
60
80
98
97
77
57
59
79
99
98
76
56
58
78
100
99
75
55
57
77
101
100
74
54
56
76
102
101
73
53
55
75
103
102
72
52
54
74
104
103
71
51
53
73
105
104
70
50
52
72
106
105
69
49
5
4
3
2
1
0
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
81
61
61
81
95
96
80
60
60
80
96
97
79
59
59
79
97
98
78
58
58
78
98
99
77
57
57
77
99
100
76
56
56
76
100
101
75
55
55
75
101
102
74
54
54
74
102
103
73
53
53
73
103
104
72
52
52
72
104
105
71
51
51
71
105
106
70
50
6
5
4
3
2
1
0
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
96
82
62
60
80
94
97
81
61
59
79
95
98
80
60
58
78
96
99
79
59
57
77
97
100
78
58
56
76
98
101
77
57
55
75
99
102
76
56
54
74
100
103
75
55
53
73
101
104
74
54
52
72
102
105
73
53
51
71
103
106
72
52
50
70
104
107
71
51
7
6
5
4
3
2
1
0
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
97
83
63
59
79
93
98
82
62
58
78
94
99
81
61
57
77
95
100
80
60
56
76
96
101
79
59
55
75
97
102
78
58
54
74
98
103
77
57
53
73
99
104
76
56
52
72
100
105
75
55
51
71
101
106
74
54
50
70
102
107
73
53
49
69
103
108
72
52
8
7
6
5
4
3
2
1
0
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
98
84
64
58
78
92
99
83
63
57
77
93
100
82
62
56
76
94
101
81
61
55
75
95
102
80
60
54
74
96
103
79
59
53
73
97
104
78
58
52
72
98
105
77
57
51
71
99
106
76
56
50
70
100
107
75
55
49
69
101
108
74
54
48
68
102
109
73
53
9
8
7
6
5
4
3
2
1
0
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
99
85
65
57
77
91
100
84
64
56
76
92
101
83
63
55
75
93
102
82
62
54
74
94
103
81
61
53
73
95
104
80
60
52
72
96
105
79
59
51
71
97
106
78
58
50
70
98
107
77
57
49
69
99
108
76
56
48
68
100
109
75
55
47
67
101
110
74
54
10
9
8
7
6
5
4
3
2
1
0
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
100
86
66
56
76
90
101
85
65
55
75
91
102
84
64
54
74
92
103
83
63
53
73
93
104
82
62
52
72
94
105
81
61
51
71
95
106
80
60
50
70
96
107
79
59
49
69
97
108
78
58
48
68
98
109
77
57
47
67
99
110
76
56
46
66
100
111
75
55
11
10
9
8
7
6
5
4
3
2
1
0
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
101
87
67
55
75
89
102
86
66
54
74
90
103
85
65
53
73
91
104
84
64
52
72
92
105
83
63
51
71
93
106
82
62
50
70
94
107
81
61
49
69
95
108
80
60
48
68
96
109
79
59
47
67
97
110
78
58
46
66
98
111
77
57
45
65
99
112
76
56
12
11
10
9
8
7
6
5
4
3
2
1
0
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
81
69
49
11
33
45
82
70
50
10
34
46
83
71
51
9
35
47
84
72
52
8
36
48
85
73
53
7
35
49
86
74
54
6
34
50
87
75
55
5
33
51
88
76
56
4
32
52
89
77
57
3
31
53
90
78
58
2
30
54
91
79
59
1
29
55
92
80
60
56
55
54
53
52
51
50
49
48
47
46
45
44
0
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
101
89
69
33
11
25
102
90
70
34
10
26
103
91
71
35
9
27
104
92
72
36
8
28
105
93
73
35
7
29
106
94
74
34
6
30
107
95
75
33
5
31
108
96
76
32
4
32
109
97
77
31
3
33
110
98
78
30
2
34
111
99
79
29
1
35
112
100
80
76
75
74
73
72
71
70
69
68
67
66
65
64
28
0
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
113
101
81
45
25
11
114
102
82
46
26
10
115
103
83
47
27
9
116
104
84
48
28
8
117
105
85
49
29
7
118
106
86
50
30
6
118
107
87
51
31
5
117
108
88
52
32
4
116
109
89
53
33
3
115
110
90
54
34
2
114
111
91
55
35
1
113
112
92
112
111
110
109
108
107
106
105
104
103
102
101
100
56
36
0
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
12
26
46
82
102
114
11
27
47
83
103
115
10
28
48
84
104
116
9
29
49
85
105
117
8
30
50
86
106
118
7
31
51
87
107
118
6
32
52
88
108
117
5
33
53
89
109
116
4
34
54
90
110
115
3
35
55
91
111
114
2
36
56
92
112
113
1
37
57
99
100
101
102
103
104
105
106
107
108
109
110
111
93
113
112
0
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
26
12
34
70
90
102
27
11
35
71
91
103
28
10
36
72
92
104
29
9
35
73
93
105
30
8
34
74
94
106
31
7
33
75
95
107
32
6
32
76
96
108
33
5
31
77
97
109
34
4
30
78
98
110
35
3
29
79
99
111
36
2
28
80
100
112
37
1
27
63
64
65
66
67
68
69
70
71
72
73
74
75
81
101
113
38
0
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
46
34
12
50
70
82
47
35
11
51
71
83
48
36
10
52
72
84
49
35
9
53
73
85
50
34
8
54
74
86
51
33
7
55
75
87
52
32
6
56
76
88
53
31
5
57
77
89
54
30
4
58
78
90
55
29
3
59
79
91
56
28
2
60
80
92
57
27
1
43
44
45
46
47
48
49
50
51
52
53
54
55
61
81
93
58
26
0
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
88
74
54
68
88
102
89
73
53
67
87
103
90
72
52
66
86
104
91
71
51
65
85
105
92
70
50
64
84
106
93
69
49
63
83
107
94
68
48
62
82
108
95
67
47
61
81
109
96
66
46
60
80
110
97
65
45
59
79
111
98
64
44
58
78
112
99
63
43
1
2
3
4
5
6
7
8
9
10
11
12
13
57
77
113
98
62
42
0
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
102
88
68
54
74
88
103
87
67
53
73
89
104
86
66
52
72
90
105
85
65
51
71
91
106
84
64
50
70
92
107
83
63
49
69
93
108
82
62
48
68
94
109
81
61
47
67
95
110
80
60
46
66
96
111
79
59
45
65
97
112
78
58
44
64
98
113
77
57
13
12
11
10
9
8
7
6
5
4
3
2
1
43
63
99
112
76
56
14
0
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
82
70
50
12
34
46
83
71
51
11
35
47
84
72
52
10
36
48
85
73
53
9
35
49
86
74
54
8
34
50
87
75
55
7
33
51
88
76
56
6
32
52
89
77
57
5
31
53
90
78
58
4
30
54
91
79
59
3
29
55
92
80
60
2
28
56
93
81
61
55
54
53
52
51
50
49
48
47
46
45
44
43
1
27
57
94
82
62
56
42
0
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
102
90
70
34
12
26
103
91
71
35
11
27
104
92
72
36
10
28
105
93
73
35
9
29
106
94
74
34
8
30
107
95
75
33
7
31
108
96
76
32
6
32
109
97
77
31
5
33
110
98
78
30
4
34
111
99
79
29
3
35
112
100
80
28
2
36
113
101
81
75
74
73
72
71
70
69
68
67
66
65
64
63
27
1
37
114
102
82
76
62
26
0
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
114
102
82
46
26
12
115
103
83
47
27
11
116
104
84
48
28
10
117
105
85
49
29
9
118
106
86
50
30
8
118
107
87
51
31
7
117
108
88
52
32
6
116
109
89
53
33
5
115
110
90
54
34
4
114
111
91
55
35
3
113
112
92
56
36
2
112
113
93
111
110
109
108
107
106
105
104
103
102
101
100
99
57
37
1
111
114
94
112
98
58
38
0
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
13
27
47
83
103
115
12
28
48
84
104
116
11
29
49
85
105
117
10
30
50
86
106
118
9
31
51
87
107
118
8
32
52
88
108
117
7
33
53
89
109
116
6
34
54
90
110
115
5
35
55
91
111
114
4
36
56
92
112
113
3
37
57
93
113
112
2
38
58
98
99
100
101
102
103
104
105
106
107
108
109
110
94
114
111
1
39
59
97
111
95
115
110
0
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
27
13
35
71
91
103
28
12
36
72
92
104
29
11
35
73
93
105
30
10
34
74
94
106
31
9
33
75
95
107
32
8
32
76
96
108
33
7
31
77
97
109
34
6
30
78
98
110
35
5
29
79
99
111
36
4
28
80
100
112
37
3
27
81
101
113
38
2
26
62
63
64
65
66
67
68
69
70
71
72
73
74
82
102
114
39
1
25
61
75
83
103
115
40
0
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
47
35
13
51
71
83
48
36
12
52
72
84
49
35
11
53
73
85
50
34
10
54
74
86
51
33
9
55
75
87
52
32
8
56
76
88
53
31
7
57
77
89
54
30
6
58
78
90
55
29
5
59
79
91
56
28
4
60
80
92
57
27
3
61
81
93
58
26
2
42
43
44
45
46
47
48
49
50
51
52
53
54
62
82
94
59
25
1
41
55
63
83
95
60
24
0
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
87
73
53
69
89
103
88
72
52
68
88
104
89
71
51
67
87
105
90
70
50
66
86
106
91
69
49
65
85
107
92
68
48
64
84
108
93
67
47
63
83
109
94
66
46
62
82
110
95
65
45
61
81
111
96
64
44
60
80
112
97
63
43
59
79
113
98
62
42
2
3
4
5
6
7
8
9
10
11
12
13
14
58
78
114
97
61
41
1
15
57
77
113
96
60
40
0
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
103
89
69
53
73
87
104
88
68
52
72
88
105
87
67
51
71
89
106
86
66
50
70
90
107
85
65
49
69
91
108
84
64
48
68
92
109
83
63
47
67
93
110
82
62
46
66
94
111
81
61
45
65
95
112
80
60
44
64
96
113
79
59
43
63
97
114
78
58
14
13
12
11
10
9
8
7
6
5
4
3
2
42
62
98
113
77
57
15
1
41
61
97
112
76
56
16
0
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
83
71
51
13
35
47
84
72
52
12
36
48
85
73
53
11
35
49
86
74
54
10
34
50
87
75
55
9
33
51
88
76
56
8
32
52
89
77
57
7
31
53
90
78
58
6
30
54
91
79
59
5
29
55
92
80
60
4
28
56
93
81
61
3
27
57
94
82
62
54
53
52
51
50
49
48
47
46
45
44
43
42
2
26
58
95
83
63
55
41
1
25
59
96
84
64
56
40
0
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
103
91
71
35
13
27
104
92
72
36
12
28
105
93
73
35
11
29
106
94
74
34
10
30
107
95
75
33
9
31
108
96
76
32
8
32
109
97
77
31
7
33
110
98
78
30
6
34
111
99
79
29
5
35
112
100
80
28
4
36
113
101
81
27
3
37
114
102
82
74
73
72
71
70
69
68
67
66
65
64
63
62
26
2
38
115
103
83
75
61
25
1
39
116
104
84
76
60
24
0
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
115
103
83
47
27
13
116
104
84
48
28
12
117
105
85
49
29
11
118
106
86
50
30
10
118
107
87
51
31
9
117
108
88
52
32
8
116
109
89
53
33
7
115
110
90
54
34
6
114
111
91
55
35
5
113
112
92
56
36
4
112
113
93
57
37
3
111
114
94
110
109
108
107
106
105
104
103
102
101
100
99
98
58
38
2
110
115
95
111
97
59
39
1
109
116
96
112
96
60
40
0
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
14
28
48
84
104
116
13
29
49
85
105
117
12
30
50
86
106
118
11
31
51
87
107
118
10
32
52
88
108
117
9
33
53
89
109
116
8
34
54
90
110
115
7
35
55
91
111
114
6
36
56
92
112
113
5
37
57
93
113
112
4
38
58
94
114
111
3
39
59
97
98
99
100
101
102
103
104
105
106
107
108
109
95
115
110
2
40
60
96
110
96
116
109
1
41
59
95
111
97
117
108
0
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
28
14
36
72
92
104
29
13
35
73
93
105
30
12
34
74
94
106
31
11
33
75
95
107
32
10
32
76
96
108
33
9
31
77
97
109
34
8
30
78
98
110
35
7
29
79
99
111
36
6
28
80
100
112
37
5
27
81
101
113
38
4
26
82
102
114
39
3
25
61
62
63
64
65
66
67
68
69
70
71
72
73
83
103
115
40
2
24
60
74
84
104
116
41
1
23
59
75
85
105
117
42
0
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
48
36
14
52
72
84
49
35
13
53
73
85
50
34
12
54
74
86
51
33
11
55
75
87
52
32
10
56
76
88
53
31
9
57
77
89
54
30
8
58
78
90
55
29
7
59
79
91
56
28
6
60
80
92
57
27
5
61
81
93
58
26
4
62
82
94
59
25
3
41
42
43
44
45
46
47
48
49
50
51
52
53
63
83
95
60
24
2
40
54
64
84
96
59
23
1
39
55
65
85
97
58
22
0
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
86
72
52
70
90
104
87
71
51
69
89
105
88
70
50
68
88
106
89
69
49
67
87
107
90
68
48
66
86
108
91
67
47
65
85
109
92
66
46
64
84
110
93
65
45
63
83
111
94
64
44
62
82
112
95
63
43
61
81
113
96
62
42
60
80
114
97
61
41
3
4
5
6
7
8
9
10
11
12
13
14
15
59
79
115
96
60
40
2
16
58
78
114
95
59
39
1
17
57
77
113
94
58
38
0
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
104
90
70
52
72
86
105
89
69
51
71
87
106
88
68
50
70
88
107
87
67
49
69
89
108
86
66
48
68
90
109
85
65
47
67
91
110
84
64
46
66
92
111
83
63
45
65
93
112
82
62
44
64
94
113
81
61
43
63
95
114
80
60
42
62
96
115
79
59
15
14
13
12
11
10
9
8
7
6
5
4
3
41
61
97
114
78
58
16
2
40
60
96
113
77
57
17
1
39
59
95
112
76
56
18
0
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
84
72
52
14
36
48
85
73
53
13
35
49
86
74
54
12
34
50
87
75
55
11
33
51
88
76
56
10
32
52
89
77
57
9
31
53
90
78
58
8
30
54
91
79
59
7
29
55
92
80
60
6
28
56
93
81
61
5
27
57
94
82
62
4
26
58
95
83
63
53
52
51
50
49
48
47
46
45
44
43
42
41
3
25
59
96
84
64
54
40
2
24
60
97
85
65
55
39
1
23
59
98
86
66
56
38
0
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
104
92
72
36
14
28
105
93
73
35
13
29
106
94
74
34
12
30
107
95
75
33
11
31
108
96
76
32
10
32
109
97
77
31
9
33
110
98
78
30
8
34
111
99
79
29
7
35
112
100
80
28
6
36
113
101
81
27
5
37
114
102
82
26
4
38
115
103
83
73
72
71
70
69
68
67
66
65
64
63
62
61
25
3
39
116
104
84
74
60
24
2
40
117
105
85
75
59
23
1
41
118
106
86
76
58
22
0
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
116
104
84
48
28
14
117
105
85
49
29
13
118
106
86
50
30
12
118
107
87
51
31
11
117
108
88
52
32
10
116
109
89
53
33
9
115
110
90
54
34
8
114
111
91
55
35
7
113
112
92
56
36
6
112
113
93
57
37
5
111
114
94
58
38
4
110
115
95
109
108
107
106
105
104
103
102
101
100
99
98
97
59
39
3
109
116
96
110
96
60
40
2
108
117
97
111
95
59
41
1
107
118
98
112
94
58
42
0
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
15
29
49
85
105
117
14
30
50
86
106
118
13
31
51
87
107
118
12
32
52
88
108
117
11
33
53
89
109
116
10
34
54
90
110
115
9
35
55
91
111
114
8
36
56
92
112
113
7
37
57
93
113
112
6
38
58
94
114
111
5
39
59
95
115
110
4
40
60
96
97
98
99
100
101
102
103
104
105
106
107
108
96
116
109
3
41
59
95
109
97
117
108
2
42
58
94
110
98
118
107
1
43
57
93
111
99
118
106
0
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
29
15
35
73
93
105
30
14
34
74
94
106
31
13
33
75
95
107
32
12
32
76
96
108
33
11
31
77
97
109
34
10
30
78
98
110
35
9
29
79
99
111
36
8
28
80
100
112
37
7
27
81
101
113
38
6
26
82
102
114
39
5
25
83
103
115
40
4
24
60
61
62
63
64
65
66
67
68
69
70
71
72
84
104
116
41
3
23
59
73
85
105
117
42
2
22
58
74
86
106
118
43
1
21
57
75
87
107
118
44
0
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
30
16
34
72
92
104
31
15
33
73
93
105
32
14
32
74
94
106
33
13
31
75
95
107
34
12
30
76
96
108
35
11
29
77
97
109
36
10
28
78
98
110
37
9
27
79
99
111
38
8
26
80
100
112
39
7
25
81
101
113
40
6
24
82
102
114
41
5
23
59
60
61
62
63
64
65
66
67
68
69
70
71
83
103
115
42
4
22
58
72
84
104
116
43
3
21
57
73
85
105
117
44
2
20
56
74
86
106
117
45
1
0
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
31
17
33
71
91
103
32
16
32
72
92
104
33
15
31
73
93
105
34
14
30
74
94
106
35
13
29
75
95
107
36
12
28
76
96
108
37
11
27
77
97
109
38
10
26
78
98
110
39
9
25
79
99
111
40
8
24
80
100
112
41
7
23
81
101
113
42
6
22
58
59
60
61
62
63
64
65
66
67
68
69
70
82
102
114
43
5
21
57
71
83
103
115
44
4
20
56
72
84
104
116
45
3
19
55
73
85
105
116
46
2
1
0
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
32
18
32
70
90
102
33
17
31
71
91
103
34
16
30
72
92
104
35
15
29
73
93
105
36
14
28
74
94
106
37
13
27
75
95
107
38
12
26
76
96
108
39
11
25
77
97
109
40
10
24
78
98
110
41
9
23
79
99
111
42
8
22
80
100
112
43
7
21
57
58
59
60
61
62
63
64
65
66
67
68
69
81
101
113
44
6
20
56
70
82
102
114
45
5
19
55
71
83
103
115
46
4
18
54
72
84
104
115
47
3
2
1
0
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
33
19
31
69
89
101
34
18
30
70
90
102
35
17
29
71
91
103
36
16
28
72
92
104
37
15
27
73
93
105
38
14
26
74
94
106
39
13
25
75
95
107
40
12
24
76
96
108
41
11
23
77
97
109
42
10
22
78
98
110
43
9
21
79
99
111
44
8
20
56
57
58
59
60
61
62
63
64
65
66
67
68
80
100
112
45
7
19
55
69
81
101
113
46
6
18
54
70
82
102
114
47
5
17
53
71
83
103
114
48
4
3
2
1
0
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
34
20
30
68
88
100
35
19
29
69
89
101
36
18
28
70
90
102
37
17
27
71
91
103
38
16
26
72
92
104
39
15
25
73
93
105
40
14
24
74
94
106
41
13
23
75
95
107
42
12
22
76
96
108
43
11
21
77
97
109
44
10
20
78
98
110
45
9
19
55
56
57
58
59
60
61
62
63
64
65
66
67
79
99
111
46
8
18
54
68
80
100
112
47
7
17
53
69
81
101
113
48
6
16
52
70
82
102
113
47
5
4
3
2
1
0
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
35
21
29
67
87
99
36
20
28
68
88
100
37
19
27
69
89
101
38
18
26
70
90
102
39
17
25
71
91
103
40
16
24
72
92
104
41
15
23
73
93
105
42
14
22
74
94
106
43
13
21
75
95
107
44
12
20
76
96
108
45
11
19
77
97
109
46
10
18
54
55
56
57
58
59
60
61
62
63
64
65
66
78
98
110
47
9
17
53
67
79
99
111
48
8
16
52
68
80
100
112
47
7
15
51
69
81
101
112
46
6
5
4
3
2
1
0
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
36
22
28
66
86
98
37
21
27
67
87
99
38
20
26
68
88
100
39
19
25
69
89
101
40
18
24
70
90
102
41
17
23
71
91
103
42
16
22
72
92
104
43
15
21
73
93
105
44
14
20
74
94
106
45
13
19
75
95
107
46
12
18
76
96
108
47
11
17
53
54
55
56
57
58
59
60
61
62
63
64
65
77
97
109
48
10
16
52
66
78
98
110
47
9
15
51
67
79
99
111
46
8
14
50
68
80
100
111
45
7
6
5
4
3
2
1
0
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
37
23
27
65
85
97
38
22
26
66
86
98
39
21
25
67
87
99
40
20
24
68
88
100
41
19
23
69
89
101
42
18
22
70
90
102
43
17
21
71
91
103
44
16
20
72
92
104
45
15
19
73
93
105
46
14
18
74
94
106
47
13
17
75
95
107
48
12
16
52
53
54
55
56
57
58
59
60
61
62
63
64
76
96
108
47
11
15
51
65
77
97
109
46
10
14
50
66
78
98
110
45
9
13
49
67
79
99
110
44
8
7
6
5
4
3
2
1
0
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
38
24
26
64
84
96
39
23
25
65
85
97
40
22
24
66
86
98
41
21
23
67
87
99
42
20
22
68
88
100
43
19
21
69
89
101
44
18
20
70
90
102
45
17
19
71
91
103
46
16
18
72
92
104
47
15
17
73
93
105
48
14
16
74
94
106
49
13
15
51
52
53
54
55
56
57
58
59
60
61
62
63
75
95
107
48
12
14
50
64
76
96
108
47
11
13
49
65
77
97
109
46
10
12
48
66
78
98
110
45
9
8
7
6
5
4
3
2
1
0
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
39
25
25
63
83
95
40
24
24
64
84
96
41
23
23
65
85
97
42
22
22
66
86
98
43
21
21
67
87
99
44
20
20
68
88
100
45
19
19
69
89
101
46
18
18
70
90
102
47
17
17
71
91
103
48
16
16
72
92
104
49
15
15
73
93
105
50
14
14
50
51
52
53
54
55
56
57
58
59
60
61
62
74
94
106
49
13
13
49
63
75
95
107
48
12
12
48
64
76
96
108
47
11
11
47
65
77
97
109
46
10
9
8
7
6
5
4
3
2
1
0
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
40
26
24
62
82
94
41
25
23
63
83
95
42
24
22
64
84
96
43
23
21
65
85
97
44
22
20
66
86
98
45
21
19
67
87
99
46
20
18
68
88
100
47
19
17
69
89
101
48
18
16
70
90
102
49
17
15
71
91
103
50
16
14
72
92
104
51
15
13
49
50
51
52
53
54
55
56
57
58
59
60
61
73
93
105
50
14
12
48
62
74
94
106
49
13
11
47
63
75
95
107
48
12
10
46
64
76
96
108
47
11
10
9
8
7
6
5
4
3
2
1
0
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
41
27
23
61
81
93
42
26
22
62
82
94
43
25
21
63
83
95
44
24
20
64
84
96
45
23
19
65
85
97
46
22
18
66
86
98
47
21
17
67
87
99
48
20
16
68
88
100
49
19
15
69
89
101
50
18
14
70
90
102
51
17
13
71
91
103
52
16
12
48
49
50
51
52
53
54
55
56
57
58
59
60
72
92
104
51
15
11
47
61
73
93
105
50
14
10
46
62
74
94
106
49
13
9
45
63
75
95
107
48
12
11
10
9
8
7
6
5
4
3
2
1
0
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
42
28
22
60
80
92
43
27
21
61
81
93
44
26
20
62
82
94
45
25
19
63
83
95
46
24
18
64
84
96
47
23
17
65
85
97
48
22
16
66
86
98
49
21
15
67
87
99
50
20
14
68
88
100
51
19
13
69
89
101
52
18
12
70
90
102
53
17
11
47
48
49
50
51
52
53
54
55
56
57
58
59
71
91
103
52
16
10
46
60
72
92
104
51
15
9
45
61
73
93
105
50
14
8
44
62
74
94
106
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
43
29
21
59
79
91
44
28
20
60
80
92
45
27
19
61
81
93
46
26
18
62
82
94
47
25
17
63
83
95
48
24
16
64
84
96
49
23
15
65
85
97
50
22
14
66
86
98
51
21
13
67
87
99
52
20
12
68
88
100
53
19
11
69
89
101
54
18
10
46
47
48
49
50
51
52
53
54
55
56
57
58
70
90
102
53
17
9
45
59
71
91
103
52
16
8
44
60
72
92
104
51
15
7
43
61
73
93
105
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
44
30
20
58
78
90
45
29
19
59
79
91
46
28
18
60
80
92
47
27
17
61
81
93
48
26
16
62
82
94
49
25
15
63
83
95
50
24
14
64
84
96
51
23
13
65
85
97
52
22
12
66
86
98
53
21
11
67
87
99
54
20
10
68
88
100
55
19
9
45
46
47
48
49
50
51
52
53
54
55
56
57
69
89
101
54
18
8
44
58
70
90
102
53
17
7
43
59
71
91
103
52
16
6
42
60
72
92
104
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
45
31
19
57
77
89
46
30
18
58
78
90
47
29
17
59
79
91
48
28
16
60
80
92
49
27
15
61
81
93
50
26
14
62
82
94
51
25
13
63
83
95
52
24
12
64
84
96
53
23
11
65
85
97
54
22
10
66
86
98
55
21
9
67
87
99
56
20
8
44
45
46
47
48
49
50
51
52
53
54
55
56
68
88
100
55
19
7
43
57
69
89
101
54
18
6
42
58
70
90
102
53
17
5
41
59
71
91
103
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
46
32
18
56
76
88
47
31
17
57
77
89
48
30
16
58
78
90
49
29
15
59
79
91
50
28
14
60
80
92
51
27
13
61
81
93
52
26
12
62
82
94
53
25
11
63
83
95
54
24
10
64
84
96
55
23
9
65
85
97
56
22
8
66
86
98
57
21
7
43
44
45
46
47
48
49
50
51
52
53
54
55
67
87
99
56
20
6
42
56
68
88
100
55
19
5
41
57
69
89
101
54
18
4
40
58
70
90
102
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
47
33
17
55
75
87
48
32
16
56
76
88
49
31
15
57
77
89
50
30
14
58
78
90
51
29
13
59
79
91
52
28
12
60
80
92
53
27
11
61
81
93
54
26
10
62
82
94
55
25
9
63
83
95
56
24
8
64
84
96
57
23
7
65
85
97
58
22
6
42
43
44
45
46
47
48
49
50
51
52
53
54
66
86
98
57
21
5
41
55
67
87
99
56
20
4
40
56
68
88
100
55
19
3
39
57
69
89
101
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
47
46
45
44
43
42
41
40
39
38
37
36
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
48
34
16
54
74
86
49
33
15
55
75
87
50
32
14
56
76
88
51
31
13
57
77
89
52
30
12
58
78
90
53
29
11
59
79
91
54
28
10
60
80
92
55
27
9
61
81
93
56
26
8
62
82
94
57
25
7
63
83
95
58
24
6
64
84
96
59
23
5
41
42
43
44
45
46
47
48
49
50
51
52
53
65
85
97
58
22
4
40
54
66
86
98
57
21
3
39
55
67
87
99
56
20
2
38
56
68
88
100
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
49
35
15
53
73
85
50
34
14
54
74
86
51
33
13
55
75
87
52
32
12
56
76
88
53
31
11
57
77
89
54
30
10
58
78
90
55
29
9
59
79
91
56
28
8
60
80
92
57
27
7
61
81
93
58
26
6
62
82
94
59
25
5
63
83
95
60
24
4
40
41
42
43
44
45
46
47
48
49
50
51
52
64
84
96
59
23
3
39
53
65
85
97
58
22
2
38
54
66
86
98
57
21
1
37
55
67
87
99
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
85
71
51
71
91
105
86
70
50
70
90
106
87
69
49
69
89
107
88
68
48
68
88
108
89
67
47
67
87
109
90
66
46
66
86
110
91
65
45
65
85
111
92
64
44
64
84
112
93
63
43
63
83
113
94
62
42
62
82
114
95
61
41
61
81
115
96
60
40
4
5
6
7
8
9
10
11
12
13
14
15
16
60
80
116
95
59
39
3
17
59
79
115
94
58
38
2
18
58
78
114
93
57
37
1
19
57
77
113
92
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
0
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
105
91
71
51
71
85
106
90
70
50
70
86
107
89
69
49
69
87
108
88
68
48
68
88
109
87
67
47
67
89
110
86
66
46
66
90
111
85
65
45
65
91
112
84
64
44
64
92
113
83
63
43
63
93
114
82
62
42
62
94
115
81
61
41
61
95
116
80
60
16
15
14
13
12
11
10
9
8
7
6
5
4
40
60
96
115
79
59
17
3
39
59
95
114
78
58
18
2
38
58
94
113
77
57
19
1
37
57
93
112
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
20
0
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
85
73
53
15
35
49
86
74
54
14
34
50
87
75
55
13
33
51
88
76
56
12
32
52
89
77
57
11
31
53
90
78
58
10
30
54
91
79
59
9
29
55
92
80
60
8
28
56
93
81
61
7
27
57
94
82
62
6
26
58
95
83
63
5
25
59
96
84
64
52
51
50
49
48
47
46
45
44
43
42
41
40
4
24
60
97
85
65
53
39
3
23
59
98
86
66
54
38
2
22
58
99
87
67
55
37
1
21
57
100
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
36
0
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
36
37
38
39
40
41
42
43
44
45
46
47
86
74
54
16
34
48
87
75
55
15
33
49
88
76
56
14
32
50
89
77
57
13
31
51
90
78
58
12
30
52
91
79
59
11
29
53
92
80
60
10
28
54
93
81
61
9
27
55
94
82
62
8
26
56
95
83
63
7
25
57
96
84
64
6
24
58
97
85
65
53
52
51
50
49
48
47
46
45
44
43
42
41
5
23
59
98
86
66
54
40
4
22
58
99
87
67
55
39
3
21
57
100
88
68
56
38
2
20
56
101
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
37
1
0
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
87
75
55
17
33
47
88
76
56
16
32
48
89
77
57
15
31
49
90
78
58
14
30
50
91
79
59
13
29
51
92
80
60
12
28
52
93
81
61
11
27
53
94
82
62
10
26
54
95
83
63
9
25
55
96
84
64
8
24
56
97
85
65
7
23
57
98
86
66
54
53
52
51
50
49
48
47
46
45
44
43
42
6
22
58
99
87
67
55
41
5
21
57
100
88
68
56
40
4
20
56
101
89
69
57
39
3
19
55
102
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
38
2
1
0
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
88
76
56
18
32
46
89
77
57
17
31
47
90
78
58
16
30
48
91
79
59
15
29
49
92
80
60
14
28
50
93
81
61
13
27
51
94
82
62
12
26
52
95
83
63
11
25
53
96
84
64
10
24
54
97
85
65
9
23
55
98
86
66
8
22
56
99
87
67
55
54
53
52
51
50
49
48
47
46
45
44
43
7
21
57
100
88
68
56
42
6
20
56
101
89
69
57
41
5
19
55
102
90
70
58
40
4
18
54
103
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
39
3
2
1
0
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
89
77
57
19
31
45
90
78
58
18
30
46
91
79
59
17
29
47
92
80
60
16
28
48
93
81
61
15
27
49
94
82
62
14
26
50
95
83
63
13
25
51
96
84
64
12
24
52
97
85
65
11
23
53
98
86
66
10
22
54
99
87
67
9
21
55
100
88
68
56
55
54
53
52
51
50
49
48
47
46
45
44
8
20
56
101
89
69
57
43
7
19
55
102
90
70
58
42
6
18
54
103
91
71
59
41
5
17
53
104
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
40
4
3
2
1
0
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
90
78
58
20
30
44
91
79
59
19
29
45
92
80
60
18
28
46
93
81
61
17
27
47
94
82
62
16
26
48
95
83
63
15
25
49
96
84
64
14
24
50
97
85
65
13
23
51
98
86
66
12
22
52
99
87
67
11
21
53
100
88
68
10
20
54
101
89
69
57
56
55
54
53
52
51
50
49
48
47
46
45
9
19
55
102
90
70
58
44
8
18
54
103
91
71
59
43
7
17
53
104
92
72
60
42
6
16
52
105
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
41
5
4
3
2
1
0
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
91
79
59
21
29
43
92
80
60
20
28
44
93
81
61
19
27
45
94
82
62
18
26
46
95
83
63
17
25
47
96
84
64
16
24
48
97
85
65
15
23
49
98
86
66
14
22
50
99
87
67
13
21
51
100
88
68
12
20
52
101
89
69
11
19
53
102
90
70
58
57
56
55
54
53
52
51
50
49
48
47
46
10
18
54
103
91
71
59
45
9
17
53
104
92
72
60
44
8
16
52
105
93
73
61
43
7
15
51
106
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
42
6
5
4
3
2
1
0
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
92
80
60
22
28
42
93
81
61
21
27
43
94
82
62
20
26
44
95
83
63
19
25
45
96
84
64
18
24
46
97
85
65
17
23
47
98
86
66
16
22
48
99
87
67
15
21
49
100
88
68
14
20
50
101
89
69
13
19
51
102
90
70
12
18
52
103
91
71
59
58
57
56
55
54
53
52
51
50
49
48
47
11
17
53
104
92
72
60
46
10
16
52
105
93
73
61
45
9
15
51
106
94
74
62
44
8
14
50
107
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
43
7
6
5
4
3
2
1
0
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
93
81
61
23
27
41
94
82
62
22
26
42
95
83
63
21
25
43
96
84
64
20
24
44
97
85
65
19
23
45
98
86
66
18
22
46
99
87
67
17
21
47
100
88
68
16
20
48
101
89
69
15
19
49
102
90
70
14
18
50
103
91
71
13
17
51
104
92
72
60
59
58
57
56
55
54
53
52
51
50
49
48
12
16
52
105
93
73
61
47
11
15
51
106
94
74
62
46
10
14
50
107
95
75
63
45
9
13
49
108
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
44
8
7
6
5
4
3
2
1
0
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
94
82
62
24
26
40
95
83
63
23
25
41
96
84
64
22
24
42
97
85
65
21
23
43
98
86
66
20
22
44
99
87
67
19
21
45
100
88
68
18
20
46
101
89
69
17
19
47
102
90
70
16
18
48
103
91
71
15
17
49
104
92
72
14
16
50
105
93
73
61
60
59
58
57
56
55
54
53
52
51
50
49
13
15
51
106
94
74
62
48
12
14
50
107
95
75
63
47
11
13
49
108
96
76
64
46
10
12
48
109
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
45
9
8
7
6
5
4
3
2
1
0
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
95
83
63
25
25
39
96
84
64
24
24
40
97
85
65
23
23
41
98
86
66
22
22
42
99
87
67
21
21
43
100
88
68
20
20
44
101
89
69
19
19
45
102
90
70
18
18
46
103
91
71
17
17
47
104
92
72
16
16
48
105
93
73
15
15
49
106
94
74
62
61
60
59
58
57
56
55
54
53
52
51
50
14
14
50
107
95
75
63
49
13
13
49
108
96
76
64
48
12
12
48
109
97
77
65
47
11
11
47
110
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
46
10
9
8
7
6
5
4
3
2
1
0
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
96
84
64
26
24
38
97
85
65
25
23
39
98
86
66
24
22
40
99
87
67
23
21
41
100
88
68
22
20
42
101
89
69
21
19
43
102
90
70
20
18
44
103
91
71
19
17
45
104
92
72
18
16
46
105
93
73
17
15
47
106
94
74
16
14
48
107
95
75
63
62
61
60
59
58
57
56
55
54
53
52
51
15
13
49
108
96
76
64
50
14
12
48
109
97
77
65
49
13
11
47
110
98
78
66
48
12
10
46
110
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
47
11
10
9
8
7
6
5
4
3
2
1
0
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
97
85
65
27
23
37
98
86
66
26
22
38
99
87
67
25
21
39
100
88
68
24
20
40
101
89
69
23
19
41
102
90
70
22
18
42
103
91
71
21
17
43
104
92
72
20
16
44
105
93
73
19
15
45
106
94
74
18
14
46
107
95
75
17
13
47
108
96
76
64
63
62
61
60
59
58
57
56
55
54
53
52
16
12
48
109
97
77
65
51
15
11
47
110
98
78
66
50
14
10
46
110
99
79
67
49
13
9
45
109
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
48
12
11
10
9
8
7
6
5
4
3
2
1
0
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
98
86
66
28
22
36
99
87
67
27
21
37
100
88
68
26
20
38
101
89
69
25
19
39
102
90
70
24
18
40
103
91
71
23
17
41
104
92
72
22
16
42
105
93
73
21
15
43
106
94
74
20
14
44
107
95
75
19
13
45
108
96
76
18
12
46
109
97
77
65
64
63
62
61
60
59
58
57
56
55
54
53
17
11
47
110
98
78
66
52
16
10
48
111
99
79
67
51
15
9
47
111
100
80
68
50
14
8
46
110
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
99
87
67
29
21
35
100
88
68
28
20
36
101
89
69
27
19
37
102
90
70
26
18
38
103
91
71
25
17
39
104
92
72
24
16
40
105
93
73
23
15
41
106
94
74
22
14
42
107
95
75
21
13
43
108
96
76
20
12
44
109
97
77
19
11
45
110
98
78
66
65
64
63
62
61
60
59
58
57
56
55
54
18
10
46
111
99
79
67
53
17
9
47
112
100
80
68
52
16
8
48
112
101
81
69
51
15
7
47
111
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
100
88
68
30
20
34
101
89
69
29
19
35
102
90
70
28
18
36
103
91
71
27
17
37
104
92
72
26
16
38
105
93
73
25
15
39
106
94
74
24
14
40
107
95
75
23
13
41
108
96
76
22
12
42
109
97
77
21
11
43
110
98
78
20
10
44
111
99
79
67
66
65
64
63
62
61
60
59
58
57
56
55
19
9
45
112
100
80
68
54
18
8
46
113
101
81
69
53
17
7
47
113
102
82
70
52
16
6
48
112
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
101
89
69
31
19
33
102
90
70
30
18
34
103
91
71
29
17
35
104
92
72
28
16
36
105
93
73
27
15
37
106
94
74
26
14
38
107
95
75
25
13
39
108
96
76
24
12
40
109
97
77
23
11
41
110
98
78
22
10
42
111
99
79
21
9
43
112
100
80
68
67
66
65
64
63
62
61
60
59
58
57
56
20
8
44
113
101
81
69
55
19
7
45
114
102
82
70
54
18
6
46
114
103
83
71
53
17
5
47
113
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
102
90
70
32
18
32
103
91
71
31
17
33
104
92
72
30
16
34
105
93
73
29
15
35
106
94
74
28
14
36
107
95
75
27
13
37
108
96
76
26
12
38
109
97
77
25
11
39
110
98
78
24
10
40
111
99
79
23
9
41
112
100
80
22
8
42
113
101
81
69
68
67
66
65
64
63
62
61
60
59
58
57
21
7
43
114
102
82
70
56
20
6
44
115
103
83
71
55
19
5
45
115
104
84
72
54
18
4
46
114
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
103
91
71
33
17
31
104
92
72
32
16
32
105
93
73
31
15
33
106
94
74
30
14
34
107
95
75
29
13
35
108
96
76
28
12
36
109
97
77
27
11
37
110
98
78
26
10
38
111
99
79
25
9
39
112
100
80
24
8
40
113
101
81
23
7
41
114
102
82
70
69
68
67
66
65
64
63
62
61
60
59
58
22
6
42
115
103
83
71
57
21
5
43
116
104
84
72
56
20
4
44
116
105
85
73
55
19
3
45
115
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
104
92
72
34
16
30
105
93
73
33
15
31
106
94
74
32
14
32
107
95
75
31
13
33
108
96
76
30
12
34
109
97
77
29
11
35
110
98
78
28
10
36
111
99
79
27
9
37
112
100
80
26
8
38
113
101
81
25
7
39
114
102
82
24
6
40
115
103
83
71
70
69
68
67
66
65
64
63
62
61
60
59
23
5
41
116
104
84
72
58
22
4
42
117
105
85
73
57
21
3
43
117
106
86
74
56
20
2
44
116
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
105
93
73
35
15
29
106
94
74
34
14
30
107
95
75
33
13
31
108
96
76
32
12
32
109
97
77
31
11
33
110
98
78
30
10
34
111
99
79
29
9
35
112
100
80
28
8
36
113
101
81
27
7
37
114
102
82
26
6
38
115
103
83
25
5
39
116
104
84
72
71
70
69
68
67
66
65
64
63
62
61
60
24
4
40
117
105
85
73
59
23
3
41
118
106
86
74
58
22
2
42
118
107
87
75
57
21
1
43
117
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
117
105
85
49
29
15
118
106
86
50
30
14
118
107
87
51
31
13
117
108
88
52
32
12
116
109
89
53
33
11
115
110
90
54
34
10
114
111
91
55
35
9
113
112
92
56
36
8
112
113
93
57
37
7
111
114
94
58
38
6
110
115
95
59
39
5
109
116
96
108
107
106
105
104
103
102
101
100
99
98
97
96
60
40
4
108
117
97
109
95
59
41
3
107
118
98
110
94
58
42
2
106
118
99
111
93
57
43
1
105
117
116
115
114
113
112
111
110
109
110
110
109
108
107
106
105
104
103
102
101
100
112
92
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
47
46
45
44
0
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
16
30
50
86
106
118
15
31
51
87
107
118
14
32
52
88
108
117
13
33
53
89
109
116
12
34
54
90
110
115
11
35
55
91
111
114
10
36
56
92
112
113
9
37
57
93
113
112
8
38
58
94
114
111
7
39
59
95
115
110
6
40
60
96
116
109
5
41
59
95
96
97
98
99
100
101
102
103
104
105
106
107
97
117
108
4
42
58
94
108
98
118
107
3
43
57
93
109
99
118
106
2
44
56
92
110
100
117
105
1
45
46
47
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
91
111
101
102
103
104
105
106
107
108
109
110
110
109
108
109
110
111
112
113
114
115
116
104
0
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
38
24
28
66
86
98
39
23
27
67
87
99
40
22
26
68
88
100
41
21
25
69
89
101
42
20
24
70
90
102
43
19
23
71
91
103
44
18
22
72
92
104
45
17
21
73
93
105
46
16
20
74
94
106
47
15
19
75
95
107
48
14
18
76
96
108
47
13
17
53
54
55
56
57
58
59
60
61
62
63
64
65
77
97
109
46
12
16
52
66
78
98
110
45
11
15
51
67
79
99
110
44
10
14
50
68
80
100
109
43
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
49
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
108
42
0
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
50
36
16
54
74
86
51
35
15
55
75
87
52
34
14
56
76
88
53
33
13
57
77
89
54
32
12
58
78
90
55
31
11
59
79
91
56
30
10
60
80
92
57
29
9
61
81
93
58
28
8
62
82
94
59
27
7
63
83
95
60
26
6
64
84
96
61
25
5
39
40
41
42
43
44
45
46
47
48
49
50
51
65
85
97
60
24
4
38
52
66
86
98
59
23
3
37
53
67
87
99
58
22
2
36
54
68
88
100
57
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
35
55
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
101
56
14
0
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
84
70
50
72
92
106
85
69
49
71
91
107
86
68
48
70
90
108
87
67
47
69
89
109
88
66
46
68
88
110
89
65
45
67
87
111
90
64
44
66
86
112
91
63
43
65
85
113
92
62
42
64
84
114
93
61
41
63
83
115
94
60
40
62
82
116
95
59
39
5
6
7
8
9
10
11
12
13
14
15
16
17
61
81
117
94
58
38
4
18
60
80
116
93
57
37
3
19
59
79
115
92
56
36
2
20
58
78
114
91
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
1
21
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
113
90
48
34
0
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
106
92
72
50
70
84
107
91
71
49
69
85
108
90
70
48
68
86
109
89
69
47
67
87
110
88
68
46
66
88
111
87
67
45
65
89
112
86
66
44
64
90
113
85
65
43
63
91
114
84
64
42
62
92
115
83
63
41
61
93
116
82
62
40
60
94
117
81
61
17
16
15
14
13
12
11
10
9
8
7
6
5
39
59
95
116
80
60
18
4
38
58
94
115
79
59
19
3
37
57
93
114
78
58
20
2
36
56
92
113
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
21
1
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
91
112
70
56
22
0
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
86
74
54
16
36
50
87
75
55
15
35
51
88
76
56
14
34
52
89
77
57
13
33
53
90
78
58
12
32
54
91
79
59
11
31
55
92
80
60
10
30
56
93
81
61
9
29
57
94
82
62
8
28
58
95
83
63
7
27
59
96
84
64
6
26
60
97
85
65
51
50
49
48
47
46
45
44
43
42
41
40
39
5
25
61
98
86
66
52
38
4
24
60
99
87
67
53
37
3
23
59
100
88
68
54
36
2
22
58
101
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
55
35
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
57
102
82
70
56
34
0
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
98
86
66
28
24
38
99
87
67
27
23
39
100
88
68
26
22
40
101
89
69
25
21
41
102
90
70
24
20
42
103
91
71
23
19
43
104
92
72
22
18
44
105
93
73
21
17
45
106
94
74
20
16
46
107
95
75
19
15
47
108
96
76
18
14
48
109
97
77
65
64
63
62
61
60
59
58
57
56
55
54
53
17
13
47
110
98
78
66
52
16
12
46
110
99
79
67
51
15
11
45
109
100
80
68
50
14
10
44
108
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
49
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
43
107
94
82
70
48
14
0
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
118
106
86
50
30
16
118
107
87
51
31
15
117
108
88
52
32
14
116
109
89
53
33
13
115
110
90
54
34
12
114
111
91
55
35
11
113
112
92
56
36
10
112
113
93
57
37
9
111
114
94
58
38
8
110
115
95
59
39
7
109
116
96
60
40
6
108
117
97
107
106
105
104
103
102
101
100
99
98
97
96
95
59
41
5
107
118
98
108
94
58
42
4
106
118
99
109
93
57
43
3
105
117
100
110
92
56
44
2
104
116
115
114
113
112
111
110
109
108
109
110
110
109
108
107
106
105
104
103
102
101
111
91
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
47
46
45
1
103
107
102
112
90
56
42
0
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
17
31
51
87
107
118
16
32
52
88
108
117
15
33
53
89
109
116
14
34
54
90
110
115
13
35
55
91
111
114
12
36
56
92
112
113
11
37
57
93
113
112
10
38
58
94
114
111
9
39
59
95
115
110
8
40
60
96
116
109
7
41
59
97
117
108
6
42
58
94
95
96
97
98
99
100
101
102
103
104
105
106
98
118
107
5
43
57
93
107
99
118
106
4
44
56
92
108
100
117
105
3
45
55
91
109
101
116
104
2
46
47
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
90
110
102
103
104
105
106
107
108
109
110
110
109
108
107
108
109
110
111
112
113
114
115
103
1
41
55
89
111
103
106
102
0
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
39
25
29
67
87
99
40
24
28
68
88
100
41
23
27
69
89
101
42
22
26
70
90
102
43
21
25
71
91
103
44
20
24
72
92
104
45
19
23
73
93
105
46
18
22
74
94
106
47
17
21
75
95
107
48
16
20
76
96
108
47
15
19
77
97
109
46
14
18
54
55
56
57
58
59
60
61
62
63
64
65
66
78
98
110
45
13
17
53
67
79
99
110
44
12
16
52
68
80
100
109
43
11
15
51
69
81
101
108
42
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
50
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
107
41
1
15
49
71
83
95
106
40
0
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
51
37
17
55
75
87
52
36
16
56
76
88
53
35
15
57
77
89
54
34
14
58
78
90
55
33
13
59
79
91
56
32
12
60
80
92
57
31
11
61
81
93
58
30
10
62
82
94
59
29
9
63
83
95
60
28
8
64
84
96
61
27
7
65
85
97
62
26
6
38
39
40
41
42
43
44
45
46
47
48
49
50
66
86
98
61
25
5
37
51
67
87
99
60
24
4
36
52
68
88
100
59
23
3
35
53
69
89
101
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
34
54
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
102
57
15
1
33
55
71
83
103
56
16
0
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
83
69
49
73
93
107
84
68
48
72
92
108
85
67
47
71
91
109
86
66
46
70
90
110
87
65
45
69
89
111
88
64
44
68
88
112
89
63
43
67
87
113
90
62
42
66
86
114
91
61
41
65
85
115
92
60
40
64
84
116
93
59
39
63
83
117
94
58
38
6
7
8
9
10
11
12
13
14
15
16
17
18
62
82
118
93
57
37
5
19
61
81
117
92
56
36
4
20
60
80
116
91
55
35
3
21
59
79
115
90
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
2
22
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
114
89
47
33
1
23
57
71
113
88
48
32
0
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
107
93
73
49
69
83
108
92
72
48
68
84
109
91
71
47
67
85
110
90
70
46
66
86
111
89
69
45
65
87
112
88
68
44
64
88
113
87
67
43
63
89
114
86
66
42
62
90
115
85
65
41
61
91
116
84
64
40
60
92
117
83
63
39
59
93
118
82
62
18
17
16
15
14
13
12
11
10
9
8
7
6
38
58
94
117
81
61
19
5
37
57
93
116
80
60
20
4
36
56
92
115
79
59
21
3
35
55
91
114
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
22
2
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
90
113
71
57
23
1
33
47
89
112
72
56
24
0
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
87
75
55
17
37
51
88
76
56
16
36
52
89
77
57
15
35
53
90
78
58
14
34
54
91
79
59
13
33
55
92
80
60
12
32
56
93
81
61
11
31
57
94
82
62
10
30
58
95
83
63
9
29
59
96
84
64
8
28
60
97
85
65
7
27
61
98
86
66
50
49
48
47
46
45
44
43
42
41
40
39
38
6
26
62
99
87
67
51
37
5
25
61
100
88
68
52
36
4
24
60
101
89
69
53
35
3
23
59
102
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
54
34
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
58
103
83
71
55
33
1
15
57
104
84
72
56
32
0
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
99
87
67
29
25
39
100
88
68
28
24
40
101
89
69
27
23
41
102
90
70
26
22
42
103
91
71
25
21
43
104
92
72
24
20
44
105
93
73
23
19
45
106
94
74
22
18
46
107
95
75
21
17
47
108
96
76
20
16
48
109
97
77
19
15
47
110
98
78
66
65
64
63
62
61
60
59
58
57
56
55
54
18
14
46
110
99
79
67
53
17
13
45
109
100
80
68
52
16
12
44
108
101
81
69
51
15
11
43
107
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
50
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
42
106
95
83
71
49
15
1
41
105
96
84
72
48
16
0
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
118
107
87
51
31
17
117
108
88
52
32
16
116
109
89
53
33
15
115
110
90
54
34
14
114
111
91
55
35
13
113
112
92
56
36
12
112
113
93
57
37
11
111
114
94
58
38
10
110
115
95
59
39
9
109
116
96
60
40
8
108
117
97
59
41
7
107
118
98
106
105
104
103
102
101
100
99
98
97
96
95
94
58
42
6
106
118
99
107
93
57
43
5
105
117
100
108
92
56
44
4
104
116
101
109
91
55
45
3
103
115
114
113
112
111
110
109
108
107
108
109
110
110
109
108
107
106
105
104
103
102
110
90
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
47
46
2
102
106
103
111
89
55
41
1
101
105
104
112
88
56
40
0
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
18
32
52
88
108
117
17
33
53
89
109
116
16
34
54
90
110
115
15
35
55
91
111
114
14
36
56
92
112
113
13
37
57
93
113
112
12
38
58
94
114
111
11
39
59
95
115
110
10
40
60
96
116
109
9
41
59
97
117
108
8
42
58
98
118
107
7
43
57
93
94
95
96
97
98
99
100
101
102
103
104
105
99
118
106
6
44
56
92
106
100
117
105
5
45
55
91
107
101
116
104
4
46
54
90
108
102
115
103
3
47
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
89
109
103
104
105
106
107
108
109
110
110
109
108
107
106
107
108
109
110
111
112
113
114
102
2
40
54
88
110
104
105
101
1
39
55
87
111
105
104
100
0
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
40
26
30
68
88
100
41
25
29
69
89
101
42
24
28
70
90
102
43
23
27
71
91
103
44
22
26
72
92
104
45
21
25
73
93
105
46
20
24
74
94
106
47
19
23
75
95
107
48
18
22
76
96
108
47
17
21
77
97
109
46
16
20
78
98
110
45
15
19
55
56
57
58
59
60
61
62
63
64
65
66
67
79
99
110
44
14
18
54
68
80
100
109
43
13
17
53
69
81
101
108
42
12
16
52
70
82
102
107
41
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
51
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
106
40
2
16
50
72
84
96
105
39
1
17
49
73
85
97
104
38
0
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
52
38
18
56
76
88
53
37
17
57
77
89
54
36
16
58
78
90
55
35
15
59
79
91
56
34
14
60
80
92
57
33
13
61
81
93
58
32
12
62
82
94
59
31
11
63
83
95
60
30
10
64
84
96
61
29
9
65
85
97
62
28
8
66
86
98
63
27
7
37
38
39
40
41
42
43
44
45
46
47
48
49
67
87
99
62
26
6
36
50
68
88
100
61
25
5
35
51
69
89
101
60
24
4
34
52
70
90
102
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
33
53
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
103
58
16
2
32
54
72
84
104
57
17
1
31
55
73
85
105
56
18
0
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
82
68
48
74
94
108
83
67
47
73
93
109
84
66
46
72
92
110
85
65
45
71
91
111
86
64
44
70
90
112
87
63
43
69
89
113
88
62
42
68
88
114
89
61
41
67
87
115
90
60
40
66
86
116
91
59
39
65
85
117
92
58
38
64
84
118
93
57
37
7
8
9
10
11
12
13
14
15
16
17
18
19
63
83
119
92
56
36
6
20
62
82
118
91
55
35
5
21
61
81
117
90
54
34
4
22
60
80
116
89
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
3
23
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
115
88
46
32
2
24
58
72
114
87
47
31
1
25
57
73
113
86
48
30
0
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
108
94
74
48
68
82
109
93
73
47
67
83
110
92
72
46
66
84
111
91
71
45
65
85
112
90
70
44
64
86
113
89
69
43
63
87
114
88
68
42
62
88
115
87
67
41
61
89
116
86
66
40
60
90
117
85
65
39
59
91
118
84
64
38
58
92
119
83
63
19
18
17
16
15
14
13
12
11
10
9
8
7
37
57
93
118
82
62
20
6
36
56
92
117
81
61
21
5
35
55
91
116
80
60
22
4
34
54
90
115
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
23
3
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
89
114
72
58
24
2
32
46
88
113
73
57
25
1
31
47
87
112
74
56
26
0
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
88
76
56
18
38
52
89
77
57
17
37
53
90
78
58
16
36
54
91
79
59
15
35
55
92
80
60
14
34
56
93
81
61
13
33
57
94
82
62
12
32
58
95
83
63
11
31
59
96
84
64
10
30
60
97
85
65
9
29
61
98
86
66
8
28
62
99
87
67
49
48
47
46
45
44
43
42
41
40
39
38
37
7
27
63
100
88
68
50
36
6
26
62
101
89
69
51
35
5
25
61
102
90
70
52
34
4
24
60
103
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
53
33
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
59
104
84
72
54
32
2
16
58
105
85
73
55
31
1
17
57
106
86
74
56
30
0
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
100
88
68
30
26
40
101
89
69
29
25
41
102
90
70
28
24
42
103
91
71
27
23
43
104
92
72
26
22
44
105
93
73
25
21
45
106
94
74
24
20
46
107
95
75
23
19
47
108
96
76
22
18
48
109
97
77
21
17
47
110
98
78
20
16
46
110
99
79
67
66
65
64
63
62
61
60
59
58
57
56
55
19
15
45
109
100
80
68
54
18
14
44
108
101
81
69
53
17
13
43
107
102
82
70
52
16
12
42
106
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
51
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
41
105
96
84
72
50
16
2
40
104
97
85
73
49
17
1
39
103
98
86
74
48
18
0
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
117
108
88
52
32
18
116
109
89
53
33
17
115
110
90
54
34
16
114
111
91
55
35
15
113
112
92
56
36
14
112
113
93
57
37
13
111
114
94
58
38
12
110
115
95
59
39
11
109
116
96
60
40
10
108
117
97
59
41
9
107
118
98
58
42
8
106
118
99
105
104
103
102
101
100
99
98
97
96
95
94
93
57
43
7
105
117
100
106
92
56
44
6
104
116
101
107
91
55
45
5
103
115
102
108
90
54
46
4
102
114
113
112
111
110
109
108
107
106
107
108
109
110
110
109
108
107
106
105
104
103
109
89
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
47
3
101
105
104
110
88
54
40
2
100
104
105
111
87
55
39
1
99
103
106
112
86
56
38
0
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
19
33
53
89
109
116
18
34
54
90
110
115
17
35
55
91
111
114
16
36
56
92
112
113
15
37
57
93
113
112
14
38
58
94
114
111
13
39
59
95
115
110
12
40
60
96
116
109
11
41
59
97
117
108
10
42
58
98
118
107
9
43
57
99
118
106
8
44
56
92
93
94
95
96
97
98
99
100
101
102
103
104
100
117
105
7
45
55
91
105
101
116
104
6
46
54
90
106
102
115
103
5
47
53
89
107
103
114
102
4
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
88
108
104
105
106
107
108
109
110
110
109
108
107
106
105
106
107
108
109
110
111
112
113
101
3
39
53
87
109
105
104
100
2
38
54
86
110
106
103
99
1
37
55
85
111
107
102
98
0
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
41
27
31
69
89
101
42
26
30
70
90
102
43
25
29
71
91
103
44
24
28
72
92
104
45
23
27
73
93
105
46
22
26
74
94
106
47
21
25
75
95
107
48
20
24
76
96
108
47
19
23
77
97
109
46
18
22
78
98
110
45
17
21
79
99
110
44
16
20
56
57
58
59
60
61
62
63
64
65
66
67
68
80
100
109
43
15
19
55
69
81
101
108
42
14
18
54
70
82
102
107
41
13
17
53
71
83
103
106
40
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
52
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
39
3
17
51
73
85
97
104
38
2
18
50
74
86
98
103
37
1
19
49
75
87
99
102
36
0
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
53
39
19
57
77
89
54
38
18
58
78
90
55
37
17
59
79
91
56
36
16
60
80
92
57
35
15
61
81
93
58
34
14
62
82
94
59
33
13
63
83
95
60
32
12
64
84
96
61
31
11
65
85
97
62
30
10
66
86
98
63
29
9
67
87
99
64
28
8
36
37
38
39
40
41
42
43
44
45
46
47
48
68
88
100
63
27
7
35
49
69
89
101
62
26
6
34
50
70
90
102
61
25
5
33
51
71
91
103
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
32
52
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
104
59
17
3
31
53
73
85
105
58
18
2
30
54
74
86
106
57
19
1
29
55
75
87
107
56
20
0
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
81
67
47
75
95
109
82
66
46
74
94
110
83
65
45
73
93
111
84
64
44
72
92
112
85
63
43
71
91
113
86
62
42
70
90
114
87
61
41
69
89
115
88
60
40
68
88
116
89
59
39
67
87
117
90
58
38
66
86
118
91
57
37
65
85
119
92
56
36
8
9
10
11
12
13
14
15
16
17
18
19
20
64
84
120
91
55
35
7
21
63
83
119
90
54
34
6
22
62
82
118
89
53
33
5
23
61
81
117
88
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
4
24
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
116
87
45
31
3
25
59
73
115
86
46
30
2
26
58
74
114
85
47
29
1
27
57
75
113
84
48
28
0
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
109
95
75
47
67
81
110
94
74
46
66
82
111
93
73
45
65
83
112
92
72
44
64
84
113
91
71
43
63
85
114
90
70
42
62
86
115
89
69
41
61
87
116
88
68
40
60
88
117
87
67
39
59
89
118
86
66
38
58
90
119
85
65
37
57
91
120
84
64
20
19
18
17
16
15
14
13
12
11
10
9
8
36
56
92
119
83
63
21
7
35
55
91
118
82
62
22
6
34
54
90
117
81
61
23
5
33
53
89
116
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
24
4
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
88
115
73
59
25
3
31
45
87
114
74
58
26
2
30
46
86
113
75
57
27
1
29
47
85
112
76
56
28
0
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
89
77
57
19
39
53
90
78
58
18
38
54
91
79
59
17
37
55
92
80
60
16
36
56
93
81
61
15
35
57
94
82
62
14
34
58
95
83
63
13
33
59
96
84
64
12
32
60
97
85
65
11
31
61
98
86
66
10
30
62
99
87
67
9
29
63
100
88
68
48
47
46
45
44
43
42
41
40
39
38
37
36
8
28
64
101
89
69
49
35
7
27
63
102
90
70
50
34
6
26
62
103
91
71
51
33
5
25
61
104
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
52
32
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
60
105
85
73
53
31
3
17
59
106
86
74
54
30
2
18
58
107
87
75
55
29
1
19
57
108
88
76
56
28
0
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
101
89
69
31
27
41
102
90
70
30
26
42
103
91
71
29
25
43
104
92
72
28
24
44
105
93
73
27
23
45
106
94
74
26
22
46
107
95
75
25
21
47
108
96
76
24
20
48
109
97
77
23
19
47
110
98
78
22
18
46
110
99
79
21
17
45
109
100
80
68
67
66
65
64
63
62
61
60
59
58
57
56
20
16
44
108
101
81
69
55
19
15
43
107
102
82
70
54
18
14
42
106
103
83
71
53
17
13
41
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
52
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
40
104
97
85
73
51
17
3
39
103
98
86
74
50
18
2
38
102
99
87
75
49
19
1
37
101
100
88
76
48
20
0
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
116
109
89
53
33
19
115
110
90
54
34
18
114
111
91
55
35
17
113
112
92
56
36
16
112
113
93
57
37
15
111
114
94
58
38
14
110
115
95
59
39
13
109
116
96
60
40
12
108
117
97
59
41
11
107
118
98
58
42
10
106
118
99
57
43
9
105
117
100
104
103
102
101
100
99
98
97
96
95
94
93
92
56
44
8
104
116
101
105
91
55
45
7
103
115
102
106
90
54
46
6
102
114
103
107
89
53
47
5
101
113
112
111
110
109
108
107
106
105
106
107
108
109
110
110
109
108
107
106
105
104
108
88
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
4
100
104
105
109
87
53
39
3
99
103
106
110
86
54
38
2
98
102
107
111
85
55
37
1
97
101
108
112
84
56
36
0
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
20
34
54
90
110
115
19
35
55
91
111
114
18
36
56
92
112
113
17
37
57
93
113
112
16
38
58
94
114
111
15
39
59
95
115
110
14
40
60
96
116
109
13
41
59
97
117
108
12
42
58
98
118
107
11
43
57
99
118
106
10
44
56
100
117
105
9
45
55
91
92
93
94
95
96
97
98
99
100
101
102
103
101
116
104
8
46
54
90
104
102
115
103
7
47
53
89
105
103
114
102
6
48
52
88
106
104
113
101
5
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
87
107
105
106
107
108
109
110
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
100
4
38
52
86
108
106
103
99
3
37
53
85
109
107
102
98
2
36
54
84
110
108
101
97
1
35
55
83
111
109
100
96
0
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
42
28
32
70
90
102
43
27
31
71
91
103
44
26
30
72
92
104
45
25
29
73
93
105
46
24
28
74
94
106
47
23
27
75
95
107
48
22
26
76
96
108
47
21
25
77
97
109
46
20
24
78
98
110
45
19
23
79
99
110
44
18
22
80
100
109
43
17
21
57
58
59
60
61
62
63
64
65
66
67
68
69
81
101
108
42
16
20
56
70
82
102
107
41
15
19
55
71
83
103
106
40
14
18
54
72
84
104
105
39
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
53
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
38
4
18
52
74
86
98
103
37
3
19
51
75
87
99
102
36
2
20
50
76
88
100
101
35
1
21
49
77
89
101
100
34
0
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
54
40
20
58
78
90
55
39
19
59
79
91
56
38
18
60
80
92
57
37
17
61
81
93
58
36
16
62
82
94
59
35
15
63
83
95
60
34
14
64
84
96
61
33
13
65
85
97
62
32
12
66
86
98
63
31
11
67
87
99
64
30
10
68
88
100
65
29
9
35
36
37
38
39
40
41
42
43
44
45
46
47
69
89
101
64
28
8
34
48
70
90
102
63
27
7
33
49
71
91
103
62
26
6
32
50
72
92
104
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
31
51
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
105
60
18
4
30
52
74
86
106
59
19
3
29
53
75
87
107
58
20
2
28
54
76
88
108
57
21
1
27
55
75
89
109
56
22
0
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
80
66
46
76
96
110
81
65
45
75
95
111
82
64
44
74
94
112
83
63
43
73
93
113
84
62
42
72
92
114
85
61
41
71
91
115
86
60
40
70
90
116
87
59
39
69
89
117
88
58
38
68
88
118
89
57
37
67
87
119
90
56
36
66
86
120
91
55
35
9
10
11
12
13
14
15
16
17
18
19
20
21
65
85
121
90
54
34
8
22
64
84
120
89
53
33
7
23
63
83
119
88
52
32
6
24
62
82
118
87
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
5
25
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
117
86
44
30
4
26
60
74
116
85
45
29
3
27
59
75
115
84
46
28
2
28
58
76
114
83
47
27
1
29
57
77
113
82
48
26
0
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
110
96
76
46
66
80
111
95
75
45
65
81
112
94
74
44
64
82
113
93
73
43
63
83
114
92
72
42
62
84
115
91
71
41
61
85
116
90
70
40
60
86
117
89
69
39
59
87
118
88
68
38
58
88
119
87
67
37
57
89
120
86
66
36
56
90
121
85
65
21
20
19
18
17
16
15
14
13
12
11
10
9
35
55
91
120
84
64
22
8
34
54
90
119
83
63
23
7
33
53
89
118
82
62
24
6
32
52
88
117
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
25
5
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
87
116
74
60
26
4
30
44
86
115
75
59
27
3
29
45
85
114
76
58
28
2
28
46
84
113
77
57
29
1
27
47
83
112
78
56
30
0
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
90
78
58
20
40
54
91
79
59
19
39
55
92
80
60
18
38
56
93
81
61
17
37
57
94
82
62
16
36
58
95
83
63
15
35
59
96
84
64
14
34
60
97
85
65
13
33
61
98
86
66
12
32
62
99
87
67
11
31
63
100
88
68
10
30
64
101
89
69
47
46
45
44
43
42
41
40
39
38
37
36
35
9
29
65
102
90
70
48
34
8
28
64
103
91
71
49
33
7
27
63
104
92
72
50
32
6
26
62
105
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
51
31
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
61
106
86
74
52
30
4
18
60
107
87
75
53
29
3
19
59
108
88
76
54
28
2
20
58
109
89
75
55
27
1
21
57
110
90
74
56
26
0
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
102
90
70
32
28
42
103
91
71
31
27
43
104
92
72
30
26
44
105
93
73
29
25
45
106
94
74
28
24
46
107
95
75
27
23
47
108
96
76
26
22
48
109
97
77
25
21
47
110
98
78
24
20
46
110
99
79
23
19
45
109
100
80
22
18
44
108
101
81
69
68
67
66
65
64
63
62
61
60
59
58
57
21
17
43
107
102
82
70
56
20
16
42
106
103
83
71
55
19
15
41
105
104
84
72
54
18
14
40
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
53
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
39
103
98
86
74
52
18
4
38
102
99
87
75
51
19
3
37
101
100
88
76
50
20
2
36
100
101
89
77
49
21
1
35
99
102
90
78
48
22
0
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
115
110
90
54
34
20
114
111
91
55
35
19
113
112
92
56
36
18
112
113
93
57
37
17
111
114
94
58
38
16
110
115
95
59
39
15
109
116
96
60
40
14
108
117
97
59
41
13
107
118
98
58
42
12
106
118
99
57
43
11
105
117
100
56
44
10
104
116
101
103
102
101
100
99
98
97
96
95
94
93
92
91
55
45
9
103
115
102
104
90
54
46
8
102
114
103
105
89
53
47
7
101
113
104
106
88
52
48
6
100
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
110
109
108
107
106
105
107
87
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
5
99
103
106
108
86
52
38
4
98
102
107
109
85
53
37
3
97
101
108
110
84
54
36
2
96
100
109
111
83
55
35
1
95
99
110
112
82
56
34
0
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
21
35
55
91
111
114
20
36
56
92
112
113
19
37
57
93
113
112
18
38
58
94
114
111
17
39
59
95
115
110
16
40
60
96
116
109
15
41
59
97
117
108
14
42
58
98
118
107
13
43
57
99
118
106
12
44
56
100
117
105
11
45
55
101
116
104
10
46
54
90
91
92
93
94
95
96
97
98
99
100
101
102
102
115
103
9
47
53
89
103
103
114
102
8
48
52
88
104
104
113
101
7
47
51
87
105
105
112
100
6
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
86
106
106
107
108
109
110
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
99
5
37
51
85
107
107
102
98
4
36
52
84
108
108
101
97
3
35
53
83
109
109
100
96
2
34
54
82
110
110
99
95
1
33
55
81
111
111
98
94
0
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
43
29
33
71
91
103
44
28
32
72
92
104
45
27
31
73
93
105
46
26
30
74
94
106
47
25
29
75
95
107
48
24
28
76
96
108
47
23
27
77
97
109
46
22
26
78
98
110
45
21
25
79
99
110
44
20
24
80
100
109
43
19
23
81
101
108
42
18
22
58
59
60
61
62
63
64
65
66
67
68
69
70
82
102
107
41
17
21
57
71
83
103
106
40
16
20
56
72
84
104
105
39
15
19
55
73
85
105
104
38
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
54
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
103
37
5
19
53
75
87
99
102
36
4
20
52
76
88
100
101
35
3
21
51
77
89
101
100
34
2
22
50
78
90
102
99
33
1
23
49
79
91
102
98
32
0
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
55
41
21
59
79
91
56
40
20
60
80
92
57
39
19
61
81
93
58
38
18
62
82
94
59
37
17
63
83
95
60
36
16
64
84
96
61
35
15
65
85
97
62
34
14
66
86
98
63
33
13
67
87
99
64
32
12
68
88
100
65
31
11
69
89
101
66
30
10
34
35
36
37
38
39
40
41
42
43
44
45
46
70
90
102
65
29
9
33
47
71
91
103
64
28
8
32
48
72
92
104
63
27
7
31
49
73
93
105
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
30
50
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
106
61
19
5
29
51
75
87
107
60
20
4
28
52
76
88
108
59
21
3
27
53
75
89
109
58
22
2
26
54
74
90
110
57
23
1
25
55
73
91
111
56
24
0
78
77
76
75
74
73
72
71
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
79
65
45
77
97
111
80
64
44
76
96
112
81
63
43
75
95
113
82
62
42
74
94
114
83
61
41
73
93
115
84
60
40
72
92
116
85
59
39
71
91
117
86
58
38
70
90
118
87
57
37
69
89
119
88
56
36
68
88
120
89
55
35
67
87
121
90
54
34
10
11
12
13
14
15
16
17
18
19
20
21
22
66
86
122
89
53
33
9
23
65
85
121
88
52
32
8
24
64
84
120
87
51
31
7
25
63
83
119
86
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
6
26
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
118
85
43
29
5
27
61
75
117
84
44
28
4
28
60
76
116
83
45
27
3
29
59
77
115
82
46
26
2
30
58
78
114
81
47
25
1
31
57
79
113
80
48
24
0
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
79
78
77
76
75
74
73
72
71
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
111
97
77
45
65
79
112
96
76
44
64
80
113
95
75
43
63
81
114
94
74
42
62
82
115
93
73
41
61
83
116
92
72
40
60
84
117
91
71
39
59
85
118
90
70
38
58
86
119
89
69
37
57
87
120
88
68
36
56
88
121
87
67
35
55
89
122
86
66
22
21
20
19
18
17
16
15
14
13
12
11
10
34
54
90
121
85
65
23
9
33
53
89
120
84
64
24
8
32
52
88
119
83
63
25
7
31
51
87
118
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
26
6
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
86
117
75
61
27
5
29
43
85
116
76
60
28
4
28
44
84
115
77
59
29
3
27
45
83
114
78
58
30
2
26
46
82
113
79
57
31
1
25
47
81
112
80
56
32
0
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
91
79
59
21
41
55
92
80
60
20
40
56
93
81
61
19
39
57
94
82
62
18
38
58
95
83
63
17
37
59
96
84
64
16
36
60
97
85
65
15
35
61
98
86
66
14
34
62
99
87
67
13
33
63
100
88
68
12
32
64
101
89
69
11
31
65
102
90
70
46
45
44
43
42
41
40
39
38
37
36
35
34
10
30
66
103
91
71
47
33
9
29
65
104
92
72
48
32
8
28
64
105
93
73
49
31
7
27
63
106
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
50
30
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
62
107
87
75
51
29
5
19
61
108
88
76
52
28
4
20
60
109
89
75
53
27
3
21
59
110
90
74
54
26
2
22
58
111
91
73
55
25
1
23
57
112
92
72
56
24
0
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
103
91
71
33
29
43
104
92
72
32
28
44
105
93
73
31
27
45
106
94
74
30
26
46
107
95
75
29
25
47
108
96
76
28
24
48
109
97
77
27
23
47
110
98
78
26
22
46
110
99
79
25
21
45
109
100
80
24
20
44
108
101
81
23
19
43
107
102
82
70
69
68
67
66
65
64
63
62
61
60
59
58
22
18
42
106
103
83
71
57
21
17
41
105
104
84
72
56
20
16
40
104
105
85
73
55
19
15
39
103
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
54
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
38
102
99
87
75
53
19
5
37
101
100
88
76
52
20
4
36
100
101
89
77
51
21
3
35
99
102
90
78
50
22
2
34
98
102
91
79
49
23
1
33
97
101
92
80
48
24
0
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
114
111
91
55
35
21
113
112
92
56
36
20
112
113
93
57
37
19
111
114
94
58
38
18
110
115
95
59
39
17
109
116
96
60
40
16
108
117
97
59
41
15
107
118
98
58
42
14
106
118
99
57
43
13
105
117
100
56
44
12
104
116
101
55
45
11
103
115
102
102
101
100
99
98
97
96
95
94
93
92
91
90
54
46
10
102
114
103
103
89
53
47
9
101
113
104
104
88
52
48
8
100
112
105
105
87
51
47
7
99
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
110
109
108
107
106
106
86
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
6
98
102
107
107
85
51
37
5
97
101
108
108
84
52
36
4
96
100
109
109
83
53
35
3
95
99
110
110
82
54
34
2
94
98
111
111
81
55
33
1
93
97
112
112
80
56
32
0
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
22
36
56
92
112
113
21
37
57
93
113
112
20
38
58
94
114
111
19
39
59
95
115
110
18
40
60
96
116
109
17
41
59
97
117
108
16
42
58
98
118
107
15
43
57
99
118
106
14
44
56
100
117
105
13
45
55
101
116
104
12
46
54
102
115
103
11
47
53
89
90
91
92
93
94
95
96
97
98
99
100
101
103
114
102
10
48
52
88
102
104
113
101
9
47
51
87
103
105
112
100
8
46
50
86
104
106
111
99
7
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
85
105
107
108
109
110
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
98
6
36
50
84
106
108
101
97
5
35
51
83
107
109
100
96
4
34
52
82
108
110
99
95
3
33
53
81
109
111
98
94
2
32
54
80
110
112
97
93
1
31
55
79
111
113
96
92
0
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
44
30
34
72
92
104
45
29
33
73
93
105
46
28
32
74
94
106
47
27
31
75
95
107
48
26
30
76
96
108
47
25
29
77
97
109
46
24
28
78
98
110
45
23
27
79
99
110
44
22
26
80
100
109
43
21
25
81
101
108
42
20
24
82
102
107
41
19
23
59
60
61
62
63
64
65
66
67
68
69
70
71
83
103
106
40
18
22
58
72
84
104
105
39
17
21
57
73
85
105
104
38
16
20
56
74
86
106
103
37
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
55
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
102
36
6
20
54
76
88
100
101
35
5
21
53
77
89
101
100
34
4
22
52
78
90
102
99
33
3
23
51
79
91
102
98
32
2
24
50
80
92
101
97
31
1
25
49
81
93
100
96
30
0
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
56
42
22
60
80
92
57
41
21
61
81
93
58
40
20
62
82
94
59
39
19
63
83
95
60
38
18
64
84
96
61
37
17
65
85
97
62
36
16
66
86
98
63
35
15
67
87
99
64
34
14
68
88
100
65
33
13
69
89
101
66
32
12
70
90
102
67
31
11
33
34
35
36
37
38
39
40
41
42
43
44
45
71
91
103
66
30
10
32
46
72
92
104
65
29
9
31
47
73
93
105
64
28
8
30
48
74
94
106
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
29
49
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
107
62
20
6
28
50
76
88
108
61
21
5
27
51
75
89
109
60
22
4
26
52
74
90
110
59
23
3
25
53
73
91
111
58
24
2
24
54
72
92
112
57
25
1
23
55
71
93
113
56
26
0
77
76
75
74
73
72
71
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
78
64
44
78
98
112
79
63
43
77
97
113
80
62
42
76
96
114
81
61
41
75
95
115
82
60
40
74
94
116
83
59
39
73
93
117
84
58
38
72
92
118
85
57
37
71
91
119
86
56
36
70
90
120
87
55
35
69
89
121
88
54
34
68
88
122
89
53
33
11
12
13
14
15
16
17
18
19
20
21
22
23
67
87
123
88
52
32
10
24
66
86
122
87
51
31
9
25
65
85
121
86
50
30
8
26
64
84
120
85
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
7
27
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
119
84
42
28
6
28
62
76
118
83
43
27
5
29
61
77
117
82
44
26
4
30
60
78
116
81
45
25
3
31
59
79
115
80
46
24
2
32
58
80
114
79
47
23
1
33
57
81
113
78
48
22
0
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
79
78
77
76
75
74
73
72
71
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
112
98
78
44
64
78
113
97
77
43
63
79
114
96
76
42
62
80
115
95
75
41
61
81
116
94
74
40
60
82
117
93
73
39
59
83
118
92
72
38
58
84
119
91
71
37
57
85
120
90
70
36
56
86
121
89
69
35
55
87
122
88
68
34
54
88
123
87
67
23
22
21
20
19
18
17
16
15
14
13
12
11
33
53
89
122
86
66
24
10
32
52
88
121
85
65
25
9
31
51
87
120
84
64
26
8
30
50
86
119
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
27
7
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
85
118
76
62
28
6
28
42
84
117
77
61
29
5
27
43
83
116
78
60
30
4
26
44
82
115
79
59
31
3
25
45
81
114
80
58
32
2
24
46
80
113
81
57
33
1
23
47
79
112
82
56
34
0
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
92
80
60
22
42
56
93
81
61
21
41
57
94
82
62
20
40
58
95
83
63
19
39
59
96
84
64
18
38
60
97
85
65
17
37
61
98
86
66
16
36
62
99
87
67
15
35
63
100
88
68
14
34
64
101
89
69
13
33
65
102
90
70
12
32
66
103
91
71
45
44
43
42
41
40
39
38
37
36
35
34
33
11
31
67
104
92
72
46
32
10
30
66
105
93
73
47
31
9
29
65
106
94
74
48
30
8
28
64
107
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
49
29
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
63
108
88
76
50
28
6
20
62
109
89
75
51
27
5
21
61
110
90
74
52
26
4
22
60
111
91
73
53
25
3
23
59
112
92
72
54
24
2
24
58
113
93
71
55
23
1
25
57
114
94
70
56
22
0
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
36
37
38
39
40
41
42
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
104
92
72
34
30
44
105
93
73
33
29
45
106
94
74
32
28
46
107
95
75
31
27
47
108
96
76
30
26
48
109
97
77
29
25
47
110
98
78
28
24
46
110
99
79
27
23
45
109
100
80
26
22
44
108
101
81
25
21
43
107
102
82
24
20
42
106
103
83
71
70
69
68
67
66
65
64
63
62
61
60
59
23
19
41
105
104
84
72
58
22
18
40
104
105
85
73
57
21
17
39
103
106
86
74
56
20
16
38
102
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
55
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
37
101
100
88
76
54
20
6
36
100
101
89
77
53
21
5
35
99
102
90
78
52
22
4
34
98
102
91
79
51
23
3
33
97
101
92
80
50
24
2
32
96
100
93
81
49
25
1
31
95
99
94
82
48
26
0
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
113
112
92
56
36
22
112
113
93
57
37
21
111
114
94
58
38
20
110
115
95
59
39
19
109
116
96
60
40
18
108
117
97
59
41
17
107
118
98
58
42
16
106
118
99
57
43
15
105
117
100
56
44
14
104
116
101
55
45
13
103
115
102
54
46
12
102
114
103
101
100
99
98
97
96
95
94
93
92
91
90
89
53
47
11
101
113
104
102
88
52
48
10
100
112
105
103
87
51
47
9
99
111
106
104
86
50
46
8
98
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
110
109
108
107
105
85
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
7
97
101
108
106
84
50
36
6
96
100
109
107
83
51
35
5
95
99
110
108
82
52
34
4
94
98
111
109
81
53
33
3
93
97
112
110
80
54
32
2
92
96
113
111
79
55
31
1
91
95
114
112
78
56
30
0
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
23
37
57
93
113
112
22
38
58
94
114
111
21
39
59
95
115
110
20
40
60
96
116
109
19
41
59
97
117
108
18
42
58
98
118
107
17
43
57
99
118
106
16
44
56
100
117
105
15
45
55
101
116
104
14
46
54
102
115
103
13
47
53
103
114
102
12
48
52
88
89
90
91
92
93
94
95
96
97
98
99
100
104
113
101
11
47
51
87
101
105
112
100
10
46
50
86
102
106
111
99
9
45
49
85
103
107
110
98
8
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
84
104
108
109
110
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
97
7
35
49
83
105
109
100
96
6
34
50
82
106
110
99
95
5
33
51
81
107
111
98
94
4
32
52
80
108
112
97
93
3
31
53
79
109
113
96
92
2
30
54
78
110
114
95
91
1
29
55
77
111
115
94
90
0
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
45
31
35
73
93
105
46
30
34
74
94
106
47
29
33
75
95
107
48
28
32
76
96
108
47
27
31
77
97
109
46
26
30
78
98
110
45
25
29
79
99
110
44
24
28
80
100
109
43
23
27
81
101
108
42
22
26
82
102
107
41
21
25
83
103
106
40
20
24
60
61
62
63
64
65
66
67
68
69
70
71
72
84
104
105
39
19
23
59
73
85
105
104
38
18
22
58
74
86
106
103
37
17
21
57
75
87
107
102
36
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
56
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
101
35
7
21
55
77
89
101
100
34
6
22
54
78
90
102
99
33
5
23
53
79
91
102
98
32
4
24
52
80
92
101
97
31
3
25
51
81
93
100
96
30
2
26
50
82
94
99
95
29
1
27
49
83
95
98
94
28
0
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
57
43
23
61
81
93
58
42
22
62
82
94
59
41
21
63
83
95
60
40
20
64
84
96
61
39
19
65
85
97
62
38
18
66
86
98
63
37
17
67
87
99
64
36
16
68
88
100
65
35
15
69
89
101
66
34
14
70
90
102
67
33
13
71
91
103
68
32
12
32
33
34
35
36
37
38
39
40
41
42
43
44
72
92
104
67
31
11
31
45
73
93
105
66
30
10
30
46
74
94
106
65
29
9
29
47
75
95
107
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
28
48
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
108
63
21
7
27
49
75
89
109
62
22
6
26
50
74
90
110
61
23
5
25
51
73
91
111
60
24
4
24
52
72
92
112
59
25
3
23
53
71
93
113
58
26
2
22
54
70
94
114
57
27
1
21
55
69
95
115
56
28
0
76
75
74
73
72
71
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
77
63
43
79
99
113
78
62
42
78
98
114
79
61
41
77
97
115
80
60
40
76
96
116
81
59
39
75
95
117
82
58
38
74
94
118
83
57
37
73
93
119
84
56
36
72
92
120
85
55
35
71
91
121
86
54
34
70
90
122
87
53
33
69
89
123
88
52
32
12
13
14
15
16
17
18
19
20
21
22
23
24
68
88
124
87
51
31
11
25
67
87
123
86
50
30
10
26
66
86
122
85
49
29
9
27
65
85
121
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
8
28
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
120
83
41
27
7
29
63
77
119
82
42
26
6
30
62
78
118
81
43
25
5
31
61
79
117
80
44
24
4
32
60
80
116
79
45
23
3
33
59
81
115
78
46
22
2
34
58
82
114
77
47
21
1
35
57
83
113
76
48
20
0
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
113
99
79
43
63
77
114
98
78
42
62
78
115
97
77
41
61
79
116
96
76
40
60
80
117
95
75
39
59
81
118
94
74
38
58
82
119
93
73
37
57
83
120
92
72
36
56
84
121
91
71
35
55
85
122
90
70
34
54
86
123
89
69
33
53
87
124
88
68
24
23
22
21
20
19
18
17
16
15
14
13
12
32
52
88
123
87
67
25
11
31
51
87
122
86
66
26
10
30
50
86
121
85
65
27
9
29
49
85
120
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
28
8
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
84
119
77
63
29
7
27
41
83
118
78
62
30
6
26
42
82
117
79
61
31
5
25
43
81
116
80
60
32
4
24
44
80
115
81
59
33
3
23
45
79
114
82
58
34
2
22
46
78
113
83
57
35
1
21
47
77
112
84
56
36
0
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
93
81
61
23
43
57
94
82
62
22
42
58
95
83
63
21
41
59
96
84
64
20
40
60
97
85
65
19
39
61
98
86
66
18
38
62
99
87
67
17
37
63
100
88
68
16
36
64
101
89
69
15
35
65
102
90
70
14
34
66
103
91
71
13
33
67
104
92
72
44
43
42
41
40
39
38
37
36
35
34
33
32
12
32
68
105
93
73
45
31
11
31
67
106
94
74
46
30
10
30
66
107
95
75
47
29
9
29
65
108
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
48
28
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
64
109
89
75
49
27
7
21
63
110
90
74
50
26
6
22
62
111
91
73
51
25
5
23
61
112
92
72
52
24
4
24
60
113
93
71
53
23
3
25
59
114
94
70
54
22
2
26
58
115
95
69
55
21
1
27
57
116
96
68
56
20
0
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
105
93
73
35
31
45
106
94
74
34
30
46
107
95
75
33
29
47
108
96
76
32
28
48
109
97
77
31
27
47
110
98
78
30
26
46
110
99
79
29
25
45
109
100
80
28
24
44
108
101
81
27
23
43
107
102
82
26
22
42
106
103
83
25
21
41
105
104
84
72
71
70
69
68
67
66
65
64
63
62
61
60
24
20
40
104
105
85
73
59
23
19
39
103
106
86
74
58
22
18
38
102
107
87
75
57
21
17
37
101
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
56
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
36
100
101
89
77
55
21
7
35
99
102
90
78
54
22
6
34
98
102
91
79
53
23
5
33
97
101
92
80
52
24
4
32
96
100
93
81
51
25
3
31
95
99
94
82
50
26
2
30
94
98
95
83
49
27
1
29
93
97
96
84
48
28
0
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
112
113
93
57
37
23
111
114
94
58
38
22
110
115
95
59
39
21
109
116
96
60
40
20
108
117
97
59
41
19
107
118
98
58
42
18
106
118
99
57
43
17
105
117
100
56
44
16
104
116
101
55
45
15
103
115
102
54
46
14
102
114
103
53
47
13
101
113
104
100
99
98
97
96
95
94
93
92
91
90
89
88
52
48
12
100
112
105
101
87
51
47
11
99
111
106
102
86
50
46
10
98
110
107
103
85
49
45
9
97
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
110
109
108
104
84
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
8
96
100
109
105
83
49
35
7
95
99
110
106
82
50
34
6
94
98
111
107
81
51
33
5
93
97
112
108
80
52
32
4
92
96
113
109
79
53
31
3
91
95
114
110
78
54
30
2
90
94
115
111
77
55
29
1
89
93
116
112
76
56
28
0
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
24
38
58
94
114
111
23
39
59
95
115
110
22
40
60
96
116
109
21
41
59
97
117
108
20
42
58
98
118
107
19
43
57
99
118
106
18
44
56
100
117
105
17
45
55
101
116
104
16
46
54
102
115
103
15
47
53
103
114
102
14
48
52
104
113
101
13
47
51
87
88
89
90
91
92
93
94
95
96
97
98
99
105
112
100
12
46
50
86
100
106
111
99
11
45
49
85
101
107
110
98
10
44
48
84
102
108
109
97
9
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
83
103
109
110
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
96
8
34
48
82
104
110
99
95
7
33
49
81
105
111
98
94
6
32
50
80
106
112
97
93
5
31
51
79
107
113
96
92
4
30
52
78
108
114
95
91
3
29
53
77
109
115
94
90
2
28
54
76
110
116
93
89
1
27
55
75
111
117
92
88
0
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
46
32
36
74
94
106
47
31
35
75
95
107
48
30
34
76
96
108
47
29
33
77
97
109
46
28
32
78
98
110
45
27
31
79
99
110
44
26
30
80
100
109
43
25
29
81
101
108
42
24
28
82
102
107
41
23
27
83
103
106
40
22
26
84
104
105
39
21
25
61
62
63
64
65
66
67
68
69
70
71
72
73
85
105
104
38
20
24
60
74
86
106
103
37
19
23
59
75
87
107
102
36
18
22
58
76
88
108
101
35
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
57
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
100
34
8
22
56
78
90
102
99
33
7
23
55
79
91
102
98
32
6
24
54
80
92
101
97
31
5
25
53
81
93
100
96
30
4
26
52
82
94
99
95
29
3
27
51
83
95
98
94
28
2
28
50
84
96
97
93
27
1
29
49
85
97
96
92
26
0
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
58
44
24
62
82
94
59
43
23
63
83
95
60
42
22
64
84
96
61
41
21
65
85
97
62
40
20
66
86
98
63
39
19
67
87
99
64
38
18
68
88
100
65
37
17
69
89
101
66
36
16
70
90
102
67
35
15
71
91
103
68
34
14
72
92
104
69
33
13
31
32
33
34
35
36
37
38
39
40
41
42
43
73
93
105
68
32
12
30
44
74
94
106
67
31
11
29
45
75
95
107
66
30
10
28
46
76
96
108
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
27
47
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
109
64
22
8
26
48
74
88
110
63
23
7
25
49
73
89
111
62
24
6
24
50
72
90
112
61
25
5
23
51
71
91
113
60
26
4
22
52
70
92
114
59
27
3
21
53
69
93
115
58
28
2
20
54
68
94
116
57
29
1
19
55
67
95
117
56
30
0
75
74
73
72
71
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
76
62
42
78
98
112
77
61
41
77
97
113
78
60
40
76
96
114
79
59
39
75
95
115
80
58
38
74
94
116
81
57
37
73
93
117
82
56
36
72
92
118
83
55
35
71
91
119
84
54
34
70
90
120
85
53
33
69
89
121
86
52
32
68
88
122
87
51
31
13
14
15
16
17
18
19
20
21
22
23
24
25
67
87
123
86
50
30
12
26
66
86
122
85
49
29
11
27
65
85
121
84
48
28
10
28
64
84
120
83
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
9
29
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
119
82
40
26
8
30
62
76
118
81
41
25
7
31
61
77
117
80
42
24
6
32
60
78
116
79
43
23
5
33
59
79
115
78
44
22
4
34
58
80
114
77
45
21
3
35
57
81
113
76
46
20
2
36
56
82
112
75
47
19
1
37
55
83
111
74
48
18
0
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
112
98
78
42
62
76
113
97
77
41
61
77
114
96
76
40
60
78
115
95
75
39
59
79
116
94
74
38
58
80
117
93
73
37
57
81
118
92
72
36
56
82
119
91
71
35
55
83
120
90
70
34
54
84
121
89
69
33
53
85
122
88
68
32
52
86
123
87
67
25
24
23
22
21
20
19
18
17
16
15
14
13
31
51
87
122
86
66
26
12
30
50
86
121
85
65
27
11
29
49
85
120
84
64
28
10
28
48
84
119
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
29
9
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
83
118
76
62
30
8
26
40
82
117
77
61
31
7
25
41
81
116
78
60
32
6
24
42
80
115
79
59
33
5
23
43
79
114
80
58
34
4
22
44
78
113
81
57
35
3
21
45
77
112
82
56
36
2
20
46
76
111
83
55
37
1
19
47
75
110
84
54
38
0
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
94
82
62
24
44
58
95
83
63
23
43
59
96
84
64
22
42
60
97
85
65
21
41
61
98
86
66
20
40
62
99
87
67
19
39
63
100
88
68
18
38
64
101
89
69
17
37
65
102
90
70
16
36
66
103
91
71
15
35
67
104
92
72
14
34
68
105
93
73
43
42
41
40
39
38
37
36
35
34
33
32
31
13
33
69
106
94
74
44
30
12
32
68
107
95
75
45
29
11
31
67
108
96
76
46
28
10
30
66
109
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
47
27
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
65
110
88
74
48
26
8
22
64
111
89
73
49
25
7
23
63
112
90
72
50
24
6
24
62
113
91
71
51
23
5
25
61
114
92
70
52
22
4
26
60
115
93
69
53
21
3
27
59
116
94
68
54
20
2
28
58
117
95
67
55
19
1
29
57
118
96
66
54
18
0
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
38
39
40
41
42
43
44
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
106
94
74
36
32
46
107
95
75
35
31
47
108
96
76
34
30
48
109
97
77
33
29
47
110
98
78
32
28
46
110
99
79
31
27
45
109
100
80
30
26
44
108
101
81
29
25
43
107
102
82
28
24
42
106
103
83
27
23
41
105
104
84
26
22
40
104
105
85
73
72
71
70
69
68
67
66
65
64
63
62
61
25
21
39
103
106
86
74
60
24
20
38
102
107
87
75
59
23
19
37
101
108
88
76
58
22
18
36
100
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
57
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
35
99
102
90
78
56
22
8
34
98
102
91
79
55
23
7
33
97
101
92
80
54
24
6
32
96
100
93
81
53
25
5
31
95
99
94
82
52
26
4
30
94
98
95
83
51
27
3
29
93
97
96
84
50
28
2
28
92
96
97
85
49
29
1
27
91
95
96
84
48
30
0
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
111
114
94
58
38
24
110
115
95
59
39
23
109
116
96
60
40
22
108
117
97
59
41
21
107
118
98
58
42
20
106
118
99
57
43
19
105
117
100
56
44
18
104
116
101
55
45
17
103
115
102
54
46
16
102
114
103
53
47
15
101
113
104
52
48
14
100
112
105
99
98
97
96
95
94
93
92
91
90
89
88
87
51
47
13
99
111
106
100
86
50
46
12
98
110
107
101
85
49
45
11
97
109
108
102
84
48
44
10
96
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
110
109
103
83
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
9
95
99
110
104
82
48
34
8
94
98
111
105
81
49
33
7
93
97
112
106
80
50
32
6
92
96
113
107
79
51
31
5
91
95
114
108
78
52
30
4
90
94
115
109
77
53
29
3
89
93
116
110
76
54
28
2
88
92
117
111
75
55
27
1
87
91
118
110
74
56
26
0
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
25
39
59
95
115
110
24
40
60
96
116
109
23
41
59
97
117
108
22
42
58
98
118
107
21
43
57
99
118
106
20
44
56
100
117
105
19
45
55
101
116
104
18
46
54
102
115
103
17
47
53
103
114
102
16
48
52
104
113
101
15
47
51
105
112
100
14
46
50
86
87
88
89
90
91
92
93
94
95
96
97
98
106
111
99
13
45
49
85
99
107
110
98
12
44
48
84
100
108
109
97
11
43
47
83
101
109
108
96
10
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
82
102
110
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
95
9
33
47
81
103
111
98
94
8
32
48
80
104
112
97
93
7
31
49
79
105
113
96
92
6
30
50
78
106
114
95
91
5
29
51
77
107
115
94
90
4
28
52
76
108
116
93
89
3
27
53
75
109
117
92
88
2
26
54
74
110
118
91
87
1
25
55
73
109
119
90
86
0
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
47
33
37
75
95
107
48
32
36
76
96
108
47
31
35
77
97
109
46
30
34
78
98
110
45
29
33
79
99
110
44
28
32
80
100
109
43
27
31
81
101
108
42
26
30
82
102
107
41
25
29
83
103
106
40
24
28
84
104
105
39
23
27
85
105
104
38
22
26
62
63
64
65
66
67
68
69
70
71
72
73
74
86
106
103
37
21
25
61
75
87
107
102
36
20
24
60
76
88
108
101
35
19
23
59
77
89
109
100
34
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
58
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
99
33
9
23
57
79
91
102
98
32
8
24
56
80
92
101
97
31
7
25
55
81
93
100
96
30
6
26
54
82
94
99
95
29
5
27
53
83
95
98
94
28
4
28
52
84
96
97
93
27
3
29
51
85
97
96
92
26
2
30
50
86
98
95
91
25
1
31
49
85
97
94
90
24
0
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
59
45
25
63
83
95
60
44
24
64
84
96
61
43
23
65
85
97
62
42
22
66
86
98
63
41
21
67
87
99
64
40
20
68
88
100
65
39
19
69
89
101
66
38
18
70
90
102
67
37
17
71
91
103
68
36
16
72
92
104
69
35
15
73
93
105
70
34
14
30
31
32
33
34
35
36
37
38
39
40
41
42
74
94
106
69
33
13
29
43
75
95
107
68
32
12
28
44
76
96
108
67
31
11
27
45
75
95
109
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
26
46
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
110
65
23
9
25
47
73
87
111
64
24
8
24
48
72
88
112
63
25
7
23
49
71
89
113
62
26
6
22
50
70
90
114
61
27
5
21
51
69
91
115
60
28
4
20
52
68
92
116
59
29
3
19
53
67
93
117
58
30
2
18
54
66
94
118
57
31
1
17
53
65
95
119
56
32
0
74
73
72
71
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
75
61
41
77
97
111
76
60
40
76
96
112
77
59
39
75
95
113
78
58
38
74
94
114
79
57
37
73
93
115
80
56
36
72
92
116
81
55
35
71
91
117
82
54
34
70
90
118
83
53
33
69
89
119
84
52
32
68
88
120
85
51
31
67
87
121
86
50
30
14
15
16
17
18
19
20
21
22
23
24
25
26
66
86
122
85
49
29
13
27
65
85
121
84
48
28
12
28
64
84
120
83
47
27
11
29
63
83
119
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
10
30
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
118
81
39
25
9
31
61
75
117
80
40
24
8
32
60
76
116
79
41
23
7
33
59
77
115
78
42
22
6
34
58
78
114
77
43
21
5
35
57
79
113
76
44
20
4
36
56
80
112
75
45
19
3
37
55
81
111
74
46
18
2
38
54
82
110
73
47
17
1
39
53
83
109
72
48
16
0
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
111
97
77
41
61
75
112
96
76
40
60
76
113
95
75
39
59
77
114
94
74
38
58
78
115
93
73
37
57
79
116
92
72
36
56
80
117
91
71
35
55
81
118
90
70
34
54
82
119
89
69
33
53
83
120
88
68
32
52
84
121
87
67
31
51
85
122
86
66
26
25
24
23
22
21
20
19
18
17
16
15
14
30
50
86
121
85
65
27
13
29
49
85
120
84
64
28
12
28
48
84
119
83
63
29
11
27
47
83
118
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
30
10
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
82
117
75
61
31
9
25
39
81
116
76
60
32
8
24
40
80
115
77
59
33
7
23
41
79
114
78
58
34
6
22
42
78
113
79
57
35
5
21
43
77
112
80
56
36
4
20
44
76
111
81
55
37
3
19
45
75
110
82
54
38
2
18
46
74
109
83
53
39
1
17
47
73
108
84
52
40
0
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
95
83
63
25
45
59
96
84
64
24
44
60
97
85
65
23
43
61
98
86
66
22
42
62
99
87
67
21
41
63
100
88
68
20
40
64
101
89
69
19
39
65
102
90
70
18
38
66
103
91
71
17
37
67
104
92
72
16
36
68
105
93
73
15
35
69
106
94
74
42
41
40
39
38
37
36
35
34
33
32
31
30
14
34
70
107
95
75
43
29
13
33
69
108
96
76
44
28
12
32
68
109
95
75
45
27
11
31
67
110
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
46
26
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
66
111
87
73
47
25
9
23
65
112
88
72
48
24
8
24
64
113
89
71
49
23
7
25
63
114
90
70
50
22
6
26
62
115
91
69
51
21
5
27
61
116
92
68
52
20
4
28
60
117
93
67
53
19
3
29
59
118
94
66
54
18
2
30
58
119
95
65
53
17
1
31
57
120
96
64
52
16
0
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
39
40
41
42
43
44
45
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
107
95
75
37
33
47
108
96
76
36
32
48
109
97
77
35
31
47
110
98
78
34
30
46
110
99
79
33
29
45
109
100
80
32
28
44
108
101
81
31
27
43
107
102
82
30
26
42
106
103
83
29
25
41
105
104
84
28
24
40
104
105
85
27
23
39
103
106
86
74
73
72
71
70
69
68
67
66
65
64
63
62
26
22
38
102
107
87
75
61
25
21
37
101
108
88
76
60
24
20
36
100
109
89
77
59
23
19
35
99
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
58
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
34
98
102
91
79
57
23
9
33
97
101
92
80
56
24
8
32
96
100
93
81
55
25
7
31
95
99
94
82
54
26
6
30
94
98
95
83
53
27
5
29
93
97
96
84
52
28
4
28
92
96
97
85
51
29
3
27
91
95
98
86
50
30
2
26
90
94
97
85
49
31
1
25
89
93
96
84
48
32
0
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
110
115
95
59
39
25
109
116
96
60
40
24
108
117
97
59
41
23
107
118
98
58
42
22
106
118
99
57
43
21
105
117
100
56
44
20
104
116
101
55
45
19
103
115
102
54
46
18
102
114
103
53
47
17
101
113
104
52
48
16
100
112
105
51
47
15
99
111
106
98
97
96
95
94
93
92
91
90
89
88
87
86
50
46
14
98
110
107
99
85
49
45
13
97
109
108
100
84
48
44
12
96
108
109
101
83
47
43
11
95
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
110
102
82
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
10
94
98
111
103
81
47
33
9
93
97
112
104
80
48
32
8
92
96
113
105
79
49
31
7
91
95
114
106
78
50
30
6
90
94
115
107
77
51
29
5
89
93
116
108
76
52
28
4
88
92
117
109
75
53
27
3
87
91
118
110
74
54
26
2
86
90
119
109
73
55
25
1
85
89
120
108
72
56
24
0
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
26
40
60
96
116
109
25
41
59
97
117
108
24
42
58
98
118
107
23
43
57
99
118
106
22
44
56
100
117
105
21
45
55
101
116
104
20
46
54
102
115
103
19
47
53
103
114
102
18
48
52
104
113
101
17
47
51
105
112
100
16
46
50
106
111
99
15
45
49
85
86
87
88
89
90
91
92
93
94
95
96
97
107
110
98
14
44
48
84
98
108
109
97
13
43
47
83
99
109
108
96
12
42
46
82
100
110
107
95
11
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
81
101
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
94
10
32
46
80
102
111
97
93
9
31
47
79
103
112
96
92
8
30
48
78
104
113
95
91
7
29
49
77
105
114
94
90
6
28
50
76
106
115
93
89
5
27
51
75
107
116
92
88
4
26
52
74
108
117
91
87
3
25
53
73
109
118
90
86
2
24
54
72
108
119
89
85
1
23
55
71
107
119
88
84
0
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
48
34
38
76
96
108
47
33
37
77
97
109
46
32
36
78
98
110
45
31
35
79
99
110
44
30
34
80
100
109
43
29
33
81
101
108
42
28
32
82
102
107
41
27
31
83
103
106
40
26
30
84
104
105
39
25
29
85
105
104
38
24
28
86
106
103
37
23
27
63
64
65
66
67
68
69
70
71
72
73
74
75
87
107
102
36
22
26
62
76
88
108
101
35
21
25
61
77
89
109
100
34
20
24
60
78
90
110
99
33
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
59
79
91
92
93
94
95
96
97
98
99
100
101
102
102
103
104
105
106
107
108
109
110
98
32
10
24
58
80
92
101
97
31
9
25
57
81
93
100
96
30
8
26
56
82
94
99
95
29
7
27
55
83
95
98
94
28
6
28
54
84
96
97
93
27
5
29
53
85
97
96
92
26
4
30
52
86
98
95
91
25
3
31
51
87
99
94
90
24
2
32
50
86
98
93
89
23
1
33
49
85
97
92
88
22
0
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
60
46
26
64
84
96
61
45
25
65
85
97
62
44
24
66
86
98
63
43
23
67
87
99
64
42
22
68
88
100
65
41
21
69
89
101
66
40
20
70
90
102
67
39
19
71
91
103
68
38
18
72
92
104
69
37
17
73
93
105
70
36
16
74
94
106
71
35
15
29
30
31
32
33
34
35
36
37
38
39
40
41
75
95
107
70
34
14
28
42
76
96
108
69
33
13
27
43
75
95
109
68
32
12
26
44
74
94
110
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
25
45
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
111
66
24
10
24
46
72
86
112
65
25
9
23
47
71
87
113
64
26
8
22
48
70
88
114
63
27
7
21
49
69
89
115
62
28
6
20
50
68
90
116
61
29
5
19
51
67
91
117
60
30
4
18
52
66
92
118
59
31
3
17
53
65
93
119
58
32
2
16
52
64
94
120
57
33
1
15
51
63
95
119
56
34
0
73
72
71
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
74
60
40
76
96
110
75
59
39
75
95
111
76
58
38
74
94
112
77
57
37
73
93
113
78
56
36
72
92
114
79
55
35
71
91
115
80
54
34
70
90
116
81
53
33
69
89
117
82
52
32
68
88
118
83
51
31
67
87
119
84
50
30
66
86
120
85
49
29
15
16
17
18
19
20
21
22
23
24
25
26
27
65
85
121
84
48
28
14
28
64
84
120
83
47
27
13
29
63
83
119
82
46
26
12
30
62
82
118
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
11
31
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
117
80
38
24
10
32
60
74
116
79
39
23
9
33
59
75
115
78
40
22
8
34
58
76
114
77
41
21
7
35
57
77
113
76
42
20
6
36
56
78
112
75
43
19
5
37
55
79
111
74
44
18
4
38
54
80
110
73
45
17
3
39
53
81
109
72
46
16
2
40
52
82
108
71
47
15
1
39
51
83
107
70
48
14
0
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
110
96
76
40
60
74
111
95
75
39
59
75
112
94
74
38
58
76
113
93
73
37
57
77
114
92
72
36
56
78
115
91
71
35
55
79
116
90
70
34
54
80
117
89
69
33
53
81
118
88
68
32
52
82
119
87
67
31
51
83
120
86
66
30
50
84
121
85
65
27
26
25
24
23
22
21
20
19
18
17
16
15
29
49
85
120
84
64
28
14
28
48
84
119
83
63
29
13
27
47
83
118
82
62
30
12
26
46
82
117
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
31
11
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
81
116
74
60
32
10
24
38
80
115
75
59
33
9
23
39
79
114
76
58
34
8
22
40
78
113
77
57
35
7
21
41
77
112
78
56
36
6
20
42
76
111
79
55
37
5
19
43
75
110
80
54
38
4
18
44
74
109
81
53
39
3
17
45
73
108
82
52
40
2
16
46
72
107
83
51
39
1
15
47
71
106
84
50
38
0
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
96
84
64
26
46
60
97
85
65
25
45
61
98
86
66
24
44
62
99
87
67
23
43
63
100
88
68
22
42
64
101
89
69
21
41
65
102
90
70
20
40
66
103
91
71
19
39
67
104
92
72
18
38
68
105
93
73
17
37
69
106
94
74
16
36
70
107
95
75
41
40
39
38
37
36
35
34
33
32
31
30
29
15
35
71
108
96
76
42
28
14
34
70
109
95
75
43
27
13
33
69
110
94
74
44
26
12
32
68
111
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
45
25
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
67
112
86
72
46
24
10
24
66
113
87
71
47
23
9
25
65
114
88
70
48
22
8
26
64
115
89
69
49
21
7
27
63
116
90
68
50
20
6
28
62
117
91
67
51
19
5
29
61
118
92
66
52
18
4
30
60
119
93
65
53
17
3
31
59
120
94
64
52
16
2
32
58
119
95
63
51
15
1
33
57
118
96
62
50
14
0
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
40
41
42
43
44
45
46
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
108
96
76
38
34
48
109
97
77
37
33
47
110
98
78
36
32
46
110
99
79
35
31
45
109
100
80
34
30
44
108
101
81
33
29
43
107
102
82
32
28
42
106
103
83
31
27
41
105
104
84
30
26
40
104
105
85
29
25
39
103
106
86
28
24
38
102
107
87
75
74
73
72
71
70
69
68
67
66
65
64
63
27
23
37
101
108
88
76
62
26
22
36
100
109
89
77
61
25
21
35
99
110
90
78
60
24
20
34
98
110
109
108
107
106
105
104
103
102
102
101
100
99
98
97
96
95
94
93
92
91
79
59
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
33
97
101
92
80
58
24
10
32
96
100
93
81
57
25
9
31
95
99
94
82
56
26
8
30
94
98
95
83
55
27
7
29
93
97
96
84
54
28
6
28
92
96
97
85
53
29
5
27
91
95
98
86
52
30
4
26
90
94
99
87
51
31
3
25
89
93
98
86
50
32
2
24
88
92
97
85
49
33
1
23
87
91
96
84
48
34
0
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
27
109
116
96
60
40
26
108
117
97
59
41
25
107
118
98
58
42
24
106
118
99
57
43
23
105
117
100
56
44
22
104
116
101
55
45
21
103
115
102
54
46
20
102
114
103
53
47
19
101
113
104
52
48
18
100
112
105
51
47
17
99
111
106
50
46
16
98
110
107
97
96
95
94
93
92
91
90
89
88
87
86
85
49
45
15
97
109
108
98
84
48
44
14
96
108
109
99
83
47
43
13
95
107
110
100
82
46
42
12
94
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
101
81
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
11
93
97
111
102
80
46
32
10
92
96
112
103
79
47
31
9
91
95
113
104
78
48
30
8
90
94
114
105
77
49
29
7
89
93
115
106
76
50
28
6
88
92
116
107
75
51
27
5
87
91
117
108
74
52
26
4
86
90
118
109
73
53
25
3
85
89
119
108
72
54
24
2
84
88
119
107
71
55
23
1
83
87
118
106
70
56
22
0
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
27
41
59
97
117
108
26
42
58
98
118
107
25
43
57
99
118
106
24
44
56
100
117
105
23
45
55
101
116
104
22
46
54
102
115
103
21
47
53
103
114
102
20
48
52
104
113
101
19
47
51
105
112
100
18
46
50
106
111
99
17
45
49
107
110
98
16
44
48
84
85
86
87
88
89
90
91
92
93
94
95
96
108
109
97
15
43
47
83
97
109
108
96
14
42
46
82
98
110
107
95
13
41
45
81
99
110
106
94
12
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
80
100
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
93
11
31
45
79
101
110
96
92
10
30
46
78
102
111
95
91
9
29
47
77
103
112
94
90
8
28
48
76
104
113
93
89
7
27
49
75
105
114
92
88
6
26
50
74
106
115
91
87
5
25
51
73
107
116
90
86
4
24
52
72
108
117
89
85
3
23
53
71
107
118
88
84
2
22
54
70
106
118
87
83
1
21
55
69
105
117
86
82
0
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
117
116
115
114
113
112
111
110
109
108
28
42
58
96
116
107
27
43
57
97
117
106
26
44
56
98
117
105
25
45
55
99
116
104
24
46
54
100
115
103
23
47
53
101
114
102
22
48
52
102
113
101
21
47
51
103
112
100
20
46
50
104
111
99
19
45
49
105
110
98
18
44
48
106
109
97
17
43
47
83
84
85
86
87
88
89
90
91
92
93
94
95
107
108
96
16
42
46
82
96
108
107
95
15
41
45
81
97
109
106
94
14
40
44
80
98
109
105
93
13
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
79
99
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
92
12
30
44
78
100
109
95
91
11
29
45
77
101
110
94
90
10
28
46
76
102
111
93
89
9
27
47
75
103
112
92
88
8
26
48
74
104
113
91
87
7
25
49
73
105
114
90
86
6
24
50
72
106
115
89
85
5
23
51
71
107
116
88
84
4
22
52
70
106
117
87
83
3
21
53
69
105
117
86
82
2
20
54
68
104
116
85
81
1
0
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
116
115
114
113
112
111
110
109
108
107
29
43
57
95
115
106
28
44
56
96
116
105
27
45
55
97
116
104
26
46
54
98
115
103
25
47
53
99
114
102
24
48
52
100
113
101
23
47
51
101
112
100
22
46
50
102
111
99
21
45
49
103
110
98
20
44
48
104
109
97
19
43
47
105
108
96
18
42
46
82
83
84
85
86
87
88
89
90
91
92
93
94
106
107
95
17
41
45
81
95
107
106
94
16
40
44
80
96
108
105
93
15
39
43
79
97
108
104
92
14
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
78
98
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
91
13
29
43
77
99
108
94
90
12
28
44
76
100
109
93
89
11
27
45
75
101
110
92
88
10
26
46
74
102
111
91
87
9
25
47
73
103
112
90
86
8
24
48
72
104
113
89
85
7
23
49
71
105
114
88
84
6
22
50
70
106
115
87
83
5
21
51
69
105
116
86
82
4
20
52
68
104
116
85
81
3
19
53
67
103
115
84
80
2
1
0
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
30
44
56
94
114
105
29
45
55
95
115
104
28
46
54
96
115
103
27
47
53
97
114
102
26
48
52
98
113
101
25
47
51
99
112
100
24
46
50
100
111
99
23
45
49
101
110
98
22
44
48
102
109
97
21
43
47
103
108
96
20
42
46
104
107
95
19
41
45
81
82
83
84
85
86
87
88
89
90
91
92
93
105
106
94
18
40
44
80
94
106
105
93
17
39
43
79
95
107
104
92
16
38
42
78
96
107
103
91
15
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
77
97
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
90
14
28
42
76
98
107
93
89
13
27
43
75
99
108
92
88
12
26
44
74
100
109
91
87
11
25
45
73
101
110
90
86
10
24
46
72
102
111
89
85
9
23
47
71
103
112
88
84
8
22
48
70
104
113
87
83
7
21
49
69
105
114
86
82
6
20
50
68
104
115
85
81
5
19
51
67
103
115
84
80
4
18
52
66
102
114
83
79
3
2
1
0
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
31
45
55
93
113
104
30
46
54
94
114
103
29
47
53
95
114
102
28
48
52
96
113
101
27
47
51
97
112
100
26
46
50
98
111
99
25
45
49
99
110
98
24
44
48
100
109
97
23
43
47
101
108
96
22
42
46
102
107
95
21
41
45
103
106
94
20
40
44
80
81
82
83
84
85
86
87
88
89
90
91
92
104
105
93
19
39
43
79
93
105
104
92
18
38
42
78
94
106
103
91
17
37
41
77
95
106
102
90
16
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
76
96
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
89
15
27
41
75
97
106
92
88
14
26
42
74
98
107
91
87
13
25
43
73
99
108
90
86
12
24
44
72
100
109
89
85
11
23
45
71
101
110
88
84
10
22
46
70
102
111
87
83
9
21
47
69
103
112
86
82
8
20
48
68
104
113
85
81
7
19
49
67
103
114
84
80
6
18
50
66
102
114
83
79
5
17
51
65
101
113
82
78
4
3
2
1
0
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
32
46
54
92
112
103
31
47
53
93
113
102
30
48
52
94
113
101
29
47
51
95
112
100
28
46
50
96
111
99
27
45
49
97
110
98
26
44
48
98
109
97
25
43
47
99
108
96
24
42
46
100
107
95
23
41
45
101
106
94
22
40
44
102
105
93
21
39
43
79
80
81
82
83
84
85
86
87
88
89
90
91
103
104
92
20
38
42
78
92
104
103
91
19
37
41
77
93
105
102
90
18
36
40
76
94
105
101
89
17
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
75
95
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
88
16
26
40
74
96
105
91
87
15
25
41
73
97
106
90
86
14
24
42
72
98
107
89
85
13
23
43
71
99
108
88
84
12
22
44
70
100
109
87
83
11
21
45
69
101
110
86
82
10
20
46
68
102
111
85
81
9
19
47
67
103
112
84
80
8
18
48
66
102
113
83
79
7
17
49
65
101
113
82
78
6
16
50
64
100
112
81
77
5
4
3
2
1
0
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
33
47
53
91
111
102
32
48
52
92
112
101
31
47
51
93
112
100
30
46
50
94
111
99
29
45
49
95
110
98
28
44
48
96
109
97
27
43
47
97
108
96
26
42
46
98
107
95
25
41
45
99
106
94
24
40
44
100
105
93
23
39
43
101
104
92
22
38
42
78
79
80
81
82
83
84
85
86
87
88
89
90
102
103
91
21
37
41
77
91
103
102
90
20
36
40
76
92
104
101
89
19
35
39
75
93
104
100
88
18
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
74
94
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
87
17
25
39
73
95
104
90
86
16
24
40
72
96
105
89
85
15
23
41
71
97
106
88
84
14
22
42
70
98
107
87
83
13
21
43
69
99
108
86
82
12
20
44
68
100
109
85
81
11
19
45
67
101
110
84
80
10
18
46
66
102
111
83
79
9
17
47
65
101
112
82
78
8
16
48
64
100
112
81
77
7
15
49
63
99
111
80
76
6
5
4
3
2
1
0
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
34
48
52
90
110
101
33
47
51
91
111
100
32
46
50
92
111
99
31
45
49
93
110
98
30
44
48
94
109
97
29
43
47
95
108
96
28
42
46
96
107
95
27
41
45
97
106
94
26
40
44
98
105
93
25
39
43
99
104
92
24
38
42
100
103
91
23
37
41
77
78
79
80
81
82
83
84
85
86
87
88
89
101
102
90
22
36
40
76
90
102
101
89
21
35
39
75
91
103
100
88
20
34
38
74
92
103
99
87
19
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
73
93
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
86
18
24
38
72
94
103
89
85
17
23
39
71
95
104
88
84
16
22
40
70
96
105
87
83
15
21
41
69
97
106
86
82
14
20
42
68
98
107
85
81
13
19
43
67
99
108
84
80
12
18
44
66
100
109
83
79
11
17
45
65
101
110
82
78
10
16
46
64
100
111
81
77
9
15
47
63
99
111
80
76
8
14
48
62
98
110
79
75
7
6
5
4
3
2
1
0
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
35
47
51
89
109
100
34
46
50
90
110
99
33
45
49
91
110
98
32
44
48
92
109
97
31
43
47
93
108
96
30
42
46
94
107
95
29
41
45
95
106
94
28
40
44
96
105
93
27
39
43
97
104
92
26
38
42
98
103
91
25
37
41
99
102
90
24
36
40
76
77
78
79
80
81
82
83
84
85
86
87
88
100
101
89
23
35
39
75
89
101
100
88
22
34
38
74
90
102
99
87
21
33
37
73
91
102
98
86
20
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
72
92
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
85
19
23
37
71
93
102
88
84
18
22
38
70
94
103
87
83
17
21
39
69
95
104
86
82
16
20
40
68
96
105
85
81
15
19
41
67
97
106
84
80
14
18
42
66
98
107
83
79
13
17
43
65
99
108
82
78
12
16
44
64
100
109
81
77
11
15
45
63
99
110
80
76
10
14
46
62
98
110
79
75
9
13
47
61
97
109
78
74
8
7
6
5
4
3
2
1
0
37
38
39
40
41
42
43
44
45
46
47
48
47
48
49
50
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
36
46
50
88
108
101
35
45
49
89
109
100
34
44
48
90
110
99
33
43
47
91
110
98
32
42
46
92
109
97
31
41
45
93
108
96
30
40
44
94
107
95
29
39
43
95
106
94
28
38
42
96
105
93
27
37
41
97
104
92
26
36
40
98
103
91
25
35
39
75
76
77
78
79
80
81
82
83
84
85
86
87
99
102
90
24
34
38
74
88
100
101
89
23
33
37
73
89
101
100
88
22
32
36
72
90
102
99
87
21
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
71
91
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
86
20
22
36
70
92
103
89
85
19
21
37
69
93
104
88
84
18
20
38
68
94
105
87
83
17
19
39
67
95
106
86
82
16
18
40
66
96
107
85
81
15
17
41
65
97
108
84
80
14
16
42
64
98
109
83
79
13
15
43
63
99
110
82
78
12
14
44
62
98
110
81
77
11
13
45
61
97
109
80
76
10
12
46
60
96
108
79
75
9
8
7
6
5
4
3
2
1
0
38
39
40
41
42
43
44
45
46
47
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
37
45
49
87
107
102
36
44
48
88
108
101
35
43
47
89
109
100
34
42
46
90
110
99
33
41
45
91
110
98
32
40
44
92
109
97
31
39
43
93
108
96
30
38
42
94
107
95
29
37
41
95
106
94
28
36
40
96
105
93
27
35
39
97
104
92
26
34
38
74
75
76
77
78
79
80
81
82
83
84
85
86
98
103
91
25
33
37
73
87
99
102
90
24
32
36
72
88
100
101
89
23
31
35
71
89
101
100
88
22
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
70
90
102
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
87
21
21
35
69
91
103
90
86
20
20
36
68
92
104
89
85
19
19
37
67
93
105
88
84
18
18
38
66
94
106
87
83
17
17
39
65
95
107
86
82
16
16
40
64
96
108
85
81
15
15
41
63
97
109
84
80
14
14
42
62
98
110
83
79
13
13
43
61
97
109
82
78
12
12
44
60
96
108
81
77
11
11
45
59
95
107
80
76
10
9
8
7
6
5
4
3
2
1
0
39
40
41
42
43
44
45
46
47
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
38
44
48
86
106
103
37
43
47
87
107
102
36
42
46
88
108
101
35
41
45
89
109
100
34
40
44
90
110
99
33
39
43
91
110
98
32
38
42
92
109
97
31
37
41
93
108
96
30
36
40
94
107
95
29
35
39
95
106
94
28
34
38
96
105
93
27
33
37
73
74
75
76
77
78
79
80
81
82
83
84
85
97
104
92
26
32
36
72
86
98
103
91
25
31
35
71
87
99
102
90
24
30
34
70
88
100
101
89
23
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
69
89
101
102
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
88
22
20
34
68
90
102
91
87
21
19
35
67
91
103
90
86
20
18
36
66
92
104
89
85
19
17
37
65
93
105
88
84
18
16
38
64
94
106
87
83
17
15
39
63
95
107
86
82
16
14
40
62
96
108
85
81
15
13
41
61
97
109
84
80
14
12
42
60
96
108
83
79
13
11
43
59
95
107
82
78
12
10
44
58
94
106
81
77
11
10
9
8
7
6
5
4
3
2
1
0
40
41
42
43
44
45
46
47
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
39
43
47
85
105
104
38
42
46
86
106
103
37
41
45
87
107
102
36
40
44
88
108
101
35
39
43
89
109
100
34
38
42
90
110
99
33
37
41
91
110
98
32
36
40
92
109
97
31
35
39
93
108
96
30
34
38
94
107
95
29
33
37
95
106
94
28
32
36
72
73
74
75
76
77
78
79
80
81
82
83
84
96
105
93
27
31
35
71
85
97
104
92
26
30
34
70
86
98
103
91
25
29
33
69
87
99
102
90
24
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
68
88
100
101
102
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
89
23
19
33
67
89
101
92
88
22
18
34
66
90
102
91
87
21
17
35
65
91
103
90
86
20
16
36
64
92
104
89
85
19
15
37
63
93
105
88
84
18
14
38
62
94
106
87
83
17
13
39
61
95
107
86
82
16
12
40
60
96
108
85
81
15
11
41
59
95
107
84
80
14
10
42
58
94
106
83
79
13
9
43
57
93
105
82
78
12
11
10
9
8
7
6
5
4
3
2
1
0
41
42
43
44
45
46
47
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
40
42
46
84
104
105
39
41
45
85
105
104
38
40
44
86
106
103
37
39
43
87
107
102
36
38
42
88
108
101
35
37
41
89
109
100
34
36
40
90
110
99
33
35
39
91
110
98
32
34
38
92
109
97
31
33
37
93
108
96
30
32
36
94
107
95
29
31
35
71
72
73
74
75
76
77
78
79
80
81
82
83
95
106
94
28
30
34
70
84
96
105
93
27
29
33
69
85
97
104
92
26
28
32
68
86
98
103
91
25
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
67
87
99
100
101
102
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
90
24
18
32
66
88
100
93
89
23
17
33
65
89
101
92
88
22
16
34
64
90
102
91
87
21
15
35
63
91
103
90
86
20
14
36
62
92
104
89
85
19
13
37
61
93
105
88
84
18
12
38
60
94
106
87
83
17
11
39
59
95
107
86
82
16
10
40
58
94
106
85
81
15
9
41
57
93
105
84
80
14
8
42
56
92
104
83
79
13
12
11
10
9
8
7
6
5
4
3
2
1
0
42
43
44
45
46
47
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
41
41
45
83
103
106
40
40
44
84
104
105
39
39
43
85
105
104
38
38
42
86
106
103
37
37
41
87
107
102
36
36
40
88
108
101
35
35
39
89
109
100
34
34
38
90
110
99
33
33
37
91
110
98
32
32
36
92
109
97
31
31
35
93
108
96
30
30
34
70
71
72
73
74
75
76
77
78
79
80
81
82
94
107
95
29
29
33
69
83
95
106
94
28
28
32
68
84
96
105
93
27
27
31
67
85
97
104
92
26
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
66
86
98
99
100
101
102
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
91
25
17
31
65
87
99
94
90
24
16
32
64
88
100
93
89
23
15
33
63
89
101
92
88
22
14
34
62
90
102
91
87
21
13
35
61
91
103
90
86
20
12
36
60
92
104
89
85
19
11
37
59
93
105
88
84
18
10
38
58
94
106
87
83
17
9
39
57
93
105
86
82
16
8
40
56
92
104
85
81
15
7
41
55
91
103
84
80
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
43
44
45
46
47
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
42
40
44
82
102
107
41
39
43
83
103
106
40
38
42
84
104
105
39
37
41
85
105
104
38
36
40
86
106
103
37
35
39
87
107
102
36
34
38
88
108
101
35
33
37
89
109
100
34
32
36
90
110
99
33
31
35
91
110
98
32
30
34
92
109
97
31
29
33
69
70
71
72
73
74
75
76
77
78
79
80
81
93
108
96
30
28
32
68
82
94
107
95
29
27
31
67
83
95
106
94
28
26
30
66
84
96
105
93
27
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
65
85
97
98
99
100
101
102
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
92
26
16
30
64
86
98
95
91
25
15
31
63
87
99
94
90
24
14
32
62
88
100
93
89
23
13
33
61
89
101
92
88
22
12
34
60
90
102
91
87
21
11
35
59
91
103
90
86
20
10
36
58
92
104
89
85
19
9
37
57
93
105
88
84
18
8
38
56
92
104
87
83
17
7
39
55
91
103
86
82
16
6
40
54
90
102
85
81
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
44
45
46
47
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
43
39
43
81
101
108
42
38
42
82
102
107
41
37
41
83
103
106
40
36
40
84
104
105
39
35
39
85
105
104
38
34
38
86
106
103
37
33
37
87
107
102
36
32
36
88
108
101
35
31
35
89
109
100
34
30
34
90
110
99
33
29
33
91
110
98
32
28
32
68
69
70
71
72
73
74
75
76
77
78
79
80
92
109
97
31
27
31
67
81
93
108
96
30
26
30
66
82
94
107
95
29
25
29
65
83
95
106
94
28
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
64
84
96
97
98
99
100
101
102
102
101
100
99
98
97
98
99
100
101
102
103
104
105
93
27
15
29
63
85
97
96
92
26
14
30
62
86
98
95
91
25
13
31
61
87
99
94
90
24
12
32
60
88
100
93
89
23
11
33
59
89
101
92
88
22
10
34
58
90
102
91
87
21
9
35
57
91
103
90
86
20
8
36
56
92
104
89
85
19
7
37
55
91
103
88
84
18
6
38
54
90
102
87
83
17
5
39
53
89
101
86
82
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
45
46
47
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
44
38
42
80
100
109
43
37
41
81
101
108
42
36
40
82
102
107
41
35
39
83
103
106
40
34
38
84
104
105
39
33
37
85
105
104
38
32
36
86
106
103
37
31
35
87
107
102
36
30
34
88
108
101
35
29
33
89
109
100
34
28
32
90
110
99
33
27
31
67
68
69
70
71
72
73
74
75
76
77
78
79
91
110
98
32
26
30
66
80
92
109
97
31
25
29
65
81
93
108
96
30
24
28
64
82
94
107
95
29
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
63
83
95
96
97
98
99
100
101
102
102
101
100
99
98
99
100
101
102
103
104
105
106
94
28
14
28
62
84
96
97
93
27
13
29
61
85
97
96
92
26
12
30
60
86
98
95
91
25
11
31
59
87
99
94
90
24
10
32
58
88
100
93
89
23
9
33
57
89
101
92
88
22
8
34
56
90
102
91
87
21
7
35
55
91
103
90
86
20
6
36
54
90
102
89
85
19
5
37
53
89
101
88
84
18
4
38
52
88
100
87
83
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
46
47
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
45
37
41
79
99
110
44
36
40
80
100
109
43
35
39
81
101
108
42
34
38
82
102
107
41
33
37
83
103
106
40
32
36
84
104
105
39
31
35
85
105
104
38
30
34
86
106
103
37
29
33
87
107
102
36
28
32
88
108
101
35
27
31
89
109
100
34
26
30
66
67
68
69
70
71
72
73
74
75
76
77
78
90
110
99
33
25
29
65
79
91
110
98
32
24
28
64
80
92
109
97
31
23
27
63
81
93
108
96
30
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
62
82
94
95
96
97
98
99
100
101
102
102
101
100
99
100
101
102
103
104
105
106
107
95
29
13
27
61
83
95
98
94
28
12
28
60
84
96
97
93
27
11
29
59
85
97
96
92
26
10
30
58
86
98
95
91
25
9
31
57
87
99
94
90
24
8
32
56
88
100
93
89
23
7
33
55
89
101
92
88
22
6
34
54
90
102
91
87
21
5
35
53
89
101
90
86
20
4
36
52
88
100
89
85
19
3
37
51
87
99
88
84
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
47
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
46
36
40
78
98
110
45
35
39
79
99
110
44
34
38
80
100
109
43
33
37
81
101
108
42
32
36
82
102
107
41
31
35
83
103
106
40
30
34
84
104
105
39
29
33
85
105
104
38
28
32
86
106
103
37
27
31
87
107
102
36
26
30
88
108
101
35
25
29
65
66
67
68
69
70
71
72
73
74
75
76
77
89
109
100
34
24
28
64
78
90
110
99
33
23
27
63
79
91
110
98
32
22
26
62
80
92
109
97
31
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
61
81
93
94
95
96
97
98
99
100
101
102
102
101
100
101
102
103
104
105
106
107
108
96
30
12
26
60
82
94
99
95
29
11
27
59
83
95
98
94
28
10
28
58
84
96
97
93
27
9
29
57
85
97
96
92
26
8
30
56
86
98
95
91
25
7
31
55
87
99
94
90
24
6
32
54
88
100
93
89
23
5
33
53
89
101
92
88
22
4
34
52
88
100
91
87
21
3
35
51
87
99
90
86
20
2
36
50
86
98
89
85
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
47
35
39
77
97
109
46
34
38
78
98
110
45
33
37
79
99
110
44
32
36
80
100
109
43
31
35
81
101
108
42
30
34
82
102
107
41
29
33
83
103
106
40
28
32
84
104
105
39
27
31
85
105
104
38
26
30
86
106
103
37
25
29
87
107
102
36
24
28
64
65
66
67
68
69
70
71
72
73
74
75
76
88
108
101
35
23
27
63
77
89
109
100
34
22
26
62
78
90
110
99
33
21
25
61
79
91
110
98
32
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
60
80
92
93
94
95
96
97
98
99
100
101
102
102
101
102
103
104
105
106
107
108
109
97
31
11
25
59
81
93
100
96
30
10
26
58
82
94
99
95
29
9
27
57
83
95
98
94
28
8
28
56
84
96
97
93
27
7
29
55
85
97
96
92
26
6
30
54
86
98
95
91
25
5
31
53
87
99
94
90
24
4
32
52
88
100
93
89
23
3
33
51
87
99
92
88
22
2
34
50
86
98
91
87
21
1
35
49
85
97
90
86
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
61
47
27
65
85
97
62
46
26
66
86
98
63
45
25
67
87
99
64
44
24
68
88
100
65
43
23
69
89
101
66
42
22
70
90
102
67
41
21
71
91
103
68
40
20
72
92
104
69
39
19
73
93
105
70
38
18
74
94
106
71
37
17
75
95
107
72
36
16
28
29
30
31
32
33
34
35
36
37
38
39
40
76
96
108
71
35
15
27
41
75
95
109
70
34
14
26
42
74
94
110
69
33
13
25
43
73
93
111
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
24
44
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
112
67
25
11
23
45
71
85
113
66
26
10
22
46
70
86
114
65
27
9
21
47
69
87
115
64
28
8
20
48
68
88
116
63
29
7
19
49
67
89
117
62
30
6
18
50
66
90
118
61
31
5
17
51
65
91
119
60
32
4
16
52
64
92
120
59
33
3
15
51
63
93
119
58
34
2
14
50
62
94
118
57
35
1
13
49
61
95
117
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
0
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
62
48
28
66
86
98
63
47
27
67
87
99
64
46
26
68
88
100
65
45
25
69
89
101
66
44
24
70
90
102
67
43
23
71
91
103
68
42
22
72
92
104
69
41
21
73
93
105
70
40
20
74
94
106
71
39
19
75
95
107
72
38
18
76
96
108
73
37
17
27
28
29
30
31
32
33
34
35
36
37
38
39
75
95
109
72
36
16
26
40
74
94
110
71
35
15
25
41
73
93
111
70
34
14
24
42
72
92
112
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
23
43
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
113
68
26
12
22
44
70
84
114
67
27
11
21
45
69
85
115
66
28
10
20
46
68
86
116
65
29
9
19
47
67
87
117
64
30
8
18
48
66
88
118
63
31
7
17
49
65
89
119
62
32
6
16
50
64
90
120
61
33
5
15
51
63
91
119
60
34
4
14
50
62
92
118
59
35
3
13
49
61
93
117
58
36
2
12
48
60
94
116
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
63
49
29
67
87
99
64
48
28
68
88
100
65
47
27
69
89
101
66
46
26
70
90
102
67
45
25
71
91
103
68
44
24
72
92
104
69
43
23
73
93
105
70
42
22
74
94
106
71
41
21
75
95
107
72
40
20
76
96
108
73
39
19
75
95
109
74
38
18
26
27
28
29
30
31
32
33
34
35
36
37
38
74
94
110
73
37
17
25
39
73
93
111
72
36
16
24
40
72
92
112
71
35
15
23
41
71
91
113
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
22
42
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
114
69
27
13
21
43
69
83
115
68
28
12
20
44
68
84
116
67
29
11
19
45
67
85
117
66
30
10
18
46
66
86
118
65
31
9
17
47
65
87
119
64
32
8
16
48
64
88
120
63
33
7
15
49
63
89
119
62
34
6
14
50
62
90
118
61
35
5
13
49
61
91
117
60
36
4
12
48
60
92
116
59
37
3
11
47
59
93
115
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
64
50
30
68
88
100
65
49
29
69
89
101
66
48
28
70
90
102
67
47
27
71
91
103
68
46
26
72
92
104
69
45
25
73
93
105
70
44
24
74
94
106
71
43
23
75
95
107
72
42
22
76
96
108
73
41
21
75
95
109
74
40
20
74
94
110
75
39
19
25
26
27
28
29
30
31
32
33
34
35
36
37
73
93
111
74
38
18
24
38
72
92
112
73
37
17
23
39
71
91
113
72
36
16
22
40
70
90
114
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
21
41
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
115
70
28
14
20
42
68
82
116
69
29
13
19
43
67
83
117
68
30
12
18
44
66
84
118
67
31
11
17
45
65
85
119
66
32
10
16
46
64
86
120
65
33
9
15
47
63
87
119
64
34
8
14
48
62
88
118
63
35
7
13
49
61
89
117
62
36
6
12
48
60
90
116
61
37
5
11
47
59
91
115
60
38
4
10
46
58
92
114
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
65
51
31
69
89
101
66
50
30
70
90
102
67
49
29
71
91
103
68
48
28
72
92
104
69
47
27
73
93
105
70
46
26
74
94
106
71
45
25
75
95
107
72
44
24
76
96
108
73
43
23
75
95
109
74
42
22
74
94
110
75
41
21
73
93
111
76
40
20
24
25
26
27
28
29
30
31
32
33
34
35
36
72
92
112
75
39
19
23
37
71
91
113
74
38
18
22
38
70
90
114
73
37
17
21
39
69
89
115
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
20
40
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
116
71
29
15
19
41
67
81
117
70
30
14
18
42
66
82
118
69
31
13
17
43
65
83
119
68
32
12
16
44
64
84
120
67
33
11
15
45
63
85
119
66
34
10
14
46
62
86
118
65
35
9
13
47
61
87
117
64
36
8
12
48
60
88
116
63
37
7
11
47
59
89
115
62
38
6
10
46
58
90
114
61
39
5
9
45
57
91
113
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
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
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
66
52
32
70
90
102
67
51
31
71
91
103
68
50
30
72
92
104
69
49
29
73
93
105
70
48
28
74
94
106
71
47
27
75
95
107
72
46
26
76
96
108
73
45
25
75
95
109
74
44
24
74
94
110
75
43
23
73
93
111
76
42
22
72
92
112
77
41
21
23
24
25
26
27
28
29
30
31
32
33
34
35
71
91
113
76
40
20
22
36
70
90
114
75
39
19
21
37
69
89
115
74
38
18
20
38
68
88
116
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
19
39
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
117
72
30
16
18
40
66
80
118
71
31
15
17
41
65
81
119
70
32
14
16
42
64
82
120
69
33
13
15
43
63
83
119
68
34
12
14
44
62
84
118
67
35
11
13
45
61
85
117
66
36
10
12
46
60
86
116
65
37
9
11
47
59
87
115
64
38
8
10
46
58
88
114
63
39
7
9
45
57
89
113
62
40
6
8
44
56
90
112
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
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
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
67
53
33
71
91
103
68
52
32
72
92
104
69
51
31
73
93
105
70
50
30
74
94
106
71
49
29
75
95
107
72
48
28
76
96
108
73
47
27
75
95
109
74
46
26
74
94
110
75
45
25
73
93
111
76
44
24
72
92
112
77
43
23
71
91
113
78
42
22
22
23
24
25
26
27
28
29
30
31
32
33
34
70
90
114
77
41
21
21
35
69
89
115
76
40
20
20
36
68
88
116
75
39
19
19
37
67
87
117
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
18
38
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
118
73
31
17
17
39
65
79
119
72
32
16
16
40
64
80
120
71
33
15
15
41
63
81
119
70
34
14
14
42
62
82
118
69
35
13
13
43
61
83
117
68
36
12
12
44
60
84
116
67
37
11
11
45
59
85
115
66
38
10
10
46
58
86
114
65
39
9
9
45
57
87
113
64
40
8
8
44
56
88
112
63
41
7
7
43
55
89
111
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
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
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
68
54
34
72
92
104
69
53
33
73
93
105
70
52
32
74
94
106
71
51
31
75
95
107
72
50
30
76
96
108
73
49
29
75
95
109
74
48
28
74
94
110
75
47
27
73
93
111
76
46
26
72
92
112
77
45
25
71
91
113
78
44
24
70
90
114
79
43
23
21
22
23
24
25
26
27
28
29
30
31
32
33
69
89
115
78
42
22
20
34
68
88
116
77
41
21
19
35
67
87
117
76
40
20
18
36
66
86
118
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
17
37
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
119
74
32
18
16
38
64
78
120
73
33
17
15
39
63
79
119
72
34
16
14
40
62
80
118
71
35
15
13
41
61
81
117
70
36
14
12
42
60
82
116
69
37
13
11
43
59
83
115
68
38
12
10
44
58
84
114
67
39
11
9
45
57
85
113
66
40
10
8
44
56
86
112
65
41
9
7
43
55
87
111
64
42
8
6
42
54
88
110
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
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
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
69
55
35
73
93
105
70
54
34
74
94
106
71
53
33
75
95
107
72
52
32
76
96
108
73
51
31
75
95
109
74
50
30
74
94
110
75
49
29
73
93
111
76
48
28
72
92
112
77
47
27
71
91
113
78
46
26
70
90
114
79
45
25
69
89
115
80
44
24
20
21
22
23
24
25
26
27
28
29
30
31
32
68
88
116
79
43
23
19
33
67
87
117
78
42
22
18
34
66
86
118
77
41
21
17
35
65
85
119
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
16
36
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
120
75
33
19
15
37
63
77
119
74
34
18
14
38
62
78
118
73
35
17
13
39
61
79
117
72
36
16
12
40
60
80
116
71
37
15
11
41
59
81
115
70
38
14
10
42
58
82
114
69
39
13
9
43
57
83
113
68
40
12
8
44
56
84
112
67
41
11
7
43
55
85
111
66
42
10
6
42
54
86
110
65
43
9
5
41
53
87
109
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
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
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
70
56
36
74
94
106
71
55
35
75
95
107
72
54
34
76
96
108
73
53
33
75
95
109
74
52
32
74
94
110
75
51
31
73
93
111
76
50
30
72
92
112
77
49
29
71
91
113
78
48
28
70
90
114
79
47
27
69
89
115
80
46
26
68
88
116
81
45
25
19
20
21
22
23
24
25
26
27
28
29
30
31
67
87
117
80
44
24
18
32
66
86
118
79
43
23
17
33
65
85
119
78
42
22
16
34
64
84
120
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
15
35
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
119
76
34
20
14
36
62
76
118
75
35
19
13
37
61
77
117
74
36
18
12
38
60
78
116
73
37
17
11
39
59
79
115
72
38
16
10
40
58
80
114
71
39
15
9
41
57
81
113
70
40
14
8
42
56
82
112
69
41
13
7
43
55
83
111
68
42
12
6
42
54
84
110
67
43
11
5
41
53
85
109
66
44
10
4
40
52
86
108
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
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
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
71
57
37
75
95
107
72
56
36
76
96
108
73
55
35
75
95
109
74
54
34
74
94
110
75
53
33
73
93
111
76
52
32
72
92
112
77
51
31
71
91
113
78
50
30
70
90
114
79
49
29
69
89
115
80
48
28
68
88
116
81
47
27
67
87
117
82
46
26
18
19
20
21
22
23
24
25
26
27
28
29
30
66
86
118
81
45
25
17
31
65
85
119
80
44
24
16
32
64
84
120
79
43
23
15
33
63
83
119
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
14
34
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
118
77
35
21
13
35
61
75
117
76
36
20
12
36
60
76
116
75
37
19
11
37
59
77
115
74
38
18
10
38
58
78
114
73
39
17
9
39
57
79
113
72
40
16
8
40
56
80
112
71
41
15
7
41
55
81
111
70
42
14
6
42
54
82
110
69
43
13
5
41
53
83
109
68
44
12
4
40
52
84
108
67
45
11
3
39
51
85
107
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
71
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
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
72
58
38
76
96
108
73
57
37
75
95
109
74
56
36
74
94
110
75
55
35
73
93
111
76
54
34
72
92
112
77
53
33
71
91
113
78
52
32
70
90
114
79
51
31
69
89
115
80
50
30
68
88
116
81
49
29
67
87
117
82
48
28
66
86
118
83
47
27
17
18
19
20
21
22
23
24
25
26
27
28
29
65
85
119
82
46
26
16
30
64
84
120
81
45
25
15
31
63
83
119
80
44
24
14
32
62
82
118
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
13
33
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
117
78
36
22
12
34
60
74
116
77
37
21
11
35
59
75
115
76
38
20
10
36
58
76
114
75
39
19
9
37
57
77
113
74
40
18
8
38
56
78
112
73
41
17
7
39
55
79
111
72
42
16
6
40
54
80
110
71
43
15
5
41
53
81
109
70
44
14
4
40
52
82
108
69
45
13
3
39
51
83
107
68
46
12
2
38
50
84
106
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
72
71
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
73
59
39
75
95
109
74
58
38
74
94
110
75
57
37
73
93
111
76
56
36
72
92
112
77
55
35
71
91
113
78
54
34
70
90
114
79
53
33
69
89
115
80
52
32
68
88
116
81
51
31
67
87
117
82
50
30
66
86
118
83
49
29
65
85
119
84
48
28
16
17
18
19
20
21
22
23
24
25
26
27
28
64
84
120
83
47
27
15
29
63
83
119
82
46
26
14
30
62
82
118
81
45
25
13
31
61
81
117
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
12
32
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
116
79
37
23
11
33
59
73
115
78
38
22
10
34
58
74
114
77
39
21
9
35
57
75
113
76
40
20
8
36
56
76
112
75
41
19
7
37
55
77
111
74
42
18
6
38
54
78
110
73
43
17
5
39
53
79
109
72
44
16
4
40
52
80
108
71
45
15
3
39
51
81
107
70
46
14
2
38
50
82
106
69
47
13
1
37
49
83
105
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
109
95
75
39
59
73
110
94
74
38
58
74
111
93
73
37
57
75
112
92
72
36
56
76
113
91
71
35
55
77
114
90
70
34
54
78
115
89
69
33
53
79
116
88
68
32
52
80
117
87
67
31
51
81
118
86
66
30
50
82
119
85
65
29
49
83
120
84
64
28
27
26
25
24
23
22
21
20
19
18
17
16
28
48
84
119
83
63
29
15
27
47
83
118
82
62
30
14
26
46
82
117
81
61
31
13
25
45
81
116
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
32
12
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
80
115
73
59
33
11
23
37
79
114
74
58
34
10
22
38
78
113
75
57
35
9
21
39
77
112
76
56
36
8
20
40
76
111
77
55
37
7
19
41
75
110
78
54
38
6
18
42
74
109
79
53
39
5
17
43
73
108
80
52
40
4
16
44
72
107
81
51
39
3
15
45
71
106
82
50
38
2
14
46
70
105
83
49
37
1
13
47
69
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
0
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
108
96
76
38
58
72
109
95
75
37
57
73
110
94
74
36
56
74
111
93
73
35
55
75
112
92
72
34
54
76
113
91
71
33
53
77
114
90
70
32
52
78
115
89
69
31
51
79
116
88
68
30
50
80
117
87
67
29
49
81
118
86
66
28
48
82
119
85
65
29
28
27
26
25
24
23
22
21
20
19
18
17
27
47
83
120
84
64
30
16
26
46
82
119
83
63
31
15
25
45
81
118
82
62
32
14
24
44
80
117
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
33
13
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
79
116
74
60
34
12
22
36
78
115
75
59
35
11
21
37
77
114
76
58
36
10
20
38
76
113
77
57
37
9
19
39
75
112
78
56
38
8
18
40
74
111
79
55
39
7
17
41
73
110
80
54
40
6
16
42
72
109
81
53
41
5
15
43
71
108
82
52
40
4
14
44
70
107
83
51
39
3
13
45
69
106
84
50
38
2
12
46
68
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
107
95
75
37
57
71
108
96
76
36
56
72
109
95
75
35
55
73
110
94
74
34
54
74
111
93
73
33
53
75
112
92
72
32
52
76
113
91
71
31
51
77
114
90
70
30
50
78
115
89
69
29
49
79
116
88
68
28
48
80
117
87
67
27
47
81
118
86
66
30
29
28
27
26
25
24
23
22
21
20
19
18
26
46
82
119
85
65
31
17
25
45
81
120
84
64
32
16
24
44
80
119
83
63
33
15
23
43
79
118
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
34
14
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
78
117
75
61
35
13
21
35
77
116
76
60
36
12
20
36
76
115
77
59
37
11
19
37
75
114
78
58
38
10
18
38
74
113
79
57
39
9
17
39
73
112
80
56
40
8
16
40
72
111
81
55
41
7
15
41
71
110
82
54
42
6
14
42
70
109
83
53
41
5
13
43
69
108
84
52
40
4
12
44
68
107
85
51
39
3
11
45
67
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
106
94
74
36
56
70
107
95
75
35
55
71
108
96
76
34
54
72
109
95
75
33
53
73
110
94
74
32
52
74
111
93
73
31
51
75
112
92
72
30
50
76
113
91
71
29
49
77
114
90
70
28
48
78
115
89
69
27
47
79
116
88
68
26
46
80
117
87
67
31
30
29
28
27
26
25
24
23
22
21
20
19
25
45
81
118
86
66
32
18
24
44
80
119
85
65
33
17
23
43
79
120
84
64
34
16
22
42
78
119
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
35
15
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
77
118
76
62
36
14
20
34
76
117
77
61
37
13
19
35
75
116
78
60
38
12
18
36
74
115
79
59
39
11
17
37
73
114
80
58
40
10
16
38
72
113
81
57
41
9
15
39
71
112
82
56
42
8
14
40
70
111
83
55
43
7
13
41
69
110
84
54
42
6
12
42
68
109
85
53
41
5
11
43
67
108
86
52
40
4
10
44
66
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
105
93
73
35
55
69
106
94
74
34
54
70
107
95
75
33
53
71
108
96
76
32
52
72
109
95
75
31
51
73
110
94
74
30
50
74
111
93
73
29
49
75
112
92
72
28
48
76
113
91
71
27
47
77
114
90
70
26
46
78
115
89
69
25
45
79
116
88
68
32
31
30
29
28
27
26
25
24
23
22
21
20
24
44
80
117
87
67
33
19
23
43
79
118
86
66
34
18
22
42
78
119
85
65
35
17
21
41
77
120
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
36
16
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
76
119
77
63
37
15
19
33
75
118
78
62
38
14
18
34
74
117
79
61
39
13
17
35
73
116
80
60
40
12
16
36
72
115
81
59
41
11
15
37
71
114
82
58
42
10
14
38
70
113
83
57
43
9
13
39
69
112
84
56
44
8
12
40
68
111
85
55
43
7
11
41
67
110
86
54
42
6
10
42
66
109
87
53
41
5
9
43
65
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
104
92
72
34
54
68
105
93
73
33
53
69
106
94
74
32
52
70
107
95
75
31
51
71
108
96
76
30
50
72
109
95
75
29
49
73
110
94
74
28
48
74
111
93
73
27
47
75
112
92
72
26
46
76
113
91
71
25
45
77
114
90
70
24
44
78
115
89
69
33
32
31
30
29
28
27
26
25
24
23
22
21
23
43
79
116
88
68
34
20
22
42
78
117
87
67
35
19
21
41
77
118
86
66
36
18
20
40
76
119
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
37
17
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
75
120
78
64
38
16
18
32
74
119
79
63
39
15
17
33
73
118
80
62
40
14
16
34
72
117
81
61
41
13
15
35
71
116
82
60
42
12
14
36
70
115
83
59
43
11
13
37
69
114
84
58
44
10
12
38
68
113
85
57
45
9
11
39
67
112
86
56
44
8
10
40
66
111
87
55
43
7
9
41
65
110
88
54
42
6
8
42
64
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
103
91
71
33
53
67
104
92
72
32
52
68
105
93
73
31
51
69
106
94
74
30
50
70
107
95
75
29
49
71
108
96
76
28
48
72
109
95
75
27
47
73
110
94
74
26
46
74
111
93
73
25
45
75
112
92
72
24
44
76
113
91
71
23
43
77
114
90
70
34
33
32
31
30
29
28
27
26
25
24
23
22
22
42
78
115
89
69
35
21
21
41
77
116
88
68
36
20
20
40
76
117
87
67
37
19
19
39
75
118
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
38
18
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
74
119
79
65
39
17
17
31
73
120
80
64
40
16
16
32
72
119
81
63
41
15
15
33
71
118
82
62
42
14
14
34
70
117
83
61
43
13
13
35
69
116
84
60
44
12
12
36
68
115
85
59
45
11
11
37
67
114
86
58
46
10
10
38
66
113
87
57
45
9
9
39
65
112
88
56
44
8
8
40
64
111
89
55
43
7
7
41
63
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
102
90
70
32
52
66
103
91
71
31
51
67
104
92
72
30
50
68
105
93
73
29
49
69
106
94
74
28
48
70
107
95
75
27
47
71
108
96
76
26
46
72
109
95
75
25
45
73
110
94
74
24
44
74
111
93
73
23
43
75
112
92
72
22
42
76
113
91
71
35
34
33
32
31
30
29
28
27
26
25
24
23
21
41
77
114
90
70
36
22
20
40
76
115
89
69
37
21
19
39
75
116
88
68
38
20
18
38
74
117
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
39
19
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
73
118
80
66
40
18
16
30
72
119
81
65
41
17
15
31
71
120
82
64
42
16
14
32
70
119
83
63
43
15
13
33
69
118
84
62
44
14
12
34
68
117
85
61
45
13
11
35
67
116
86
60
46
12
10
36
66
115
87
59
47
11
9
37
65
114
88
58
46
10
8
38
64
113
89
57
45
9
7
39
63
112
90
56
44
8
6
40
62
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
101
89
69
31
51
65
102
90
70
30
50
66
103
91
71
29
49
67
104
92
72
28
48
68
105
93
73
27
47
69
106
94
74
26
46
70
107
95
75
25
45
71
108
96
76
24
44
72
109
95
75
23
43
73
110
94
74
22
42
74
111
93
73
21
41
75
112
92
72
36
35
34
33
32
31
30
29
28
27
26
25
24
20
40
76
113
91
71
37
23
19
39
75
114
90
70
38
22
18
38
74
115
89
69
39
21
17
37
73
116
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
40
20
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
72
117
81
67
41
19
15
29
71
118
82
66
42
18
14
30
70
119
83
65
43
17
13
31
69
120
84
64
44
16
12
32
68
119
85
63
45
15
11
33
67
118
86
62
46
14
10
34
66
117
87
61
47
13
9
35
65
116
88
60
48
12
8
36
64
115
89
59
47
11
7
37
63
114
90
58
46
10
6
38
62
113
91
57
45
9
5
39
61
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
100
88
68
30
50
64
101
89
69
29
49
65
102
90
70
28
48
66
103
91
71
27
47
67
104
92
72
26
46
68
105
93
73
25
45
69
106
94
74
24
44
70
107
95
75
23
43
71
108
96
76
22
42
72
109
95
75
21
41
73
110
94
74
20
40
74
111
93
73
37
36
35
34
33
32
31
30
29
28
27
26
25
19
39
75
112
92
72
38
24
18
38
74
113
91
71
39
23
17
37
73
114
90
70
40
22
16
36
72
115
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
41
21
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
71
116
82
68
42
20
14
28
70
117
83
67
43
19
13
29
69
118
84
66
44
18
12
30
68
119
85
65
45
17
11
31
67
120
86
64
46
16
10
32
66
119
87
63
47
15
9
33
65
118
88
62
48
14
8
34
64
117
89
61
49
13
7
35
63
116
90
60
48
12
6
36
62
115
91
59
47
11
5
37
61
114
92
58
46
10
4
38
60
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
99
87
67
29
49
63
100
88
68
28
48
64
101
89
69
27
47
65
102
90
70
26
46
66
103
91
71
25
45
67
104
92
72
24
44
68
105
93
73
23
43
69
106
94
74
22
42
70
107
95
75
21
41
71
108
96
76
20
40
72
109
95
75
19
39
73
110
94
74
38
37
36
35
34
33
32
31
30
29
28
27
26
18
38
74
111
93
73
39
25
17
37
73
112
92
72
40
24
16
36
72
113
91
71
41
23
15
35
71
114
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
42
22
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
70
115
83
69
43
21
13
27
69
116
84
68
44
20
12
28
68
117
85
67
45
19
11
29
67
118
86
66
46
18
10
30
66
119
87
65
47
17
9
31
65
120
88
64
48
16
8
32
64
119
89
63
49
15
7
33
63
118
90
62
50
14
6
34
62
117
91
61
49
13
5
35
61
116
92
60
48
12
4
36
60
115
93
59
47
11
3
37
59
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
98
86
66
28
48
62
99
87
67
27
47
63
100
88
68
26
46
64
101
89
69
25
45
65
102
90
70
24
44
66
103
91
71
23
43
67
104
92
72
22
42
68
105
93
73
21
41
69
106
94
74
20
40
70
107
95
75
19
39
71
108
96
76
18
38
72
109
95
75
39
38
37
36
35
34
33
32
31
30
29
28
27
17
37
73
110
94
74
40
26
16
36
72
111
93
73
41
25
15
35
71
112
92
72
42
24
14
34
70
113
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
43
23
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
69
114
84
70
44
22
12
26
68
115
85
69
45
21
11
27
67
116
86
68
46
20
10
28
66
117
87
67
47
19
9
29
65
118
88
66
48
18
8
30
64
119
89
65
49
17
7
31
63
120
90
64
50
16
6
32
62
119
91
63
51
15
5
33
61
118
92
62
50
14
4
34
60
117
93
61
49
13
3
35
59
116
94
60
48
12
2
36
58
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
97
85
65
27
47
61
98
86
66
26
46
62
99
87
67
25
45
63
100
88
68
24
44
64
101
89
69
23
43
65
102
90
70
22
42
66
103
91
71
21
41
67
104
92
72
20
40
68
105
93
73
19
39
69
106
94
74
18
38
70
107
95
75
17
37
71
108
96
76
40
39
38
37
36
35
34
33
32
31
30
29
28
16
36
72
109
95
75
41
27
15
35
71
110
94
74
42
26
14
34
70
111
93
73
43
25
13
33
69
112
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
44
24
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
68
113
85
71
45
23
11
25
67
114
86
70
46
22
10
26
66
115
87
69
47
21
9
27
65
116
88
68
48
20
8
28
64
117
89
67
49
19
7
29
63
118
90
66
50
18
6
30
62
119
91
65
51
17
5
31
61
120
92
64
52
16
4
32
60
119
93
63
51
15
3
33
59
118
94
62
50
14
2
34
58
117
95
61
49
13
1
35
57
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
109
97
77
39
35
47
110
98
78
38
34
46
110
99
79
37
33
45
109
100
80
36
32
44
108
101
81
35
31
43
107
102
82
34
30
42
106
103
83
33
29
41
105
104
84
32
28
40
104
105
85
31
27
39
103
106
86
30
26
38
102
107
87
29
25
37
101
108
88
76
75
74
73
72
71
70
69
68
67
66
65
64
28
24
36
100
109
89
77
63
27
23
35
99
110
90
78
62
26
22
34
98
110
91
79
61
25
21
33
97
109
108
107
106
105
104
103
102
101
102
102
101
100
99
98
97
96
95
94
93
92
80
60
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
32
96
100
93
81
59
25
11
31
95
99
94
82
58
26
10
30
94
98
95
83
57
27
9
29
93
97
96
84
56
28
8
28
92
96
97
85
55
29
7
27
91
95
98
86
54
30
6
26
90
94
99
87
53
31
5
25
89
93
100
88
52
32
4
24
88
92
99
87
51
33
3
23
87
91
98
86
50
34
2
22
86
90
97
85
49
35
1
21
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
96
95
94
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
0
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
42
43
44
45
46
47
48
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
47
110
98
78
40
36
46
110
99
79
39
35
45
109
100
80
38
34
44
108
101
81
37
33
43
107
102
82
36
32
42
106
103
83
35
31
41
105
104
84
34
30
40
104
105
85
33
29
39
103
106
86
32
28
38
102
107
87
31
27
37
101
108
88
30
26
36
100
109
89
77
76
75
74
73
72
71
70
69
68
67
66
65
29
25
35
99
110
90
78
64
28
24
34
98
110
91
79
63
27
23
33
97
109
92
80
62
26
22
32
96
108
107
106
105
104
103
102
101
100
101
102
102
101
100
99
98
97
96
95
94
93
81
61
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
31
95
99
94
82
60
26
12
30
94
98
95
83
59
27
11
29
93
97
96
84
58
28
10
28
92
96
97
85
57
29
9
27
91
95
98
86
56
30
8
26
90
94
99
87
55
31
7
25
89
93
100
88
54
32
6
24
88
92
101
89
53
33
5
23
87
91
100
88
52
34
4
22
86
90
99
87
51
35
3
21
85
89
98
86
50
36
2
20
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
97
96
95
94
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
43
44
45
46
47
48
49
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
47
46
110
99
79
41
37
45
109
100
80
40
36
44
108
101
81
39
35
43
107
102
82
38
34
42
106
103
83
37
33
41
105
104
84
36
32
40
104
105
85
35
31
39
103
106
86
34
30
38
102
107
87
33
29
37
101
108
88
32
28
36
100
109
89
31
27
35
99
110
90
78
77
76
75
74
73
72
71
70
69
68
67
66
30
26
34
98
110
91
79
65
29
25
33
97
109
92
80
64
28
24
32
96
108
93
81
63
27
23
31
95
107
106
105
104
103
102
101
100
99
100
101
102
102
101
100
99
98
97
96
95
94
82
62
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
30
94
98
95
83
61
27
13
29
93
97
96
84
60
28
12
28
92
96
97
85
59
29
11
27
91
95
98
86
58
30
10
26
90
94
99
87
57
31
9
25
89
93
100
88
56
32
8
24
88
92
101
89
55
33
7
23
87
91
102
90
54
34
6
22
86
90
101
89
53
35
5
21
85
89
100
88
52
36
4
20
84
88
99
87
51
37
3
19
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
98
97
96
95
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
44
45
46
47
48
49
50
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
47
46
45
109
100
80
42
38
44
108
101
81
41
37
43
107
102
82
40
36
42
106
103
83
39
35
41
105
104
84
38
34
40
104
105
85
37
33
39
103
106
86
36
32
38
102
107
87
35
31
37
101
108
88
34
30
36
100
109
89
33
29
35
99
110
90
32
28
34
98
110
91
79
78
77
76
75
74
73
72
71
70
69
68
67
31
27
33
97
109
92
80
66
30
26
32
96
108
93
81
65
29
25
31
95
107
94
82
64
28
24
30
94
106
105
104
103
102
101
100
99
98
99
100
101
102
102
101
100
99
98
97
96
95
83
63
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
29
93
97
96
84
62
28
14
28
92
96
97
85
61
29
13
27
91
95
98
86
60
30
12
26
90
94
99
87
59
31
11
25
89
93
100
88
58
32
10
24
88
92
101
89
57
33
9
23
87
91
102
90
56
34
8
22
86
90
103
91
55
35
7
21
85
89
102
90
54
36
6
20
84
88
101
89
53
37
5
19
83
87
100
88
52
38
4
18
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
99
98
97
96
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
47
46
45
44
108
101
81
43
39
43
107
102
82
42
38
42
106
103
83
41
37
41
105
104
84
40
36
40
104
105
85
39
35
39
103
106
86
38
34
38
102
107
87
37
33
37
101
108
88
36
32
36
100
109
89
35
31
35
99
110
90
34
30
34
98
110
91
33
29
33
97
109
92
80
79
78
77
76
75
74
73
72
71
70
69
68
32
28
32
96
108
93
81
67
31
27
31
95
107
94
82
66
30
26
30
94
106
95
83
65
29
25
29
93
105
104
103
102
101
100
99
98
97
98
99
100
101
102
102
101
100
99
98
97
96
84
64
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
28
92
96
97
85
63
29
15
27
91
95
98
86
62
30
14
26
90
94
99
87
61
31
13
25
89
93
100
88
60
32
12
24
88
92
101
89
59
33
11
23
87
91
102
90
58
34
10
22
86
90
103
91
57
35
9
21
85
89
104
92
56
36
8
20
84
88
103
91
55
37
7
19
83
87
102
90
54
38
6
18
82
86
101
89
53
39
5
17
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
100
99
98
97
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
47
46
45
44
43
107
102
82
44
40
42
106
103
83
43
39
41
105
104
84
42
38
40
104
105
85
41
37
39
103
106
86
40
36
38
102
107
87
39
35
37
101
108
88
38
34
36
100
109
89
37
33
35
99
110
90
36
32
34
98
110
91
35
31
33
97
109
92
34
30
32
96
108
93
81
80
79
78
77
76
75
74
73
72
71
70
69
33
29
31
95
107
94
82
68
32
28
30
94
106
95
83
67
31
27
29
93
105
96
84
66
30
26
28
92
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
102
101
100
99
98
97
85
65
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
27
91
95
98
86
64
30
16
26
90
94
99
87
63
31
15
25
89
93
100
88
62
32
14
24
88
92
101
89
61
33
13
23
87
91
102
90
60
34
12
22
86
90
103
91
59
35
11
21
85
89
104
92
58
36
10
20
84
88
105
93
57
37
9
19
83
87
104
92
56
38
8
18
82
86
103
91
55
39
7
17
81
85
102
90
54
40
6
16
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
101
100
99
98
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
47
46
45
44
43
42
106
103
83
45
41
41
105
104
84
44
40
40
104
105
85
43
39
39
103
106
86
42
38
38
102
107
87
41
37
37
101
108
88
40
36
36
100
109
89
39
35
35
99
110
90
38
34
34
98
110
91
37
33
33
97
109
92
36
32
32
96
108
93
35
31
31
95
107
94
82
81
80
79
78
77
76
75
74
73
72
71
70
34
30
30
94
106
95
83
69
33
29
29
93
105
96
84
68
32
28
28
92
104
97
85
67
31
27
27
91
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
102
101
100
99
98
86
66
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
26
90
94
99
87
65
31
17
25
89
93
100
88
64
32
16
24
88
92
101
89
63
33
15
23
87
91
102
90
62
34
14
22
86
90
103
91
61
35
13
21
85
89
104
92
60
36
12
20
84
88
105
93
59
37
11
19
83
87
106
94
58
38
10
18
82
86
105
93
57
39
9
17
81
85
104
92
56
40
8
16
80
84
103
91
55
41
7
15
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
102
101
100
99
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
47
46
45
44
43
42
41
105
104
84
46
42
40
104
105
85
45
41
39
103
106
86
44
40
38
102
107
87
43
39
37
101
108
88
42
38
36
100
109
89
41
37
35
99
110
90
40
36
34
98
110
91
39
35
33
97
109
92
38
34
32
96
108
93
37
33
31
95
107
94
36
32
30
94
106
95
83
82
81
80
79
78
77
76
75
74
73
72
71
35
31
29
93
105
96
84
70
34
30
28
92
104
97
85
69
33
29
27
91
103
98
86
68
32
28
26
90
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
102
101
100
99
87
67
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
25
89
93
100
88
66
32
18
24
88
92
101
89
65
33
17
23
87
91
102
90
64
34
16
22
86
90
103
91
63
35
15
21
85
89
104
92
62
36
14
20
84
88
105
93
61
37
13
19
83
87
106
94
60
38
12
18
82
86
107
95
59
39
11
17
81
85
106
94
58
40
10
16
80
84
105
93
57
41
9
15
79
83
104
92
56
42
8
14
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
103
102
101
100
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
47
46
45
44
43
42
41
40
104
105
85
47
43
39
103
106
86
46
42
38
102
107
87
45
41
37
101
108
88
44
40
36
100
109
89
43
39
35
99
110
90
42
38
34
98
110
91
41
37
33
97
109
92
40
36
32
96
108
93
39
35
31
95
107
94
38
34
30
94
106
95
37
33
29
93
105
96
84
83
82
81
80
79
78
77
76
75
74
73
72
36
32
28
92
104
97
85
71
35
31
27
91
103
98
86
70
34
30
26
90
102
99
87
69
33
29
25
89
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
102
101
100
88
68
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
24
88
92
101
89
67
33
19
23
87
91
102
90
66
34
18
22
86
90
103
91
65
35
17
21
85
89
104
92
64
36
16
20
84
88
105
93
63
37
15
19
83
87
106
94
62
38
14
18
82
86
107
95
61
39
13
17
81
85
108
96
60
40
12
16
80
84
107
95
59
41
11
15
79
83
106
94
58
42
10
14
78
82
105
93
57
43
9
13
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
104
103
102
101
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
47
46
45
44
43
42
41
40
39
103
106
86
48
44
38
102
107
87
47
43
37
101
108
88
46
42
36
100
109
89
45
41
35
99
110
90
44
40
34
98
110
91
43
39
33
97
109
92
42
38
32
96
108
93
41
37
31
95
107
94
40
36
30
94
106
95
39
35
29
93
105
96
38
34
28
92
104
97
85
84
83
82
81
80
79
78
77
76
75
74
73
37
33
27
91
103
98
86
72
36
32
26
90
102
99
87
71
35
31
25
89
101
100
88
70
34
30
24
88
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
102
101
89
69
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
23
87
91
102
90
68
34
20
22
86
90
103
91
67
35
19
21
85
89
104
92
66
36
18
20
84
88
105
93
65
37
17
19
83
87
106
94
64
38
16
18
82
86
107
95
63
39
15
17
81
85
108
96
62
40
14
16
80
84
109
97
61
41
13
15
79
83
108
96
60
42
12
14
78
82
107
95
59
43
11
13
77
81
106
94
58
44
10
12
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
105
104
103
102
101
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
47
46
45
44
43
42
41
40
39
38
102
107
87
49
45
37
101
108
88
48
44
36
100
109
89
47
43
35
99
110
90
46
42
34
98
110
91
45
41
33
97
109
92
44
40
32
96
108
93
43
39
31
95
107
94
42
38
30
94
106
95
41
37
29
93
105
96
40
36
28
92
104
97
39
35
27
91
103
98
86
85
84
83
82
81
80
79
78
77
76
75
74
38
34
26
90
102
99
87
73
37
33
25
89
101
100
88
72
36
32
24
88
100
101
89
71
35
31
23
87
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
102
90
70
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
22
86
90
103
91
69
35
21
21
85
89
104
92
68
36
20
20
84
88
105
93
67
37
19
19
83
87
106
94
66
38
18
18
82
86
107
95
65
39
17
17
81
85
108
96
64
40
16
16
80
84
109
97
63
41
15
15
79
83
110
98
62
42
14
14
78
82
109
97
61
43
13
13
77
81
108
96
60
44
12
12
76
80
107
95
59
45
11
11
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
106
105
104
103
102
101
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
50
49
48
47
48
47
46
45
44
43
42
41
40
39
38
37
101
108
88
50
46
36
100
109
89
49
45
35
99
110
90
48
44
34
98
110
91
47
43
33
97
109
92
46
42
32
96
108
93
45
41
31
95
107
94
44
40
30
94
106
95
43
39
29
93
105
96
42
38
28
92
104
97
41
37
27
91
103
98
40
36
26
90
102
99
87
86
85
84
83
82
81
80
79
78
77
76
75
39
35
25
89
101
100
88
74
38
34
24
88
100
101
89
73
37
33
23
87
99
102
90
72
36
32
22
86
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
91
71
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
21
85
89
103
92
70
36
22
20
84
88
104
93
69
37
21
19
83
87
105
94
68
38
20
18
82
86
106
95
67
39
19
17
81
85
107
96
66
40
18
16
80
84
108
97
65
41
17
15
79
83
109
98
64
42
16
14
78
82
110
99
63
43
15
13
77
81
110
98
62
44
14
12
76
80
109
97
61
45
13
11
75
79
108
96
60
46
12
10
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
107
106
105
104
103
102
101
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
100
109
89
51
47
35
99
110
90
50
46
34
98
110
91
49
45
33
97
109
92
48
44
32
96
108
93
47
43
31
95
107
94
46
42
30
94
106
95
45
41
29
93
105
96
44
40
28
92
104
97
43
39
27
91
103
98
42
38
26
90
102
99
41
37
25
89
101
100
88
87
86
85
84
83
82
81
80
79
78
77
76
40
36
24
88
100
101
89
75
39
35
23
87
99
102
90
74
38
34
22
86
98
102
91
73
37
33
21
85
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
92
72
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
20
84
88
102
93
71
37
23
19
83
87
103
94
70
38
22
18
82
86
104
95
69
39
21
17
81
85
105
96
68
40
20
16
80
84
106
97
67
41
19
15
79
83
107
98
66
42
18
14
78
82
108
99
65
43
17
13
77
81
109
100
64
44
16
12
76
80
110
99
63
45
15
11
75
79
110
98
62
46
14
10
74
78
109
97
61
47
13
9
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
108
107
106
105
104
103
102
101
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
101
110
90
52
48
34
100
111
91
51
47
33
99
111
92
50
46
32
98
110
93
49
45
31
97
109
94
48
44
30
96
108
95
47
43
29
95
107
96
46
42
28
94
106
97
45
41
27
93
105
98
44
40
26
92
104
99
43
39
25
91
103
100
42
38
24
90
102
101
89
88
87
86
85
84
83
82
81
80
79
78
77
41
37
23
89
101
102
90
76
40
36
22
88
100
103
91
75
39
35
21
87
99
103
92
74
38
34
20
86
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
93
73
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
19
85
89
103
94
72
38
24
18
84
88
104
95
71
39
23
17
83
87
105
96
70
40
22
16
82
86
106
97
69
41
21
15
81
85
107
98
68
42
20
14
80
84
108
99
67
43
19
13
79
83
109
100
66
44
18
12
78
82
110
101
65
45
17
11
77
81
111
100
64
46
16
10
76
80
111
99
63
47
15
9
75
79
110
98
62
48
14
8
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
109
108
107
106
105
104
103
102
101
100
99
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
102
111
91
53
47
33
101
112
92
52
48
32
100
112
93
51
47
31
99
111
94
50
46
30
98
110
95
49
45
29
97
109
96
48
44
28
96
108
97
47
43
27
95
107
98
46
42
26
94
106
99
45
41
25
93
105
100
44
40
24
92
104
101
43
39
23
91
103
102
90
89
88
87
86
85
84
83
82
81
80
79
78
42
38
22
90
102
103
91
77
41
37
21
89
101
104
92
76
40
36
20
88
100
104
93
75
39
35
19
87
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
94
74
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
18
86
90
104
95
73
39
25
17
85
89
105
96
72
40
24
16
84
88
106
97
71
41
23
15
83
87
107
98
70
42
22
14
82
86
108
99
69
43
21
13
81
85
109
100
68
44
20
12
80
84
110
101
67
45
19
11
79
83
111
102
66
46
18
10
78
82
112
101
65
47
17
9
77
81
112
100
64
48
16
8
76
80
111
99
63
49
15
7
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
110
109
108
107
106
105
104
103
102
101
100
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
103
112
92
54
46
32
102
113
93
53
47
31
101
113
94
52
48
30
100
112
95
51
47
29
99
111
96
50
46
28
98
110
97
49
45
27
97
109
98
48
44
26
96
108
99
47
43
25
95
107
100
46
42
24
94
106
101
45
41
23
93
105
102
44
40
22
92
104
103
91
90
89
88
87
86
85
84
83
82
81
80
79
43
39
21
91
103
104
92
78
42
38
20
90
102
105
93
77
41
37
19
89
101
105
94
76
40
36
18
88
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
95
75
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
17
87
91
105
96
74
40
26
16
86
90
106
97
73
41
25
15
85
89
107
98
72
42
24
14
84
88
108
99
71
43
23
13
83
87
109
100
70
44
22
12
82
86
110
101
69
45
21
11
81
85
111
102
68
46
20
10
80
84
112
103
67
47
19
9
79
83
113
102
66
48
18
8
78
82
113
101
65
49
17
7
77
81
112
100
64
50
16
6
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
111
110
109
108
107
106
105
104
103
102
101
100
99
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
104
113
93
55
45
31
103
114
94
54
46
30
102
114
95
53
47
29
101
113
96
52
48
28
100
112
97
51
47
27
99
111
98
50
46
26
98
110
99
49
45
25
97
109
100
48
44
24
96
108
101
47
43
23
95
107
102
46
42
22
94
106
103
45
41
21
93
105
104
92
91
90
89
88
87
86
85
84
83
82
81
80
44
40
20
92
104
105
93
79
43
39
19
91
103
106
94
78
42
38
18
90
102
106
95
77
41
37
17
89
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
96
76
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
16
88
92
106
97
75
41
27
15
87
91
107
98
74
42
26
14
86
90
108
99
73
43
25
13
85
89
109
100
72
44
24
12
84
88
110
101
71
45
23
11
83
87
111
102
70
46
22
10
82
86
112
103
69
47
21
9
81
85
113
104
68
48
20
8
80
84
114
103
67
49
19
7
79
83
114
102
66
50
18
6
78
82
113
101
65
51
17
5
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
112
111
110
109
108
107
106
105
104
103
102
101
100
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
105
114
94
56
44
30
104
115
95
55
45
29
103
115
96
54
46
28
102
114
97
53
47
27
101
113
98
52
48
26
100
112
99
51
47
25
99
111
100
50
46
24
98
110
101
49
45
23
97
109
102
48
44
22
96
108
103
47
43
21
95
107
104
46
42
20
94
106
105
93
92
91
90
89
88
87
86
85
84
83
82
81
45
41
19
93
105
106
94
80
44
40
18
92
104
107
95
79
43
39
17
91
103
107
96
78
42
38
16
90
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
97
77
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
15
89
93
107
98
76
42
28
14
88
92
108
99
75
43
27
13
87
91
109
100
74
44
26
12
86
90
110
101
73
45
25
11
85
89
111
102
72
46
24
10
84
88
112
103
71
47
23
9
83
87
113
104
70
48
22
8
82
86
114
105
69
49
21
7
81
85
115
104
68
50
20
6
80
84
115
103
67
51
19
5
79
83
114
102
66
52
18
4
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
113
112
111
110
109
108
107
106
105
104
103
102
101
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
107
108
109
110
111
112
113
114
115
116
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
106
115
95
57
43
29
105
116
96
56
44
28
104
116
97
55
45
27
103
115
98
54
46
26
102
114
99
53
47
25
101
113
100
52
48
24
100
112
101
51
47
23
99
111
102
50
46
22
98
110
103
49
45
21
97
109
104
48
44
20
96
108
105
47
43
19
95
107
106
94
93
92
91
90
89
88
87
86
85
84
83
82
46
42
18
94
106
107
95
81
45
41
17
93
105
108
96
80
44
40
16
92
104
108
97
79
43
39
15
91
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
98
78
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
14
90
94
108
99
77
43
29
13
89
93
109
100
76
44
28
12
88
92
110
101
75
45
27
11
87
91
111
102
74
46
26
10
86
90
112
103
73
47
25
9
85
89
113
104
72
48
24
8
84
88
114
105
71
49
23
7
83
87
115
106
70
50
22
6
82
86
116
105
69
51
21
5
81
85
116
104
68
52
20
4
80
84
115
103
67
53
19
3
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
114
113
112
111
110
109
108
107
106
105
104
103
102
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
108
109
110
111
112
113
114
115
116
117
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
107
116
96
58
42
28
106
117
97
57
43
27
105
117
98
56
44
26
104
116
99
55
45
25
103
115
100
54
46
24
102
114
101
53
47
23
101
113
102
52
48
22
100
112
103
51
47
21
99
111
104
50
46
20
98
110
105
49
45
19
97
109
106
48
44
18
96
108
107
95
94
93
92
91
90
89
88
87
86
85
84
83
47
43
17
95
107
108
96
82
46
42
16
94
106
109
97
81
45
41
15
93
105
109
98
80
44
40
14
92
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
99
79
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
13
91
95
109
100
78
44
30
12
90
94
110
101
77
45
29
11
89
93
111
102
76
46
28
10
88
92
112
103
75
47
27
9
87
91
113
104
74
48
26
8
86
90
114
105
73
49
25
7
85
89
115
106
72
50
24
6
84
88
116
107
71
51
23
5
83
87
117
106
70
52
22
4
82
86
117
105
69
53
21
3
81
85
116
104
68
54
20
2
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
115
114
113
112
111
110
109
108
107
106
105
104
103
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
35
34
33
32
31
30
29
28
108
117
97
59
41
27
107
118
98
58
42
26
106
118
99
57
43
25
105
117
100
56
44
24
104
116
101
55
45
23
103
115
102
54
46
22
102
114
103
53
47
21
101
113
104
52
48
20
100
112
105
51
47
19
99
111
106
50
46
18
98
110
107
49
45
17
97
109
108
96
95
94
93
92
91
90
89
88
87
86
85
84
48
44
16
96
108
109
97
83
47
43
15
95
107
110
98
82
46
42
14
94
106
110
99
81
45
41
13
93
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
100
80
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
12
92
96
110
101
79
45
31
11
91
95
111
102
78
46
30
10
90
94
112
103
77
47
29
9
89
93
113
104
76
48
28
8
88
92
114
105
75
49
27
7
87
91
115
106
74
50
26
6
86
90
116
107
73
51
25
5
85
89
117
108
72
52
24
4
84
88
118
107
71
53
23
3
83
87
118
106
70
54
22
2
82
86
117
105
69
55
21
1
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
116
115
114
113
112
111
110
109
108
107
106
105
104
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
36
48
52
90
110
99
35
47
51
91
110
98
34
46
50
92
109
97
33
45
49
93
108
96
32
44
48
94
107
95
31
43
47
95
106
94
30
42
46
96
105
93
29
41
45
97
104
92
28
40
44
98
103
91
27
39
43
99
102
90
26
38
42
100
101
89
25
37
41
77
78
79
80
81
82
83
84
85
86
87
88
89
101
100
88
24
36
40
76
90
102
99
87
23
35
39
75
91
102
98
86
22
34
38
74
92
101
97
85
21
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
73
93
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
84
20
24
38
72
94
101
87
83
19
23
39
71
95
102
86
82
18
22
40
70
96
103
85
81
17
21
41
69
97
104
84
80
16
20
42
68
98
105
83
79
15
19
43
67
99
106
82
78
14
18
44
66
100
107
81
77
13
17
45
65
101
108
80
76
12
16
46
64
100
109
79
75
11
15
47
63
99
110
78
74
10
14
48
62
98
110
77
73
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
49
50
51
52
53
54
55
56
57
58
59
60
61
97
98
99
100
101
102
103
104
105
106
107
108
109
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
0
73
72
71
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
74
60
40
74
94
108
75
59
39
73
93
109
76
58
38
72
92
110
77
57
37
71
91
111
78
56
36
70
90
112
79
55
35
69
89
113
80
54
34
68
88
114
81
53
33
67
87
115
82
52
32
66
86
116
83
51
31
65
85
117
84
50
30
64
84
118
85
49
29
17
18
19
20
21
22
23
24
25
26
27
28
29
63
83
119
84
48
28
16
30
62
82
118
83
47
27
15
31
61
81
117
82
46
26
14
32
60
80
116
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
13
33
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
115
80
38
24
12
34
58
72
114
79
39
23
11
35
57
73
113
78
40
22
10
36
56
74
112
77
41
21
9
37
55
75
111
76
42
20
8
38
54
76
110
75
43
19
7
39
53
77
109
74
44
18
6
40
52
78
108
73
45
17
5
39
51
79
107
72
46
16
4
38
50
80
106
71
47
15
3
37
49
81
105
70
48
14
2
36
48
82
104
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
62
0
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
75
74
73
72
71
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
108
94
74
40
60
74
109
93
73
39
59
75
110
92
72
38
58
76
111
91
71
37
57
77
112
90
70
36
56
78
113
89
69
35
55
79
114
88
68
34
54
80
115
87
67
33
53
81
116
86
66
32
52
82
117
85
65
31
51
83
118
84
64
30
50
84
119
83
63
29
28
27
26
25
24
23
22
21
20
19
18
17
29
49
85
118
82
62
30
16
28
48
84
117
81
61
31
15
27
47
83
116
80
60
32
14
26
46
82
115
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
33
13
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
81
114
72
58
34
12
24
38
80
113
73
57
35
11
23
39
79
112
74
56
36
10
22
40
78
111
75
55
37
9
21
41
77
110
76
54
38
8
20
42
76
109
77
53
39
7
19
43
75
108
78
52
40
6
18
44
74
107
79
51
39
5
17
45
73
106
80
50
38
4
16
46
72
105
81
49
37
3
15
47
71
104
82
48
36
2
14
48
70
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
1
2
3
4
5
6
7
8
9
10
11
12
13
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
96
34
0
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
99
110
90
52
48
36
98
110
91
51
47
35
97
109
92
50
46
34
96
108
93
49
45
33
95
107
94
48
44
32
94
106
95
47
43
31
93
105
96
46
42
30
92
104
97
45
41
29
91
103
98
44
40
28
90
102
99
43
39
27
89
101
100
42
38
26
88
100
101
89
88
87
86
85
84
83
82
81
80
79
78
77
41
37
25
87
99
102
90
76
40
36
24
86
98
102
91
75
39
35
23
85
97
101
92
74
38
34
22
84
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
93
73
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
21
83
87
101
94
72
38
24
20
82
86
102
95
71
39
23
19
81
85
103
96
70
40
22
18
80
84
104
97
69
41
21
17
79
83
105
98
68
42
20
16
78
82
106
99
67
43
19
15
77
81
107
100
66
44
18
14
76
80
108
101
65
45
17
13
75
79
109
100
64
46
16
12
74
78
110
99
63
47
15
11
73
77
110
98
62
48
14
10
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
109
108
107
106
105
104
103
102
101
100
99
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
63
96
62
0
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
37
49
53
91
110
98
36
48
52
92
109
97
35
47
51
93
108
96
34
46
50
94
107
95
33
45
49
95
106
94
32
44
48
96
105
93
31
43
47
97
104
92
30
42
46
98
103
91
29
41
45
99
102
90
28
40
44
100
101
89
27
39
43
101
100
88
26
38
42
78
79
80
81
82
83
84
85
86
87
88
89
90
102
99
87
25
37
41
77
91
102
98
86
24
36
40
76
92
101
97
85
23
35
39
75
93
100
96
84
22
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
74
94
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
83
21
25
39
73
95
100
86
82
20
24
40
72
96
101
85
81
19
23
41
71
97
102
84
80
18
22
42
70
98
103
83
79
17
21
43
69
99
104
82
78
16
20
44
68
100
105
81
77
15
19
45
67
101
106
80
76
14
18
46
66
102
107
79
75
13
17
47
65
101
108
78
74
12
16
48
64
100
109
77
73
11
15
49
63
99
110
76
72
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
50
51
52
53
54
55
56
57
58
59
60
61
62
98
99
100
101
102
103
104
105
106
107
108
109
110
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
1
63
97
62
0
74
73
72
71
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
75
61
41
73
93
107
76
60
40
72
92
108
77
59
39
71
91
109
78
58
38
70
90
110
79
57
37
69
89
111
80
56
36
68
88
112
81
55
35
67
87
113
82
54
34
66
86
114
83
53
33
65
85
115
84
52
32
64
84
116
85
51
31
63
83
117
86
50
30
18
19
20
21
22
23
24
25
26
27
28
29
30
62
82
118
85
49
29
17
31
61
81
117
84
48
28
16
32
60
80
116
83
47
27
15
33
59
79
115
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
14
34
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
114
81
39
25
13
35
57
71
113
80
40
24
12
36
56
72
112
79
41
23
11
37
55
73
111
78
42
22
10
38
54
74
110
77
43
21
9
39
53
75
109
76
44
20
8
40
52
76
108
75
45
19
7
39
51
77
107
74
46
18
6
38
50
78
106
73
47
17
5
37
49
79
105
72
48
16
4
36
48
80
104
71
49
15
3
35
47
81
103
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
63
1
33
95
64
0
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
75
74
73
72
71
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
107
93
73
41
61
75
108
92
72
40
60
76
109
91
71
39
59
77
110
90
70
38
58
78
111
89
69
37
57
79
112
88
68
36
56
80
113
87
67
35
55
81
114
86
66
34
54
82
115
85
65
33
53
83
116
84
64
32
52
84
117
83
63
31
51
85
118
82
62
30
29
28
27
26
25
24
23
22
21
20
19
18
30
50
86
117
81
61
31
17
29
49
85
116
80
60
32
16
28
48
84
115
79
59
33
15
27
47
83
114
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
34
14
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
82
113
71
57
35
13
25
39
81
112
72
56
36
12
24
40
80
111
73
55
37
11
23
41
79
110
74
54
38
10
22
42
78
109
75
53
39
9
21
43
77
108
76
52
40
8
20
44
76
107
77
51
39
7
19
45
75
106
78
50
38
6
18
46
74
105
79
49
37
5
17
47
73
104
80
48
36
4
16
48
72
103
81
47
35
3
15
49
71
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
2
3
4
5
6
7
8
9
10
11
12
13
14
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
95
33
1
63
96
32
0
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
98
110
91
53
49
37
97
109
92
52
48
36
96
108
93
51
47
35
95
107
94
50
46
34
94
106
95
49
45
33
93
105
96
48
44
32
92
104
97
47
43
31
91
103
98
46
42
30
90
102
99
45
41
29
89
101
100
44
40
28
88
100
101
43
39
27
87
99
102
90
89
88
87
86
85
84
83
82
81
80
79
78
42
38
26
86
98
102
91
77
41
37
25
85
97
101
92
76
40
36
24
84
96
100
93
75
39
35
23
83
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
94
74
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
22
82
86
100
95
73
39
25
21
81
85
101
96
72
40
24
20
80
84
102
97
71
41
23
19
79
83
103
98
70
42
22
18
78
82
104
99
69
43
21
17
77
81
105
100
68
44
20
16
76
80
106
101
67
45
19
15
75
79
107
102
66
46
18
14
74
78
108
101
65
47
17
13
73
77
109
100
64
48
16
12
72
76
110
99
63
49
15
11
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
110
109
108
107
106
105
104
103
102
101
100
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
62
97
63
1
61
96
64
0
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
38
50
54
92
109
97
37
49
53
93
108
96
36
48
52
94
107
95
35
47
51
95
106
94
34
46
50
96
105
93
33
45
49
97
104
92
32
44
48
98
103
91
31
43
47
99
102
90
30
42
46
100
101
89
29
41
45
101
100
88
28
40
44
102
99
87
27
39
43
79
80
81
82
83
84
85
86
87
88
89
90
91
102
98
86
26
38
42
78
92
101
97
85
25
37
41
77
93
100
96
84
24
36
40
76
94
99
95
83
23
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
75
95
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
82
22
26
40
74
96
99
85
81
21
25
41
73
97
100
84
80
20
24
42
72
98
101
83
79
19
23
43
71
99
102
82
78
18
22
44
70
100
103
81
77
17
21
45
69
101
104
80
76
16
20
46
68
102
105
79
75
15
19
47
67
101
106
78
74
14
18
48
66
100
107
77
73
13
17
49
65
99
108
76
72
12
16
50
64
98
109
75
71
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
51
52
53
54
55
56
57
58
59
60
61
62
63
97
98
99
100
101
102
103
104
105
106
107
108
109
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
2
64
96
61
1
65
95
60
0
75
74
73
72
71
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
76
62
42
72
92
106
77
61
41
71
91
107
78
60
40
70
90
108
79
59
39
69
89
109
80
58
38
68
88
110
81
57
37
67
87
111
82
56
36
66
86
112
83
55
35
65
85
113
84
54
34
64
84
114
85
53
33
63
83
115
86
52
32
62
82
116
87
51
31
19
20
21
22
23
24
25
26
27
28
29
30
31
61
81
117
86
50
30
18
32
60
80
116
85
49
29
17
33
59
79
115
84
48
28
16
34
58
78
114
83
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
15
35
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
113
82
40
26
14
36
56
70
112
81
41
25
13
37
55
71
111
80
42
24
12
38
54
72
110
79
43
23
11
39
53
73
109
78
44
22
10
40
52
74
108
77
45
21
9
39
51
75
107
76
46
20
8
38
50
76
106
75
47
19
7
37
49
77
105
74
48
18
6
36
48
78
104
73
49
17
5
35
47
79
103
72
50
16
4
34
46
80
102
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
64
2
32
94
65
1
31
95
66
0
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
75
74
73
72
71
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
106
92
72
42
62
76
107
91
71
41
61
77
108
90
70
40
60
78
109
89
69
39
59
79
110
88
68
38
58
80
111
87
67
37
57
81
112
86
66
36
56
82
113
85
65
35
55
83
114
84
64
34
54
84
115
83
63
33
53
85
116
82
62
32
52
86
117
81
61
31
30
29
28
27
26
25
24
23
22
21
20
19
31
51
87
116
80
60
32
18
30
50
86
115
79
59
33
17
29
49
85
114
78
58
34
16
28
48
84
113
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
35
15
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
83
112
70
56
36
14
26
40
82
111
71
55
37
13
25
41
81
110
72
54
38
12
24
42
80
109
73
53
39
11
23
43
79
108
74
52
40
10
22
44
78
107
75
51
39
9
21
45
77
106
76
50
38
8
20
46
76
105
77
49
37
7
19
47
75
104
78
48
36
6
18
48
74
103
79
47
35
5
17
49
73
102
80
46
34
4
16
50
72
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
3
4
5
6
7
8
9
10
11
12
13
14
15
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
94
32
2
64
95
31
1
65
94
30
0
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
97
109
92
54
50
38
96
108
93
53
49
37
95
107
94
52
48
36
94
106
95
51
47
35
93
105
96
50
46
34
92
104
97
49
45
33
91
103
98
48
44
32
90
102
99
47
43
31
89
101
100
46
42
30
88
100
101
45
41
29
87
99
102
44
40
28
86
98
102
91
90
89
88
87
86
85
84
83
82
81
80
79
43
39
27
85
97
101
92
78
42
38
26
84
96
100
93
77
41
37
25
83
95
99
94
76
40
36
24
82
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
95
75
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
23
81
85
99
96
74
40
26
22
80
84
100
97
73
41
25
21
79
83
101
98
72
42
24
20
78
82
102
99
71
43
23
19
77
81
103
100
70
44
22
18
76
80
104
101
69
45
21
17
75
79
105
102
68
46
20
16
74
78
106
101
67
47
19
15
73
77
107
100
66
48
18
14
72
76
108
99
65
49
17
13
71
75
109
98
64
50
16
12
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
109
108
107
106
105
104
103
102
101
100
99
98
97
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
61
96
64
2
60
95
65
1
59
94
66
0
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
39
51
55
93
108
96
38
50
54
94
107
95
37
49
53
95
106
94
36
48
52
96
105
93
35
47
51
97
104
92
34
46
50
98
103
91
33
45
49
99
102
90
32
44
48
100
101
89
31
43
47
101
100
88
30
42
46
102
99
87
29
41
45
102
98
86
28
40
44
80
81
82
83
84
85
86
87
88
89
90
91
92
101
97
85
27
39
43
79
93
100
96
84
26
38
42
78
94
99
95
83
25
37
41
77
95
98
94
82
24
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
76
96
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
81
23
27
41
75
97
98
84
80
22
26
42
74
98
99
83
79
21
25
43
73
99
100
82
78
20
24
44
72
100
101
81
77
19
23
45
71
101
102
80
76
18
22
46
70
102
103
79
75
17
21
47
69
101
104
78
74
16
20
48
68
100
105
77
73
15
19
49
67
99
106
76
72
14
18
50
66
98
107
75
71
13
17
51
65
97
108
74
70
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
52
53
54
55
56
57
58
59
60
61
62
63
64
96
97
98
99
100
101
102
103
104
105
106
107
108
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
3
65
95
60
2
66
94
59
1
67
93
58
0
76
75
74
73
72
71
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
77
63
43
71
91
105
78
62
42
70
90
106
79
61
41
69
89
107
80
60
40
68
88
108
81
59
39
67
87
109
82
58
38
66
86
110
83
57
37
65
85
111
84
56
36
64
84
112
85
55
35
63
83
113
86
54
34
62
82
114
87
53
33
61
81
115
88
52
32
20
21
22
23
24
25
26
27
28
29
30
31
32
60
80
116
87
51
31
19
33
59
79
115
86
50
30
18
34
58
78
114
85
49
29
17
35
57
77
113
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
16
36
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
112
83
41
27
15
37
55
69
111
82
42
26
14
38
54
70
110
81
43
25
13
39
53
71
109
80
44
24
12
40
52
72
108
79
45
23
11
39
51
73
107
78
46
22
10
38
50
74
106
77
47
21
9
37
49
75
105
76
48
20
8
36
48
76
104
75
49
19
7
35
47
77
103
74
50
18
6
34
46
78
102
73
51
17
5
33
45
79
101
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
65
3
31
93
66
2
30
94
67
1
29
93
68
0
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
75
74
73
72
71
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
105
91
71
43
63
77
106
90
70
42
62
78
107
89
69
41
61
79
108
88
68
40
60
80
109
87
67
39
59
81
110
86
66
38
58
82
111
85
65
37
57
83
112
84
64
36
56
84
113
83
63
35
55
85
114
82
62
34
54
86
115
81
61
33
53
87
116
80
60
32
31
30
29
28
27
26
25
24
23
22
21
20
32
52
88
115
79
59
33
19
31
51
87
114
78
58
34
18
30
50
86
113
77
57
35
17
29
49
85
112
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
36
16
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
84
111
69
55
37
15
27
41
83
110
70
54
38
14
26
42
82
109
71
53
39
13
25
43
81
108
72
52
40
12
24
44
80
107
73
51
39
11
23
45
79
106
74
50
38
10
22
46
78
105
75
49
37
9
21
47
77
104
76
48
36
8
20
48
76
103
77
47
35
7
19
49
75
102
78
46
34
6
18
50
74
101
79
45
33
5
17
51
73
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
4
5
6
7
8
9
10
11
12
13
14
15
16
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
93
31
3
65
94
30
2
66
93
29
1
67
92
28
0
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
96
108
93
55
51
39
95
107
94
54
50
38
94
106
95
53
49
37
93
105
96
52
48
36
92
104
97
51
47
35
91
103
98
50
46
34
90
102
99
49
45
33
89
101
100
48
44
32
88
100
101
47
43
31
87
99
102
46
42
30
86
98
102
45
41
29
85
97
101
92
91
90
89
88
87
86
85
84
83
82
81
80
44
40
28
84
96
100
93
79
43
39
27
83
95
99
94
78
42
38
26
82
94
98
95
77
41
37
25
81
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
96
76
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
24
80
84
98
97
75
41
27
23
79
83
99
98
74
42
26
22
78
82
100
99
73
43
25
21
77
81
101
100
72
44
24
20
76
80
102
101
71
45
23
19
75
79
103
102
70
46
22
18
74
78
104
101
69
47
21
17
73
77
105
100
68
48
20
16
72
76
106
99
67
49
19
15
71
75
107
98
66
50
18
14
70
74
108
97
65
51
17
13
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
108
107
106
105
104
103
102
101
100
99
98
97
96
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
60
95
65
3
59
94
66
2
58
93
67
1
57
92
68
0
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
40
52
56
94
107
95
39
51
55
95
106
94
38
50
54
96
105
93
37
49
53
97
104
92
36
48
52
98
103
91
35
47
51
99
102
90
34
46
50
100
101
89
33
45
49
101
100
88
32
44
48
102
99
87
31
43
47
102
98
86
30
42
46
101
97
85
29
41
45
81
82
83
84
85
86
87
88
89
90
91
92
93
100
96
84
28
40
44
80
94
99
95
83
27
39
43
79
95
98
94
82
26
38
42
78
96
97
93
81
25
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
77
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
80
24
28
42
76
98
97
83
79
23
27
43
75
99
98
82
78
22
26
44
74
100
99
81
77
21
25
45
73
101
100
80
76
20
24
46
72
102
101
79
75
19
23
47
71
101
102
78
74
18
22
48
70
100
103
77
73
17
21
49
69
99
104
76
72
16
20
50
68
98
105
75
71
15
19
51
67
97
106
74
70
14
18
52
66
96
107
73
69
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
53
54
55
56
57
58
59
60
61
62
63
64
65
95
96
97
98
99
100
101
102
103
104
105
106
107
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
4
66
94
59
3
67
93
58
2
68
92
57
1
69
91
56
0
77
76
75
74
73
72
71
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
78
64
44
70
90
104
79
63
43
69
89
105
80
62
42
68
88
106
81
61
41
67
87
107
82
60
40
66
86
108
83
59
39
65
85
109
84
58
38
64
84
110
85
57
37
63
83
111
86
56
36
62
82
112
87
55
35
61
81
113
88
54
34
60
80
114
89
53
33
21
22
23
24
25
26
27
28
29
30
31
32
33
59
79
115
88
52
32
20
34
58
78
114
87
51
31
19
35
57
77
113
86
50
30
18
36
56
76
112
85
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
17
37
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
111
84
42
28
16
38
54
68
110
83
43
27
15
39
53
69
109
82
44
26
14
40
52
70
108
81
45
25
13
39
51
71
107
80
46
24
12
38
50
72
106
79
47
23
11
37
49
73
105
78
48
22
10
36
48
74
104
77
49
21
9
35
47
75
103
76
50
20
8
34
46
76
102
75
51
19
7
33
45
77
101
74
52
18
6
32
44
78
100
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
66
4
30
92
67
3
29
93
68
2
28
92
69
1
27
91
70
0
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
75
74
73
72
71
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
104
90
70
44
64
78
105
89
69
43
63
79
106
88
68
42
62
80
107
87
67
41
61
81
108
86
66
40
60
82
109
85
65
39
59
83
110
84
64
38
58
84
111
83
63
37
57
85
112
82
62
36
56
86
113
81
61
35
55
87
114
80
60
34
54
88
115
79
59
33
32
31
30
29
28
27
26
25
24
23
22
21
33
53
89
114
78
58
34
20
32
52
88
113
77
57
35
19
31
51
87
112
76
56
36
18
30
50
86
111
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
37
17
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
85
110
68
54
38
16
28
42
84
109
69
53
39
15
27
43
83
108
70
52
40
14
26
44
82
107
71
51
39
13
25
45
81
106
72
50
38
12
24
46
80
105
73
49
37
11
23
47
79
104
74
48
36
10
22
48
78
103
75
47
35
9
21
49
77
102
76
46
34
8
20
50
76
101
77
45
33
7
19
51
75
100
78
44
32
6
18
52
74
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
5
6
7
8
9
10
11
12
13
14
15
16
17
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
92
30
4
66
93
29
3
67
92
28
2
68
91
27
1
69
90
26
0
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
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
95
107
94
56
52
40
94
106
95
55
51
39
93
105
96
54
50
38
92
104
97
53
49
37
91
103
98
52
48
36
90
102
99
51
47
35
89
101
100
50
46
34
88
100
101
49
45
33
87
99
102
48
44
32
86
98
102
47
43
31
85
97
101
46
42
30
84
96
100
93
92
91
90
89
88
87
86
85
84
83
82
81
45
41
29
83
95
99
94
80
44
40
28
82
94
98
95
79
43
39
27
81
93
97
96
78
42
38
26
80
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
77
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
25
79
83
97
98
76
42
28
24
78
82
98
99
75
43
27
23
77
81
99
100
74
44
26
22
76
80
100
101
73
45
25
21
75
79
101
102
72
46
24
20
74
78
102
101
71
47
23
19
73
77
103
100
70
48
22
18
72
76
104
99
69
49
21
17
71
75
105
98
68
50
20
16
70
74
106
97
67
51
19
15
69
73
107
96
66
52
18
14
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
107
106
105
104
103
102
101
100
99
98
97
96
95
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
59
94
66
4
58
93
67
3
57
92
68
2
56
91
69
1
55
90
70
0
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
41
53
57
95
106
94
40
52
56
96
105
93
39
51
55
97
104
92
38
50
54
98
103
91
37
49
53
99
102
90
36
48
52
100
101
89
35
47
51
101
100
88
34
46
50
102
99
87
33
45
49
102
98
86
32
44
48
101
97
85
31
43
47
100
96
84
30
42
46
82
83
84
85
86
87
88
89
90
91
92
93
94
99
95
83
29
41
45
81
95
98
94
82
28
40
44
80
96
97
93
81
27
39
43
79
97
96
92
80
26
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
78
98
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
79
25
29
43
77
99
96
82
78
24
28
44
76
100
97
81
77
23
27
45
75
101
98
80
76
22
26
46
74
102
99
79
75
21
25
47
73
101
100
78
74
20
24
48
72
100
101
77
73
19
23
49
71
99
102
76
72
18
22
50
70
98
103
75
71
17
21
51
69
97
104
74
70
16
20
52
68
96
105
73
69
15
19
53
67
95
106
72
68
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
54
55
56
57
58
59
60
61
62
63
64
65
66
94
95
96
97
98
99
100
101
102
103
104
105
106
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
5
67
93
58
4
68
92
57
3
69
91
56
2
70
90
55
1
71
89
54
0
78
77
76
75
74
73
72
71
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
79
65
45
69
89
103
80
64
44
68
88
104
81
63
43
67
87
105
82
62
42
66
86
106
83
61
41
65
85
107
84
60
40
64
84
108
85
59
39
63
83
109
86
58
38
62
82
110
87
57
37
61
81
111
88
56
36
60
80
112
89
55
35
59
79
113
90
54
34
22
23
24
25
26
27
28
29
30
31
32
33
34
58
78
114
89
53
33
21
35
57
77
113
88
52
32
20
36
56
76
112
87
51
31
19
37
55
75
111
86
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
18
38
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
110
85
43
29
17
39
53
67
109
84
44
28
16
40
52
68
108
83
45
27
15
39
51
69
107
82
46
26
14
38
50
70
106
81
47
25
13
37
49
71
105
80
48
24
12
36
48
72
104
79
49
23
11
35
47
73
103
78
50
22
10
34
46
74
102
77
51
21
9
33
45
75
101
76
52
20
8
32
44
76
100
75
53
19
7
31
43
77
99
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
67
5
29
91
68
4
28
92
69
3
27
91
70
2
26
90
71
1
25
89
72
0
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
75
74
73
72
71
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
103
89
69
45
65
79
104
88
68
44
64
80
105
87
67
43
63
81
106
86
66
42
62
82
107
85
65
41
61
83
108
84
64
40
60
84
109
83
63
39
59
85
110
82
62
38
58
86
111
81
61
37
57
87
112
80
60
36
56
88
113
79
59
35
55
89
114
78
58
34
33
32
31
30
29
28
27
26
25
24
23
22
34
54
90
113
77
57
35
21
33
53
89
112
76
56
36
20
32
52
88
111
75
55
37
19
31
51
87
110
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
38
18
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
86
109
67
53
39
17
29
43
85
108
68
52
40
16
28
44
84
107
69
51
39
15
27
45
83
106
70
50
38
14
26
46
82
105
71
49
37
13
25
47
81
104
72
48
36
12
24
48
80
103
73
47
35
11
23
49
79
102
74
46
34
10
22
50
78
101
75
45
33
9
21
51
77
100
76
44
32
8
20
52
76
99
77
43
31
7
19
53
75
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
6
7
8
9
10
11
12
13
14
15
16
17
18
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
91
29
5
67
92
28
4
68
91
27
3
69
90
26
2
70
89
25
1
71
88
24
0
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
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
94
106
95
57
53
41
93
105
96
56
52
40
92
104
97
55
51
39
91
103
98
54
50
38
90
102
99
53
49
37
89
101
100
52
48
36
88
100
101
51
47
35
87
99
102
50
46
34
86
98
102
49
45
33
85
97
101
48
44
32
84
96
100
47
43
31
83
95
99
94
93
92
91
90
89
88
87
86
85
84
83
82
46
42
30
82
94
98
95
81
45
41
29
81
93
97
96
80
44
40
28
80
92
96
97
79
43
39
27
79
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
98
78
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
26
78
82
96
99
77
43
29
25
77
81
97
100
76
44
28
24
76
80
98
101
75
45
27
23
75
79
99
102
74
46
26
22
74
78
100
101
73
47
25
21
73
77
101
100
72
48
24
20
72
76
102
99
71
49
23
19
71
75
103
98
70
50
22
18
70
74
104
97
69
51
21
17
69
73
105
96
68
52
20
16
68
72
106
95
67
53
19
15
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
106
105
104
103
102
101
100
99
98
97
96
95
94
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
58
93
67
5
57
92
68
4
56
91
69
3
55
90
70
2
54
89
71
1
53
88
72
0
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
42
54
58
96
105
93
41
53
57
97
104
92
40
52
56
98
103
91
39
51
55
99
102
90
38
50
54
100
101
89
37
49
53
101
100
88
36
48
52
102
99
87
35
47
51
102
98
86
34
46
50
101
97
85
33
45
49
100
96
84
32
44
48
99
95
83
31
43
47
83
84
85
86
87
88
89
90
91
92
93
94
95
98
94
82
30
42
46
82
96
97
93
81
29
41
45
81
97
96
92
80
28
40
44
80
98
95
91
79
27
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
79
99
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
78
26
30
44
78
100
95
81
77
25
29
45
77
101
96
80
76
24
28
46
76
102
97
79
75
23
27
47
75
101
98
78
74
22
26
48
74
100
99
77
73
21
25
49
73
99
100
76
72
20
24
50
72
98
101
75
71
19
23
51
71
97
102
74
70
18
22
52
70
96
103
73
69
17
21
53
69
95
104
72
68
16
20
54
68
94
105
71
67
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
55
56
57
58
59
60
61
62
63
64
65
66
67
93
94
95
96
97
98
99
100
101
102
103
104
105
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
6
68
92
57
5
69
91
56
4
70
90
55
3
71
89
54
2
72
88
53
1
73
87
52
0
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
80
66
46
68
88
102
81
65
45
67
87
103
82
64
44
66
86
104
83
63
43
65
85
105
84
62
42
64
84
106
85
61
41
63
83
107
86
60
40
62
82
108
87
59
39
61
81
109
88
58
38
60
80
110
89
57
37
59
79
111
90
56
36
58
78
112
91
55
35
23
24
25
26
27
28
29
30
31
32
33
34
35
57
77
113
90
54
34
22
36
56
76
112
89
53
33
21
37
55
75
111
88
52
32
20
38
54
74
110
87
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
19
39
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
109
86
44
30
18
40
52
66
108
85
45
29
17
39
51
67
107
84
46
28
16
38
50
68
106
83
47
27
15
37
49
69
105
82
48
26
14
36
48
70
104
81
49
25
13
35
47
71
103
80
50
24
12
34
46
72
102
79
51
23
11
33
45
73
101
78
52
22
10
32
44
74
100
77
53
21
9
31
43
75
99
76
54
20
8
30
42
76
98
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
68
6
28
90
69
5
27
91
70
4
26
90
71
3
25
89
72
2
24
88
73
1
23
87
74
0
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
102
88
68
46
66
80
103
87
67
45
65
81
104
86
66
44
64
82
105
85
65
43
63
83
106
84
64
42
62
84
107
83
63
41
61
85
108
82
62
40
60
86
109
81
61
39
59
87
110
80
60
38
58
88
111
79
59
37
57
89
112
78
58
36
56
90
113
77
57
35
34
33
32
31
30
29
28
27
26
25
24
23
35
55
91
112
76
56
36
22
34
54
90
111
75
55
37
21
33
53
89
110
74
54
38
20
32
52
88
109
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
39
19
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
87
108
66
52
40
18
30
44
86
107
67
51
39
17
29
45
85
106
68
50
38
16
28
46
84
105
69
49
37
15
27
47
83
104
70
48
36
14
26
48
82
103
71
47
35
13
25
49
81
102
72
46
34
12
24
50
80
101
73
45
33
11
23
51
79
100
74
44
32
10
22
52
78
99
75
43
31
9
21
53
77
98
76
42
30
8
20
54
76
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
7
8
9
10
11
12
13
14
15
16
17
18
19
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
90
28
6
68
91
27
5
69
90
26
4
70
89
25
3
71
88
24
2
72
87
23
1
73
86
22
0
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
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
93
105
96
58
54
42
92
104
97
57
53
41
91
103
98
56
52
40
90
102
99
55
51
39
89
101
100
54
50
38
88
100
101
53
49
37
87
99
102
52
48
36
86
98
102
51
47
35
85
97
101
50
46
34
84
96
100
49
45
33
83
95
99
48
44
32
82
94
98
95
94
93
92
91
90
89
88
87
86
85
84
83
47
43
31
81
93
97
96
82
46
42
30
80
92
96
97
81
45
41
29
79
91
95
98
80
44
40
28
78
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
99
79
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
27
77
81
95
100
78
44
30
26
76
80
96
101
77
45
29
25
75
79
97
102
76
46
28
24
74
78
98
101
75
47
27
23
73
77
99
100
74
48
26
22
72
76
100
99
73
49
25
21
71
75
101
98
72
50
24
20
70
74
102
97
71
51
23
19
69
73
103
96
70
52
22
18
68
72
104
95
69
53
21
17
67
71
105
94
68
54
20
16
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
105
104
103
102
101
100
99
98
97
96
95
94
93
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
57
92
68
6
56
91
69
5
55
90
70
4
54
89
71
3
53
88
72
2
52
87
73
1
51
86
74
0
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
43
55
59
97
104
92
42
54
58
98
103
91
41
53
57
99
102
90
40
52
56
100
101
89
39
51
55
101
100
88
38
50
54
102
99
87
37
49
53
102
98
86
36
48
52
101
97
85
35
47
51
100
96
84
34
46
50
99
95
83
33
45
49
98
94
82
32
44
48
84
85
86
87
88
89
90
91
92
93
94
95
96
97
93
81
31
43
47
83
97
96
92
80
30
42
46
82
98
95
91
79
29
41
45
81
99
94
90
78
28
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
80
100
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
77
27
31
45
79
101
94
80
76
26
30
46
78
102
95
79
75
25
29
47
77
101
96
78
74
24
28
48
76
100
97
77
73
23
27
49
75
99
98
76
72
22
26
50
74
98
99
75
71
21
25
51
73
97
100
74
70
20
24
52
72
96
101
73
69
19
23
53
71
95
102
72
68
18
22
54
70
94
103
71
67
17
21
55
69
93
104
70
66
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
56
57
58
59
60
61
62
63
64
65
66
67
68
92
93
94
95
96
97
98
99
100
101
102
103
104
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
7
69
91
56
6
70
90
55
5
71
89
54
4
72
88
53
3
73
87
52
2
74
86
51
1
73
85
50
0
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
81
67
47
67
87
101
82
66
46
66
86
102
83
65
45
65
85
103
84
64
44
64
84
104
85
63
43
63
83
105
86
62
42
62
82
106
87
61
41
61
81
107
88
60
40
60
80
108
89
59
39
59
79
109
90
58
38
58
78
110
91
57
37
57
77
111
92
56
36
24
25
26
27
28
29
30
31
32
33
34
35
36
56
76
112
91
55
35
23
37
55
75
111
90
54
34
22
38
54
74
110
89
53
33
21
39
53
73
109
88
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
20
40
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
108
87
45
31
19
39
51
65
107
86
46
30
18
38
50
66
106
85
47
29
17
37
49
67
105
84
48
28
16
36
48
68
104
83
49
27
15
35
47
69
103
82
50
26
14
34
46
70
102
81
51
25
13
33
45
71
101
80
52
24
12
32
44
72
100
79
53
23
11
31
43
73
99
78
54
22
10
30
42
74
98
77
55
21
9
29
41
75
97
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
69
7
27
89
70
6
26
90
71
5
25
89
72
4
24
88
73
3
23
87
74
2
22
86
73
1
21
85
72
0
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
101
87
67
47
67
81
102
86
66
46
66
82
103
85
65
45
65
83
104
84
64
44
64
84
105
83
63
43
63
85
106
82
62
42
62
86
107
81
61
41
61
87
108
80
60
40
60
88
109
79
59
39
59
89
110
78
58
38
58
90
111
77
57
37
57
91
112
76
56
36
35
34
33
32
31
30
29
28
27
26
25
24
36
56
92
111
75
55
37
23
35
55
91
110
74
54
38
22
34
54
90
109
73
53
39
21
33
53
89
108
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
20
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
88
107
65
51
39
19
31
45
87
106
66
50
38
18
30
46
86
105
67
49
37
17
29
47
85
104
68
48
36
16
28
48
84
103
69
47
35
15
27
49
83
102
70
46
34
14
26
50
82
101
71
45
33
13
25
51
81
100
72
44
32
12
24
52
80
99
73
43
31
11
23
53
79
98
74
42
30
10
22
54
78
97
75
41
29
9
21
55
77
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
8
9
10
11
12
13
14
15
16
17
18
19
20
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
89
27
7
69
90
26
6
70
89
25
5
71
88
24
4
72
87
23
3
73
86
22
2
74
85
21
1
73
84
20
0
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
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
92
104
97
59
55
43
91
103
98
58
54
42
90
102
99
57
53
41
89
101
100
56
52
40
88
100
101
55
51
39
87
99
102
54
50
38
86
98
102
53
49
37
85
97
101
52
48
36
84
96
100
51
47
35
83
95
99
50
46
34
82
94
98
49
45
33
81
93
97
96
95
94
93
92
91
90
89
88
87
86
85
84
48
44
32
80
92
96
97
83
47
43
31
79
91
95
98
82
46
42
30
78
90
94
99
81
45
41
29
77
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
100
80
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
28
76
80
94
101
79
45
31
27
75
79
95
102
78
46
30
26
74
78
96
101
77
47
29
25
73
77
97
100
76
48
28
24
72
76
98
99
75
49
27
23
71
75
99
98
74
50
26
22
70
74
100
97
73
51
25
21
69
73
101
96
72
52
24
20
68
72
102
95
71
53
23
19
67
71
103
94
70
54
22
18
66
70
104
93
69
55
21
17
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
104
103
102
101
100
99
98
97
96
95
94
93
92
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
56
91
69
7
55
90
70
6
54
89
71
5
53
88
72
4
52
87
73
3
51
86
74
2
50
85
73
1
49
84
72
0
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
44
56
60
98
103
91
43
55
59
99
102
90
42
54
58
100
101
89
41
53
57
101
100
88
40
52
56
102
99
87
39
51
55
102
98
86
38
50
54
101
97
85
37
49
53
100
96
84
36
48
52
99
95
83
35
47
51
98
94
82
34
46
50
97
93
81
33
45
49
85
86
87
88
89
90
91
92
93
94
95
96
97
96
92
80
32
44
48
84
98
95
91
79
31
43
47
83
99
94
90
78
30
42
46
82
100
93
89
77
29
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
81
101
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
76
28
32
46
80
102
93
79
75
27
31
47
79
101
94
78
74
26
30
48
78
100
95
77
73
25
29
49
77
99
96
76
72
24
28
50
76
98
97
75
71
23
27
51
75
97
98
74
70
22
26
52
74
96
99
73
69
21
25
53
73
95
100
72
68
20
24
54
72
94
101
71
67
19
23
55
71
93
102
70
66
18
22
56
70
92
103
69
65
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
57
58
59
60
61
62
63
64
65
66
67
68
69
91
92
93
94
95
96
97
98
99
100
101
102
103
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
8
70
90
55
7
71
89
54
6
72
88
53
5
73
87
52
4
74
86
51
3
73
85
50
2
72
84
49
1
71
83
48
0
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
82
68
48
66
86
100
83
67
47
65
85
101
84
66
46
64
84
102
85
65
45
63
83
103
86
64
44
62
82
104
87
63
43
61
81
105
88
62
42
60
80
106
89
61
41
59
79
107
90
60
40
58
78
108
91
59
39
57
77
109
92
58
38
56
76
110
93
57
37
25
26
27
28
29
30
31
32
33
34
35
36
37
55
75
111
92
56
36
24
38
54
74
110
91
55
35
23
39
53
73
109
90
54
34
22
40
52
72
108
89
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
21
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
107
88
46
32
20
38
50
64
106
87
47
31
19
37
49
65
105
86
48
30
18
36
48
66
104
85
49
29
17
35
47
67
103
84
50
28
16
34
46
68
102
83
51
27
15
33
45
69
101
82
52
26
14
32
44
70
100
81
53
25
13
31
43
71
99
80
54
24
12
30
42
72
98
79
55
23
11
29
41
73
97
78
56
22
10
28
40
74
96
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
70
8
26
88
71
7
25
89
72
6
24
88
73
5
23
87
74
4
22
86
73
3
21
85
72
2
20
84
71
1
19
83
70
0
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
100
86
66
48
68
82
101
85
65
47
67
83
102
84
64
46
66
84
103
83
63
45
65
85
104
82
62
44
64
86
105
81
61
43
63
87
106
80
60
42
62
88
107
79
59
41
61
89
108
78
58
40
60
90
109
77
57
39
59
91
110
76
56
38
58
92
111
75
55
37
36
35
34
33
32
31
30
29
28
27
26
25
37
57
93
110
74
54
38
24
36
56
92
109
73
53
39
23
35
55
91
108
72
52
40
22
34
54
90
107
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
21
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
89
106
64
50
38
20
32
46
88
105
65
49
37
19
31
47
87
104
66
48
36
18
30
48
86
103
67
47
35
17
29
49
85
102
68
46
34
16
28
50
84
101
69
45
33
15
27
51
83
100
70
44
32
14
26
52
82
99
71
43
31
13
25
53
81
98
72
42
30
12
24
54
80
97
73
41
29
11
23
55
79
96
74
40
28
10
22
56
78
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
9
10
11
12
13
14
15
16
17
18
19
20
21
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
88
26
8
70
89
25
7
71
88
24
6
72
87
23
5
73
86
22
4
74
85
21
3
73
84
20
2
72
83
19
1
71
82
18
0
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
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
91
103
98
60
56
44
90
102
99
59
55
43
89
101
100
58
54
42
88
100
101
57
53
41
87
99
102
56
52
40
86
98
102
55
51
39
85
97
101
54
50
38
84
96
100
53
49
37
83
95
99
52
48
36
82
94
98
51
47
35
81
93
97
50
46
34
80
92
96
97
96
95
94
93
92
91
90
89
88
87
86
85
49
45
33
79
91
95
98
84
48
44
32
78
90
94
99
83
47
43
31
77
89
93
100
82
46
42
30
76
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
101
81
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
29
75
79
93
102
80
46
32
28
74
78
94
101
79
47
31
27
73
77
95
100
78
48
30
26
72
76
96
99
77
49
29
25
71
75
97
98
76
50
28
24
70
74
98
97
75
51
27
23
69
73
99
96
74
52
26
22
68
72
100
95
73
53
25
21
67
71
101
94
72
54
24
20
66
70
102
93
71
55
23
19
65
69
103
92
70
56
22
18
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
103
102
101
100
99
98
97
96
95
94
93
92
91
69
68
67
66
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
55
90
70
8
54
89
71
7
53
88
72
6
52
87
73
5
51
86
74
4
50
85
73
3
49
84
72
2
48
83
71
1
47
82
70
0
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
45
57
61
99
102
90
44
56
60
100
101
89
43
55
59
101
100
88
42
54
58
102
99
87
41
53
57
102
98
86
40
52
56
101
97
85
39
51
55
100
96
84
38
50
54
99
95
83
37
49
53
98
94
82
36
48
52
97
93
81
35
47
51
96
92
80
34
46
50
86
87
88
89
90
91
92
93
94
95
96
97
98
95
91
79
33
45
49
85
99
94
90
78
32
44
48
84
100
93
89
77
31
43
47
83
101
92
88
76
30
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
82
102
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
75
29
33
47
81
101
92
78
74
28
32
48
80
100
93
77
73
27
31
49
79
99
94
76
72
26
30
50
78
98
95
75
71
25
29
51
77
97
96
74
70
24
28
52
76
96
97
73
69
23
27
53
75
95
98
72
68
22
26
54
74
94
99
71
67
21
25
55
73
93
100
70
66
20
24
56
72
92
101
69
65
19
23
57
71
91
102
68
64
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
58
59
60
61
62
63
64
65
66
67
68
69
70
90
91
92
93
94
95
96
97
98
99
100
101
102
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
9
71
89
54
8
72
88
53
7
73
87
52
6
74
86
51
5
73
85
50
4
72
84
49
3
71
83
48
2
70
82
47
1
69
81
46
0
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
83
69
49
65
85
99
84
68
48
64
84
100
85
67
47
63
83
101
86
66
46
62
82
102
87
65
45
61
81
103
88
64
44
60
80
104
89
63
43
59
79
105
90
62
42
58
78
106
91
61
41
57
77
107
92
60
40
56
76
108
93
59
39
55
75
109
94
58
38
26
27
28
29
30
31
32
33
34
35
36
37
38
54
74
110
93
57
37
25
39
53
73
109
92
56
36
24
40
52
72
108
91
55
35
23
39
51
71
107
90
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
22
38
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
106
89
47
33
21
37
49
63
105
88
48
32
20
36
48
64
104
87
49
31
19
35
47
65
103
86
50
30
18
34
46
66
102
85
51
29
17
33
45
67
101
84
52
28
16
32
44
68
100
83
53
27
15
31
43
69
99
82
54
26
14
30
42
70
98
81
55
25
13
29
41
71
97
80
56
24
12
28
40
72
96
79
57
23
11
27
39
73
95
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
71
9
25
87
72
8
24
88
73
7
23
87
74
6
22
86
73
5
21
85
72
4
20
84
71
3
19
83
70
2
18
82
69
1
17
81
68
0
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
99
85
65
49
69
83
100
84
64
48
68
84
101
83
63
47
67
85
102
82
62
46
66
86
103
81
61
45
65
87
104
80
60
44
64
88
105
79
59
43
63
89
106
78
58
42
62
90
107
77
57
41
61
91
108
76
56
40
60
92
109
75
55
39
59
93
110
74
54
38
37
36
35
34
33
32
31
30
29
28
27
26
38
58
94
109
73
53
39
25
37
57
93
108
72
52
40
24
36
56
92
107
71
51
39
23
35
55
91
106
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
38
22
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
90
105
63
49
37
21
33
47
89
104
64
48
36
20
32
48
88
103
65
47
35
19
31
49
87
102
66
46
34
18
30
50
86
101
67
45
33
17
29
51
85
100
68
44
32
16
28
52
84
99
69
43
31
15
27
53
83
98
70
42
30
14
26
54
82
97
71
41
29
13
25
55
81
96
72
40
28
12
24
56
80
95
73
39
27
11
23
57
79
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
10
11
12
13
14
15
16
17
18
19
20
21
22
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
87
25
9
71
88
24
8
72
87
23
7
73
86
22
6
74
85
21
5
73
84
20
4
72
83
19
3
71
82
18
2
70
81
17
1
69
80
16
0
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
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
90
102
99
61
57
45
89
101
100
60
56
44
88
100
101
59
55
43
87
99
102
58
54
42
86
98
102
57
53
41
85
97
101
56
52
40
84
96
100
55
51
39
83
95
99
54
50
38
82
94
98
53
49
37
81
93
97
52
48
36
80
92
96
51
47
35
79
91
95
98
97
96
95
94
93
92
91
90
89
88
87
86
50
46
34
78
90
94
99
85
49
45
33
77
89
93
100
84
48
44
32
76
88
92
101
83
47
43
31
75
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
102
82
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
30
74
78
92
101
81
47
33
29
73
77
93
100
80
48
32
28
72
76
94
99
79
49
31
27
71
75
95
98
78
50
30
26
70
74
96
97
77
51
29
25
69
73
97
96
76
52
28
24
68
72
98
95
75
53
27
23
67
71
99
94
74
54
26
22
66
70
100
93
73
55
25
21
65
69
101
92
72
56
24
20
64
68
102
91
71
57
23
19
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
102
101
100
99
98
97
96
95
94
93
92
91
90
70
69
68
67
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
54
89
71
9
53
88
72
8
52
87
73
7
51
86
74
6
50
85
73
5
49
84
72
4
48
83
71
3
47
82
70
2
46
81
69
1
45
80
68
0
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
46
58
62
100
101
89
45
57
61
101
100
88
44
56
60
102
99
87
43
55
59
102
98
86
42
54
58
101
97
85
41
53
57
100
96
84
40
52
56
99
95
83
39
51
55
98
94
82
38
50
54
97
93
81
37
49
53
96
92
80
36
48
52
95
91
79
35
47
51
87
88
89
90
91
92
93
94
95
96
97
98
99
94
90
78
34
46
50
86
100
93
89
77
33
45
49
85
101
92
88
76
32
44
48
84
102
91
87
75
31
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
83
101
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
74
30
34
48
82
100
91
77
73
29
33
49
81
99
92
76
72
28
32
50
80
98
93
75
71
27
31
51
79
97
94
74
70
26
30
52
78
96
95
73
69
25
29
53
77
95
96
72
68
24
28
54
76
94
97
71
67
23
27
55
75
93
98
70
66
22
26
56
74
92
99
69
65
21
25
57
73
91
100
68
64
20
24
58
72
90
101
67
63
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
59
60
61
62
63
64
65
66
67
68
69
70
71
89
90
91
92
93
94
95
96
97
98
99
100
101
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
10
72
88
53
9
73
87
52
8
74
86
51
7
73
85
50
6
72
84
49
5
71
83
48
4
70
82
47
3
69
81
46
2
68
80
45
1
67
79
44
0
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
84
70
50
64
84
98
85
69
49
63
83
99
86
68
48
62
82
100
87
67
47
61
81
101
88
66
46
60
80
102
89
65
45
59
79
103
90
64
44
58
78
104
91
63
43
57
77
105
92
62
42
56
76
106
93
61
41
55
75
107
94
60
40
54
74
108
95
59
39
27
28
29
30
31
32
33
34
35
36
37
38
39
53
73
109
94
58
38
26
40
52
72
108
93
57
37
25
39
51
71
107
92
56
36
24
38
50
70
106
91
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
23
37
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
105
90
48
34
22
36
48
62
104
89
49
33
21
35
47
63
103
88
50
32
20
34
46
64
102
87
51
31
19
33
45
65
101
86
52
30
18
32
44
66
100
85
53
29
17
31
43
67
99
84
54
28
16
30
42
68
98
83
55
27
15
29
41
69
97
82
56
26
14
28
40
70
96
81
57
25
13
27
39
71
95
80
58
24
12
26
38
72
94
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
72
10
24
86
73
9
23
87
74
8
22
86
73
7
21
85
72
6
20
84
71
5
19
83
70
4
18
82
69
3
17
81
68
2
16
80
67
1
15
79
66
0
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
98
84
64
50
70
84
99
83
63
49
69
85
100
82
62
48
68
86
101
81
61
47
67
87
102
80
60
46
66
88
103
79
59
45
65
89
104
78
58
44
64
90
105
77
57
43
63
91
106
76
56
42
62
92
107
75
55
41
61
93
108
74
54
40
60
94
109
73
53
39
38
37
36
35
34
33
32
31
30
29
28
27
39
59
95
108
72
52
40
26
38
58
94
107
71
51
39
25
37
57
93
106
70
50
38
24
36
56
92
105
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
37
23
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
91
104
62
48
36
22
34
48
90
103
63
47
35
21
33
49
89
102
64
46
34
20
32
50
88
101
65
45
33
19
31
51
87
100
66
44
32
18
30
52
86
99
67
43
31
17
29
53
85
98
68
42
30
16
28
54
84
97
69
41
29
15
27
55
83
96
70
40
28
14
26
56
82
95
71
39
27
13
25
57
81
94
72
38
26
12
24
58
80
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
11
12
13
14
15
16
17
18
19
20
21
22
23
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
86
24
10
72
87
23
9
73
86
22
8
74
85
21
7
73
84
20
6
72
83
19
5
71
82
18
4
70
81
17
3
69
80
16
2
68
79
15
1
67
78
14
0
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
89
101
100
62
58
46
88
100
101
61
57
45
87
99
102
60
56
44
86
98
102
59
55
43
85
97
101
58
54
42
84
96
100
57
53
41
83
95
99
56
52
40
82
94
98
55
51
39
81
93
97
54
50
38
80
92
96
53
49
37
79
91
95
52
48
36
78
90
94
99
98
97
96
95
94
93
92
91
90
89
88
87
51
47
35
77
89
93
100
86
50
46
34
76
88
92
101
85
49
45
33
75
87
91
102
84
48
44
32
74
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
101
83
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
31
73
77
91
100
82
48
34
30
72
76
92
99
81
49
33
29
71
75
93
98
80
50
32
28
70
74
94
97
79
51
31
27
69
73
95
96
78
52
30
26
68
72
96
95
77
53
29
25
67
71
97
94
76
54
28
24
66
70
98
93
75
55
27
23
65
69
99
92
74
56
26
22
64
68
100
91
73
57
25
21
63
67
101
90
72
58
24
20
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
101
100
99
98
97
96
95
94
93
92
91
90
89
71
70
69
68
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
53
88
72
10
52
87
73
9
51
86
74
8
50
85
73
7
49
84
72
6
48
83
71
5
47
82
70
4
46
81
69
3
45
80
68
2
44
79
67
1
43
78
66
0
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
47
59
63
101
100
88
46
58
62
102
99
87
45
57
61
102
98
86
44
56
60
101
97
85
43
55
59
100
96
84
42
54
58
99
95
83
41
53
57
98
94
82
40
52
56
97
93
81
39
51
55
96
92
80
38
50
54
95
91
79
37
49
53
94
90
78
36
48
52
88
89
90
91
92
93
94
95
96
97
98
99
100
93
89
77
35
47
51
87
101
92
88
76
34
46
50
86
102
91
87
75
33
45
49
85
101
90
86
74
32
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
84
100
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
73
31
35
49
83
99
90
76
72
30
34
50
82
98
91
75
71
29
33
51
81
97
92
74
70
28
32
52
80
96
93
73
69
27
31
53
79
95
94
72
68
26
30
54
78
94
95
71
67
25
29
55
77
93
96
70
66
24
28
56
76
92
97
69
65
23
27
57
75
91
98
68
64
22
26
58
74
90
99
67
63
21
25
59
73
89
100
66
62
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
60
61
62
63
64
65
66
67
68
69
70
71
72
88
89
90
91
92
93
94
95
96
97
98
99
100
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
11
73
87
52
10
74
86
51
9
73
85
50
8
72
84
49
7
71
83
48
6
70
82
47
5
69
81
46
4
68
80
45
3
67
79
44
2
66
78
43
1
65
77
42
0
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
48
60
64
102
101
89
47
59
63
103
100
88
46
58
62
103
99
87
45
57
61
102
98
86
44
56
60
101
97
85
43
55
59
100
96
84
42
54
58
99
95
83
41
53
57
98
94
82
40
52
56
97
93
81
39
51
55
96
92
80
38
50
54
95
91
79
37
49
53
89
90
91
92
93
94
95
96
97
98
99
100
101
94
90
78
36
48
52
88
102
93
89
77
35
47
51
87
101
92
88
76
34
46
50
86
100
91
87
75
33
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
85
99
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
74
32
36
50
84
98
91
77
73
31
35
51
83
97
92
76
72
30
34
52
82
96
93
75
71
29
33
53
81
95
94
74
70
28
32
54
80
94
95
73
69
27
31
55
79
93
96
72
68
26
30
56
78
92
97
71
67
25
29
57
77
91
98
70
66
24
28
58
76
90
99
69
65
23
27
59
75
89
100
68
64
22
26
60
74
88
100
67
63
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
61
62
63
64
65
66
67
68
69
70
71
72
73
87
88
89
90
91
92
93
94
95
96
97
98
99
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
12
74
86
53
11
73
85
52
10
72
84
51
9
71
83
50
8
70
82
49
7
69
81
48
6
68
80
47
5
67
79
46
4
66
78
45
3
65
77
44
2
64
76
43
1
0
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
49
61
65
103
102
90
48
60
64
104
101
89
47
59
63
104
100
88
46
58
62
103
99
87
45
57
61
102
98
86
44
56
60
101
97
85
43
55
59
100
96
84
42
54
58
99
95
83
41
53
57
98
94
82
40
52
56
97
93
81
39
51
55
96
92
80
38
50
54
90
91
92
93
94
95
96
97
98
99
100
101
102
95
91
79
37
49
53
89
101
94
90
78
36
48
52
88
100
93
89
77
35
47
51
87
99
92
88
76
34
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
86
98
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
75
33
37
51
85
97
92
78
74
32
36
52
84
96
93
77
73
31
35
53
83
95
94
76
72
30
34
54
82
94
95
75
71
29
33
55
81
93
96
74
70
28
32
56
80
92
97
73
69
27
31
57
79
91
98
72
68
26
30
58
78
90
99
71
67
25
29
59
77
89
100
70
66
24
28
60
76
88
100
69
65
23
27
61
75
87
99
68
64
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
62
63
64
65
66
67
68
69
70
71
72
73
74
86
87
88
89
90
91
92
93
94
95
96
97
98
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
13
73
85
54
12
72
84
53
11
71
83
52
10
70
82
51
9
69
81
50
8
68
80
49
7
67
79
48
6
66
78
47
5
65
77
46
4
64
76
45
3
63
75
44
2
1
0
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
50
62
66
104
103
91
49
61
65
105
102
90
48
60
64
105
101
89
47
59
63
104
100
88
46
58
62
103
99
87
45
57
61
102
98
86
44
56
60
101
97
85
43
55
59
100
96
84
42
54
58
99
95
83
41
53
57
98
94
82
40
52
56
97
93
81
39
51
55
89
90
91
92
93
94
95
96
97
98
99
100
101
96
92
80
38
50
54
88
100
95
91
79
37
49
53
87
99
94
90
78
36
48
52
86
98
93
89
77
35
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
85
97
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
76
34
38
52
84
96
93
79
75
33
37
53
83
95
94
78
74
32
36
54
82
94
95
77
73
31
35
55
81
93
96
76
72
30
34
56
80
92
97
75
71
29
33
57
79
91
98
74
70
28
32
58
78
90
99
73
69
27
31
59
77
89
100
72
68
26
30
60
76
88
100
71
67
25
29
61
75
87
99
70
66
24
28
62
74
86
98
69
65
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
63
64
65
66
67
68
69
70
71
72
73
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
14
72
84
55
13
71
83
54
12
70
82
53
11
69
81
52
10
68
80
51
9
67
79
50
8
66
78
49
7
65
77
48
6
64
76
47
5
63
75
46
4
62
74
45
3
2
1
0
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
51
63
67
105
104
92
50
62
66
106
103
91
49
61
65
106
102
90
48
60
64
105
101
89
47
59
63
104
100
88
46
58
62
103
99
87
45
57
61
102
98
86
44
56
60
101
97
85
43
55
59
100
96
84
42
54
58
99
95
83
41
53
57
98
94
82
40
52
56
88
89
90
91
92
93
94
95
96
97
98
99
100
97
93
81
39
51
55
87
99
96
92
80
38
50
54
86
98
95
91
79
37
49
53
85
97
94
90
78
36
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
84
96
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
77
35
39
53
83
95
94
80
76
34
38
54
82
94
95
79
75
33
37
55
81
93
96
78
74
32
36
56
80
92
97
77
73
31
35
57
79
91
98
76
72
30
34
58
78
90
99
75
71
29
33
59
77
89
100
74
70
28
32
60
76
88
100
73
69
27
31
61
75
87
99
72
68
26
30
62
74
86
98
71
67
25
29
63
73
85
97
70
66
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
64
65
66
67
68
69
70
71
72
73
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
15
71
83
56
14
70
82
55
13
69
81
54
12
68
80
53
11
67
79
52
10
66
78
51
9
65
77
50
8
64
76
49
7
63
75
48
6
62
74
47
5
61
73
46
4
3
2
1
0
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
52
64
68
106
105
93
51
63
67
107
104
92
50
62
66
107
103
91
49
61
65
106
102
90
48
60
64
105
101
89
47
59
63
104
100
88
46
58
62
103
99
87
45
57
61
102
98
86
44
56
60
101
97
85
43
55
59
100
96
84
42
54
58
99
95
83
41
53
57
87
88
89
90
91
92
93
94
95
96
97
98
99
98
94
82
40
52
56
86
98
97
93
81
39
51
55
85
97
96
92
80
38
50
54
84
96
95
91
79
37
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
83
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
78
36
40
54
82
94
95
81
77
35
39
55
81
93
96
80
76
34
38
56
80
92
97
79
75
33
37
57
79
91
98
78
74
32
36
58
78
90
99
77
73
31
35
59
77
89
100
76
72
30
34
60
76
88
100
75
71
29
33
61
75
87
99
74
70
28
32
62
74
86
98
73
69
27
31
63
73
85
97
72
68
26
30
64
72
84
96
71
67
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
65
66
67
68
69
70
71
72
73
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
16
70
82
57
15
69
81
56
14
68
80
55
13
67
79
54
12
66
78
53
11
65
77
52
10
64
76
51
9
63
75
50
8
62
74
49
7
61
73
48
6
60
72
47
5
4
3
2
1
0
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
53
65
69
107
106
94
52
64
68
108
105
93
51
63
67
108
104
92
50
62
66
107
103
91
49
61
65
106
102
90
48
60
64
105
101
89
47
59
63
104
100
88
46
58
62
103
99
87
45
57
61
102
98
86
44
56
60
101
97
85
43
55
59
100
96
84
42
54
58
86
87
88
89
90
91
92
93
94
95
96
97
98
99
95
83
41
53
57
85
97
98
94
82
40
52
56
84
96
97
93
81
39
51
55
83
95
96
92
80
38
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
82
94
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
79
37
41
55
81
93
96
82
78
36
40
56
80
92
97
81
77
35
39
57
79
91
98
80
76
34
38
58
78
90
99
79
75
33
37
59
77
89
100
78
74
32
36
60
76
88
100
77
73
31
35
61
75
87
99
76
72
30
34
62
74
86
98
75
71
29
33
63
73
85
97
74
70
28
32
64
72
84
96
73
69
27
31
65
71
83
95
72
68
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
66
67
68
69
70
71
72
73
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
17
69
81
58
16
68
80
57
15
67
79
56
14
66
78
55
13
65
77
54
12
64
76
53
11
63
75
52
10
62
74
51
9
61
73
50
8
60
72
49
7
59
71
48
6
5
4
3
2
1
0
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
54
66
70
108
107
95
53
65
69
109
106
94
52
64
68
109
105
93
51
63
67
108
104
92
50
62
66
107
103
91
49
61
65
106
102
90
48
60
64
105
101
89
47
59
63
104
100
88
46
58
62
103
99
87
45
57
61
102
98
86
44
56
60
101
97
85
43
55
59
85
86
87
88
89
90
91
92
93
94
95
96
97
100
96
84
42
54
58
84
96
99
95
83
41
53
57
83
95
98
94
82
40
52
56
82
94
97
93
81
39
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
81
93
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
80
38
42
56
80
92
97
83
79
37
41
57
79
91
98
82
78
36
40
58
78
90
99
81
77
35
39
59
77
89
100
80
76
34
38
60
76
88
100
79
75
33
37
61
75
87
99
78
74
32
36
62
74
86
98
77
73
31
35
63
73
85
97
76
72
30
34
64
72
84
96
75
71
29
33
65
71
83
95
74
70
28
32
66
70
82
94
73
69
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
67
68
69
70
71
72
73
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
18
68
80
59
17
67
79
58
16
66
78
57
15
65
77
56
14
64
76
55
13
63
75
54
12
62
74
53
11
61
73
52
10
60
72
51
9
59
71
50
8
58
70
49
7
6
5
4
3
2
1
0
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
55
67
71
109
108
96
54
66
70
110
107
95
53
65
69
110
106
94
52
64
68
109
105
93
51
63
67
108
104
92
50
62
66
107
103
91
49
61
65
106
102
90
48
60
64
105
101
89
47
59
63
104
100
88
46
58
62
103
99
87
45
57
61
102
98
86
44
56
60
84
85
86
87
88
89
90
91
92
93
94
95
96
101
97
85
43
55
59
83
95
100
96
84
42
54
58
82
94
99
95
83
41
53
57
81
93
98
94
82
40
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
80
92
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
81
39
43
57
79
91
98
84
80
38
42
58
78
90
99
83
79
37
41
59
77
89
100
82
78
36
40
60
76
88
100
81
77
35
39
61
75
87
99
80
76
34
38
62
74
86
98
79
75
33
37
63
73
85
97
78
74
32
36
64
72
84
96
77
73
31
35
65
71
83
95
76
72
30
34
66
70
82
94
75
71
29
33
67
69
81
93
74
70
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
68
69
70
71
72
73
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
19
67
79
60
18
66
78
59
17
65
77
58
16
64
76
57
15
63
75
56
14
62
74
55
13
61
73
54
12
60
72
53
11
59
71
52
10
58
70
51
9
57
69
50
8
7
6
5
4
3
2
1
0
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
56
68
72
110
109
97
55
67
71
111
108
96
54
66
70
111
107
95
53
65
69
110
106
94
52
64
68
109
105
93
51
63
67
108
104
92
50
62
66
107
103
91
49
61
65
106
102
90
48
60
64
105
101
89
47
59
63
104
100
88
46
58
62
103
99
87
45
57
61
83
84
85
86
87
88
89
90
91
92
93
94
95
102
98
86
44
56
60
82
94
101
97
85
43
55
59
81
93
100
96
84
42
54
58
80
92
99
95
83
41
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
79
91
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
82
40
44
58
78
90
99
85
81
39
43
59
77
89
100
84
80
38
42
60
76
88
100
83
79
37
41
61
75
87
99
82
78
36
40
62
74
86
98
81
77
35
39
63
73
85
97
80
76
34
38
64
72
84
96
79
75
33
37
65
71
83
95
78
74
32
36
66
70
82
94
77
73
31
35
67
69
81
93
76
72
30
34
68
68
80
92
75
71
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
73
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
20
66
78
61
19
65
77
60
18
64
76
59
17
63
75
58
16
62
74
57
15
61
73
56
14
60
72
55
13
59
71
54
12
58
70
53
11
57
69
52
10
56
68
51
9
8
7
6
5
4
3
2
1
0
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
57
69
73
111
110
98
56
68
72
112
109
97
55
67
71
112
108
96
54
66
70
111
107
95
53
65
69
110
106
94
52
64
68
109
105
93
51
63
67
108
104
92
50
62
66
107
103
91
49
61
65
106
102
90
48
60
64
105
101
89
47
59
63
104
100
88
46
58
62
82
83
84
85
86
87
88
89
90
91
92
93
94
103
99
87
45
57
61
81
93
102
98
86
44
56
60
80
92
101
97
85
43
55
59
79
91
100
96
84
42
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
78
90
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
83
41
45
59
77
89
100
86
82
40
44
60
76
88
100
85
81
39
43
61
75
87
99
84
80
38
42
62
74
86
98
83
79
37
41
63
73
85
97
82
78
36
40
64
72
84
96
81
77
35
39
65
71
83
95
80
76
34
38
66
70
82
94
79
75
33
37
67
69
81
93
78
74
32
36
68
68
80
92
77
73
31
35
69
67
79
91
76
72
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
21
65
77
62
20
64
76
61
19
63
75
60
18
62
74
59
17
61
73
58
16
60
72
57
15
59
71
56
14
58
70
55
13
57
69
54
12
56
68
53
11
55
67
52
10
9
8
7
6
5
4
3
2
1
0
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
58
70
74
112
111
99
57
69
73
113
110
98
56
68
72
113
109
97
55
67
71
112
108
96
54
66
70
111
107
95
53
65
69
110
106
94
52
64
68
109
105
93
51
63
67
108
104
92
50
62
66
107
103
91
49
61
65
106
102
90
48
60
64
105
101
89
47
59
63
81
82
83
84
85
86
87
88
89
90
91
92
93
104
100
88
46
58
62
80
92
103
99
87
45
57
61
79
91
102
98
86
44
56
60
78
90
101
97
85
43
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
77
89
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
84
42
46
60
76
88
100
87
83
41
45
61
75
87
99
86
82
40
44
62
74
86
98
85
81
39
43
63
73
85
97
84
80
38
42
64
72
84
96
83
79
37
41
65
71
83
95
82
78
36
40
66
70
82
94
81
77
35
39
67
69
81
93
80
76
34
38
68
68
80
92
79
75
33
37
69
67
79
91
78
74
32
36
70
66
78
90
77
73
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
73
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
22
64
76
63
21
63
75
62
20
62
74
61
19
61
73
60
18
60
72
59
17
59
71
58
16
58
70
57
15
57
69
56
14
56
68
55
13
55
67
54
12
54
66
53
11
10
9
8
7
6
5
4
3
2
1
0
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
59
71
75
113
112
100
58
70
74
114
111
99
57
69
73
113
110
98
56
68
72
112
109
97
55
67
71
111
108
96
54
66
70
110
107
95
53
65
69
109
106
94
52
64
68
108
105
93
51
63
67
107
104
92
50
62
66
106
103
91
49
61
65
105
102
90
48
60
64
80
81
82
83
84
85
86
87
88
89
90
91
92
104
101
89
47
59
63
79
91
103
100
88
46
58
62
78
90
102
99
87
45
57
61
77
89
101
98
86
44
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
76
88
100
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
85
43
47
61
75
87
99
88
84
42
46
62
74
86
98
87
83
41
45
63
73
85
97
86
82
40
44
64
72
84
96
85
81
39
43
65
71
83
95
84
80
38
42
66
70
82
94
83
79
37
41
67
69
81
93
82
78
36
40
68
68
80
92
81
77
35
39
69
67
79
91
80
76
34
38
70
66
78
90
79
75
33
37
71
65
77
89
78
74
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
72
73
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
23
63
75
64
22
62
74
63
21
61
73
62
20
60
72
61
19
59
71
60
18
58
70
59
17
57
69
58
16
56
68
57
15
55
67
56
14
54
66
55
13
53
65
54
12
11
10
9
8
7
6
5
4
3
2
1
0
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
97
83
63
75
95
109
98
82
62
74
94
110
97
81
61
73
93
111
96
80
60
72
92
112
95
79
59
71
91
113
94
78
58
70
90
114
93
77
57
69
89
115
92
76
56
68
88
116
91
75
55
67
87
117
90
74
54
66
86
118
89
73
53
65
85
119
88
72
52
40
41
42
43
44
45
46
47
48
49
50
51
52
64
84
120
87
71
51
39
51
63
83
119
86
70
50
38
50
62
82
118
85
69
49
37
49
61
81
117
84
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
36
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
116
83
61
47
35
47
59
73
115
82
62
46
34
46
58
74
114
81
63
45
33
45
57
75
113
80
64
44
32
44
56
76
112
79
65
43
31
43
55
77
111
78
66
42
30
42
54
78
110
77
67
41
29
41
53
79
109
76
68
40
28
40
52
80
108
75
69
39
27
39
51
81
107
74
70
38
26
38
50
82
106
73
71
37
25
37
49
83
105
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
63
23
35
97
62
22
34
98
61
21
33
97
60
20
32
96
59
19
31
95
58
18
30
94
57
17
29
93
56
16
28
92
55
15
27
91
54
14
26
90
53
13
25
89
52
51
50
49
48
47
46
45
44
43
42
41
40
0
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
96
82
62
74
94
108
97
81
61
73
93
109
98
80
60
72
92
110
97
79
59
71
91
111
96
78
58
70
90
112
95
77
57
69
89
113
94
76
56
68
88
114
93
75
55
67
87
115
92
74
54
66
86
116
91
73
53
65
85
117
90
72
52
64
84
118
89
71
51
39
40
41
42
43
44
45
46
47
48
49
50
51
63
83
119
88
70
50
38
50
62
82
118
87
69
49
37
49
61
81
117
86
68
48
36
48
60
80
116
85
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
35
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
115
84
60
46
34
46
58
72
114
83
61
45
33
45
57
73
113
82
62
44
32
44
56
74
112
81
63
43
31
43
55
75
111
80
64
42
30
42
54
76
110
79
65
41
29
41
53
77
109
78
66
40
28
40
52
78
108
77
67
39
27
39
51
79
107
76
68
38
26
38
50
80
106
75
69
37
25
37
49
81
105
74
70
36
24
36
48
82
104
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
64
22
34
96
63
21
33
97
62
20
32
96
61
19
31
95
60
18
30
94
59
17
29
93
58
16
28
92
57
15
27
91
56
14
26
90
55
13
25
89
54
12
24
88
53
52
51
50
49
48
47
46
45
44
43
42
41
1
0
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
95
81
61
73
93
107
96
80
60
72
92
108
97
79
59
71
91
109
98
78
58
70
90
110
97
77
57
69
89
111
96
76
56
68
88
112
95
75
55
67
87
113
94
74
54
66
86
114
93
73
53
65
85
115
92
72
52
64
84
116
91
71
51
63
83
117
90
70
50
38
39
40
41
42
43
44
45
46
47
48
49
50
62
82
118
89
69
49
37
49
61
81
117
88
68
48
36
48
60
80
116
87
67
47
35
47
59
79
115
86
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
34
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
114
85
59
45
33
45
57
71
113
84
60
44
32
44
56
72
112
83
61
43
31
43
55
73
111
82
62
42
30
42
54
74
110
81
63
41
29
41
53
75
109
80
64
40
28
40
52
76
108
79
65
39
27
39
51
77
107
78
66
38
26
38
50
78
106
77
67
37
25
37
49
79
105
76
68
36
24
36
48
80
104
75
69
35
23
35
47
81
103
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
65
21
33
95
64
20
32
96
63
19
31
95
62
18
30
94
61
17
29
93
60
16
28
92
59
15
27
91
58
14
26
90
57
13
25
89
56
12
24
88
55
11
23
87
54
53
52
51
50
49
48
47
46
45
44
43
42
2
1
0
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
94
80
60
72
92
106
95
79
59
71
91
107
96
78
58
70
90
108
97
77
57
69
89
109
98
76
56
68
88
110
97
75
55
67
87
111
96
74
54
66
86
112
95
73
53
65
85
113
94
72
52
64
84
114
93
71
51
63
83
115
92
70
50
62
82
116
91
69
49
37
38
39
40
41
42
43
44
45
46
47
48
49
61
81
117
90
68
48
36
48
60
80
116
89
67
47
35
47
59
79
115
88
66
46
34
46
58
78
114
87
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
33
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
113
86
58
44
32
44
56
70
112
85
59
43
31
43
55
71
111
84
60
42
30
42
54
72
110
83
61
41
29
41
53
73
109
82
62
40
28
40
52
74
108
81
63
39
27
39
51
75
107
80
64
38
26
38
50
76
106
79
65
37
25
37
49
77
105
78
66
36
24
36
48
78
104
77
67
35
23
35
47
79
103
76
68
34
22
34
46
80
102
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
66
20
32
94
65
19
31
95
64
18
30
94
63
17
29
93
62
16
28
92
61
15
27
91
60
14
26
90
59
13
25
89
58
12
24
88
57
11
23
87
56
10
22
86
55
54
53
52
51
50
49
48
47
46
45
44
43
3
2
1
0
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
93
79
59
71
91
105
94
78
58
70
90
106
95
77
57
69
89
107
96
76
56
68
88
108
97
75
55
67
87
109
98
74
54
66
86
110
97
73
53
65
85
111
96
72
52
64
84
112
95
71
51
63
83
113
94
70
50
62
82
114
93
69
49
61
81
115
92
68
48
36
37
38
39
40
41
42
43
44
45
46
47
48
60
80
116
91
67
47
35
47
59
79
115
90
66
46
34
46
58
78
114
89
65
45
33
45
57
77
113
88
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
32
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
112
87
57
43
31
43
55
69
111
86
58
42
30
42
54
70
110
85
59
41
29
41
53
71
109
84
60
40
28
40
52
72
108
83
61
39
27
39
51
73
107
82
62
38
26
38
50
74
106
81
63
37
25
37
49
75
105
80
64
36
24
36
48
76
104
79
65
35
23
35
47
77
103
78
66
34
22
34
46
78
102
77
67
33
21
33
45
79
101
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
67
19
31
93
66
18
30
94
65
17
29
93
64
16
28
92
63
15
27
91
62
14
26
90
61
13
25
89
60
12
24
88
59
11
23
87
58
10
22
86
57
9
21
85
56
55
54
53
52
51
50
49
48
47
46
45
44
4
3
2
1
0
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
92
78
58
70
90
104
93
77
57
69
89
105
94
76
56
68
88
106
95
75
55
67
87
107
96
74
54
66
86
108
97
73
53
65
85
109
98
72
52
64
84
110
97
71
51
63
83
111
96
70
50
62
82
112
95
69
49
61
81
113
94
68
48
60
80
114
93
67
47
35
36
37
38
39
40
41
42
43
44
45
46
47
59
79
115
92
66
46
34
46
58
78
114
91
65
45
33
45
57
77
113
90
64
44
32
44
56
76
112
89
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
31
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
111
88
56
42
30
42
54
68
110
87
57
41
29
41
53
69
109
86
58
40
28
40
52
70
108
85
59
39
27
39
51
71
107
84
60
38
26
38
50
72
106
83
61
37
25
37
49
73
105
82
62
36
24
36
48
74
104
81
63
35
23
35
47
75
103
80
64
34
22
34
46
76
102
79
65
33
21
33
45
77
101
78
66
32
20
32
44
78
100
77
76
75
74
73
72
71
70
69
70
71
72
73
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
68
18
30
92
67
17
29
93
66
16
28
92
65
15
27
91
64
14
26
90
63
13
25
89
62
12
24
88
61
11
23
87
60
10
22
86
59
9
21
85
58
8
20
84
57
56
55
54
53
52
51
50
49
48
47
46
45
5
4
3
2
1
0
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
91
77
57
69
89
103
92
76
56
68
88
104
93
75
55
67
87
105
94
74
54
66
86
106
95
73
53
65
85
107
96
72
52
64
84
108
97
71
51
63
83
109
98
70
50
62
82
110
97
69
49
61
81
111
96
68
48
60
80
112
95
67
47
59
79
113
94
66
46
34
35
36
37
38
39
40
41
42
43
44
45
46
58
78
114
93
65
45
33
45
57
77
113
92
64
44
32
44
56
76
112
91
63
43
31
43
55
75
111
90
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
30
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
110
89
55
41
29
41
53
67
109
88
56
40
28
40
52
68
108
87
57
39
27
39
51
69
107
86
58
38
26
38
50
70
106
85
59
37
25
37
49
71
105
84
60
36
24
36
48
72
104
83
61
35
23
35
47
73
103
82
62
34
22
34
46
74
102
81
63
33
21
33
45
75
101
80
64
32
20
32
44
76
100
79
65
31
19
31
43
77
99
78
77
76
75
74
73
72
71
70
71
72
73
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
69
17
29
91
68
16
28
92
67
15
27
91
66
14
26
90
65
13
25
89
64
12
24
88
63
11
23
87
62
10
22
86
61
9
21
85
60
8
20
84
59
7
19
83
58
57
56
55
54
53
52
51
50
49
48
47
46
6
5
4
3
2
1
0
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
90
76
56
68
88
102
91
75
55
67
87
103
92
74
54
66
86
104
93
73
53
65
85
105
94
72
52
64
84
106
95
71
51
63
83
107
96
70
50
62
82
108
97
69
49
61
81
109
98
68
48
60
80
110
97
67
47
59
79
111
96
66
46
58
78
112
95
65
45
33
34
35
36
37
38
39
40
41
42
43
44
45
57
77
113
94
64
44
32
44
56
76
112
93
63
43
31
43
55
75
111
92
62
42
30
42
54
74
110
91
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
29
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
109
90
54
40
28
40
52
66
108
89
55
39
27
39
51
67
107
88
56
38
26
38
50
68
106
87
57
37
25
37
49
69
105
86
58
36
24
36
48
70
104
85
59
35
23
35
47
71
103
84
60
34
22
34
46
72
102
83
61
33
21
33
45
73
101
82
62
32
20
32
44
74
100
81
63
31
19
31
43
75
99
80
64
30
18
30
42
76
98
79
78
77
76
75
74
73
72
71
72
73
74
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
70
16
28
90
69
15
27
91
68
14
26
90
67
13
25
89
66
12
24
88
65
11
23
87
64
10
22
86
63
9
21
85
62
8
20
84
61
7
19
83
60
6
18
82
59
58
57
56
55
54
53
52
51
50
49
48
47
7
6
5
4
3
2
1
0
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
89
75
55
67
87
101
90
74
54
66
86
102
91
73
53
65
85
103
92
72
52
64
84
104
93
71
51
63
83
105
94
70
50
62
82
106
95
69
49
61
81
107
96
68
48
60
80
108
97
67
47
59
79
109
98
66
46
58
78
110
97
65
45
57
77
111
96
64
44
32
33
34
35
36
37
38
39
40
41
42
43
44
56
76
112
95
63
43
31
43
55
75
111
94
62
42
30
42
54
74
110
93
61
41
29
41
53
73
109
92
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
28
40
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
108
91
53
39
27
39
51
65
107
90
54
38
26
38
50
66
106
89
55
37
25
37
49
67
105
88
56
36
24
36
48
68
104
87
57
35
23
35
47
69
103
86
58
34
22
34
46
70
102
85
59
33
21
33
45
71
101
84
60
32
20
32
44
72
100
83
61
31
19
31
43
73
99
82
62
30
18
30
42
74
98
81
63
29
17
29
41
75
97
80
79
78
77
76
75
74
73
72
73
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
71
15
27
89
70
14
26
90
69
13
25
89
68
12
24
88
67
11
23
87
66
10
22
86
65
9
21
85
64
8
20
84
63
7
19
83
62
6
18
82
61
5
17
81
60
59
58
57
56
55
54
53
52
51
50
49
48
8
7
6
5
4
3
2
1
0
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
88
74
54
66
86
100
89
73
53
65
85
101
90
72
52
64
84
102
91
71
51
63
83
103
92
70
50
62
82
104
93
69
49
61
81
105
94
68
48
60
80
106
95
67
47
59
79
107
96
66
46
58
78
108
97
65
45
57
77
109
98
64
44
56
76
110
97
63
43
31
32
33
34
35
36
37
38
39
40
41
42
43
55
75
111
96
62
42
30
42
54
74
110
95
61
41
29
41
53
73
109
94
60
40
28
40
52
72
108
93
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
27
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
107
92
52
38
26
38
50
64
106
91
53
37
25
37
49
65
105
90
54
36
24
36
48
66
104
89
55
35
23
35
47
67
103
88
56
34
22
34
46
68
102
87
57
33
21
33
45
69
101
86
58
32
20
32
44
70
100
85
59
31
19
31
43
71
99
84
60
30
18
30
42
72
98
83
61
29
17
29
41
73
97
82
62
28
16
28
40
74
96
81
80
79
78
77
76
75
74
73
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
72
14
26
88
71
13
25
89
70
12
24
88
69
11
23
87
68
10
22
86
67
9
21
85
66
8
20
84
65
7
19
83
64
6
18
82
63
5
17
81
62
4
16
80
61
60
59
58
57
56
55
54
53
52
51
50
49
9
8
7
6
5
4
3
2
1
0
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
87
73
53
65
85
99
88
72
52
64
84
100
89
71
51
63
83
101
90
70
50
62
82
102
91
69
49
61
81
103
92
68
48
60
80
104
93
67
47
59
79
105
94
66
46
58
78
106
95
65
45
57
77
107
96
64
44
56
76
108
97
63
43
55
75
109
98
62
42
30
31
32
33
34
35
36
37
38
39
40
41
42
54
74
110
97
61
41
29
41
53
73
109
96
60
40
28
40
52
72
108
95
59
39
27
39
51
71
107
94
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
26
38
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
106
93
51
37
25
37
49
63
105
92
52
36
24
36
48
64
104
91
53
35
23
35
47
65
103
90
54
34
22
34
46
66
102
89
55
33
21
33
45
67
101
88
56
32
20
32
44
68
100
87
57
31
19
31
43
69
99
86
58
30
18
30
42
70
98
85
59
29
17
29
41
71
97
84
60
28
16
28
40
72
96
83
61
27
15
27
39
73
95
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
73
13
25
87
72
12
24
88
71
11
23
87
70
10
22
86
69
9
21
85
68
8
20
84
67
7
19
83
66
6
18
82
65
5
17
81
64
4
16
80
63
3
15
79
62
61
60
59
58
57
56
55
54
53
52
51
50
10
9
8
7
6
5
4
3
2
1
0
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
86
72
52
64
84
98
87
71
51
63
83
99
88
70
50
62
82
100
89
69
49
61
81
101
90
68
48
60
80
102
91
67
47
59
79
103
92
66
46
58
78
104
93
65
45
57
77
105
94
64
44
56
76
106
95
63
43
55
75
107
96
62
42
54
74
108
97
61
41
29
30
31
32
33
34
35
36
37
38
39
40
41
53
73
109
96
60
40
28
40
52
72
108
95
59
39
27
39
51
71
107
94
58
38
26
38
50
70
106
93
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
25
37
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
105
92
50
36
24
36
48
62
104
91
51
35
23
35
47
63
103
90
52
34
22
34
46
64
102
89
53
33
21
33
45
65
101
88
54
32
20
32
44
66
100
87
55
31
19
31
43
67
99
86
56
30
18
30
42
68
98
85
57
29
17
29
41
69
97
84
58
28
16
28
40
70
96
83
59
27
15
27
39
71
95
82
60
26
14
26
38
72
94
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
74
12
24
86
73
11
23
87
72
10
22
86
71
9
21
85
70
8
20
84
69
7
19
83
68
6
18
82
67
5
17
81
66
4
16
80
65
3
15
79
64
2
14
78
63
62
61
60
59
58
57
56
55
54
53
52
51
11
10
9
8
7
6
5
4
3
2
1
0
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
85
71
51
63
83
97
86
70
50
62
82
98
87
69
49
61
81
99
88
68
48
60
80
100
89
67
47
59
79
101
90
66
46
58
78
102
91
65
45
57
77
103
92
64
44
56
76
104
93
63
43
55
75
105
94
62
42
54
74
106
95
61
41
53
73
107
96
60
40
28
29
30
31
32
33
34
35
36
37
38
39
40
52
72
108
95
59
39
27
39
51
71
107
94
58
38
26
38
50
70
106
93
57
37
25
37
49
69
105
92
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
24
36
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
104
91
49
35
23
35
47
61
103
90
50
34
22
34
46
62
102
89
51
33
21
33
45
63
101
88
52
32
20
32
44
64
100
87
53
31
19
31
43
65
99
86
54
30
18
30
42
66
98
85
55
29
17
29
41
67
97
84
56
28
16
28
40
68
96
83
57
27
15
27
39
69
95
82
58
26
14
26
38
70
94
81
59
25
13
25
37
71
93
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
24
25
26
27
28
29
30
31
32
33
34
35
36
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
73
11
23
85
74
10
22
86
73
9
21
85
72
8
20
84
71
7
19
83
70
6
18
82
69
5
17
81
68
4
16
80
67
3
15
79
66
2
14
78
65
1
13
77
64
63
62
61
60
59
58
57
56
55
54
53
52
12
11
10
9
8
7
6
5
4
3
2
1
0
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
86
72
52
62
82
96
87
71
51
61
81
97
88
70
50
60
80
98
89
69
49
59
79
99
90
68
48
58
78
100
91
67
47
57
77
101
92
66
46
56
76
102
93
65
45
55
75
103
94
64
44
54
74
104
95
63
43
53
73
105
96
62
42
52
72
106
97
61
41
29
30
31
32
33
34
35
36
37
38
39
40
39
51
71
107
96
60
40
28
38
50
70
106
95
59
39
27
37
49
69
105
94
58
38
26
36
48
68
104
93
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
25
35
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
103
92
50
36
24
34
46
60
102
91
51
35
23
33
45
61
101
90
52
34
22
32
44
62
100
89
53
33
21
31
43
63
99
88
54
32
20
30
42
64
98
87
55
31
19
29
41
65
97
86
56
30
18
28
40
66
96
85
57
29
17
27
39
67
95
84
58
28
16
26
38
68
94
83
59
27
15
25
37
69
93
82
60
26
14
24
36
70
92
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
74
12
22
84
75
11
21
85
74
10
20
84
73
9
19
83
72
8
18
82
71
7
17
81
70
6
16
80
69
5
15
79
68
4
14
78
67
3
13
77
66
2
12
76
65
64
63
62
61
60
59
58
57
56
55
54
53
13
12
11
10
9
8
7
6
5
4
3
2
1
0
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
87
73
53
61
81
95
88
72
52
60
80
96
89
71
51
59
79
97
90
70
50
58
78
98
91
69
49
57
77
99
92
68
48
56
76
100
93
67
47
55
75
101
94
66
46
54
74
102
95
65
45
53
73
103
96
64
44
52
72
104
97
63
43
51
71
105
98
62
42
30
31
32
33
34
35
36
37
38
39
40
39
38
50
70
106
97
61
41
29
37
49
69
105
96
60
40
28
36
48
68
104
95
59
39
27
35
47
67
103
94
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
26
34
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
102
93
51
37
25
33
45
59
101
92
52
36
24
32
44
60
100
91
53
35
23
31
43
61
99
90
54
34
22
30
42
62
98
89
55
33
21
29
41
63
97
88
56
32
20
28
40
64
96
87
57
31
19
27
39
65
95
86
58
30
18
26
38
66
94
85
59
29
17
25
37
67
93
84
60
28
16
24
36
68
92
83
61
27
15
23
35
69
91
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
75
13
21
83
76
12
20
84
75
11
19
83
74
10
18
82
73
9
17
81
72
8
16
80
71
7
15
79
70
6
14
78
69
5
13
77
68
4
12
76
67
3
11
75
66
65
64
63
62
61
60
59
58
57
56
55
54
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
88
74
54
60
80
94
89
73
53
59
79
95
90
72
52
58
78
96
91
71
51
57
77
97
92
70
50
56
76
98
93
69
49
55
75
99
94
68
48
54
74
100
95
67
47
53
73
101
96
66
46
52
72
102
97
65
45
51
71
103
98
64
44
50
70
104
99
63
43
31
32
33
34
35
36
37
38
39
40
39
38
37
49
69
105
98
62
42
30
36
48
68
104
97
61
41
29
35
47
67
103
96
60
40
28
34
46
66
102
95
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
27
33
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
101
94
52
38
26
32
44
58
100
93
53
37
25
31
43
59
99
92
54
36
24
30
42
60
98
91
55
35
23
29
41
61
97
90
56
34
22
28
40
62
96
89
57
33
21
27
39
63
95
88
58
32
20
26
38
64
94
87
59
31
19
25
37
65
93
86
60
30
18
24
36
66
92
85
61
29
17
23
35
67
91
84
62
28
16
22
34
68
90
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
76
14
20
82
77
13
19
83
76
12
18
82
75
11
17
81
74
10
16
80
73
9
15
79
72
8
14
78
71
7
13
77
70
6
12
76
69
5
11
75
68
4
10
74
67
66
65
64
63
62
61
60
59
58
57
56
55
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
89
75
55
59
79
93
90
74
54
58
78
94
91
73
53
57
77
95
92
72
52
56
76
96
93
71
51
55
75
97
94
70
50
54
74
98
95
69
49
53
73
99
96
68
48
52
72
100
97
67
47
51
71
101
98
66
46
50
70
102
99
65
45
49
69
103
100
64
44
32
33
34
35
36
37
38
39
40
39
38
37
36
48
68
104
99
63
43
31
35
47
67
103
98
62
42
30
34
46
66
102
97
61
41
29
33
45
65
101
96
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
28
32
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
100
95
53
39
27
31
43
57
99
94
54
38
26
30
42
58
98
93
55
37
25
29
41
59
97
92
56
36
24
28
40
60
96
91
57
35
23
27
39
61
95
90
58
34
22
26
38
62
94
89
59
33
21
25
37
63
93
88
60
32
20
24
36
64
92
87
61
31
19
23
35
65
91
86
62
30
18
22
34
66
90
85
63
29
17
21
33
67
89
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
20
21
22
23
24
25
26
27
28
29
30
31
32
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
77
15
19
81
78
14
18
82
77
13
17
81
76
12
16
80
75
11
15
79
74
10
14
78
73
9
13
77
72
8
12
76
71
7
11
75
70
6
10
74
69
5
9
73
68
67
66
65
64
63
62
61
60
59
58
57
56
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
76
56
58
78
92
91
75
55
57
77
93
92
74
54
56
76
94
93
73
53
55
75
95
94
72
52
54
74
96
95
71
51
53
73
97
96
70
50
52
72
98
97
69
49
51
71
99
98
68
48
50
70
100
99
67
47
49
69
101
100
66
46
48
68
102
101
65
45
33
34
35
36
37
38
39
40
39
38
37
36
35
47
67
103
100
64
44
32
34
46
66
102
99
63
43
31
33
45
65
101
98
62
42
30
32
44
64
100
97
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
29
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
99
96
54
40
28
30
42
56
98
95
55
39
27
29
41
57
97
94
56
38
26
28
40
58
96
93
57
37
25
27
39
59
95
92
58
36
24
26
38
60
94
91
59
35
23
25
37
61
93
90
60
34
22
24
36
62
92
89
61
33
21
23
35
63
91
88
62
32
20
22
34
64
90
87
63
31
19
21
33
65
89
86
64
30
18
20
32
66
88
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
19
20
21
22
23
24
25
26
27
28
29
30
31
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
78
16
18
80
79
15
17
81
78
14
16
80
77
13
15
79
76
12
14
78
75
11
13
77
74
10
12
76
73
9
11
75
72
8
10
74
71
7
9
73
70
6
8
72
69
68
67
66
65
64
63
62
61
60
59
58
57
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
77
57
57
77
91
92
76
56
56
76
92
93
75
55
55
75
93
94
74
54
54
74
94
95
73
53
53
73
95
96
72
52
52
72
96
97
71
51
51
71
97
98
70
50
50
70
98
99
69
49
49
69
99
100
68
48
48
68
100
101
67
47
47
67
101
102
66
46
34
35
36
37
38
39
40
39
38
37
36
35
34
46
66
102
101
65
45
33
33
45
65
101
100
64
44
32
32
44
64
100
99
63
43
31
31
43
63
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
30
30
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
98
97
55
41
29
29
41
55
97
96
56
40
28
28
40
56
96
95
57
39
27
27
39
57
95
94
58
38
26
26
38
58
94
93
59
37
25
25
37
59
93
92
60
36
24
24
36
60
92
91
61
35
23
23
35
61
91
90
62
34
22
22
34
62
90
89
63
33
21
21
33
63
89
88
64
32
20
20
32
64
88
87
65
31
19
19
31
65
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
18
19
20
21
22
23
24
25
26
27
28
29
30
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
79
17
17
79
80
16
16
80
79
15
15
79
78
14
14
78
77
13
13
77
76
12
12
76
75
11
11
75
74
10
10
74
73
9
9
73
72
8
8
72
71
7
7
71
70
69
68
67
66
65
64
63
62
61
60
59
58
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
92
78
58
56
76
90
93
77
57
55
75
91
94
76
56
54
74
92
95
75
55
53
73
93
96
74
54
52
72
94
97
73
53
51
71
95
98
72
52
50
70
96
99
71
51
49
69
97
100
70
50
48
68
98
101
69
49
47
67
99
102
68
48
46
66
100
103
67
47
35
36
37
38
39
40
39
38
37
36
35
34
33
45
65
101
102
66
46
34
32
44
64
100
101
65
45
33
31
43
63
99
100
64
44
32
30
42
62
98
99
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
31
29
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
97
98
56
42
30
28
40
54
96
97
57
41
29
27
39
55
95
96
58
40
28
26
38
56
94
95
59
39
27
25
37
57
93
94
60
38
26
24
36
58
92
93
61
37
25
23
35
59
91
92
62
36
24
22
34
60
90
91
63
35
23
21
33
61
89
90
64
34
22
20
32
62
88
89
65
33
21
19
31
63
87
88
66
32
20
18
30
64
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
17
18
19
20
21
22
23
24
25
26
27
28
29
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
80
18
16
78
81
17
15
79
80
16
14
78
79
15
13
77
78
14
12
76
77
13
11
75
76
12
10
74
75
11
9
73
74
10
8
72
73
9
7
71
72
8
6
70
71
70
69
68
67
66
65
64
63
62
61
60
59
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
93
79
59
55
75
89
94
78
58
54
74
90
95
77
57
53
73
91
96
76
56
52
72
92
97
75
55
51
71
93
98
74
54
50
70
94
99
73
53
49
69
95
100
72
52
48
68
96
101
71
51
47
67
97
102
70
50
46
66
98
103
69
49
45
65
99
104
68
48
36
37
38
39
40
39
38
37
36
35
34
33
32
44
64
100
103
67
47
35
31
43
63
99
102
66
46
34
30
42
62
98
101
65
45
33
29
41
61
97
100
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
32
28
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
96
99
57
43
31
27
39
53
95
98
58
42
30
26
38
54
94
97
59
41
29
25
37
55
93
96
60
40
28
24
36
56
92
95
61
39
27
23
35
57
91
94
62
38
26
22
34
58
90
93
63
37
25
21
33
59
89
92
64
36
24
20
32
60
88
91
65
35
23
19
31
61
87
90
66
34
22
18
30
62
86
89
67
33
21
17
29
63
85
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
16
17
18
19
20
21
22
23
24
25
26
27
28
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
81
19
15
77
82
18
14
78
81
17
13
77
80
16
12
76
79
15
11
75
78
14
10
74
77
13
9
73
76
12
8
72
75
11
7
71
74
10
6
70
73
9
5
69
72
71
70
69
68
67
66
65
64
63
62
61
60
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
94
80
60
54
74
88
95
79
59
53
73
89
96
78
58
52
72
90
97
77
57
51
71
91
98
76
56
50
70
92
99
75
55
49
69
93
100
74
54
48
68
94
101
73
53
47
67
95
102
72
52
46
66
96
103
71
51
45
65
97
104
70
50
44
64
98
105
69
49
37
38
39
40
39
38
37
36
35
34
33
32
31
43
63
99
104
68
48
36
30
42
62
98
103
67
47
35
29
41
61
97
102
66
46
34
28
40
60
96
101
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
33
27
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
95
100
58
44
32
26
38
52
94
99
59
43
31
25
37
53
93
98
60
42
30
24
36
54
92
97
61
41
29
23
35
55
91
96
62
40
28
22
34
56
90
95
63
39
27
21
33
57
89
94
64
38
26
20
32
58
88
93
65
37
25
19
31
59
87
92
66
36
24
18
30
60
86
91
67
35
23
17
29
61
85
90
68
34
22
16
28
62
84
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
15
16
17
18
19
20
21
22
23
24
25
26
27
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
20
14
76
83
19
13
77
82
18
12
76
81
17
11
75
80
16
10
74
79
15
9
73
78
14
8
72
77
13
7
71
76
12
6
70
75
11
5
69
74
10
4
68
73
72
71
70
69
68
67
66
65
64
63
62
61
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
95
81
61
53
73
87
96
80
60
52
72
88
97
79
59
51
71
89
98
78
58
50
70
90
99
77
57
49
69
91
100
76
56
48
68
92
101
75
55
47
67
93
102
74
54
46
66
94
103
73
53
45
65
95
104
72
52
44
64
96
105
71
51
43
63
97
106
70
50
38
39
40
39
38
37
36
35
34
33
32
31
30
42
62
98
105
69
49
37
29
41
61
97
104
68
48
36
28
40
60
96
103
67
47
35
27
39
59
95
102
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
34
26
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
94
101
59
45
33
25
37
51
93
100
60
44
32
24
36
52
92
99
61
43
31
23
35
53
91
98
62
42
30
22
34
54
90
97
63
41
29
21
33
55
89
96
64
40
28
20
32
56
88
95
65
39
27
19
31
57
87
94
66
38
26
18
30
58
86
93
67
37
25
17
29
59
85
92
68
36
24
16
28
60
84
91
69
35
23
15
27
61
83
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
14
15
16
17
18
19
20
21
22
23
24
25
26
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
21
13
75
84
20
12
76
83
19
11
75
82
18
10
74
81
17
9
73
80
16
8
72
79
15
7
71
78
14
6
70
77
13
5
69
76
12
4
68
75
11
3
67
74
73
72
71
70
69
68
67
66
65
64
63
62
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
96
82
62
52
72
86
97
81
61
51
71
87
98
80
60
50
70
88
99
79
59
49
69
89
100
78
58
48
68
90
101
77
57
47
67
91
102
76
56
46
66
92
103
75
55
45
65
93
104
74
54
44
64
94
105
73
53
43
63
95
106
72
52
42
62
96
107
71
51
39
40
39
38
37
36
35
34
33
32
31
30
29
41
61
97
106
70
50
38
28
40
60
96
105
69
49
37
27
39
59
95
104
68
48
36
26
38
58
94
103
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
35
25
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
93
102
60
46
34
24
36
50
92
101
61
45
33
23
35
51
91
100
62
44
32
22
34
52
90
99
63
43
31
21
33
53
89
98
64
42
30
20
32
54
88
97
65
41
29
19
31
55
87
96
66
40
28
18
30
56
86
95
67
39
27
17
29
57
85
94
68
38
26
16
28
58
84
93
69
37
25
15
27
59
83
92
70
36
24
14
26
60
82
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
13
14
15
16
17
18
19
20
21
22
23
24
25
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
84
22
12
74
85
21
11
75
84
20
10
74
83
19
9
73
82
18
8
72
81
17
7
71
80
16
6
70
79
15
5
69
78
14
4
68
77
13
3
67
76
12
2
66
75
74
73
72
71
70
69
68
67
66
65
64
63
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
97
83
63
51
71
85
98
82
62
50
70
86
99
81
61
49
69
87
100
80
60
48
68
88
101
79
59
47
67
89
102
78
58
46
66
90
103
77
57
45
65
91
104
76
56
44
64
92
105
75
55
43
63
93
106
74
54
42
62
94
107
73
53
41
61
95
108
72
52
40
39
38
37
36
35
34
33
32
31
30
29
28
40
60
96
107
71
51
39
27
39
59
95
106
70
50
38
26
38
58
94
105
69
49
37
25
37
57
93
104
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
36
24
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
92
103
61
47
35
23
35
49
91
102
62
46
34
22
34
50
90
101
63
45
33
21
33
51
89
100
64
44
32
20
32
52
88
99
65
43
31
19
31
53
87
98
66
42
30
18
30
54
86
97
67
41
29
17
29
55
85
96
68
40
28
16
28
56
84
95
69
39
27
15
27
57
83
94
70
38
26
14
26
58
82
93
71
37
25
13
25
59
81
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
12
13
14
15
16
17
18
19
20
21
22
23
24
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
85
23
11
73
86
22
10
74
85
21
9
73
84
20
8
72
83
19
7
71
82
18
6
70
81
17
5
69
80
16
4
68
79
15
3
67
78
14
2
66
77
13
1
65
76
75
74
73
72
71
70
69
68
67
66
65
64
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
98
84
64
52
72
86
99
83
63
51
71
87
100
82
62
50
70
88
101
81
61
49
69
89
102
80
60
48
68
90
103
79
59
47
67
91
104
78
58
46
66
92
105
77
57
45
65
93
106
76
56
44
64
94
107
75
55
43
63
95
108
74
54
42
62
96
109
73
53
41
40
39
38
37
36
35
34
33
32
31
30
29
41
61
97
108
72
52
40
28
40
60
96
107
71
51
39
27
39
59
95
106
70
50
38
26
38
58
94
105
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
37
25
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
93
104
62
48
36
24
36
50
92
103
63
47
35
23
35
51
91
102
64
46
34
22
34
52
90
101
65
45
33
21
33
53
89
100
66
44
32
20
32
54
88
99
67
43
31
19
31
55
87
98
68
42
30
18
30
56
86
97
69
41
29
17
29
57
85
96
70
40
28
16
28
58
84
95
71
39
27
15
27
59
83
94
72
38
26
14
26
60
82
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
13
14
15
16
17
18
19
20
21
22
23
24
25
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
86
24
12
74
87
23
11
73
86
22
10
72
85
21
9
71
84
20
8
70
83
19
7
69
82
18
6
68
81
17
5
67
80
16
4
66
79
15
3
65
78
14
2
64
77
76
75
74
73
72
71
70
69
68
67
66
65
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
99
85
65
53
73
87
100
84
64
52
72
88
101
83
63
51
71
89
102
82
62
50
70
90
103
81
61
49
69
91
104
80
60
48
68
92
105
79
59
47
67
93
106
78
58
46
66
94
107
77
57
45
65
95
108
76
56
44
64
96
109
75
55
43
63
97
110
74
54
42
41
40
39
38
37
36
35
34
33
32
31
30
42
62
98
109
73
53
41
29
41
61
97
108
72
52
40
28
40
60
96
107
71
51
39
27
39
59
95
106
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
38
26
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
94
105
63
49
37
25
37
51
93
104
64
48
36
24
36
52
92
103
65
47
35
23
35
53
91
102
66
46
34
22
34
54
90
101
67
45
33
21
33
55
89
100
68
44
32
20
32
56
88
99
69
43
31
19
31
57
87
98
70
42
30
18
30
58
86
97
71
41
29
17
29
59
85
96
72
40
28
16
28
60
84
95
73
39
27
15
27
61
83
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
14
15
16
17
18
19
20
21
22
23
24
25
26
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
87
25
13
73
88
24
12
72
87
23
11
71
86
22
10
70
85
21
9
69
84
20
8
68
83
19
7
67
82
18
6
66
81
17
5
65
80
16
4
64
79
15
3
63
78
77
76
75
74
73
72
71
70
69
68
67
66
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
100
86
66
54
74
88
101
85
65
53
73
89
102
84
64
52
72
90
103
83
63
51
71
91
104
82
62
50
70
92
105
81
61
49
69
93
106
80
60
48
68
94
107
79
59
47
67
95
108
78
58
46
66
96
109
77
57
45
65
97
110
76
56
44
64
98
111
75
55
43
42
41
40
39
38
37
36
35
34
33
32
31
43
63
97
110
74
54
42
30
42
62
96
109
73
53
41
29
41
61
95
108
72
52
40
28
40
60
94
107
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
27
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
93
106
64
50
38
26
38
52
92
105
65
49
37
25
37
53
91
104
66
48
36
24
36
54
90
103
67
47
35
23
35
55
89
102
68
46
34
22
34
56
88
101
69
45
33
21
33
57
87
100
70
44
32
20
32
58
86
99
71
43
31
19
31
59
85
98
72
42
30
18
30
60
84
97
73
41
29
17
29
61
83
96
74
40
28
16
28
62
82
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
15
16
17
18
19
20
21
22
23
24
25
26
27
63
64
65
66
67
68
69
70
71
72
73
74
73
74
75
76
77
78
79
80
81
88
26
14
72
89
25
13
71
88
24
12
70
87
23
11
69
86
22
10
68
85
21
9
67
84
20
8
66
83
19
7
65
82
18
6
64
81
17
5
63
80
16
4
62
79
78
77
76
75
74
73
72
71
70
69
68
67
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
101
87
67
55
75
89
102
86
66
54
74
90
103
85
65
53
73
91
104
84
64
52
72
92
105
83
63
51
71
93
106
82
62
50
70
94
107
81
61
49
69
95
108
80
60
48
68
96
109
79
59
47
67
97
110
78
58
46
66
98
111
77
57
45
65
97
112
76
56
44
43
42
41
40
39
38
37
36
35
34
33
32
44
64
96
111
75
55
43
31
43
63
95
110
74
54
42
30
42
62
94
109
73
53
41
29
41
61
93
108
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
28
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
92
107
65
51
39
27
39
53
91
106
66
50
38
26
38
54
90
105
67
49
37
25
37
55
89
104
68
48
36
24
36
56
88
103
69
47
35
23
35
57
87
102
70
46
34
22
34
58
86
101
71
45
33
21
33
59
85
100
72
44
32
20
32
60
84
99
73
43
31
19
31
61
83
98
74
42
30
18
30
62
82
97
75
41
29
17
29
63
81
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
16
17
18
19
20
21
22
23
24
25
26
27
28
64
65
66
67
68
69
70
71
72
73
74
73
72
73
74
75
76
77
78
79
80
89
27
15
71
90
26
14
70
89
25
13
69
88
24
12
68
87
23
11
67
86
22
10
66
85
21
9
65
84
20
8
64
83
19
7
63
82
18
6
62
81
17
5
61
80
79
78
77
76
75
74
73
72
71
70
69
68
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
102
88
68
56
76
90
103
87
67
55
75
91
104
86
66
54
74
92
105
85
65
53
73
93
106
84
64
52
72
94
107
83
63
51
71
95
108
82
62
50
70
96
109
81
61
49
69
97
110
80
60
48
68
98
111
79
59
47
67
97
112
78
58
46
66
96
113
77
57
45
44
43
42
41
40
39
38
37
36
35
34
33
45
65
95
112
76
56
44
32
44
64
94
111
75
55
43
31
43
63
93
110
74
54
42
30
42
62
92
109
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
29
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
91
108
66
52
40
28
40
54
90
107
67
51
39
27
39
55
89
106
68
50
38
26
38
56
88
105
69
49
37
25
37
57
87
104
70
48
36
24
36
58
86
103
71
47
35
23
35
59
85
102
72
46
34
22
34
60
84
101
73
45
33
21
33
61
83
100
74
44
32
20
32
62
82
99
75
43
31
19
31
63
81
98
76
42
30
18
30
64
80
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
17
18
19
20
21
22
23
24
25
26
27
28
29
65
66
67
68
69
70
71
72
73
74
73
72
71
72
73
74
75
76
77
78
79
90
28
16
70
91
27
15
69
90
26
14
68
89
25
13
67
88
24
12
66
87
23
11
65
86
22
10
64
85
21
9
63
84
20
8
62
83
19
7
61
82
18
6
60
81
80
79
78
77
76
75
74
73
72
71
70
69
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
103
89
69
57
77
91
104
88
68
56
76
92
105
87
67
55
75
93
106
86
66
54
74
94
107
85
65
53
73
95
108
84
64
52
72
96
109
83
63
51
71
97
110
82
62
50
70
98
111
81
61
49
69
97
112
80
60
48
68
96
113
79
59
47
67
95
114
78
58
46
45
44
43
42
41
40
39
38
37
36
35
34
46
66
94
113
77
57
45
33
45
65
93
112
76
56
44
32
44
64
92
111
75
55
43
31
43
63
91
110
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
30
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
90
109
67
53
41
29
41
55
89
108
68
52
40
28
40
56
88
107
69
51
39
27
39
57
87
106
70
50
38
26
38
58
86
105
71
49
37
25
37
59
85
104
72
48
36
24
36
60
84
103
73
47
35
23
35
61
83
102
74
46
34
22
34
62
82
101
75
45
33
21
33
63
81
100
76
44
32
20
32
64
80
99
77
43
31
19
31
65
79
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
18
19
20
21
22
23
24
25
26
27
28
29
30
66
67
68
69
70
71
72
73
74
73
72
71
70
71
72
73
74
75
76
77
78
91
29
17
69
92
28
16
68
91
27
15
67
90
26
14
66
89
25
13
65
88
24
12
64
87
23
11
63
86
22
10
62
85
21
9
61
84
20
8
60
83
19
7
59
82
81
80
79
78
77
76
75
74
73
72
71
70
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
104
90
70
58
78
92
105
89
69
57
77
93
106
88
68
56
76
94
107
87
67
55
75
95
108
86
66
54
74
96
109
85
65
53
73
97
110
84
64
52
72
98
111
83
63
51
71
97
112
82
62
50
70
96
113
81
61
49
69
95
114
80
60
48
68
94
115
79
59
47
46
45
44
43
42
41
40
39
38
37
36
35
47
67
93
114
78
58
46
34
46
66
92
113
77
57
45
33
45
65
91
112
76
56
44
32
44
64
90
111
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
89
110
68
54
42
30
42
56
88
109
69
53
41
29
41
57
87
108
70
52
40
28
40
58
86
107
71
51
39
27
39
59
85
106
72
50
38
26
38
60
84
105
73
49
37
25
37
61
83
104
74
48
36
24
36
62
82
103
75
47
35
23
35
63
81
102
76
46
34
22
34
64
80
101
77
45
33
21
33
65
79
100
78
44
32
20
32
66
78
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
19
20
21
22
23
24
25
26
27
28
29
30
31
67
68
69
70
71
72
73
74
73
72
71
70
69
70
71
72
73
74
75
76
77
92
30
18
68
93
29
17
67
92
28
16
66
91
27
15
65
90
26
14
64
89
25
13
63
88
24
12
62
87
23
11
61
86
22
10
60
85
21
9
59
84
20
8
58
83
82
81
80
79
78
77
76
75
74
73
72
71
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
105
91
71
59
79
93
106
90
70
58
78
94
107
89
69
57
77
95
108
88
68
56
76
96
109
87
67
55
75
97
110
86
66
54
74
98
111
85
65
53
73
97
112
84
64
52
72
96
113
83
63
51
71
95
114
82
62
50
70
94
115
81
61
49
69
93
116
80
60
48
47
46
45
44
43
42
41
40
39
38
37
36
48
68
92
115
79
59
47
35
47
67
91
114
78
58
46
34
46
66
90
113
77
57
45
33
45
65
89
112
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
32
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
88
111
69
55
43
31
43
57
87
110
70
54
42
30
42
58
86
109
71
53
41
29
41
59
85
108
72
52
40
28
40
60
84
107
73
51
39
27
39
61
83
106
74
50
38
26
38
62
82
105
75
49
37
25
37
63
81
104
76
48
36
24
36
64
80
103
77
47
35
23
35
65
79
102
78
46
34
22
34
66
78
101
79
45
33
21
33
67
77
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
20
21
22
23
24
25
26
27
28
29
30
31
32
68
69
70
71
72
73
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
93
31
19
67
94
30
18
66
93
29
17
65
92
28
16
64
91
27
15
63
90
26
14
62
89
25
13
61
88
24
12
60
87
23
11
59
86
22
10
58
85
21
9
57
84
83
82
81
80
79
78
77
76
75
74
73
72
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
106
92
72
60
80
94
107
91
71
59
79
95
108
90
70
58
78
96
109
89
69
57
77
97
110
88
68
56
76
98
111
87
67
55
75
97
112
86
66
54
74
96
113
85
65
53
73
95
114
84
64
52
72
94
115
83
63
51
71
93
116
82
62
50
70
92
117
81
61
49
48
47
46
45
44
43
42
41
40
39
38
37
49
69
91
116
80
60
48
36
48
68
90
115
79
59
47
35
47
67
89
114
78
58
46
34
46
66
88
113
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
33
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
87
112
70
56
44
32
44
58
86
111
71
55
43
31
43
59
85
110
72
54
42
30
42
60
84
109
73
53
41
29
41
61
83
108
74
52
40
28
40
62
82
107
75
51
39
27
39
63
81
106
76
50
38
26
38
64
80
105
77
49
37
25
37
65
79
104
78
48
36
24
36
66
78
103
79
47
35
23
35
67
77
102
80
46
34
22
34
68
76
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
73
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
94
32
20
66
95
31
19
65
94
30
18
64
93
29
17
63
92
28
16
62
91
27
15
61
90
26
14
60
89
25
13
59
88
24
12
58
87
23
11
57
86
22
10
56
85
84
83
82
81
80
79
78
77
76
75
74
73
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
107
93
73
61
81
95
108
92
72
60
80
96
109
91
71
59
79
97
110
90
70
58
78
98
111
89
69
57
77
97
112
88
68
56
76
96
113
87
67
55
75
95
114
86
66
54
74
94
115
85
65
53
73
93
116
84
64
52
72
92
117
83
63
51
71
91
118
82
62
50
49
48
47
46
45
44
43
42
41
40
39
38
50
70
90
117
81
61
49
37
49
69
89
116
80
60
48
36
48
68
88
115
79
59
47
35
47
67
87
114
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
34
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
86
113
71
57
45
33
45
59
85
112
72
56
44
32
44
60
84
111
73
55
43
31
43
61
83
110
74
54
42
30
42
62
82
109
75
53
41
29
41
63
81
108
76
52
40
28
40
64
80
107
77
51
39
27
39
65
79
106
78
50
38
26
38
66
78
105
79
49
37
25
37
67
77
104
80
48
36
24
36
68
76
103
81
47
35
23
35
69
75
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
95
33
21
65
96
32
20
64
95
31
19
63
94
30
18
62
93
29
17
61
92
28
16
60
91
27
15
59
90
26
14
58
89
25
13
57
88
24
12
56
87
23
11
55
86
85
84
83
82
81
80
79
78
77
76
75
74
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
108
94
74
62
82
96
109
93
73
61
81
97
110
92
72
60
80
98
111
91
71
59
79
97
112
90
70
58
78
96
113
89
69
57
77
95
114
88
68
56
76
94
115
87
67
55
75
93
116
86
66
54
74
92
117
85
65
53
73
91
118
84
64
52
72
90
119
83
63
51
50
49
48
47
46
45
44
43
42
41
40
39
51
71
89
118
82
62
50
38
50
70
88
117
81
61
49
37
49
69
87
116
80
60
48
36
48
68
86
115
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
35
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
85
114
72
58
46
34
46
60
84
113
73
57
45
33
45
61
83
112
74
56
44
32
44
62
82
111
75
55
43
31
43
63
81
110
76
54
42
30
42
64
80
109
77
53
41
29
41
65
79
108
78
52
40
28
40
66
78
107
79
51
39
27
39
67
77
106
80
50
38
26
38
68
76
105
81
49
37
25
37
69
75
104
82
48
36
24
36
70
74
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
73
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
96
34
22
64
97
33
21
63
96
32
20
62
95
31
19
61
94
30
18
60
93
29
17
59
92
28
16
58
91
27
15
57
90
26
14
56
89
25
13
55
88
24
12
54
87
86
85
84
83
82
81
80
79
78
77
76
75
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
109
95
75
63
83
97
110
94
74
62
82
98
111
93
73
61
81
97
112
92
72
60
80
96
113
91
71
59
79
95
114
90
70
58
78
94
115
89
69
57
77
93
116
88
68
56
76
92
117
87
67
55
75
91
118
86
66
54
74
90
119
85
65
53
73
89
120
84
64
52
51
50
49
48
47
46
45
44
43
42
41
40
52
72
88
119
83
63
51
39
51
71
87
118
82
62
50
38
50
70
86
117
81
61
49
37
49
69
85
116
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
36
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
84
115
73
59
47
35
47
61
83
114
74
58
46
34
46
62
82
113
75
57
45
33
45
63
81
112
76
56
44
32
44
64
80
111
77
55
43
31
43
65
79
110
78
54
42
30
42
66
78
109
79
53
41
29
41
67
77
108
80
52
40
28
40
68
76
107
81
51
39
27
39
69
75
106
82
50
38
26
38
70
74
105
83
49
37
25
37
71
73
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
24
25
26
27
28
29
30
31
32
33
34
35
36
72
73
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
97
35
23
63
98
34
22
62
97
33
21
61
96
32
20
60
95
31
19
59
94
30
18
58
93
29
17
57
92
28
16
56
91
27
15
55
90
26
14
54
89
25
13
53
88
87
86
85
84
83
82
81
80
79
78
77
76
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
100
112
113
75
71
59
99
111
114
74
70
58
98
110
113
73
69
57
97
109
112
72
68
56
96
108
111
71
67
55
95
107
110
70
66
54
94
106
109
69
65
53
93
105
108
68
64
52
92
104
107
67
63
51
91
103
106
66
62
50
90
102
105
65
61
49
89
101
104
92
91
90
89
88
87
86
85
84
83
82
81
80
64
60
48
88
100
103
91
79
63
59
47
87
99
102
90
78
62
58
46
86
98
101
89
77
61
57
45
85
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
100
88
76
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
44
84
88
99
87
75
61
47
43
83
87
98
86
74
62
46
42
82
86
97
85
73
63
45
41
81
85
96
84
72
64
44
40
80
84
95
83
71
65
43
39
79
83
94
82
70
66
42
38
78
82
93
81
69
67
41
37
77
81
92
80
68
68
40
36
76
80
91
79
67
69
39
35
75
79
90
78
66
70
38
34
74
78
89
77
65
71
37
33
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
64
75
63
23
63
74
62
22
62
73
61
21
61
72
60
20
60
71
59
19
59
70
58
18
58
69
57
17
57
68
56
16
56
67
55
15
55
66
54
14
54
65
53
13
53
54
55
56
57
58
59
60
61
62
63
64
65
76
75
74
73
72
71
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
40
0
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
99
111
112
74
70
58
98
110
113
73
69
57
97
109
113
72
68
56
96
108
112
71
67
55
95
107
111
70
66
54
94
106
110
69
65
53
93
105
109
68
64
52
92
104
108
67
63
51
91
103
107
66
62
50
90
102
106
65
61
49
89
101
105
64
60
48
88
100
104
93
92
91
90
89
88
87
86
85
84
83
82
81
63
59
47
87
99
103
92
80
62
58
46
86
98
102
91
79
61
57
45
85
97
101
90
78
60
56
44
84
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
89
77
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
43
83
87
100
88
76
60
46
42
82
86
99
87
75
61
45
41
81
85
98
86
74
62
44
40
80
84
97
85
73
63
43
39
79
83
96
84
72
64
42
38
78
82
95
83
71
65
41
37
77
81
94
82
70
66
40
36
76
80
93
81
69
67
39
35
75
79
92
80
68
68
38
34
74
78
91
79
67
69
37
33
73
77
90
78
66
70
36
32
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
63
76
64
22
62
75
63
21
61
74
62
20
60
73
61
19
59
72
60
18
58
71
59
17
57
70
58
16
56
69
57
15
55
68
56
14
54
67
55
13
53
66
54
12
52
53
54
55
56
57
58
59
60
61
62
63
64
77
76
75
74
73
72
71
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
1
0
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
98
110
111
73
69
57
97
109
112
72
68
56
96
108
112
71
67
55
95
107
111
70
66
54
94
106
110
69
65
53
93
105
109
68
64
52
92
104
108
67
63
51
91
103
107
66
62
50
90
102
106
65
61
49
89
101
105
64
60
48
88
100
104
63
59
47
87
99
103
94
93
92
91
90
89
88
87
86
85
84
83
82
62
58
46
86
98
102
93
81
61
57
45
85
97
101
92
80
60
56
44
84
96
100
91
79
59
55
43
83
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
90
78
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
42
82
86
100
89
77
59
45
41
81
85
100
88
76
60
44
40
80
84
99
87
75
61
43
39
79
83
98
86
74
62
42
38
78
82
97
85
73
63
41
37
77
81
96
84
72
64
40
36
76
80
95
83
71
65
39
35
75
79
94
82
70
66
38
34
74
78
93
81
69
67
37
33
73
77
92
80
68
68
36
32
72
76
91
79
67
69
35
31
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
62
77
65
21
61
76
64
20
60
75
63
19
59
74
62
18
58
73
61
17
57
72
60
16
56
71
59
15
55
70
58
14
54
69
57
13
53
68
56
12
52
67
55
11
51
52
53
54
55
56
57
58
59
60
61
62
63
78
77
76
75
74
73
72
71
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
2
1
0
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
97
109
110
72
68
56
96
108
111
71
67
55
95
107
111
70
66
54
94
106
110
69
65
53
93
105
109
68
64
52
92
104
108
67
63
51
91
103
107
66
62
50
90
102
106
65
61
49
89
101
105
64
60
48
88
100
104
63
59
47
87
99
103
62
58
46
86
98
102
95
94
93
92
91
90
89
88
87
86
85
84
83
61
57
45
85
97
101
94
82
60
56
44
84
96
100
93
81
59
55
43
83
95
99
92
80
58
54
42
82
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
91
79
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
41
81
85
99
90
78
58
44
40
80
84
100
89
77
59
43
39
79
83
100
88
76
60
42
38
78
82
99
87
75
61
41
37
77
81
98
86
74
62
40
36
76
80
97
85
73
63
39
35
75
79
96
84
72
64
38
34
74
78
95
83
71
65
37
33
73
77
94
82
70
66
36
32
72
76
93
81
69
67
35
31
71
75
92
80
68
68
34
30
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
61
78
66
20
60
77
65
19
59
76
64
18
58
75
63
17
57
74
62
16
56
73
61
15
55
72
60
14
54
71
59
13
53
70
58
12
52
69
57
11
51
68
56
10
50
51
52
53
54
55
56
57
58
59
60
61
62
79
78
77
76
75
74
73
72
71
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
3
2
1
0
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
96
108
109
71
67
55
95
107
110
70
66
54
94
106
110
69
65
53
93
105
109
68
64
52
92
104
108
67
63
51
91
103
107
66
62
50
90
102
106
65
61
49
89
101
105
64
60
48
88
100
104
63
59
47
87
99
103
62
58
46
86
98
102
61
57
45
85
97
101
96
95
94
93
92
91
90
89
88
87
86
85
84
60
56
44
84
96
100
95
83
59
55
43
83
95
99
94
82
58
54
42
82
94
98
93
81
57
53
41
81
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
92
80
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
40
80
84
98
91
79
57
43
39
79
83
99
90
78
58
42
38
78
82
100
89
77
59
41
37
77
81
100
88
76
60
40
36
76
80
99
87
75
61
39
35
75
79
98
86
74
62
38
34
74
78
97
85
73
63
37
33
73
77
96
84
72
64
36
32
72
76
95
83
71
65
35
31
71
75
94
82
70
66
34
30
70
74
93
81
69
67
33
29
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
60
79
67
19
59
78
66
18
58
77
65
17
57
76
64
16
56
75
63
15
55
74
62
14
54
73
61
13
53
72
60
12
52
71
59
11
51
70
58
10
50
69
57
9
49
50
51
52
53
54
55
56
57
58
59
60
61
80
79
78
77
76
75
74
73
72
71
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
4
3
2
1
0
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
95
107
108
70
66
54
94
106
109
69
65
53
93
105
109
68
64
52
92
104
108
67
63
51
91
103
107
66
62
50
90
102
106
65
61
49
89
101
105
64
60
48
88
100
104
63
59
47
87
99
103
62
58
46
86
98
102
61
57
45
85
97
101
60
56
44
84
96
100
97
96
95
94
93
92
91
90
89
88
87
86
85
59
55
43
83
95
99
96
84
58
54
42
82
94
98
95
83
57
53
41
81
93
97
94
82
56
52
40
80
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
93
81
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
39
79
83
97
92
80
56
42
38
78
82
98
91
79
57
41
37
77
81
99
90
78
58
40
36
76
80
100
89
77
59
39
35
75
79
100
88
76
60
38
34
74
78
99
87
75
61
37
33
73
77
98
86
74
62
36
32
72
76
97
85
73
63
35
31
71
75
96
84
72
64
34
30
70
74
95
83
71
65
33
29
69
73
94
82
70
66
32
28
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
59
80
68
18
58
79
67
17
57
78
66
16
56
77
65
15
55
76
64
14
54
75
63
13
53
74
62
12
52
73
61
11
51
72
60
10
50
71
59
9
49
70
58
8
48
49
50
51
52
53
54
55
56
57
58
59
60
81
80
79
78
77
76
75
74
73
72
71
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
5
4
3
2
1
0
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
94
106
107
69
65
53
93
105
108
68
64
52
92
104
108
67
63
51
91
103
107
66
62
50
90
102
106
65
61
49
89
101
105
64
60
48
88
100
104
63
59
47
87
99
103
62
58
46
86
98
102
61
57
45
85
97
101
60
56
44
84
96
100
59
55
43
83
95
99
98
97
96
95
94
93
92
91
90
89
88
87
86
58
54
42
82
94
98
97
85
57
53
41
81
93
97
96
84
56
52
40
80
92
96
95
83
55
51
39
79
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
94
82
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
38
78
82
96
93
81
55
41
37
77
81
97
92
80
56
40
36
76
80
98
91
79
57
39
35
75
79
99
90
78
58
38
34
74
78
100
89
77
59
37
33
73
77
100
88
76
60
36
32
72
76
99
87
75
61
35
31
71
75
98
86
74
62
34
30
70
74
97
85
73
63
33
29
69
73
96
84
72
64
32
28
68
72
95
83
71
65
31
27
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
58
81
69
17
57
80
68
16
56
79
67
15
55
78
66
14
54
77
65
13
53
76
64
12
52
75
63
11
51
74
62
10
50
73
61
9
49
72
60
8
48
71
59
7
47
48
49
50
51
52
53
54
55
56
57
58
59
82
81
80
79
78
77
76
75
74
73
72
71
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
6
5
4
3
2
1
0
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
93
105
106
68
64
52
92
104
107
67
63
51
91
103
107
66
62
50
90
102
106
65
61
49
89
101
105
64
60
48
88
100
104
63
59
47
87
99
103
62
58
46
86
98
102
61
57
45
85
97
101
60
56
44
84
96
100
59
55
43
83
95
99
58
54
42
82
94
98
99
98
97
96
95
94
93
92
91
90
89
88
87
57
53
41
81
93
97
98
86
56
52
40
80
92
96
97
85
55
51
39
79
91
95
96
84
54
50
38
78
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
83
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
37
77
81
95
94
82
54
40
36
76
80
96
93
81
55
39
35
75
79
97
92
80
56
38
34
74
78
98
91
79
57
37
33
73
77
99
90
78
58
36
32
72
76
100
89
77
59
35
31
71
75
100
88
76
60
34
30
70
74
99
87
75
61
33
29
69
73
98
86
74
62
32
28
68
72
97
85
73
63
31
27
67
71
96
84
72
64
30
26
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
57
82
70
16
56
81
69
15
55
80
68
14
54
79
67
13
53
78
66
12
52
77
65
11
51
76
64
10
50
75
63
9
49
74
62
8
48
73
61
7
47
72
60
6
46
47
48
49
50
51
52
53
54
55
56
57
58
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
7
6
5
4
3
2
1
0
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
92
104
105
67
63
51
91
103
106
66
62
50
90
102
106
65
61
49
89
101
105
64
60
48
88
100
104
63
59
47
87
99
103
62
58
46
86
98
102
61
57
45
85
97
101
60
56
44
84
96
100
59
55
43
83
95
99
58
54
42
82
94
98
57
53
41
81
93
97
100
99
98
97
96
95
94
93
92
91
90
89
88
56
52
40
80
92
96
99
87
55
51
39
79
91
95
98
86
54
50
38
78
90
94
97
85
53
49
37
77
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
96
84
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
36
76
80
94
95
83
53
39
35
75
79
95
94
82
54
38
34
74
78
96
93
81
55
37
33
73
77
97
92
80
56
36
32
72
76
98
91
79
57
35
31
71
75
99
90
78
58
34
30
70
74
100
89
77
59
33
29
69
73
100
88
76
60
32
28
68
72
99
87
75
61
31
27
67
71
98
86
74
62
30
26
66
70
97
85
73
63
29
25
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
56
83
71
15
55
82
70
14
54
81
69
13
53
80
68
12
52
79
67
11
51
78
66
10
50
77
65
9
49
76
64
8
48
75
63
7
47
74
62
6
46
73
61
5
45
46
47
48
49
50
51
52
53
54
55
56
57
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
8
7
6
5
4
3
2
1
0
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
91
103
104
66
62
50
90
102
105
65
61
49
89
101
105
64
60
48
88
100
104
63
59
47
87
99
103
62
58
46
86
98
102
61
57
45
85
97
101
60
56
44
84
96
100
59
55
43
83
95
99
58
54
42
82
94
98
57
53
41
81
93
97
56
52
40
80
92
96
101
100
99
98
97
96
95
94
93
92
91
90
89
55
51
39
79
91
95
100
88
54
50
38
78
90
94
99
87
53
49
37
77
89
93
98
86
52
48
36
76
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
97
85
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
35
75
79
93
96
84
52
38
34
74
78
94
95
83
53
37
33
73
77
95
94
82
54
36
32
72
76
96
93
81
55
35
31
71
75
97
92
80
56
34
30
70
74
98
91
79
57
33
29
69
73
99
90
78
58
32
28
68
72
100
89
77
59
31
27
67
71
100
88
76
60
30
26
66
70
99
87
75
61
29
25
65
69
98
86
74
62
28
24
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
55
84
72
14
54
83
71
13
53
82
70
12
52
81
69
11
51
80
68
10
50
79
67
9
49
78
66
8
48
77
65
7
47
76
64
6
46
75
63
5
45
74
62
4
44
45
46
47
48
49
50
51
52
53
54
55
56
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
9
8
7
6
5
4
3
2
1
0
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
90
102
103
65
61
49
89
101
104
64
60
48
88
100
104
63
59
47
87
99
103
62
58
46
86
98
102
61
57
45
85
97
101
60
56
44
84
96
100
59
55
43
83
95
99
58
54
42
82
94
98
57
53
41
81
93
97
56
52
40
80
92
96
55
51
39
79
91
95
102
101
100
99
98
97
96
95
94
93
92
91
90
54
50
38
78
90
94
101
89
53
49
37
77
89
93
100
88
52
48
36
76
88
92
99
87
51
47
35
75
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
98
86
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
34
74
78
92
97
85
51
37
33
73
77
93
96
84
52
36
32
72
76
94
95
83
53
35
31
71
75
95
94
82
54
34
30
70
74
96
93
81
55
33
29
69
73
97
92
80
56
32
28
68
72
98
91
79
57
31
27
67
71
99
90
78
58
30
26
66
70
100
89
77
59
29
25
65
69
100
88
76
60
28
24
64
68
99
87
75
61
27
23
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
98
97
96
95
94
93
92
91
90
89
88
87
86
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
54
85
73
13
53
84
72
12
52
83
71
11
51
82
70
10
50
81
69
9
49
80
68
8
48
79
67
7
47
78
66
6
46
77
65
5
45
76
64
4
44
75
63
3
43
44
45
46
47
48
49
50
51
52
53
54
55
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
10
9
8
7
6
5
4
3
2
1
0
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
89
101
102
64
60
48
88
100
103
63
59
47
87
99
103
62
58
46
86
98
102
61
57
45
85
97
101
60
56
44
84
96
100
59
55
43
83
95
99
58
54
42
82
94
98
57
53
41
81
93
97
56
52
40
80
92
96
55
51
39
79
91
95
54
50
38
78
90
94
101
100
99
98
97
96
95
94
93
92
91
90
89
53
49
37
77
89
93
102
88
52
48
36
76
88
92
101
87
51
47
35
75
87
91
100
86
50
46
34
74
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
99
85
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
33
73
77
91
98
84
50
36
32
72
76
92
97
83
51
35
31
71
75
93
96
82
52
34
30
70
74
94
95
81
53
33
29
69
73
95
94
80
54
32
28
68
72
96
93
79
55
31
27
67
71
97
92
78
56
30
26
66
70
98
91
77
57
29
25
65
69
99
90
76
58
28
24
64
68
100
89
75
59
27
23
63
67
100
88
74
60
26
22
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
99
98
97
96
95
94
93
92
91
90
89
88
87
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
53
86
74
12
52
85
73
11
51
84
72
10
50
83
71
9
49
82
70
8
48
81
69
7
47
80
68
6
46
79
67
5
45
78
66
4
44
77
65
3
43
76
64
2
42
43
44
45
46
47
48
49
50
51
52
53
54
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
11
10
9
8
7
6
5
4
3
2
1
0
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
88
100
101
63
59
47
87
99
102
62
58
46
86
98
102
61
57
45
85
97
101
60
56
44
84
96
100
59
55
43
83
95
99
58
54
42
82
94
98
57
53
41
81
93
97
56
52
40
80
92
96
55
51
39
79
91
95
54
50
38
78
90
94
53
49
37
77
89
93
100
99
98
97
96
95
94
93
92
91
90
89
88
52
48
36
76
88
92
101
87
51
47
35
75
87
91
102
86
50
46
34
74
86
90
101
85
49
45
33
73
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
100
84
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
32
72
76
90
99
83
49
35
31
71
75
91
98
82
50
34
30
70
74
92
97
81
51
33
29
69
73
93
96
80
52
32
28
68
72
94
95
79
53
31
27
67
71
95
94
78
54
30
26
66
70
96
93
77
55
29
25
65
69
97
92
76
56
28
24
64
68
98
91
75
57
27
23
63
67
99
90
74
58
26
22
62
66
100
89
73
59
25
21
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
100
99
98
97
96
95
94
93
92
91
90
89
88
72
71
70
69
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
52
87
73
11
51
86
74
10
50
85
73
9
49
84
72
8
48
83
71
7
47
82
70
6
46
81
69
5
45
80
68
4
44
79
67
3
43
78
66
2
42
77
65
1
41
42
43
44
45
46
47
48
49
50
51
52
53
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
12
11
10
9
8
7
6
5
4
3
2
1
0
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
48
60
64
102
99
87
47
59
63
102
98
86
46
58
62
101
97
85
45
57
61
100
96
84
44
56
60
99
95
83
43
55
59
98
94
82
42
54
58
97
93
81
41
53
57
96
92
80
40
52
56
95
91
79
39
51
55
94
90
78
38
50
54
93
89
77
37
49
53
89
90
91
92
93
94
95
96
97
98
99
100
101
92
88
76
36
48
52
88
102
91
87
75
35
47
51
87
103
90
86
74
34
46
50
86
102
89
85
73
33
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
85
101
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
72
32
36
50
84
100
89
75
71
31
35
51
83
99
90
74
70
30
34
52
82
98
91
73
69
29
33
53
81
97
92
72
68
28
32
54
80
96
93
71
67
27
31
55
79
95
94
70
66
26
30
56
78
94
95
69
65
25
29
57
77
93
96
68
64
24
28
58
76
92
97
67
63
23
27
59
75
91
98
66
62
22
26
60
74
90
99
65
61
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
61
62
63
64
65
66
67
68
69
70
71
72
73
89
90
91
92
93
94
95
96
97
98
99
100
100
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
12
74
88
51
11
75
87
50
10
74
86
49
9
73
85
48
8
72
84
47
7
71
83
46
6
70
82
45
5
69
81
44
4
68
80
43
3
67
79
42
2
66
78
41
1
2
3
4
5
6
7
8
9
10
11
12
13
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
52
51
50
49
48
47
46
45
44
43
42
41
40
0
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
60
72
76
114
113
101
59
71
75
113
112
100
58
70
74
112
111
99
57
69
73
111
110
98
56
68
72
110
109
97
55
67
71
109
108
96
54
66
70
108
107
95
53
65
69
107
106
94
52
64
68
106
105
93
51
63
67
105
104
92
50
62
66
104
103
91
49
61
65
79
80
81
82
83
84
85
86
87
88
89
90
91
103
102
90
48
60
64
78
90
102
101
89
47
59
63
77
89
101
100
88
46
58
62
76
88
100
99
87
45
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
75
87
99
100
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
86
44
48
62
74
86
98
89
85
43
47
63
73
85
97
88
84
42
46
64
72
84
96
87
83
41
45
65
71
83
95
86
82
40
44
66
70
82
94
85
81
39
43
67
69
81
93
84
80
38
42
68
68
80
92
83
79
37
41
69
67
79
91
82
78
36
40
70
66
78
90
81
77
35
39
71
65
77
89
80
76
34
38
72
64
76
88
79
75
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
24
62
74
65
23
61
73
64
22
60
72
63
21
59
71
62
20
58
70
61
19
57
69
60
18
56
68
59
17
55
67
58
16
54
66
57
15
53
65
56
14
52
64
55
13
12
11
10
9
8
7
6
5
4
3
2
1
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
66
65
64
63
62
61
60
59
58
57
56
55
54
14
0
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
98
84
64
76
96
110
97
83
63
75
95
111
96
82
62
74
94
112
95
81
61
73
93
113
94
80
60
72
92
114
93
79
59
71
91
115
92
78
58
70
90
116
91
77
57
69
89
117
90
76
56
68
88
118
89
75
55
67
87
119
88
74
54
66
86
120
87
73
53
41
42
43
44
45
46
47
48
49
50
51
52
53
65
85
121
86
72
52
40
52
64
84
120
85
71
51
39
51
63
83
119
84
70
50
38
50
62
82
118
83
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
37
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
117
82
62
48
36
48
60
74
116
81
63
47
35
47
59
75
115
80
64
46
34
46
58
76
114
79
65
45
33
45
57
77
113
78
66
44
32
44
56
78
112
77
67
43
31
43
55
79
111
76
68
42
30
42
54
80
110
75
69
41
29
41
53
81
109
74
70
40
28
40
52
82
108
73
71
39
27
39
51
83
107
72
72
38
26
38
50
84
106
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
62
24
36
98
61
23
35
99
60
22
34
98
59
21
33
97
58
20
32
96
57
19
31
95
56
18
30
94
55
17
29
93
54
16
28
92
53
15
27
91
52
14
26
90
51
50
49
48
47
46
45
44
43
42
41
40
39
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
77
78
79
80
81
82
83
84
85
86
87
88
89
52
38
0
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
110
96
76
64
84
98
111
95
75
63
83
97
112
94
74
62
82
96
113
93
73
61
81
95
114
92
72
60
80
94
115
91
71
59
79
93
116
90
70
58
78
92
117
89
69
57
77
91
118
88
68
56
76
90
119
87
67
55
75
89
120
86
66
54
74
88
121
85
65
53
52
51
50
49
48
47
46
45
44
43
42
41
53
73
87
120
84
64
52
40
52
72
86
119
83
63
51
39
51
71
85
118
82
62
50
38
50
70
84
117
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
37
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
83
116
74
60
48
36
48
62
82
115
75
59
47
35
47
63
81
114
76
58
46
34
46
64
80
113
77
57
45
33
45
65
79
112
78
56
44
32
44
66
78
111
79
55
43
31
43
67
77
110
80
54
42
30
42
68
76
109
81
53
41
29
41
69
75
108
82
52
40
28
40
70
74
107
83
51
39
27
39
71
73
106
84
50
38
26
38
72
72
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
98
36
24
62
99
35
23
61
98
34
22
60
97
33
21
59
96
32
20
58
95
31
19
57
94
30
18
56
93
29
17
55
92
28
16
54
91
27
15
53
90
26
14
52
89
88
87
86
85
84
83
82
81
80
79
78
77
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
39
40
41
42
43
44
45
46
47
48
49
50
51
90
76
38
0
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
101
113
114
76
72
60
100
112
113
75
71
59
99
111
112
74
70
58
98
110
111
73
69
57
97
109
110
72
68
56
96
108
109
71
67
55
95
107
108
70
66
54
94
106
107
69
65
53
93
105
106
68
64
52
92
104
105
67
63
51
91
103
104
66
62
50
90
102
103
91
90
89
88
87
86
85
84
83
82
81
80
79
65
61
49
89
101
102
90
78
64
60
48
88
100
101
89
77
63
59
47
87
99
100
88
76
62
58
46
86
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
100
99
87
75
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
45
85
89
98
86
74
62
48
44
84
88
97
85
73
63
47
43
83
87
96
84
72
64
46
42
82
86
95
83
71
65
45
41
81
85
94
82
70
66
44
40
80
84
93
81
69
67
43
39
79
83
92
80
68
68
42
38
78
82
91
79
67
69
41
37
77
81
90
78
66
70
40
36
76
80
89
77
65
71
39
35
75
79
88
76
64
72
38
34
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
65
74
62
24
64
73
61
23
63
72
60
22
62
71
59
21
61
70
58
20
60
69
57
19
59
68
56
18
58
67
55
17
57
66
54
16
56
65
53
15
55
64
52
14
54
55
56
57
58
59
60
61
62
63
64
65
66
75
74
73
72
71
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
40
39
1
2
3
4
5
6
7
8
9
10
11
12
13
53
67
76
38
0
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
87
99
102
64
60
48
86
98
102
63
59
47
85
97
101
62
58
46
84
96
100
61
57
45
83
95
99
60
56
44
82
94
98
59
55
43
81
93
97
58
54
42
80
92
96
57
53
41
79
91
95
56
52
40
78
90
94
55
51
39
77
89
93
54
50
38
76
88
92
101
100
99
98
97
96
95
94
93
92
91
90
89
53
49
37
75
87
91
102
88
52
48
36
74
86
90
103
87
51
47
35
73
85
89
102
86
50
46
34
72
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
101
85
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
33
71
75
89
100
84
50
36
32
70
74
90
99
83
51
35
31
69
73
91
98
82
52
34
30
68
72
92
97
81
53
33
29
67
71
93
96
80
54
32
28
66
70
94
95
79
55
31
27
65
69
95
94
78
56
30
26
64
68
96
93
77
57
29
25
63
67
97
92
76
58
28
24
62
66
98
91
75
59
27
23
61
65
99
90
74
60
26
22
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
100
100
99
98
97
96
95
94
93
92
91
90
89
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
51
88
74
12
50
87
75
11
49
86
74
10
48
85
73
9
47
84
72
8
46
83
71
7
45
82
70
6
44
81
69
5
43
80
68
4
42
79
67
3
41
78
66
2
40
41
42
43
44
45
46
47
48
49
50
51
52
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
13
12
11
10
9
8
7
6
5
4
3
2
1
39
53
90
52
14
0
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
49
61
65
102
98
86
48
60
64
101
97
85
47
59
63
100
96
84
46
58
62
99
95
83
45
57
61
98
94
82
44
56
60
97
93
81
43
55
59
96
92
80
42
54
58
95
91
79
41
53
57
94
90
78
40
52
56
93
89
77
39
51
55
92
88
76
38
50
54
90
91
92
93
94
95
96
97
98
99
100
101
102
91
87
75
37
49
53
89
103
90
86
74
36
48
52
88
104
89
85
73
35
47
51
87
103
88
84
72
34
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
86
102
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
71
33
37
51
85
101
88
74
70
32
36
52
84
100
89
73
69
31
35
53
83
99
90
72
68
30
34
54
82
98
91
71
67
29
33
55
81
97
92
70
66
28
32
56
80
96
93
69
65
27
31
57
79
95
94
68
64
26
30
58
78
94
95
67
63
25
29
59
77
93
96
66
62
24
28
60
76
92
97
65
61
23
27
61
75
91
98
64
60
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
62
63
64
65
66
67
68
69
70
71
72
73
74
90
91
92
93
94
95
96
97
98
99
100
100
99
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
13
75
89
50
12
76
88
49
11
75
87
48
10
74
86
47
9
73
85
46
8
72
84
45
7
71
83
44
6
70
82
43
5
69
81
42
4
68
80
41
3
67
79
40
2
3
4
5
6
7
8
9
10
11
12
13
14
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
51
50
49
48
47
46
45
44
43
42
41
40
39
1
15
53
90
52
38
0
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
61
73
77
113
114
102
60
72
76
112
113
101
59
71
75
111
112
100
58
70
74
110
111
99
57
69
73
109
110
98
56
68
72
108
109
97
55
67
71
107
108
96
54
66
70
106
107
95
53
65
69
105
106
94
52
64
68
104
105
93
51
63
67
103
104
92
50
62
66
78
79
80
81
82
83
84
85
86
87
88
89
90
102
103
91
49
61
65
77
89
101
102
90
48
60
64
76
88
100
101
89
47
59
63
75
87
99
100
88
46
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
74
86
98
99
100
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
87
45
49
63
73
85
97
90
86
44
48
64
72
84
96
89
85
43
47
65
71
83
95
88
84
42
46
66
70
82
94
87
83
41
45
67
69
81
93
86
82
40
44
68
68
80
92
85
81
39
43
69
67
79
91
84
80
38
42
70
66
78
90
83
79
37
41
71
65
77
89
82
78
36
40
72
64
76
88
81
77
35
39
73
63
75
87
80
76
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
25
61
73
66
24
60
72
65
23
59
71
64
22
58
70
63
21
57
69
62
20
56
68
61
19
55
67
60
18
54
66
59
17
53
65
58
16
52
64
57
15
51
63
56
14
13
12
11
10
9
8
7
6
5
4
3
2
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
67
66
65
64
63
62
61
60
59
58
57
56
55
15
1
37
75
68
54
16
0
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
97
85
65
77
97
111
96
84
64
76
96
112
95
83
63
75
95
113
94
82
62
74
94
114
93
81
61
73
93
115
92
80
60
72
92
116
91
79
59
71
91
117
90
78
58
70
90
118
89
77
57
69
89
119
88
76
56
68
88
120
87
75
55
67
87
121
86
74
54
42
43
44
45
46
47
48
49
50
51
52
53
54
66
86
122
85
73
53
41
53
65
85
121
84
72
52
40
52
64
84
120
83
71
51
39
51
63
83
119
82
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
38
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
118
81
63
49
37
49
61
75
117
80
64
48
36
48
60
76
116
79
65
47
35
47
59
77
115
78
66
46
34
46
58
78
114
77
67
45
33
45
57
79
113
76
68
44
32
44
56
80
112
75
69
43
31
43
55
81
111
74
70
42
30
42
54
82
110
73
71
41
29
41
53
83
109
72
72
40
28
40
52
84
108
71
73
39
27
39
51
85
107
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
38
37
36
35
34
33
32
31
30
29
28
27
26
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
61
25
37
99
60
24
36
100
59
23
35
99
58
22
34
98
57
21
33
97
56
20
32
96
55
19
31
95
54
18
30
94
53
17
29
93
52
16
28
92
51
15
27
91
50
49
48
47
46
45
44
43
42
41
40
39
38
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
78
79
80
81
82
83
84
85
86
87
88
89
90
51
37
1
39
77
90
52
36
0
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
111
97
77
65
85
97
112
96
76
64
84
96
113
95
75
63
83
95
114
94
74
62
82
94
115
93
73
61
81
93
116
92
72
60
80
92
117
91
71
59
79
91
118
90
70
58
78
90
119
89
69
57
77
89
120
88
68
56
76
88
121
87
67
55
75
87
122
86
66
54
53
52
51
50
49
48
47
46
45
44
43
42
54
74
86
121
85
65
53
41
53
73
85
120
84
64
52
40
52
72
84
119
83
63
51
39
51
71
83
118
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
38
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
82
117
75
61
49
37
49
63
81
116
76
60
48
36
48
64
80
115
77
59
47
35
47
65
79
114
78
58
46
34
46
66
78
113
79
57
45
33
45
67
77
112
80
56
44
32
44
68
76
111
81
55
43
31
43
69
75
110
82
54
42
30
42
70
74
109
83
53
41
29
41
71
73
108
84
52
40
28
40
72
72
107
85
51
39
27
39
73
71
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
26
27
28
29
30
31
32
33
34
35
36
37
38
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
99
37
25
61
100
36
24
60
99
35
23
59
98
34
22
58
97
33
21
57
96
32
20
56
95
31
19
55
94
30
18
54
93
29
17
53
92
28
16
52
91
27
15
51
90
89
88
87
86
85
84
83
82
81
80
79
78
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
38
39
40
41
42
43
44
45
46
47
48
49
50
90
77
39
1
37
51
89
76
40
0
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
102
114
113
77
73
61
101
113
112
76
72
60
100
112
111
75
71
59
99
111
110
74
70
58
98
110
109
73
69
57
97
109
108
72
68
56
96
108
107
71
67
55
95
107
106
70
66
54
94
106
105
69
65
53
93
105
104
68
64
52
92
104
103
67
63
51
91
103
102
90
89
88
87
86
85
84
83
82
81
80
79
78
66
62
50
90
102
101
89
77
65
61
49
89
101
100
88
76
64
60
48
88
100
99
87
75
63
59
47
87
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
100
99
98
86
74
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
46
86
90
97
85
73
63
49
45
85
89
96
84
72
64
48
44
84
88
95
83
71
65
47
43
83
87
94
82
70
66
46
42
82
86
93
81
69
67
45
41
81
85
92
80
68
68
44
40
80
84
91
79
67
69
43
39
79
83
90
78
66
70
42
38
78
82
89
77
65
71
41
37
77
81
88
76
64
72
40
36
76
80
87
75
63
73
39
35
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
66
73
61
25
65
72
60
24
64
71
59
23
63
70
58
22
62
69
57
21
61
68
56
20
60
67
55
19
59
66
54
18
58
65
53
17
57
64
52
16
56
63
51
15
55
56
57
58
59
60
61
62
63
64
65
66
67
74
73
72
71
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
40
39
38
2
3
4
5
6
7
8
9
10
11
12
13
14
54
68
75
37
1
15
53
69
76
36
0
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
86
98
102
65
61
49
85
97
101
64
60
48
84
96
100
63
59
47
83
95
99
62
58
46
82
94
98
61
57
45
81
93
97
60
56
44
80
92
96
59
55
43
79
91
95
58
54
42
78
90
94
57
53
41
77
89
93
56
52
40
76
88
92
55
51
39
75
87
91
102
101
100
99
98
97
96
95
94
93
92
91
90
54
50
38
74
86
90
103
89
53
49
37
73
85
89
104
88
52
48
36
72
84
88
103
87
51
47
35
71
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
102
86
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
34
70
74
88
101
85
51
37
33
69
73
89
100
84
52
36
32
68
72
90
99
83
53
35
31
67
71
91
98
82
54
34
30
66
70
92
97
81
55
33
29
65
69
93
96
80
56
32
28
64
68
94
95
79
57
31
27
63
67
95
94
78
58
30
26
62
66
96
93
77
59
29
25
61
65
97
92
76
60
28
24
60
64
98
91
75
61
27
23
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
99
100
100
99
98
97
96
95
94
93
92
91
90
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
50
89
75
13
49
88
76
12
48
87
75
11
47
86
74
10
46
85
73
9
45
84
72
8
44
83
71
7
43
82
70
6
42
81
69
5
41
80
68
4
40
79
67
3
39
40
41
42
43
44
45
46
47
48
49
50
51
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
14
13
12
11
10
9
8
7
6
5
4
3
2
38
52
90
53
15
1
37
53
89
52
16
0
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
50
62
66
101
97
85
49
61
65
100
96
84
48
60
64
99
95
83
47
59
63
98
94
82
46
58
62
97
93
81
45
57
61
96
92
80
44
56
60
95
91
79
43
55
59
94
90
78
42
54
58
93
89
77
41
53
57
92
88
76
40
52
56
91
87
75
39
51
55
91
92
93
94
95
96
97
98
99
100
101
102
103
90
86
74
38
50
54
90
104
89
85
73
37
49
53
89
105
88
84
72
36
48
52
88
104
87
83
71
35
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
87
103
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
70
34
38
52
86
102
87
73
69
33
37
53
85
101
88
72
68
32
36
54
84
100
89
71
67
31
35
55
83
99
90
70
66
30
34
56
82
98
91
69
65
29
33
57
81
97
92
68
64
28
32
58
80
96
93
67
63
27
31
59
79
95
94
66
62
26
30
60
78
94
95
65
61
25
29
61
77
93
96
64
60
24
28
62
76
92
97
63
59
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
63
64
65
66
67
68
69
70
71
72
73
74
75
91
92
93
94
95
96
97
98
99
100
100
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
14
76
90
49
13
77
89
48
12
76
88
47
11
75
87
46
10
74
86
45
9
73
85
44
8
72
84
43
7
71
83
42
6
70
82
41
5
69
81
40
4
68
80
39
3
4
5
6
7
8
9
10
11
12
13
14
15
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
50
49
48
47
46
45
44
43
42
41
40
39
38
2
16
54
89
51
37
1
17
53
88
52
36
0
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
62
74
78
112
115
103
61
73
77
111
114
102
60
72
76
110
113
101
59
71
75
109
112
100
58
70
74
108
111
99
57
69
73
107
110
98
56
68
72
106
109
97
55
67
71
105
108
96
54
66
70
104
107
95
53
65
69
103
106
94
52
64
68
102
105
93
51
63
67
77
78
79
80
81
82
83
84
85
86
87
88
89
101
104
92
50
62
66
76
88
100
103
91
49
61
65
75
87
99
102
90
48
60
64
74
86
98
101
89
47
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
73
85
97
98
99
100
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
88
46
50
64
72
84
96
91
87
45
49
65
71
83
95
90
86
44
48
66
70
82
94
89
85
43
47
67
69
81
93
88
84
42
46
68
68
80
92
87
83
41
45
69
67
79
91
86
82
40
44
70
66
78
90
85
81
39
43
71
65
77
89
84
80
38
42
72
64
76
88
83
79
37
41
73
63
75
87
82
78
36
40
74
62
74
86
81
77
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
26
60
72
67
25
59
71
66
24
58
70
65
23
57
69
64
22
56
68
63
21
55
67
62
20
54
66
61
19
53
65
60
18
52
64
59
17
51
63
58
16
50
62
57
15
14
13
12
11
10
9
8
7
6
5
4
3
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
68
67
66
65
64
63
62
61
60
59
58
57
56
16
2
36
74
69
55
17
1
35
75
70
54
18
0
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
96
86
66
78
98
112
95
85
65
77
97
113
94
84
64
76
96
114
93
83
63
75
95
115
92
82
62
74
94
116
91
81
61
73
93
117
90
80
60
72
92
118
89
79
59
71
91
119
88
78
58
70
90
120
87
77
57
69
89
121
86
76
56
68
88
122
85
75
55
43
44
45
46
47
48
49
50
51
52
53
54
55
67
87
123
84
74
54
42
54
66
86
122
83
73
53
41
53
65
85
121
82
72
52
40
52
64
84
120
81
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
119
80
64
50
38
50
62
76
118
79
65
49
37
49
61
77
117
78
66
48
36
48
60
78
116
77
67
47
35
47
59
79
115
76
68
46
34
46
58
80
114
75
69
45
33
45
57
81
113
74
70
44
32
44
56
82
112
73
71
43
31
43
55
83
111
72
72
42
30
42
54
84
110
71
73
41
29
41
53
85
109
70
74
40
28
40
52
86
108
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
39
38
37
36
35
34
33
32
31
30
29
28
27
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
60
26
38
100
59
25
37
100
58
24
36
99
57
23
35
98
56
22
34
97
55
21
33
96
54
20
32
95
53
19
31
94
52
18
30
93
51
17
29
92
50
16
28
91
49
48
47
46
45
44
43
42
41
40
39
38
37
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
79
80
81
82
83
84
85
86
87
88
89
90
90
50
36
2
40
78
89
51
35
1
41
77
88
52
34
0
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
112
98
78
66
86
96
113
97
77
65
85
95
114
96
76
64
84
94
115
95
75
63
83
93
116
94
74
62
82
92
117
93
73
61
81
91
118
92
72
60
80
90
119
91
71
59
79
89
120
90
70
58
78
88
121
89
69
57
77
87
122
88
68
56
76
86
123
87
67
55
54
53
52
51
50
49
48
47
46
45
44
43
55
75
85
122
86
66
54
42
54
74
84
121
85
65
53
41
53
73
83
120
84
64
52
40
52
72
82
119
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
81
118
76
62
50
38
50
64
80
117
77
61
49
37
49
65
79
116
78
60
48
36
48
66
78
115
79
59
47
35
47
67
77
114
80
58
46
34
46
68
76
113
81
57
45
33
45
69
75
112
82
56
44
32
44
70
74
111
83
55
43
31
43
71
73
110
84
54
42
30
42
72
72
109
85
53
41
29
41
73
71
108
86
52
40
28
40
74
70
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
27
28
29
30
31
32
33
34
35
36
37
38
39
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
100
38
26
60
100
37
25
59
99
36
24
58
98
35
23
57
97
34
22
56
96
33
21
55
95
32
20
54
94
31
19
53
93
30
18
52
92
29
17
51
91
28
16
50
90
90
89
88
87
86
85
84
83
82
81
80
79
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
37
38
39
40
41
42
43
44
45
46
47
48
49
89
78
40
2
36
50
88
77
41
1
35
51
87
76
42
0
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
103
115
112
78
74
62
102
114
111
77
73
61
101
113
110
76
72
60
100
112
109
75
71
59
99
111
108
74
70
58
98
110
107
73
69
57
97
109
106
72
68
56
96
108
105
71
67
55
95
107
104
70
66
54
94
106
103
69
65
53
93
105
102
68
64
52
92
104
101
89
88
87
86
85
84
83
82
81
80
79
78
77
67
63
51
91
103
100
88
76
66
62
50
90
102
99
87
75
65
61
49
89
101
98
86
74
64
60
48
88
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
100
99
98
97
85
73
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
47
87
91
96
84
72
64
50
46
86
90
95
83
71
65
49
45
85
89
94
82
70
66
48
44
84
88
93
81
69
67
47
43
83
87
92
80
68
68
46
42
82
86
91
79
67
69
45
41
81
85
90
78
66
70
44
40
80
84
89
77
65
71
43
39
79
83
88
76
64
72
42
38
78
82
87
75
63
73
41
37
77
81
86
74
62
74
40
36
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
67
72
60
26
66
71
59
25
65
70
58
24
64
69
57
23
63
68
56
22
62
67
55
21
61
66
54
20
60
65
53
19
59
64
52
18
58
63
51
17
57
62
50
16
56
57
58
59
60
61
62
63
64
65
66
67
68
73
72
71
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
40
39
38
37
3
4
5
6
7
8
9
10
11
12
13
14
15
55
69
74
36
2
16
54
70
75
35
1
17
53
71
76
34
0
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
85
97
101
66
62
50
84
96
100
65
61
49
83
95
99
64
60
48
82
94
98
63
59
47
81
93
97
62
58
46
80
92
96
61
57
45
79
91
95
60
56
44
78
90
94
59
55
43
77
89
93
58
54
42
76
88
92
57
53
41
75
87
91
56
52
40
74
86
90
103
102
101
100
99
98
97
96
95
94
93
92
91
55
51
39
73
85
89
104
90
54
50
38
72
84
88
105
89
53
49
37
71
83
87
104
88
52
48
36
70
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
103
87
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
35
69
73
87
102
86
52
38
34
68
72
88
101
85
53
37
33
67
71
89
100
84
54
36
32
66
70
90
99
83
55
35
31
65
69
91
98
82
56
34
30
64
68
92
97
81
57
33
29
63
67
93
96
80
58
32
28
62
66
94
95
79
59
31
27
61
65
95
94
78
60
30
26
60
64
96
93
77
61
29
25
59
63
97
92
76
62
28
24
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
98
99
100
100
99
98
97
96
95
94
93
92
91
75
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
49
90
76
14
48
89
77
13
47
88
76
12
46
87
75
11
45
86
74
10
44
85
73
9
43
84
72
8
42
83
71
7
41
82
70
6
40
81
69
5
39
80
68
4
38
39
40
41
42
43
44
45
46
47
48
49
50
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
15
14
13
12
11
10
9
8
7
6
5
4
3
37
51
89
54
16
2
36
52
88
53
17
1
35
53
87
52
18
0
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
51
63
67
100
96
84
50
62
66
99
95
83
49
61
65
98
94
82
48
60
64
97
93
81
47
59
63
96
92
80
46
58
62
95
91
79
45
57
61
94
90
78
44
56
60
93
89
77
43
55
59
92
88
76
42
54
58
91
87
75
41
53
57
90
86
74
40
52
56
92
93
94
95
96
97
98
99
100
101
102
103
104
89
85
73
39
51
55
91
105
88
84
72
38
50
54
90
106
87
83
71
37
49
53
89
105
86
82
70
36
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
88
104
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
69
35
39
53
87
103
86
72
68
34
38
54
86
102
87
71
67
33
37
55
85
101
88
70
66
32
36
56
84
100
89
69
65
31
35
57
83
99
90
68
64
30
34
58
82
98
91
67
63
29
33
59
81
97
92
66
62
28
32
60
80
96
93
65
61
27
31
61
79
95
94
64
60
26
30
62
78
94
95
63
59
25
29
63
77
93
96
62
58
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
64
65
66
67
68
69
70
71
72
73
74
75
76
92
93
94
95
96
97
98
99
100
100
99
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
15
77
91
48
14
78
90
47
13
77
89
46
12
76
88
45
11
75
87
44
10
74
86
43
9
73
85
42
8
72
84
41
7
71
83
40
6
70
82
39
5
69
81
38
4
5
6
7
8
9
10
11
12
13
14
15
16
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
49
48
47
46
45
44
43
42
41
40
39
38
37
3
17
55
88
50
36
2
18
54
87
51
35
1
19
53
86
52
34
0
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
63
75
79
111
116
104
62
74
78
110
115
103
61
73
77
109
114
102
60
72
76
108
113
101
59
71
75
107
112
100
58
70
74
106
111
99
57
69
73
105
110
98
56
68
72
104
109
97
55
67
71
103
108
96
54
66
70
102
107
95
53
65
69
101
106
94
52
64
68
76
77
78
79
80
81
82
83
84
85
86
87
88
100
105
93
51
63
67
75
87
99
104
92
50
62
66
74
86
98
103
91
49
61
65
73
85
97
102
90
48
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
72
84
96
97
98
99
100
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
89
47
51
65
71
83
95
92
88
46
50
66
70
82
94
91
87
45
49
67
69
81
93
90
86
44
48
68
68
80
92
89
85
43
47
69
67
79
91
88
84
42
46
70
66
78
90
87
83
41
45
71
65
77
89
86
82
40
44
72
64
76
88
85
81
39
43
73
63
75
87
84
80
38
42
74
62
74
86
83
79
37
41
73
61
73
85
82
78
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
27
59
71
68
26
58
70
67
25
57
69
66
24
56
68
65
23
55
67
64
22
54
66
63
21
53
65
62
20
52
64
61
19
51
63
60
18
50
62
59
17
49
61
58
16
15
14
13
12
11
10
9
8
7
6
5
4
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
69
68
67
66
65
64
63
62
61
60
59
58
57
17
3
35
73
70
56
18
2
34
74
71
55
19
1
33
75
72
54
20
0
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
95
87
67
79
99
113
94
86
66
78
98
114
93
85
65
77
97
115
92
84
64
76
96
116
91
83
63
75
95
117
90
82
62
74
94
118
89
81
61
73
93
119
88
80
60
72
92
120
87
79
59
71
91
121
86
78
58
70
90
122
85
77
57
69
89
123
84
76
56
44
45
46
47
48
49
50
51
52
53
54
55
56
68
88
124
83
75
55
43
55
67
87
123
82
74
54
42
54
66
86
122
81
73
53
41
53
65
85
121
80
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
120
79
65
51
39
51
63
77
119
78
66
50
38
50
62
78
118
77
67
49
37
49
61
79
117
76
68
48
36
48
60
80
116
75
69
47
35
47
59
81
115
74
70
46
34
46
58
82
114
73
71
45
33
45
57
83
113
72
72
44
32
44
56
84
112
71
73
43
31
43
55
85
111
70
74
42
30
42
54
86
110
69
73
41
29
41
53
87
109
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
40
39
38
37
36
35
34
33
32
31
30
29
28
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
59
27
39
100
58
26
38
99
57
25
37
98
56
24
36
97
55
23
35
96
54
22
34
95
53
21
33
94
52
20
32
93
51
19
31
92
50
18
30
91
49
17
29
90
48
47
46
45
44
43
42
41
40
39
38
37
36
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
80
81
82
83
84
85
86
87
88
89
90
90
89
49
35
3
41
79
88
50
34
2
42
78
87
51
33
1
43
77
86
52
32
0
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
113
99
79
67
87
95
114
98
78
66
86
94
115
97
77
65
85
93
116
96
76
64
84
92
117
95
75
63
83
91
118
94
74
62
82
90
119
93
73
61
81
89
120
92
72
60
80
88
121
91
71
59
79
87
122
90
70
58
78
86
123
89
69
57
77
85
124
88
68
56
55
54
53
52
51
50
49
48
47
46
45
44
56
76
84
123
87
67
55
43
55
75
83
122
86
66
54
42
54
74
82
121
85
65
53
41
53
73
81
120
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
40
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
80
119
77
63
51
39
51
65
79
118
78
62
50
38
50
66
78
117
79
61
49
37
49
67
77
116
80
60
48
36
48
68
76
115
81
59
47
35
47
69
75
114
82
58
46
34
46
70
74
113
83
57
45
33
45
71
73
112
84
56
44
32
44
72
72
111
85
55
43
31
43
73
71
110
86
54
42
30
42
74
70
109
87
53
41
29
41
73
69
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
28
29
30
31
32
33
34
35
36
37
38
39
40
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
100
39
27
59
99
38
26
58
98
37
25
57
97
36
24
56
96
35
23
55
95
34
22
54
94
33
21
53
93
32
20
52
92
31
19
51
91
30
18
50
90
29
17
49
89
90
90
89
88
87
86
85
84
83
82
81
80
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
36
37
38
39
40
41
42
43
44
45
46
47
48
88
79
41
3
35
49
87
78
42
2
34
50
86
77
43
1
33
51
85
76
44
0
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
104
116
111
79
75
63
103
115
110
78
74
62
102
114
109
77
73
61
101
113
108
76
72
60
100
112
107
75
71
59
99
111
106
74
70
58
98
110
105
73
69
57
97
109
104
72
68
56
96
108
103
71
67
55
95
107
102
70
66
54
94
106
101
69
65
53
93
105
100
88
87
86
85
84
83
82
81
80
79
78
77
76
68
64
52
92
104
99
87
75
67
63
51
91
103
98
86
74
66
62
50
90
102
97
85
73
65
61
49
89
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
100
99
98
97
96
84
72
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
48
88
92
95
83
71
65
51
47
87
91
94
82
70
66
50
46
86
90
93
81
69
67
49
45
85
89
92
80
68
68
48
44
84
88
91
79
67
69
47
43
83
87
90
78
66
70
46
42
82
86
89
77
65
71
45
41
81
85
88
76
64
72
44
40
80
84
87
75
63
73
43
39
79
83
86
74
62
74
42
38
78
82
85
73
61
73
41
37
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
68
71
59
27
67
70
58
26
66
69
57
25
65
68
56
24
64
67
55
23
63
66
54
22
62
65
53
21
61
64
52
20
60
63
51
19
59
62
50
18
58
61
49
17
57
58
59
60
61
62
63
64
65
66
67
68
69
72
71
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
40
39
38
37
36
4
5
6
7
8
9
10
11
12
13
14
15
16
56
70
73
35
3
17
55
71
74
34
2
18
54
72
75
33
1
19
53
73
76
32
0
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
84
96
100
67
63
51
83
95
99
66
62
50
82
94
98
65
61
49
81
93
97
64
60
48
80
92
96
63
59
47
79
91
95
62
58
46
78
90
94
61
57
45
77
89
93
60
56
44
76
88
92
59
55
43
75
87
91
58
54
42
74
86
90
57
53
41
73
85
89
104
103
102
101
100
99
98
97
96
95
94
93
92
56
52
40
72
84
88
105
91
55
51
39
71
83
87
106
90
54
50
38
70
82
86
105
89
53
49
37
69
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
104
88
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
36
68
72
86
103
87
53
39
35
67
71
87
102
86
54
38
34
66
70
88
101
85
55
37
33
65
69
89
100
84
56
36
32
64
68
90
99
83
57
35
31
63
67
91
98
82
58
34
30
62
66
92
97
81
59
33
29
61
65
93
96
80
60
32
28
60
64
94
95
79
61
31
27
59
63
95
94
78
62
30
26
58
62
96
93
77
63
29
25
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
97
98
99
100
100
99
98
97
96
95
94
93
92
76
75
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
48
91
77
15
47
90
78
14
46
89
77
13
45
88
76
12
44
87
75
11
43
86
74
10
42
85
73
9
41
84
72
8
40
83
71
7
39
82
70
6
38
81
69
5
37
38
39
40
41
42
43
44
45
46
47
48
49
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
16
15
14
13
12
11
10
9
8
7
6
5
4
36
50
88
55
17
3
35
51
87
54
18
2
34
52
86
53
19
1
33
53
85
52
20
0
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
52
64
68
99
95
83
51
63
67
98
94
82
50
62
66
97
93
81
49
61
65
96
92
80
48
60
64
95
91
79
47
59
63
94
90
78
46
58
62
93
89
77
45
57
61
92
88
76
44
56
60
91
87
75
43
55
59
90
86
74
42
54
58
89
85
73
41
53
57
93
94
95
96
97
98
99
100
101
102
103
104
105
88
84
72
40
52
56
92
106
87
83
71
39
51
55
91
107
86
82
70
38
50
54
90
106
85
81
69
37
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
89
105
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
68
36
40
54
88
104
85
71
67
35
39
55
87
103
86
70
66
34
38
56
86
102
87
69
65
33
37
57
85
101
88
68
64
32
36
58
84
100
89
67
63
31
35
59
83
99
90
66
62
30
34
60
82
98
91
65
61
29
33
61
81
97
92
64
60
28
32
62
80
96
93
63
59
27
31
63
79
95
94
62
58
26
30
64
78
94
95
61
57
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
65
66
67
68
69
70
71
72
73
74
75
76
77
93
94
95
96
97
98
99
100
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
16
78
92
47
15
79
91
46
14
78
90
45
13
77
89
44
12
76
88
43
11
75
87
42
10
74
86
41
9
73
85
40
8
72
84
39
7
71
83
38
6
70
82
37
5
6
7
8
9
10
11
12
13
14
15
16
17
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
48
47
46
45
44
43
42
41
40
39
38
37
36
4
18
56
87
49
35
3
19
55
86
50
34
2
20
54
85
51
33
1
21
53
84
52
32
0
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
64
76
80
110
117
105
63
75
79
109
116
104
62
74
78
108
115
103
61
73
77
107
114
102
60
72
76
106
113
101
59
71
75
105
112
100
58
70
74
104
111
99
57
69
73
103
110
98
56
68
72
102
109
97
55
67
71
101
108
96
54
66
70
100
107
95
53
65
69
75
76
77
78
79
80
81
82
83
84
85
86
87
99
106
94
52
64
68
74
86
98
105
93
51
63
67
73
85
97
104
92
50
62
66
72
84
96
103
91
49
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
71
83
95
96
97
98
99
100
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
90
48
52
66
70
82
94
93
89
47
51
67
69
81
93
92
88
46
50
68
68
80
92
91
87
45
49
69
67
79
91
90
86
44
48
70
66
78
90
89
85
43
47
71
65
77
89
88
84
42
46
72
64
76
88
87
83
41
45
73
63
75
87
86
82
40
44
74
62
74
86
85
81
39
43
73
61
73
85
84
80
38
42
72
60
72
84
83
79
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
28
58
70
69
27
57
69
68
26
56
68
67
25
55
67
66
24
54
66
65
23
53
65
64
22
52
64
63
21
51
63
62
20
50
62
61
19
49
61
60
18
48
60
59
17
16
15
14
13
12
11
10
9
8
7
6
5
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
58
18
4
34
72
71
57
19
3
33
73
72
56
20
2
32
74
73
55
21
1
31
75
74
54
22
0
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
94
88
68
80
100
114
93
87
67
79
99
115
92
86
66
78
98
116
91
85
65
77
97
117
90
84
64
76
96
118
89
83
63
75
95
119
88
82
62
74
94
120
87
81
61
73
93
121
86
80
60
72
92
122
85
79
59
71
91
123
84
78
58
70
90
124
83
77
57
45
46
47
48
49
50
51
52
53
54
55
56
57
69
89
124
82
76
56
44
56
68
88
123
81
75
55
43
55
67
87
122
80
74
54
42
54
66
86
121
79
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
120
78
66
52
40
52
64
78
119
77
67
51
39
51
63
79
118
76
68
50
38
50
62
80
117
75
69
49
37
49
61
81
116
74
70
48
36
48
60
82
115
73
71
47
35
47
59
83
114
72
72
46
34
46
58
84
113
71
73
45
33
45
57
85
112
70
74
44
32
44
56
86
111
69
73
43
31
43
55
87
110
68
72
42
30
42
54
88
109
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
41
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
94
95
96
97
98
99
100
100
101
102
103
104
105
106
107
108
58
28
40
99
57
27
39
98
56
26
38
97
55
25
37
96
54
24
36
95
53
23
35
94
52
22
34
93
51
21
33
92
50
20
32
91
49
19
31
90
48
18
30
89
47
46
45
44
43
42
41
40
39
38
37
36
35
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
81
82
83
84
85
86
87
88
89
90
90
89
88
48
34
4
42
80
87
49
33
3
43
79
86
50
32
2
44
78
85
51
31
1
45
77
84
52
30
0
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
114
100
80
68
88
94
115
99
79
67
87
93
116
98
78
66
86
92
117
97
77
65
85
91
118
96
76
64
84
90
119
95
75
63
83
89
120
94
74
62
82
88
121
93
73
61
81
87
122
92
72
60
80
86
123
91
71
59
79
85
124
90
70
58
78
84
124
89
69
57
56
55
54
53
52
51
50
49
48
47
46
45
57
77
83
123
88
68
56
44
56
76
82
122
87
67
55
43
55
75
81
121
86
66
54
42
54
74
80
120
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
79
119
78
64
52
40
52
66
78
118
79
63
51
39
51
67
77
117
80
62
50
38
50
68
76
116
81
61
49
37
49
69
75
115
82
60
48
36
48
70
74
114
83
59
47
35
47
71
73
113
84
58
46
34
46
72
72
112
85
57
45
33
45
73
71
111
86
56
44
32
44
74
70
110
87
55
43
31
43
73
69
109
88
54
42
30
42
72
68
108
107
106
105
104
103
102
101
100
100
99
98
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
37
38
39
40
41
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
99
40
28
58
98
39
27
57
97
38
26
56
96
37
25
55
95
36
24
54
94
35
23
53
93
34
22
52
92
33
21
51
91
32
20
50
90
31
19
49
89
30
18
48
88
89
90
90
89
88
87
86
85
84
83
82
81
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
35
36
37
38
39
40
41
42
43
44
45
46
47
87
80
42
4
34
48
86
79
43
3
33
49
85
78
44
2
32
50
84
77
45
1
31
51
83
76
46
0
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
105
117
110
80
76
64
104
116
109
79
75
63
103
115
108
78
74
62
102
114
107
77
73
61
101
113
106
76
72
60
100
112
105
75
71
59
99
111
104
74
70
58
98
110
103
73
69
57
97
109
102
72
68
56
96
108
101
71
67
55
95
107
100
70
66
54
94
106
99
87
86
85
84
83
82
81
80
79
78
77
76
75
69
65
53
93
105
98
86
74
68
64
52
92
104
97
85
73
67
63
51
91
103
96
84
72
66
62
50
90
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
100
99
98
97
96
95
83
71
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
49
89
93
94
82
70
66
52
48
88
92
93
81
69
67
51
47
87
91
92
80
68
68
50
46
86
90
91
79
67
69
49
45
85
89
90
78
66
70
48
44
84
88
89
77
65
71
47
43
83
87
88
76
64
72
46
42
82
86
87
75
63
73
45
41
81
85
86
74
62
74
44
40
80
84
85
73
61
73
43
39
79
83
84
72
60
72
42
38
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
69
70
58
28
68
69
57
27
67
68
56
26
66
67
55
25
65
66
54
24
64
65
53
23
63
64
52
22
62
63
51
21
61
62
50
20
60
61
49
19
59
60
48
18
58
59
60
61
62
63
64
65
66
67
68
69
70
71
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
40
39
38
37
36
35
5
6
7
8
9
10
11
12
13
14
15
16
17
57
71
72
34
4
18
56
72
73
33
3
19
55
73
74
32
2
20
54
74
75
31
1
21
53
75
76
30
0
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
83
95
99
68
64
52
82
94
98
67
63
51
81
93
97
66
62
50
80
92
96
65
61
49
79
91
95
64
60
48
78
90
94
63
59
47
77
89
93
62
58
46
76
88
92
61
57
45
75
87
91
60
56
44
74
86
90
59
55
43
73
85
89
58
54
42
72
84
88
105
104
103
102
101
100
99
98
97
96
95
94
93
57
53
41
71
83
87
106
92
56
52
40
70
82
86
107
91
55
51
39
69
81
85
106
90
54
50
38
68
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
105
89
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
37
67
71
85
104
88
54
40
36
66
70
86
103
87
55
39
35
65
69
87
102
86
56
38
34
64
68
88
101
85
57
37
33
63
67
89
100
84
58
36
32
62
66
90
99
83
59
35
31
61
65
91
98
82
60
34
30
60
64
92
97
81
61
33
29
59
63
93
96
80
62
32
28
58
62
94
95
79
63
31
27
57
61
95
94
78
64
30
26
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
96
97
98
99
100
100
99
98
97
96
95
94
93
77
76
75
74
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
47
92
78
16
46
91
79
15
45
90
78
14
44
89
77
13
43
88
76
12
42
87
75
11
41
86
74
10
40
85
73
9
39
84
72
8
38
83
71
7
37
82
70
6
36
37
38
39
40
41
42
43
44
45
46
47
48
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
17
16
15
14
13
12
11
10
9
8
7
6
5
35
49
87
56
18
4
34
50
86
55
19
3
33
51
85
54
20
2
32
52
84
53
21
1
31
53
83
52
22
0
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
53
65
69
98
94
82
52
64
68
97
93
81
51
63
67
96
92
80
50
62
66
95
91
79
49
61
65
94
90
78
48
60
64
93
89
77
47
59
63
92
88
76
46
58
62
91
87
75
45
57
61
90
86
74
44
56
60
89
85
73
43
55
59
88
84
72
42
54
58
94
95
96
97
98
99
100
101
102
103
104
105
106
87
83
71
41
53
57
93
107
86
82
70
40
52
56
92
108
85
81
69
39
51
55
91
107
84
80
68
38
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
90
106
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
67
37
41
55
89
105
84
70
66
36
40
56
88
104
85
69
65
35
39
57
87
103
86
68
64
34
38
58
86
102
87
67
63
33
37
59
85
101
88
66
62
32
36
60
84
100
89
65
61
31
35
61
83
99
90
64
60
30
34
62
82
98
91
63
59
29
33
63
81
97
92
62
58
28
32
64
80
96
93
61
57
27
31
65
79
95
94
60
56
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
66
67
68
69
70
71
72
73
74
75
76
77
78
94
95
96
97
98
99
100
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
17
79
93
46
16
80
92
45
15
79
91
44
14
78
90
43
13
77
89
42
12
76
88
41
11
75
87
40
10
74
86
39
9
73
85
38
8
72
84
37
7
71
83
36
6
7
8
9
10
11
12
13
14
15
16
17
18
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
47
46
45
44
43
42
41
40
39
38
37
36
35
5
19
57
86
48
34
4
20
56
85
49
33
3
21
55
84
50
32
2
22
54
83
51
31
1
23
53
82
52
30
0
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
65
77
81
109
118
106
64
76
80
108
117
105
63
75
79
107
116
104
62
74
78
106
115
103
61
73
77
105
114
102
60
72
76
104
113
101
59
71
75
103
112
100
58
70
74
102
111
99
57
69
73
101
110
98
56
68
72
100
109
97
55
67
71
99
108
96
54
66
70
74
75
76
77
78
79
80
81
82
83
84
85
86
98
107
95
53
65
69
73
85
97
106
94
52
64
68
72
84
96
105
93
51
63
67
71
83
95
104
92
50
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
70
82
94
95
96
97
98
99
100
100
99
98
97
96
95
96
97
98
99
100
101
102
103
91
49
53
67
69
81
93
94
90
48
52
68
68
80
92
93
89
47
51
69
67
79
91
92
88
46
50
70
66
78
90
91
87
45
49
71
65
77
89
90
86
44
48
72
64
76
88
89
85
43
47
73
63
75
87
88
84
42
46
74
62
74
86
87
83
41
45
73
61
73
85
86
82
40
44
72
60
72
84
85
81
39
43
71
59
71
83
84
80
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
29
57
69
70
28
56
68
69
27
55
67
68
26
54
66
67
25
53
65
66
24
52
64
65
23
51
63
64
22
50
62
63
21
49
61
62
20
48
60
61
19
47
59
60
18
17
16
15
14
13
12
11
10
9
8
7
6
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
19
5
33
71
72
58
20
4
32
72
73
57
21
3
31
73
74
56
22
2
30
74
75
55
23
1
29
75
76
54
24
0
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
93
89
69
81
101
115
92
88
68
80
100
116
91
87
67
79
99
117
90
86
66
78
98
118
89
85
65
77
97
119
88
84
64
76
96
120
87
83
63
75
95
121
86
82
62
74
94
122
85
81
61
73
93
123
84
80
60
72
92
124
83
79
59
71
91
124
82
78
58
46
47
48
49
50
51
52
53
54
55
56
57
58
70
90
123
81
77
57
45
57
69
89
122
80
76
56
44
56
68
88
121
79
75
55
43
55
67
87
120
78
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
119
77
67
53
41
53
65
79
118
76
68
52
40
52
64
80
117
75
69
51
39
51
63
81
116
74
70
50
38
50
62
82
115
73
71
49
37
49
61
83
114
72
72
48
36
48
60
84
113
71
73
47
35
47
59
85
112
70
74
46
34
46
58
86
111
69
73
45
33
45
57
87
110
68
72
44
32
44
56
88
109
67
71
43
31
43
55
89
108
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
42
41
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
94
95
96
97
98
99
100
100
99
100
101
102
103
104
105
106
107
57
29
41
98
56
28
40
97
55
27
39
96
54
26
38
95
53
25
37
94
52
24
36
93
51
23
35
92
50
22
34
91
49
21
33
90
48
20
32
89
47
19
31
88
46
45
44
43
42
41
40
39
38
37
36
35
34
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
82
83
84
85
86
87
88
89
90
90
89
88
87
47
33
5
43
81
86
48
32
4
44
80
85
49
31
3
45
79
84
50
30
2
46
78
83
51
29
1
47
77
82
52
28
0
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
115
101
81
69
89
93
116
100
80
68
88
92
117
99
79
67
87
91
118
98
78
66
86
90
119
97
77
65
85
89
120
96
76
64
84
88
121
95
75
63
83
87
122
94
74
62
82
86
123
93
73
61
81
85
124
92
72
60
80
84
124
91
71
59
79
83
123
90
70
58
57
56
55
54
53
52
51
50
49
48
47
46
58
78
82
122
89
69
57
45
57
77
81
121
88
68
56
44
56
76
80
120
87
67
55
43
55
75
79
119
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
78
118
79
65
53
41
53
67
77
117
80
64
52
40
52
68
76
116
81
63
51
39
51
69
75
115
82
62
50
38
50
70
74
114
83
61
49
37
49
71
73
113
84
60
48
36
48
72
72
112
85
59
47
35
47
73
71
111
86
58
46
34
46
74
70
110
87
57
45
33
45
73
69
109
88
56
44
32
44
72
68
108
89
55
43
31
43
71
67
107
106
105
104
103
102
101
100
99
100
100
99
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
37
38
39
40
41
42
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
98
41
29
57
97
40
28
56
96
39
27
55
95
38
26
54
94
37
25
53
93
36
24
52
92
35
23
51
91
34
22
50
90
33
21
49
89
32
20
48
88
31
19
47
87
88
89
90
90
89
88
87
86
85
84
83
82
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
34
35
36
37
38
39
40
41
42
43
44
45
46
86
81
43
5
33
47
85
80
44
4
32
48
84
79
45
3
31
49
83
78
46
2
30
50
82
77
47
1
29
51
81
76
48
0
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
106
118
109
81
77
65
105
117
108
80
76
64
104
116
107
79
75
63
103
115
106
78
74
62
102
114
105
77
73
61
101
113
104
76
72
60
100
112
103
75
71
59
99
111
102
74
70
58
98
110
101
73
69
57
97
109
100
72
68
56
96
108
99
71
67
55
95
107
98
86
85
84
83
82
81
80
79
78
77
76
75
74
70
66
54
94
106
97
85
73
69
65
53
93
105
96
84
72
68
64
52
92
104
95
83
71
67
63
51
91
103
102
101
100
99
98
97
96
95
96
97
98
99
100
100
99
98
97
96
95
94
82
70
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
50
90
94
93
81
69
67
53
49
89
93
92
80
68
68
52
48
88
92
91
79
67
69
51
47
87
91
90
78
66
70
50
46
86
90
89
77
65
71
49
45
85
89
88
76
64
72
48
44
84
88
87
75
63
73
47
43
83
87
86
74
62
74
46
42
82
86
85
73
61
73
45
41
81
85
84
72
60
72
44
40
80
84
83
71
59
71
43
39
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
70
69
57
29
69
68
56
28
68
67
55
27
67
66
54
26
66
65
53
25
65
64
52
24
64
63
51
23
63
62
50
22
62
61
49
21
61
60
48
20
60
59
47
19
59
60
61
62
63
64
65
66
67
68
69
70
71
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
40
39
38
37
36
35
34
6
7
8
9
10
11
12
13
14
15
16
17
18
58
72
71
33
5
19
57
73
72
32
4
20
56
74
73
31
3
21
55
75
74
30
2
22
54
76
75
29
1
23
53
77
76
28
0
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
82
94
98
69
65
53
81
93
97
68
64
52
80
92
96
67
63
51
79
91
95
66
62
50
78
90
94
65
61
49
77
89
93
64
60
48
76
88
92
63
59
47
75
87
91
62
58
46
74
86
90
61
57
45
73
85
89
60
56
44
72
84
88
59
55
43
71
83
87
106
105
104
103
102
101
100
99
98
97
96
95
94
58
54
42
70
82
86
107
93
57
53
41
69
81
85
108
92
56
52
40
68
80
84
107
91
55
51
39
67
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
106
90
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
38
66
70
84
105
89
55
41
37
65
69
85
104
88
56
40
36
64
68
86
103
87
57
39
35
63
67
87
102
86
58
38
34
62
66
88
101
85
59
37
33
61
65
89
100
84
60
36
32
60
64
90
99
83
61
35
31
59
63
91
98
82
62
34
30
58
62
92
97
81
63
33
29
57
61
93
96
80
64
32
28
56
60
94
95
79
65
31
27
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
95
96
97
98
99
100
100
99
98
97
96
95
94
78
77
76
75
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
46
93
79
17
45
92
80
16
44
91
79
15
43
90
78
14
42
89
77
13
41
88
76
12
40
87
75
11
39
86
74
10
38
85
73
9
37
84
72
8
36
83
71
7
35
36
37
38
39
40
41
42
43
44
45
46
47
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
18
17
16
15
14
13
12
11
10
9
8
7
6
34
48
86
57
19
5
33
49
85
56
20
4
32
50
84
55
21
3
31
51
83
54
22
2
30
52
82
53
23
1
29
53
81
52
24
0
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
54
66
70
97
93
81
53
65
69
96
92
80
52
64
68
95
91
79
51
63
67
94
90
78
50
62
66
93
89
77
49
61
65
92
88
76
48
60
64
91
87
75
47
59
63
90
86
74
46
58
62
89
85
73
45
57
61
88
84
72
44
56
60
87
83
71
43
55
59
95
96
97
98
99
100
101
102
103
104
105
106
107
86
82
70
42
54
58
94
108
85
81
69
41
53
57
93
109
84
80
68
40
52
56
92
108
83
79
67
39
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
91
107
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
66
38
42
56
90
106
83
69
65
37
41
57
89
105
84
68
64
36
40
58
88
104
85
67
63
35
39
59
87
103
86
66
62
34
38
60
86
102
87
65
61
33
37
61
85
101
88
64
60
32
36
62
84
100
89
63
59
31
35
63
83
99
90
62
58
30
34
64
82
98
91
61
57
29
33
65
81
97
92
60
56
28
32
66
80
96
93
59
55
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
67
68
69
70
71
72
73
74
75
76
77
78
79
95
96
97
98
99
100
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
18
80
94
45
17
81
93
44
16
80
92
43
15
79
91
42
14
78
90
41
13
77
89
40
12
76
88
39
11
75
87
38
10
74
86
37
9
73
85
36
8
72
84
35
7
8
9
10
11
12
13
14
15
16
17
18
19
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
46
45
44
43
42
41
40
39
38
37
36
35
34
6
20
58
85
47
33
5
21
57
84
48
32
4
22
56
83
49
31
3
23
55
82
50
30
2
24
54
81
51
29
1
25
53
80
52
28
0
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
66
78
82
108
119
107
65
77
81
107
118
106
64
76
80
106
117
105
63
75
79
105
116
104
62
74
78
104
115
103
61
73
77
103
114
102
60
72
76
102
113
101
59
71
75
101
112
100
58
70
74
100
111
99
57
69
73
99
110
98
56
68
72
98
109
97
55
67
71
73
74
75
76
77
78
79
80
81
82
83
84
85
97
108
96
54
66
70
72
84
96
107
95
53
65
69
71
83
95
106
94
52
64
68
70
82
94
105
93
51
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
69
81
93
94
95
96
97
98
99
100
100
99
98
97
96
97
98
99
100
101
102
103
104
92
50
54
68
68
80
92
95
91
49
53
69
67
79
91
94
90
48
52
70
66
78
90
93
89
47
51
71
65
77
89
92
88
46
50
72
64
76
88
91
87
45
49
73
63
75
87
90
86
44
48
74
62
74
86
89
85
43
47
73
61
73
85
88
84
42
46
72
60
72
84
87
83
41
45
71
59
71
83
86
82
40
44
70
58
70
82
85
81
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
30
56
68
71
29
55
67
70
28
54
66
69
27
53
65
68
26
52
64
67
25
51
63
66
24
50
62
65
23
49
61
64
22
48
60
63
21
47
59
62
20
46
58
61
19
18
17
16
15
14
13
12
11
10
9
8
7
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
72
71
70
69
68
67
66
65
64
63
62
61
60
20
6
32
70
73
59
21
5
31
71
74
58
22
4
30
72
75
57
23
3
29
73
76
56
24
2
28
74
77
55
25
1
27
75
78
54
26
0
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
92
90
70
82
102
116
91
89
69
81
101
117
90
88
68
80
100
118
89
87
67
79
99
119
88
86
66
78
98
120
87
85
65
77
97
121
86
84
64
76
96
122
85
83
63
75
95
123
84
82
62
74
94
124
83
81
61
73
93
124
82
80
60
72
92
123
81
79
59
47
48
49
50
51
52
53
54
55
56
57
58
59
71
91
122
80
78
58
46
58
70
90
121
79
77
57
45
57
69
89
120
78
76
56
44
56
68
88
119
77
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
118
76
68
54
42
54
66
80
117
75
69
53
41
53
65
81
116
74
70
52
40
52
64
82
115
73
71
51
39
51
63
83
114
72
72
50
38
50
62
84
113
71
73
49
37
49
61
85
112
70
74
48
36
48
60
86
111
69
73
47
35
47
59
87
110
68
72
46
34
46
58
88
109
67
71
45
33
45
57
89
108
66
70
44
32
44
56
90
107
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
43
42
41
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
94
95
96
97
98
99
100
100
99
98
99
100
101
102
103
104
105
106
56
30
42
97
55
29
41
96
54
28
40
95
53
27
39
94
52
26
38
93
51
25
37
92
50
24
36
91
49
23
35
90
48
22
34
89
47
21
33
88
46
20
32
87
45
44
43
42
41
40
39
38
37
36
35
34
33
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
83
84
85
86
87
88
89
90
90
89
88
87
86
46
32
6
44
82
85
47
31
5
45
81
84
48
30
4
46
80
83
49
29
3
47
79
82
50
28
2
48
78
81
51
27
1
49
77
80
52
26
0
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
116
102
82
70
90
92
117
101
81
69
89
91
118
100
80
68
88
90
119
99
79
67
87
89
120
98
78
66
86
88
121
97
77
65
85
87
122
96
76
64
84
86
123
95
75
63
83
85
124
94
74
62
82
84
124
93
73
61
81
83
123
92
72
60
80
82
122
91
71
59
58
57
56
55
54
53
52
51
50
49
48
47
59
79
81
121
90
70
58
46
58
78
80
120
89
69
57
45
57
77
79
119
88
68
56
44
56
76
78
118
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
77
117
80
66
54
42
54
68
76
116
81
65
53
41
53
69
75
115
82
64
52
40
52
70
74
114
83
63
51
39
51
71
73
113
84
62
50
38
50
72
72
112
85
61
49
37
49
73
71
111
86
60
48
36
48
74
70
110
87
59
47
35
47
73
69
109
88
58
46
34
46
72
68
108
89
57
45
33
45
71
67
107
90
56
44
32
44
70
66
106
105
104
103
102
101
100
99
98
99
100
100
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
37
38
39
40
41
42
43
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
97
42
30
56
96
41
29
55
95
40
28
54
94
39
27
53
93
38
26
52
92
37
25
51
91
36
24
50
90
35
23
49
89
34
22
48
88
33
21
47
87
32
20
46
86
87
88
89
90
90
89
88
87
86
85
84
83
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
33
34
35
36
37
38
39
40
41
42
43
44
45
85
82
44
6
32
46
84
81
45
5
31
47
83
80
46
4
30
48
82
79
47
3
29
49
81
78
48
2
28
50
80
77
49
1
27
51
79
76
50
0
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
107
119
108
82
78
66
106
118
107
81
77
65
105
117
106
80
76
64
104
116
105
79
75
63
103
115
104
78
74
62
102
114
103
77
73
61
101
113
102
76
72
60
100
112
101
75
71
59
99
111
100
74
70
58
98
110
99
73
69
57
97
109
98
72
68
56
96
108
97
85
84
83
82
81
80
79
78
77
76
75
74
73
71
67
55
95
107
96
84
72
70
66
54
94
106
95
83
71
69
65
53
93
105
94
82
70
68
64
52
92
104
103
102
101
100
99
98
97
96
97
98
99
100
100
99
98
97
96
95
94
93
81
69
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
51
91
95
92
80
68
68
54
50
90
94
91
79
67
69
53
49
89
93
90
78
66
70
52
48
88
92
89
77
65
71
51
47
87
91
88
76
64
72
50
46
86
90
87
75
63
73
49
45
85
89
86
74
62
74
48
44
84
88
85
73
61
73
47
43
83
87
84
72
60
72
46
42
82
86
83
71
59
71
45
41
81
85
82
70
58
70
44
40
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
71
68
56
30
70
67
55
29
69
66
54
28
68
65
53
27
67
64
52
26
66
63
51
25
65
62
50
24
64
61
49
23
63
60
48
22
62
59
47
21
61
58
46
20
60
61
62
63
64
65
66
67
68
69
70
71
72
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
40
39
38
37
36
35
34
33
7
8
9
10
11
12
13
14
15
16
17
18
19
59
73
70
32
6
20
58
74
71
31
5
21
57
75
72
30
4
22
56
76
73
29
3
23
55
77
74
28
2
24
54
78
75
27
1
25
53
79
76
26
0
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
81
93
97
70
66
54
80
92
96
69
65
53
79
91
95
68
64
52
78
90
94
67
63
51
77
89
93
66
62
50
76
88
92
65
61
49
75
87
91
64
60
48
74
86
90
63
59
47
73
85
89
62
58
46
72
84
88
61
57
45
71
83
87
60
56
44
70
82
86
107
106
105
104
103
102
101
100
99
98
97
96
95
59
55
43
69
81
85
108
94
58
54
42
68
80
84
109
93
57
53
41
67
79
83
108
92
56
52
40
66
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
107
91
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
39
65
69
83
106
90
56
42
38
64
68
84
105
89
57
41
37
63
67
85
104
88
58
40
36
62
66
86
103
87
59
39
35
61
65
87
102
86
60
38
34
60
64
88
101
85
61
37
33
59
63
89
100
84
62
36
32
58
62
90
99
83
63
35
31
57
61
91
98
82
64
34
30
56
60
92
97
81
65
33
29
55
59
93
96
80
66
32
28
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
94
95
96
97
98
99
100
100
99
98
97
96
95
79
78
77
76
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
45
94
80
18
44
93
81
17
43
92
80
16
42
91
79
15
41
90
78
14
40
89
77
13
39
88
76
12
38
87
75
11
37
86
74
10
36
85
73
9
35
84
72
8
34
35
36
37
38
39
40
41
42
43
44
45
46
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
19
18
17
16
15
14
13
12
11
10
9
8
7
33
47
85
58
20
6
32
48
84
57
21
5
31
49
83
56
22
4
30
50
82
55
23
3
29
51
81
54
24
2
28
52
80
53
25
1
27
53
79
52
26
0
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
67
79
83
84
80
68
66
78
82
83
79
67
65
77
81
82
78
66
64
76
80
81
77
65
63
75
79
80
76
64
62
74
78
79
75
63
61
73
77
78
74
62
60
72
76
77
73
61
59
71
75
76
72
60
58
70
74
75
71
59
57
69
73
74
70
58
56
68
72
108
109
110
111
112
113
114
114
113
112
111
110
109
73
69
57
55
67
71
107
108
72
68
56
54
66
70
106
107
71
67
55
53
65
69
105
106
70
66
54
52
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
104
105
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
53
51
55
69
103
104
70
56
52
50
54
70
102
103
71
55
51
49
53
71
101
102
72
54
50
48
52
72
100
101
73
53
49
47
51
73
99
100
74
52
48
46
50
74
98
99
75
51
47
45
49
75
97
98
76
50
46
44
48
76
96
97
77
49
45
43
47
77
95
96
78
48
44
42
46
78
94
95
79
47
43
41
45
79
93
94
80
46
42
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
31
93
94
32
30
94
95
31
29
93
94
30
28
92
93
29
27
91
92
28
26
90
91
27
25
89
90
26
24
88
89
25
23
87
88
24
22
86
87
23
21
85
86
22
20
21
22
23
24
25
26
27
28
29
30
31
32
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
33
32
31
30
29
28
27
26
25
24
23
22
21
19
33
71
72
34
20
18
34
70
71
35
19
17
35
69
70
36
18
16
36
68
69
37
17
15
37
67
68
38
16
14
38
66
67
39
15
13
39
65
66
40
14
0
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
66
78
82
85
81
69
65
77
81
84
80
68
64
76
80
83
79
67
63
75
79
82
78
66
62
74
78
81
77
65
61
73
77
80
76
64
60
72
76
79
75
63
59
71
75
78
74
62
58
70
74
77
73
61
57
69
73
76
72
60
56
68
72
75
71
59
55
67
71
107
108
109
110
111
112
113
114
114
113
112
111
110
74
70
58
54
66
70
106
109
73
69
57
53
65
69
105
108
72
68
56
52
64
68
104
107
71
67
55
51
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
103
106
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
54
50
54
68
102
105
71
57
53
49
53
69
101
104
72
56
52
48
52
70
100
103
73
55
51
47
51
71
99
102
74
54
50
46
50
72
98
101
75
53
49
45
49
73
97
100
76
52
48
44
48
74
96
99
77
51
47
43
47
75
95
98
78
50
46
42
46
76
94
97
79
49
45
41
45
77
93
96
80
48
44
40
44
78
92
95
81
47
43
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
88
89
90
91
94
93
92
91
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
30
92
95
33
29
93
96
32
28
92
95
31
27
91
94
30
26
90
93
29
25
89
92
28
24
88
91
27
23
87
90
26
22
86
89
25
21
85
88
24
20
84
87
23
19
20
21
22
23
24
25
26
27
28
29
30
31
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
34
33
32
31
30
29
28
27
26
25
24
23
22
18
32
70
73
35
21
17
33
69
72
36
20
16
34
68
71
37
19
15
35
67
70
38
18
14
36
66
69
39
17
13
37
65
68
40
16
12
38
64
67
41
15
1
0
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
65
77
81
86
82
70
64
76
80
85
81
69
63
75
79
84
80
68
62
74
78
83
79
67
61
73
77
82
78
66
60
72
76
81
77
65
59
71
75
80
76
64
58
70
74
79
75
63
57
69
73
78
74
62
56
68
72
77
73
61
55
67
71
76
72
60
54
66
70
106
107
108
109
110
111
112
113
114
114
113
112
111
75
71
59
53
65
69
105
110
74
70
58
52
64
68
104
109
73
69
57
51
63
67
103
108
72
68
56
50
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
102
107
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
55
49
53
67
101
106
72
58
54
48
52
68
100
105
73
57
53
47
51
69
99
104
74
56
52
46
50
70
98
103
75
55
51
45
49
71
97
102
76
54
50
44
48
72
96
101
77
53
49
43
47
73
95
100
78
52
48
42
46
74
94
99
79
51
47
41
45
75
93
98
80
50
46
40
44
76
92
97
81
49
45
39
43
77
91
96
82
48
44
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
87
88
89
90
95
94
93
92
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
29
91
96
34
28
92
97
33
27
91
96
32
26
90
95
31
25
89
94
30
24
88
93
29
23
87
92
28
22
86
91
27
21
85
90
26
20
84
89
25
19
83
88
24
18
19
20
21
22
23
24
25
26
27
28
29
30
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
35
34
33
32
31
30
29
28
27
26
25
24
23
17
31
69
74
36
22
16
32
68
73
37
21
15
33
67
72
38
20
14
34
66
71
39
19
13
35
65
70
40
18
12
36
64
69
41
17
11
37
63
68
42
16
2
1
0
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
64
76
80
87
83
71
63
75
79
86
82
70
62
74
78
85
81
69
61
73
77
84
80
68
60
72
76
83
79
67
59
71
75
82
78
66
58
70
74
81
77
65
57
69
73
80
76
64
56
68
72
79
75
63
55
67
71
78
74
62
54
66
70
77
73
61
53
65
69
105
106
107
108
109
110
111
112
113
114
114
113
112
76
72
60
52
64
68
104
111
75
71
59
51
63
67
103
110
74
70
58
50
62
66
102
109
73
69
57
49
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
101
108
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
56
48
52
66
100
107
73
59
55
47
51
67
99
106
74
58
54
46
50
68
98
105
75
57
53
45
49
69
97
104
76
56
52
44
48
70
96
103
77
55
51
43
47
71
95
102
78
54
50
42
46
72
94
101
79
53
49
41
45
73
93
100
80
52
48
40
44
74
92
99
81
51
47
39
43
75
91
98
82
50
46
38
42
76
90
97
83
49
45
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
86
87
88
89
96
95
94
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
28
90
97
35
27
91
98
34
26
90
97
33
25
89
96
32
24
88
95
31
23
87
94
30
22
86
93
29
21
85
92
28
20
84
91
27
19
83
90
26
18
82
89
25
17
18
19
20
21
22
23
24
25
26
27
28
29
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
36
35
34
33
32
31
30
29
28
27
26
25
24
16
30
68
75
37
23
15
31
67
74
38
22
14
32
66
73
39
21
13
33
65
72
40
20
12
34
64
71
41
19
11
35
63
70
42
18
10
36
62
69
43
17
3
2
1
0
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
63
75
79
88
84
72
62
74
78
87
83
71
61
73
77
86
82
70
60
72
76
85
81
69
59
71
75
84
80
68
58
70
74
83
79
67
57
69
73
82
78
66
56
68
72
81
77
65
55
67
71
80
76
64
54
66
70
79
75
63
53
65
69
78
74
62
52
64
68
104
105
106
107
108
109
110
111
112
113
114
114
113
77
73
61
51
63
67
103
112
76
72
60
50
62
66
102
111
75
71
59
49
61
65
101
110
74
70
58
48
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
100
109
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
57
47
51
65
99
108
74
60
56
46
50
66
98
107
75
59
55
45
49
67
97
106
76
58
54
44
48
68
96
105
77
57
53
43
47
69
95
104
78
56
52
42
46
70
94
103
79
55
51
41
45
71
93
102
80
54
50
40
44
72
92
101
81
53
49
39
43
73
91
100
82
52
48
38
42
74
90
99
83
51
47
37
41
75
89
98
84
50
46
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
85
86
87
88
97
96
95
94
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
27
89
98
36
26
90
99
35
25
89
98
34
24
88
97
33
23
87
96
32
22
86
95
31
21
85
94
30
20
84
93
29
19
83
92
28
18
82
91
27
17
81
90
26
16
17
18
19
20
21
22
23
24
25
26
27
28
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
37
36
35
34
33
32
31
30
29
28
27
26
25
15
29
67
76
38
24
14
30
66
75
39
23
13
31
65
74
40
22
12
32
64
73
41
21
11
33
63
72
42
20
10
34
62
71
43
19
9
35
61
70
44
18
4
3
2
1
0
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
74
78
89
85
73
61
73
77
88
84
72
60
72
76
87
83
71
59
71
75
86
82
70
58
70
74
85
81
69
57
69
73
84
80
68
56
68
72
83
79
67
55
67
71
82
78
66
54
66
70
81
77
65
53
65
69
80
76
64
52
64
68
79
75
63
51
63
67
103
104
105
106
107
108
109
110
111
112
113
114
114
78
74
62
50
62
66
102
113
77
73
61
49
61
65
101
112
76
72
60
48
60
64
100
111
75
71
59
47
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
99
110
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
58
46
50
64
98
109
75
61
57
45
49
65
97
108
76
60
56
44
48
66
96
107
77
59
55
43
47
67
95
106
78
58
54
42
46
68
94
105
79
57
53
41
45
69
93
104
80
56
52
40
44
70
92
103
81
55
51
39
43
71
91
102
82
54
50
38
42
72
90
101
83
53
49
37
41
73
89
100
84
52
48
36
40
74
88
99
85
51
47
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
84
85
86
87
98
97
96
95
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
26
88
99
37
25
89
100
36
24
88
99
35
23
87
98
34
22
86
97
33
21
85
96
32
20
84
95
31
19
83
94
30
18
82
93
29
17
81
92
28
16
80
91
27
15
16
17
18
19
20
21
22
23
24
25
26
27
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
38
37
36
35
34
33
32
31
30
29
28
27
26
14
28
66
77
39
25
13
29
65
76
40
24
12
30
64
75
41
23
11
31
63
74
42
22
10
32
62
73
43
21
9
33
61
72
44
20
8
34
60
71
45
19
5
4
3
2
1
0
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
61
73
77
90
86
74
60
72
76
89
85
73
59
71
75
88
84
72
58
70
74
87
83
71
57
69
73
86
82
70
56
68
72
85
81
69
55
67
71
84
80
68
54
66
70
83
79
67
53
65
69
82
78
66
52
64
68
81
77
65
51
63
67
80
76
64
50
62
66
102
103
104
105
106
107
108
109
110
111
112
113
114
79
75
63
49
61
65
101
114
78
74
62
48
60
64
100
113
77
73
61
47
59
63
99
112
76
72
60
46
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
98
111
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
59
45
49
63
97
110
76
62
58
44
48
64
96
109
77
61
57
43
47
65
95
108
78
60
56
42
46
66
94
107
79
59
55
41
45
67
93
106
80
58
54
40
44
68
92
105
81
57
53
39
43
69
91
104
82
56
52
38
42
70
90
103
83
55
51
37
41
71
89
102
84
54
50
36
40
72
88
101
85
53
49
35
39
73
87
100
86
52
48
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
83
84
85
86
99
98
97
96
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
25
87
100
38
24
88
100
37
23
87
99
36
22
86
98
35
21
85
97
34
20
84
96
33
19
83
95
32
18
82
94
31
17
81
93
30
16
80
92
29
15
79
91
28
14
15
16
17
18
19
20
21
22
23
24
25
26
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
39
38
37
36
35
34
33
32
31
30
29
28
27
13
27
65
78
40
26
12
28
64
77
41
25
11
29
63
76
42
24
10
30
62
75
43
23
9
31
61
74
44
22
8
32
60
73
45
21
7
33
59
72
46
20
6
5
4
3
2
1
0
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
60
72
76
91
87
75
59
71
75
90
86
74
58
70
74
89
85
73
57
69
73
88
84
72
56
68
72
87
83
71
55
67
71
86
82
70
54
66
70
85
81
69
53
65
69
84
80
68
52
64
68
83
79
67
51
63
67
82
78
66
50
62
66
81
77
65
49
61
65
101
102
103
104
105
106
107
108
109
110
111
112
113
80
76
64
48
60
64
100
114
79
75
63
47
59
63
99
114
78
74
62
46
58
62
98
113
77
73
61
45
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
97
112
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
60
44
48
62
96
111
77
63
59
43
47
63
95
110
78
62
58
42
46
64
94
109
79
61
57
41
45
65
93
108
80
60
56
40
44
66
92
107
81
59
55
39
43
67
91
106
82
58
54
38
42
68
90
105
83
57
53
37
41
69
89
104
84
56
52
36
40
70
88
103
85
55
51
35
39
71
87
102
86
54
50
34
38
72
86
101
87
53
49
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
82
83
84
85
100
99
98
97
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
24
86
100
39
23
87
99
38
22
86
98
37
21
85
97
36
20
84
96
35
19
83
95
34
18
82
94
33
17
81
93
32
16
80
92
31
15
79
91
30
14
78
90
29
13
14
15
16
17
18
19
20
21
22
23
24
25
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
40
39
38
37
36
35
34
33
32
31
30
29
28
12
26
64
79
41
27
11
27
63
78
42
26
10
28
62
77
43
25
9
29
61
76
44
24
8
30
60
75
45
23
7
31
59
74
46
22
6
32
58
73
47
21
7
6
5
4
3
2
1
0
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
59
71
75
92
88
76
58
70
74
91
87
75
57
69
73
90
86
74
56
68
72
89
85
73
55
67
71
88
84
72
54
66
70
87
83
71
53
65
69
86
82
70
52
64
68
85
81
69
51
63
67
84
80
68
50
62
66
83
79
67
49
61
65
82
78
66
48
60
64
100
101
102
103
104
105
106
107
108
109
110
111
112
81
77
65
47
59
63
99
113
80
76
64
46
58
62
98
114
79
75
63
45
57
61
97
113
78
74
62
44
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
96
112
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
61
43
47
61
95
111
78
64
60
42
46
62
94
110
79
63
59
41
45
63
93
109
80
62
58
40
44
64
92
108
81
61
57
39
43
65
91
107
82
60
56
38
42
66
90
106
83
59
55
37
41
67
89
105
84
58
54
36
40
68
88
104
85
57
53
35
39
69
87
103
86
56
52
34
38
70
86
102
87
55
51
33
37
71
85
101
88
54
50
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
72
73
74
75
76
77
78
79
80
81
82
83
84
100
100
99
98
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
23
85
99
40
22
86
98
39
21
85
97
38
20
84
96
37
19
83
95
36
18
82
94
35
17
81
93
34
16
80
92
33
15
79
91
32
14
78
90
31
13
77
89
30
12
13
14
15
16
17
18
19
20
21
22
23
24
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
41
40
39
38
37
36
35
34
33
32
31
30
29
11
25
63
80
42
28
10
26
62
79
43
27
9
27
61
78
44
26
8
28
60
77
45
25
7
29
59
76
46
24
6
30
58
75
47
23
5
31
57
74
48
22
8
7
6
5
4
3
2
1
0
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
58
70
74
93
89
77
57
69
73
92
88
76
56
68
72
91
87
75
55
67
71
90
86
74
54
66
70
89
85
73
53
65
69
88
84
72
52
64
68
87
83
71
51
63
67
86
82
70
50
62
66
85
81
69
49
61
65
84
80
68
48
60
64
83
79
67
47
59
63
99
100
101
102
103
104
105
106
107
108
109
110
111
82
78
66
46
58
62
98
112
81
77
65
45
57
61
97
113
80
76
64
44
56
60
96
112
79
75
63
43
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
95
111
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
62
42
46
60
94
110
79
65
61
41
45
61
93
109
80
64
60
40
44
62
92
108
81
63
59
39
43
63
91
107
82
62
58
38
42
64
90
106
83
61
57
37
41
65
89
105
84
60
56
36
40
66
88
104
85
59
55
35
39
67
87
103
86
58
54
34
38
68
86
102
87
57
53
33
37
69
85
101
88
56
52
32
36
70
84
100
89
55
51
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
73
74
75
76
77
78
79
80
81
82
83
99
100
100
99
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
22
84
98
41
21
85
97
40
20
84
96
39
19
83
95
38
18
82
94
37
17
81
93
36
16
80
92
35
15
79
91
34
14
78
90
33
13
77
89
32
12
76
88
31
11
12
13
14
15
16
17
18
19
20
21
22
23
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
42
41
40
39
38
37
36
35
34
33
32
31
30
10
24
62
81
43
29
9
25
61
80
44
28
8
26
60
79
45
27
7
27
59
78
46
26
6
28
58
77
47
25
5
29
57
76
48
24
4
30
56
75
49
23
9
8
7
6
5
4
3
2
1
0
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
57
69
73
94
90
78
56
68
72
93
89
77
55
67
71
92
88
76
54
66
70
91
87
75
53
65
69
90
86
74
52
64
68
89
85
73
51
63
67
88
84
72
50
62
66
87
83
71
49
61
65
86
82
70
48
60
64
85
81
69
47
59
63
84
80
68
46
58
62
98
99
100
101
102
103
104
105
106
107
108
109
110
83
79
67
45
57
61
97
111
82
78
66
44
56
60
96
112
81
77
65
43
55
59
95
111
80
76
64
42
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
94
110
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
63
41
45
59
93
109
80
66
62
40
44
60
92
108
81
65
61
39
43
61
91
107
82
64
60
38
42
62
90
106
83
63
59
37
41
63
89
105
84
62
58
36
40
64
88
104
85
61
57
35
39
65
87
103
86
60
56
34
38
66
86
102
87
59
55
33
37
67
85
101
88
58
54
32
36
68
84
100
89
57
53
31
35
69
83
99
90
56
52
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
75
76
77
78
79
80
81
82
98
99
100
100
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
21
83
97
42
20
84
96
41
19
83
95
40
18
82
94
39
17
81
93
38
16
80
92
37
15
79
91
36
14
78
90
35
13
77
89
34
12
76
88
33
11
75
87
32
10
11
12
13
14
15
16
17
18
19
20
21
22
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
43
42
41
40
39
38
37
36
35
34
33
32
31
9
23
61
82
44
30
8
24
60
81
45
29
7
25
59
80
46
28
6
26
58
79
47
27
5
27
57
78
48
26
4
28
56
77
49
25
3
29
55
76
50
24
10
9
8
7
6
5
4
3
2
1
0
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
56
68
72
95
91
79
55
67
71
94
90
78
54
66
70
93
89
77
53
65
69
92
88
76
52
64
68
91
87
75
51
63
67
90
86
74
50
62
66
89
85
73
49
61
65
88
84
72
48
60
64
87
83
71
47
59
63
86
82
70
46
58
62
85
81
69
45
57
61
97
98
99
100
101
102
103
104
105
106
107
108
109
84
80
68
44
56
60
96
110
83
79
67
43
55
59
95
111
82
78
66
42
54
58
94
110
81
77
65
41
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
93
109
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
64
40
44
58
92
108
81
67
63
39
43
59
91
107
82
66
62
38
42
60
90
106
83
65
61
37
41
61
89
105
84
64
60
36
40
62
88
104
85
63
59
35
39
63
87
103
86
62
58
34
38
64
86
102
87
61
57
33
37
65
85
101
88
60
56
32
36
66
84
100
89
59
55
31
35
67
83
99
90
58
54
30
34
68
82
98
91
57
53
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
73
74
75
76
77
78
79
80
81
97
98
99
100
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
20
82
96
43
19
83
95
42
18
82
94
41
17
81
93
40
16
80
92
39
15
79
91
38
14
78
90
37
13
77
89
36
12
76
88
35
11
75
87
34
10
74
86
33
9
10
11
12
13
14
15
16
17
18
19
20
21
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
44
43
42
41
40
39
38
37
36
35
34
33
32
8
22
60
83
45
31
7
23
59
82
46
30
6
24
58
81
47
29
5
25
57
80
48
28
4
26
56
79
49
27
3
27
55
78
50
26
2
28
54
77
51
25
11
10
9
8
7
6
5
4
3
2
1
0
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
55
67
71
96
92
80
54
66
70
95
91
79
53
65
69
94
90
78
52
64
68
93
89
77
51
63
67
92
88
76
50
62
66
91
87
75
49
61
65
90
86
74
48
60
64
89
85
73
47
59
63
88
84
72
46
58
62
87
83
71
45
57
61
86
82
70
44
56
60
96
97
98
99
100
101
102
103
104
105
106
107
108
85
81
69
43
55
59
95
109
84
80
68
42
54
58
94
110
83
79
67
41
53
57
93
109
82
78
66
40
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
92
108
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
65
39
43
57
91
107
82
68
64
38
42
58
90
106
83
67
63
37
41
59
89
105
84
66
62
36
40
60
88
104
85
65
61
35
39
61
87
103
86
64
60
34
38
62
86
102
87
63
59
33
37
63
85
101
88
62
58
32
36
64
84
100
89
61
57
31
35
65
83
99
90
60
56
30
34
66
82
98
91
59
55
29
33
67
81
97
92
58
54
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
68
69
70
71
72
73
74
75
76
77
78
79
80
96
97
98
99
100
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
19
81
95
44
18
82
94
43
17
81
93
42
16
80
92
41
15
79
91
40
14
78
90
39
13
77
89
38
12
76
88
37
11
75
87
36
10
74
86
35
9
73
85
34
8
9
10
11
12
13
14
15
16
17
18
19
20
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
45
44
43
42
41
40
39
38
37
36
35
34
33
7
21
59
84
46
32
6
22
58
83
47
31
5
23
57
82
48
30
4
24
56
81
49
29
3
25
55
80
50
28
2
26
54
79
51
27
1
27
53
78
52
26
12
11
10
9
8
7
6
5
4
3
2
1
0
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
67
79
83
107
120
108
66
78
82
106
119
107
65
77
81
105
118
106
64
76
80
104
117
105
63
75
79
103
116
104
62
74
78
102
115
103
61
73
77
101
114
102
60
72
76
100
113
101
59
71
75
99
112
100
58
70
74
98
111
99
57
69
73
97
110
98
56
68
72
72
73
74
75
76
77
78
79
80
81
82
83
84
96
109
97
55
67
71
71
83
95
108
96
54
66
70
70
82
94
107
95
53
65
69
69
81
93
106
94
52
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
68
80
92
93
94
95
96
97
98
99
100
100
99
98
97
98
99
100
101
102
103
104
105
93
51
55
69
67
79
91
96
92
50
54
70
66
78
90
95
91
49
53
71
65
77
89
94
90
48
52
72
64
76
88
93
89
47
51
73
63
75
87
92
88
46
50
74
62
74
86
91
87
45
49
73
61
73
85
90
86
44
48
72
60
72
84
89
85
43
47
71
59
71
83
88
84
42
46
70
58
70
82
87
83
41
45
69
57
69
81
86
82
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
31
55
67
72
30
54
66
71
29
53
65
70
28
52
64
69
27
51
63
68
26
50
62
67
25
49
61
66
24
48
60
65
23
47
59
64
22
46
58
63
21
45
57
62
20
19
18
17
16
15
14
13
12
11
10
9
8
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
73
72
71
70
69
68
67
66
65
64
63
62
61
21
7
31
69
74
60
22
6
30
70
75
59
23
5
29
71
76
58
24
4
28
72
77
57
25
3
27
73
78
56
26
2
26
74
79
55
27
1
25
75
80
54
40
39
38
37
36
35
34
33
32
31
30
29
28
0
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
91
91
71
83
103
117
90
90
70
82
102
118
89
89
69
81
101
119
88
88
68
80
100
120
87
87
67
79
99
121
86
86
66
78
98
122
85
85
65
77
97
123
84
84
64
76
96
124
83
83
63
75
95
124
82
82
62
74
94
123
81
81
61
73
93
122
80
80
60
48
49
50
51
52
53
54
55
56
57
58
59
60
72
92
121
79
79
59
47
59
71
91
120
78
78
58
46
58
70
90
119
77
77
57
45
57
69
89
118
76
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
117
75
69
55
43
55
67
81
116
74
70
54
42
54
66
82
115
73
71
53
41
53
65
83
114
72
72
52
40
52
64
84
113
71
73
51
39
51
63
85
112
70
74
50
38
50
62
86
111
69
73
49
37
49
61
87
110
68
72
48
36
48
60
88
109
67
71
47
35
47
59
89
108
66
70
46
34
46
58
90
107
65
69
45
33
45
57
91
106
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
44
43
42
41
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
92
93
94
95
96
97
98
99
100
100
99
98
97
98
99
100
101
102
103
104
105
55
31
43
96
54
30
42
95
53
29
41
94
52
28
40
93
51
27
39
92
50
26
38
91
49
25
37
90
48
24
36
89
47
23
35
88
46
22
34
87
45
21
33
86
44
43
42
41
40
39
38
37
36
35
34
33
32
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
84
85
86
87
88
89
90
90
89
88
87
86
85
45
31
7
45
83
84
46
30
6
46
82
83
47
29
5
47
81
82
48
28
4
48
80
81
49
27
3
49
79
80
50
26
2
50
78
79
51
25
1
51
77
78
64
63
62
61
60
59
58
57
56
55
54
53
52
24
0
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
117
103
83
71
91
91
118
102
82
70
90
90
119
101
81
69
89
89
120
100
80
68
88
88
121
99
79
67
87
87
122
98
78
66
86
86
123
97
77
65
85
85
124
96
76
64
84
84
124
95
75
63
83
83
123
94
74
62
82
82
122
93
73
61
81
81
121
92
72
60
59
58
57
56
55
54
53
52
51
50
49
48
60
80
80
120
91
71
59
47
59
79
79
119
90
70
58
46
58
78
78
118
89
69
57
45
57
77
77
117
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
76
116
81
67
55
43
55
69
75
115
82
66
54
42
54
70
74
114
83
65
53
41
53
71
73
113
84
64
52
40
52
72
72
112
85
63
51
39
51
73
71
111
86
62
50
38
50
74
70
110
87
61
49
37
49
73
69
109
88
60
48
36
48
72
68
108
89
59
47
35
47
71
67
107
90
58
46
34
46
70
66
106
91
57
45
33
45
69
65
105
104
103
102
101
100
99
98
97
98
99
100
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
37
38
39
40
41
42
43
44
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
96
43
31
55
95
42
30
54
94
41
29
53
93
40
28
52
92
39
27
51
91
38
26
50
90
37
25
49
89
36
24
48
88
35
23
47
87
34
22
46
86
33
21
45
85
86
87
88
89
90
90
89
88
87
86
85
84
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
32
33
34
35
36
37
38
39
40
41
42
43
44
84
83
45
7
31
45
83
82
46
6
30
46
82
81
47
5
29
47
81
80
48
4
28
48
80
79
49
3
27
49
79
78
50
2
26
50
78
77
51
1
25
51
65
66
67
68
69
70
71
72
73
74
75
76
77
76
52
0
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
108
120
107
83
79
67
107
119
106
82
78
66
106
118
105
81
77
65
105
117
104
80
76
64
104
116
103
79
75
63
103
115
102
78
74
62
102
114
101
77
73
61
101
113
100
76
72
60
100
112
99
75
71
59
99
111
98
74
70
58
98
110
97
73
69
57
97
109
96
84
83
82
81
80
79
78
77
76
75
74
73
72
72
68
56
96
108
95
83
71
71
67
55
95
107
94
82
70
70
66
54
94
106
93
81
69
69
65
53
93
105
104
103
102
101
100
99
98
97
98
99
100
100
99
98
97
96
95
94
93
92
80
68
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
52
92
96
91
79
67
69
55
51
91
95
90
78
66
70
54
50
90
94
89
77
65
71
53
49
89
93
88
76
64
72
52
48
88
92
87
75
63
73
51
47
87
91
86
74
62
74
50
46
86
90
85
73
61
73
49
45
85
89
84
72
60
72
48
44
84
88
83
71
59
71
47
43
83
87
82
70
58
70
46
42
82
86
81
69
57
69
45
41
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
72
67
55
31
71
66
54
30
70
65
53
29
69
64
52
28
68
63
51
27
67
62
50
26
66
61
49
25
65
60
48
24
64
59
47
23
63
58
46
22
62
57
45
21
61
62
63
64
65
66
67
68
69
70
71
72
73
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
40
39
38
37
36
35
34
33
32
8
9
10
11
12
13
14
15
16
17
18
19
20
60
74
69
31
7
21
59
75
70
30
6
22
58
76
71
29
5
23
57
77
72
28
4
24
56
78
73
27
3
25
55
79
74
26
2
26
54
80
75
25
1
27
41
42
43
44
45
46
47
48
49
50
51
52
53
81
76
24
0
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
80
92
96
71
67
55
79
91
95
70
66
54
78
90
94
69
65
53
77
89
93
68
64
52
76
88
92
67
63
51
75
87
91
66
62
50
74
86
90
65
61
49
73
85
89
64
60
48
72
84
88
63
59
47
71
83
87
62
58
46
70
82
86
61
57
45
69
81
85
108
107
106
105
104
103
102
101
100
99
98
97
96
60
56
44
68
80
84
109
95
59
55
43
67
79
83
110
94
58
54
42
66
78
82
109
93
57
53
41
65
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
108
92
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
40
64
68
82
107
91
57
43
39
63
67
83
106
90
58
42
38
62
66
84
105
89
59
41
37
61
65
85
104
88
60
40
36
60
64
86
103
87
61
39
35
59
63
87
102
86
62
38
34
58
62
88
101
85
63
37
33
57
61
89
100
84
64
36
32
56
60
90
99
83
65
35
31
55
59
91
98
82
66
34
30
54
58
92
97
81
67
33
29
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
93
94
95
96
97
98
99
100
100
99
98
97
96
80
79
78
77
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
44
95
81
19
43
94
82
18
42
93
81
17
41
92
80
16
40
91
79
15
39
90
78
14
38
89
77
13
37
88
76
12
36
87
75
11
35
86
74
10
34
85
73
9
33
34
35
36
37
38
39
40
41
42
43
44
45
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
20
19
18
17
16
15
14
13
12
11
10
9
8
32
46
84
59
21
7
31
47
83
58
22
6
30
48
82
57
23
5
29
49
81
56
24
4
28
50
80
55
25
3
27
51
79
54
26
2
26
52
78
53
27
1
13
14
15
16
17
18
19
20
21
22
23
24
25
53
77
52
28
0
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
79
91
95
72
68
56
78
90
94
71
67
55
77
89
93
70
66
54
76
88
92
69
65
53
75
87
91
68
64
52
74
86
90
67
63
51
73
85
89
66
62
50
72
84
88
65
61
49
71
83
87
64
60
48
70
82
86
63
59
47
69
81
85
62
58
46
68
80
84
109
108
107
106
105
104
103
102
101
100
99
98
97
61
57
45
67
79
83
110
96
60
56
44
66
78
82
111
95
59
55
43
65
77
81
110
94
58
54
42
64
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
109
93
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
41
63
67
81
108
92
58
44
40
62
66
82
107
91
59
43
39
61
65
83
106
90
60
42
38
60
64
84
105
89
61
41
37
59
63
85
104
88
62
40
36
58
62
86
103
87
63
39
35
57
61
87
102
86
64
38
34
56
60
88
101
85
65
37
33
55
59
89
100
84
66
36
32
54
58
90
99
83
67
35
31
53
57
91
98
82
68
34
30
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
92
93
94
95
96
97
98
99
100
100
99
98
97
81
80
79
78
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
43
96
82
20
42
95
83
19
41
94
82
18
40
93
81
17
39
92
80
16
38
91
79
15
37
90
78
14
36
89
77
13
35
88
76
12
34
87
75
11
33
86
74
10
32
33
34
35
36
37
38
39
40
41
42
43
44
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
21
20
19
18
17
16
15
14
13
12
11
10
9
31
45
83
60
22
8
30
46
82
59
23
7
29
47
81
58
24
6
28
48
80
57
25
5
27
49
79
56
26
4
26
50
78
55
27
3
25
51
77
54
28
2
12
13
14
15
16
17
18
19
20
21
22
23
24
52
76
53
29
1
0
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
78
90
94
73
69
57
77
89
93
72
68
56
76
88
92
71
67
55
75
87
91
70
66
54
74
86
90
69
65
53
73
85
89
68
64
52
72
84
88
67
63
51
71
83
87
66
62
50
70
82
86
65
61
49
69
81
85
64
60
48
68
80
84
63
59
47
67
79
83
110
109
108
107
106
105
104
103
102
101
100
99
98
62
58
46
66
78
82
111
97
61
57
45
65
77
81
112
96
60
56
44
64
76
80
111
95
59
55
43
63
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
110
94
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
42
62
66
80
109
93
59
45
41
61
65
81
108
92
60
44
40
60
64
82
107
91
61
43
39
59
63
83
106
90
62
42
38
58
62
84
105
89
63
41
37
57
61
85
104
88
64
40
36
56
60
86
103
87
65
39
35
55
59
87
102
86
66
38
34
54
58
88
101
85
67
37
33
53
57
89
100
84
68
36
32
52
56
90
99
83
69
35
31
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
94
95
96
97
98
99
100
100
99
98
82
81
80
79
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
42
97
83
21
41
96
84
20
40
95
83
19
39
94
82
18
38
93
81
17
37
92
80
16
36
91
79
15
35
90
78
14
34
89
77
13
33
88
76
12
32
87
75
11
31
32
33
34
35
36
37
38
39
40
41
42
43
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
22
21
20
19
18
17
16
15
14
13
12
11
10
30
44
82
61
23
9
29
45
81
60
24
8
28
46
80
59
25
7
27
47
79
58
26
6
26
48
78
57
27
5
25
49
77
56
28
4
24
50
76
55
29
3
11
12
13
14
15
16
17
18
19
20
21
22
23
51
75
54
30
2
1
0
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
77
89
93
74
70
58
76
88
92
73
69
57
75
87
91
72
68
56
74
86
90
71
67
55
73
85
89
70
66
54
72
84
88
69
65
53
71
83
87
68
64
52
70
82
86
67
63
51
69
81
85
66
62
50
68
80
84
65
61
49
67
79
83
64
60
48
66
78
82
111
110
109
108
107
106
105
104
103
102
101
100
99
63
59
47
65
77
81
112
98
62
58
46
64
76
80
113
97
61
57
45
63
75
79
112
96
60
56
44
62
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
111
95
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
43
61
65
79
110
94
60
46
42
60
64
80
109
93
61
45
41
59
63
81
108
92
62
44
40
58
62
82
107
91
63
43
39
57
61
83
106
90
64
42
38
56
60
84
105
89
65
41
37
55
59
85
104
88
66
40
36
54
58
86
103
87
67
39
35
53
57
87
102
86
68
38
34
52
56
88
101
85
69
37
33
51
55
89
100
84
70
36
32
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
94
95
96
97
98
99
100
100
99
83
82
81
80
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
41
98
84
22
40
97
85
21
39
96
84
20
38
95
83
19
37
94
82
18
36
93
81
17
35
92
80
16
34
91
79
15
33
90
78
14
32
89
77
13
31
88
76
12
30
31
32
33
34
35
36
37
38
39
40
41
42
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
23
22
21
20
19
18
17
16
15
14
13
12
11
29
43
81
62
24
10
28
44
80
61
25
9
27
45
79
60
26
8
26
46
78
59
27
7
25
47
77
58
28
6
24
48
76
57
29
5
23
49
75
56
30
4
10
11
12
13
14
15
16
17
18
19
20
21
22
50
74
55
31
3
2
1
0
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
76
88
92
75
71
59
75
87
91
74
70
58
74
86
90
73
69
57
73
85
89
72
68
56
72
84
88
71
67
55
71
83
87
70
66
54
70
82
86
69
65
53
69
81
85
68
64
52
68
80
84
67
63
51
67
79
83
66
62
50
66
78
82
65
61
49
65
77
81
112
111
110
109
108
107
106
105
104
103
102
101
100
64
60
48
64
76
80
113
99
63
59
47
63
75
79
114
98
62
58
46
62
74
78
113
97
61
57
45
61
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
112
96
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
44
60
64
78
111
95
61
47
43
59
63
79
110
94
62
46
42
58
62
80
109
93
63
45
41
57
61
81
108
92
64
44
40
56
60
82
107
91
65
43
39
55
59
83
106
90
66
42
38
54
58
84
105
89
67
41
37
53
57
85
104
88
68
40
36
52
56
86
103
87
69
39
35
51
55
87
102
86
70
38
34
50
54
88
101
85
71
37
33
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
94
95
96
97
98
99
100
100
84
83
82
81
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
40
99
85
23
39
98
86
22
38
97
85
21
37
96
84
20
36
95
83
19
35
94
82
18
34
93
81
17
33
92
80
16
32
91
79
15
31
90
78
14
30
89
77
13
29
30
31
32
33
34
35
36
37
38
39
40
41
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
24
23
22
21
20
19
18
17
16
15
14
13
12
28
42
80
63
25
11
27
43
79
62
26
10
26
44
78
61
27
9
25
45
77
60
28
8
24
46
76
59
29
7
23
47
75
58
30
6
22
48
74
57
31
5
9
10
11
12
13
14
15
16
17
18
19
20
21
49
73
56
32
4
3
2
1
0
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
75
87
91
76
72
60
74
86
90
75
71
59
73
85
89
74
70
58
72
84
88
73
69
57
71
83
87
72
68
56
70
82
86
71
67
55
69
81
85
70
66
54
68
80
84
69
65
53
67
79
83
68
64
52
66
78
82
67
63
51
65
77
81
66
62
50
64
76
80
113
112
111
110
109
108
107
106
105
104
103
102
101
65
61
49
63
75
79
114
100
64
60
48
62
74
78
114
99
63
59
47
61
73
77
113
98
62
58
46
60
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
112
97
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
45
59
63
77
111
96
62
48
44
58
62
78
110
95
63
47
43
57
61
79
109
94
64
46
42
56
60
80
108
93
65
45
41
55
59
81
107
92
66
44
40
54
58
82
106
91
67
43
39
53
57
83
105
90
68
42
38
52
56
84
104
89
69
41
37
51
55
85
103
88
70
40
36
50
54
86
102
87
71
39
35
49
53
87
101
86
72
38
34
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
94
95
96
97
98
99
100
85
84
83
82
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
39
100
86
24
38
99
87
23
37
98
86
22
36
97
85
21
35
96
84
20
34
95
83
19
33
94
82
18
32
93
81
17
31
92
80
16
30
91
79
15
29
90
78
14
28
29
30
31
32
33
34
35
36
37
38
39
40
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
25
24
23
22
21
20
19
18
17
16
15
14
13
27
41
79
64
26
12
26
42
78
63
27
11
25
43
77
62
28
10
24
44
76
61
29
9
23
45
75
60
30
8
22
46
74
59
31
7
21
47
73
58
32
6
8
9
10
11
12
13
14
15
16
17
18
19
20
48
72
57
33
5
4
3
2
1
0
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
74
86
90
77
73
61
73
85
89
76
72
60
72
84
88
75
71
59
71
83
87
74
70
58
70
82
86
73
69
57
69
81
85
72
68
56
68
80
84
71
67
55
67
79
83
70
66
54
66
78
82
69
65
53
65
77
81
68
64
52
64
76
80
67
63
51
63
75
79
114
113
112
111
110
109
108
107
106
105
104
103
102
66
62
50
62
74
78
114
101
65
61
49
61
73
77
113
100
64
60
48
60
72
76
112
99
63
59
47
59
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
111
98
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
46
58
62
76
110
97
63
49
45
57
61
77
109
96
64
48
44
56
60
78
108
95
65
47
43
55
59
79
107
94
66
46
42
54
58
80
106
93
67
45
41
53
57
81
105
92
68
44
40
52
56
82
104
91
69
43
39
51
55
83
103
90
70
42
38
50
54
84
102
89
71
41
37
49
53
85
101
88
72
40
36
48
52
86
100
87
73
39
35
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
94
95
96
97
98
99
86
85
84
83
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
38
100
87
25
37
100
88
24
36
99
87
23
35
98
86
22
34
97
85
21
33
96
84
20
32
95
83
19
31
94
82
18
30
93
81
17
29
92
80
16
28
91
79
15
27
28
29
30
31
32
33
34
35
36
37
38
39
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
26
25
24
23
22
21
20
19
18
17
16
15
14
26
40
78
65
27
13
25
41
77
64
28
12
24
42
76
63
29
11
23
43
75
62
30
10
22
44
74
61
31
9
21
45
73
60
32
8
20
46
72
59
33
7
7
8
9
10
11
12
13
14
15
16
17
18
19
47
71
58
34
6
5
4
3
2
1
0
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
73
85
89
78
74
62
72
84
88
77
73
61
71
83
87
76
72
60
70
82
86
75
71
59
69
81
85
74
70
58
68
80
84
73
69
57
67
79
83
72
68
56
66
78
82
71
67
55
65
77
81
70
66
54
64
76
80
69
65
53
63
75
79
68
64
52
62
74
78
114
114
113
112
111
110
109
108
107
106
105
104
103
67
63
51
61
73
77
113
102
66
62
50
60
72
76
112
101
65
61
49
59
71
75
111
100
64
60
48
58
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
110
99
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
47
57
61
75
109
98
64
50
46
56
60
76
108
97
65
49
45
55
59
77
107
96
66
48
44
54
58
78
106
95
67
47
43
53
57
79
105
94
68
46
42
52
56
80
104
93
69
45
41
51
55
81
103
92
70
44
40
50
54
82
102
91
71
43
39
49
53
83
101
90
72
42
38
48
52
84
100
89
73
41
37
47
51
85
99
88
74
40
36
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
94
95
96
97
98
87
86
85
84
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
37
99
88
26
36
100
89
25
35
99
88
24
34
98
87
23
33
97
86
22
32
96
85
21
31
95
84
20
30
94
83
19
29
93
82
18
28
92
81
17
27
91
80
16
26
27
28
29
30
31
32
33
34
35
36
37
38
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
27
26
25
24
23
22
21
20
19
18
17
16
15
25
39
77
66
28
14
24
40
76
65
29
13
23
41
75
64
30
12
22
42
74
63
31
11
21
43
73
62
32
10
20
44
72
61
33
9
19
45
71
60
34
8
6
7
8
9
10
11
12
13
14
15
16
17
18
46
70
59
35
7
6
5
4
3
2
1
0
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
72
84
88
79
75
63
71
83
87
78
74
62
70
82
86
77
73
61
69
81
85
76
72
60
68
80
84
75
71
59
67
79
83
74
70
58
66
78
82
73
69
57
65
77
81
72
68
56
64
76
80
71
67
55
63
75
79
70
66
54
62
74
78
69
65
53
61
73
77
113
114
114
113
112
111
110
109
108
107
106
105
104
68
64
52
60
72
76
112
103
67
63
51
59
71
75
111
102
66
62
50
58
70
74
110
101
65
61
49
57
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
109
100
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
48
56
60
74
108
99
65
51
47
55
59
75
107
98
66
50
46
54
58
76
106
97
67
49
45
53
57
77
105
96
68
48
44
52
56
78
104
95
69
47
43
51
55
79
103
94
70
46
42
50
54
80
102
93
71
45
41
49
53
81
101
92
72
44
40
48
52
82
100
91
73
43
39
47
51
83
99
90
74
42
38
46
50
84
98
89
75
41
37
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
94
95
96
97
88
87
86
85
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
36
98
89
27
35
99
90
26
34
98
89
25
33
97
88
24
32
96
87
23
31
95
86
22
30
94
85
21
29
93
84
20
28
92
83
19
27
91
82
18
26
90
81
17
25
26
27
28
29
30
31
32
33
34
35
36
37
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
28
27
26
25
24
23
22
21
20
19
18
17
16
24
38
76
67
29
15
23
39
75
66
30
14
22
40
74
65
31
13
21
41
73
64
32
12
20
42
72
63
33
11
19
43
71
62
34
10
18
44
70
61
35
9
5
6
7
8
9
10
11
12
13
14
15
16
17
45
69
60
36
8
7
6
5
4
3
2
1
0
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
71
83
87
80
76
64
70
82
86
79
75
63
69
81
85
78
74
62
68
80
84
77
73
61
67
79
83
76
72
60
66
78
82
75
71
59
65
77
81
74
70
58
64
76
80
73
69
57
63
75
79
72
68
56
62
74
78
71
67
55
61
73
77
70
66
54
60
72
76
112
113
114
114
113
112
111
110
109
108
107
106
105
69
65
53
59
71
75
111
104
68
64
52
58
70
74
110
103
67
63
51
57
69
73
109
102
66
62
50
56
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
108
101
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
49
55
59
73
107
100
66
52
48
54
58
74
106
99
67
51
47
53
57
75
105
98
68
50
46
52
56
76
104
97
69
49
45
51
55
77
103
96
70
48
44
50
54
78
102
95
71
47
43
49
53
79
101
94
72
46
42
48
52
80
100
93
73
45
41
47
51
81
99
92
74
44
40
46
50
82
98
91
75
43
39
45
49
83
97
90
76
42
38
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
93
94
95
96
89
88
87
86
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
35
97
90
28
34
98
91
27
33
97
90
26
32
96
89
25
31
95
88
24
30
94
87
23
29
93
86
22
28
92
85
21
27
91
84
20
26
90
83
19
25
89
82
18
24
25
26
27
28
29
30
31
32
33
34
35
36
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
29
28
27
26
25
24
23
22
21
20
19
18
17
23
37
75
68
30
16
22
38
74
67
31
15
21
39
73
66
32
14
20
40
72
65
33
13
19
41
71
64
34
12
18
42
70
63
35
11
17
43
69
62
36
10
4
5
6
7
8
9
10
11
12
13
14
15
16
44
68
61
37
9
8
7
6
5
4
3
2
1
0
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
70
82
86
81
77
65
69
81
85
80
76
64
68
80
84
79
75
63
67
79
83
78
74
62
66
78
82
77
73
61
65
77
81
76
72
60
64
76
80
75
71
59
63
75
79
74
70
58
62
74
78
73
69
57
61
73
77
72
68
56
60
72
76
71
67
55
59
71
75
111
112
113
114
114
113
112
111
110
109
108
107
106
70
66
54
58
70
74
110
105
69
65
53
57
69
73
109
104
68
64
52
56
68
72
108
103
67
63
51
55
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
107
102
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
50
54
58
72
106
101
67
53
49
53
57
73
105
100
68
52
48
52
56
74
104
99
69
51
47
51
55
75
103
98
70
50
46
50
54
76
102
97
71
49
45
49
53
77
101
96
72
48
44
48
52
78
100
95
73
47
43
47
51
79
99
94
74
46
42
46
50
80
98
93
75
45
41
45
49
81
97
92
76
44
40
44
48
82
96
91
77
43
39
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
92
93
94
95
90
89
88
87
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
34
96
91
29
33
97
92
28
32
96
91
27
31
95
90
26
30
94
89
25
29
93
88
24
28
92
87
23
27
91
86
22
26
90
85
21
25
89
84
20
24
88
83
19
23
24
25
26
27
28
29
30
31
32
33
34
35
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
30
29
28
27
26
25
24
23
22
21
20
19
18
22
36
74
69
31
17
21
37
73
68
32
16
20
38
72
67
33
15
19
39
71
66
34
14
18
40
70
65
35
13
17
41
69
64
36
12
16
42
68
63
37
11
3
4
5
6
7
8
9
10
11
12
13
14
15
43
67
62
38
10
9
8
7
6
5
4
3
2
1
0
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
69
81
85
82
78
66
68
80
84
81
77
65
67
79
83
80
76
64
66
78
82
79
75
63
65
77
81
78
74
62
64
76
80
77
73
61
63
75
79
76
72
60
62
74
78
75
71
59
61
73
77
74
70
58
60
72
76
73
69
57
59
71
75
72
68
56
58
70
74
110
111
112
113
114
114
113
112
111
110
109
108
107
71
67
55
57
69
73
109
106
70
66
54
56
68
72
108
105
69
65
53
55
67
71
107
104
68
64
52
54
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
106
103
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
51
53
57
71
105
102
68
54
50
52
56
72
104
101
69
53
49
51
55
73
103
100
70
52
48
50
54
74
102
99
71
51
47
49
53
75
101
98
72
50
46
48
52
76
100
97
73
49
45
47
51
77
99
96
74
48
44
46
50
78
98
95
75
47
43
45
49
79
97
94
76
46
42
44
48
80
96
93
77
45
41
43
47
81
95
92
78
44
40
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
91
92
93
94
91
90
89
88
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
33
95
92
30
32
96
93
29
31
95
92
28
30
94
91
27
29
93
90
26
28
92
89
25
27
91
88
24
26
90
87
23
25
89
86
22
24
88
85
21
23
87
84
20
22
23
24
25
26
27
28
29
30
31
32
33
34
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
31
30
29
28
27
26
25
24
23
22
21
20
19
21
35
73
70
32
18
20
36
72
69
33
17
19
37
71
68
34
16
18
38
70
67
35
15
17
39
69
66
36
14
16
40
68
65
37
13
15
41
67
64
38
12
2
3
4
5
6
7
8
9
10
11
12
13
14
42
66
63
39
11
10
9
8
7
6
5
4
3
2
1
0
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
68
80
84
83
79
67
67
79
83
82
78
66
66
78
82
81
77
65
65
77
81
80
76
64
64
76
80
79
75
63
63
75
79
78
74
62
62
74
78
77
73
61
61
73
77
76
72
60
60
72
76
75
71
59
59
71
75
74
70
58
58
70
74
73
69
57
57
69
73
109
110
111
112
113
114
114
113
112
111
110
109
108
72
68
56
56
68
72
108
107
71
67
55
55
67
71
107
106
70
66
54
54
66
70
106
105
69
65
53
53
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
105
104
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
52
52
56
70
104
103
69
55
51
51
55
71
103
102
70
54
50
50
54
72
102
101
71
53
49
49
53
73
101
100
72
52
48
48
52
74
100
99
73
51
47
47
51
75
99
98
74
50
46
46
50
76
98
97
75
49
45
45
49
77
97
96
76
48
44
44
48
78
96
95
77
47
43
43
47
79
95
94
78
46
42
42
46
80
94
93
79
45
41
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
32
94
93
31
31
95
94
30
30
94
93
29
29
93
92
28
28
92
91
27
27
91
90
26
26
90
89
25
25
89
88
24
24
88
87
23
23
87
86
22
22
86
85
21
21
22
23
24
25
26
27
28
29
30
31
32
33
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
32
31
30
29
28
27
26
25
24
23
22
21
20
20
34
72
71
33
19
19
35
71
70
34
18
18
36
70
69
35
17
17
37
69
68
36
16
16
38
68
67
37
15
15
39
67
66
38
14
14
40
66
65
39
13
1
2
3
4
5
6
7
8
9
10
11
12
13
41
65
64
40
12
11
10
9
8
7
6
5
4
3
2
1
0
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
68
80
84
106
121
109
67
79
83
105
120
108
66
78
82
104
119
107
65
77
81
103
118
106
64
76
80
102
117
105
63
75
79
101
116
104
62
74
78
100
115
103
61
73
77
99
114
102
60
72
76
98
113
101
59
71
75
97
112
100
58
70
74
96
111
99
57
69
73
71
72
73
74
75
76
77
78
79
80
81
82
83
95
110
98
56
68
72
70
82
94
109
97
55
67
71
69
81
93
108
96
54
66
70
68
80
92
107
95
53
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
67
79
91
92
93
94
95
96
97
98
99
100
100
99
98
99
100
101
102
103
104
105
106
94
52
56
70
66
78
90
97
93
51
55
71
65
77
89
96
92
50
54
72
64
76
88
95
91
49
53
73
63
75
87
94
90
48
52
74
62
74
86
93
89
47
51
73
61
73
85
92
88
46
50
72
60
72
84
91
87
45
49
71
59
71
83
90
86
44
48
70
58
70
82
89
85
43
47
69
57
69
81
88
84
42
46
68
56
68
80
87
83
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
32
54
66
73
31
53
65
72
30
52
64
71
29
51
63
70
28
50
62
69
27
49
61
68
26
48
60
67
25
47
59
66
24
46
58
65
23
45
57
64
22
44
56
63
21
20
19
18
17
16
15
14
13
12
11
10
9
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
74
73
72
71
70
69
68
67
66
65
64
63
62
22
8
30
68
75
61
23
7
29
69
76
60
24
6
28
70
77
59
25
5
27
71
78
58
26
4
26
72
79
57
27
3
25
73
80
56
28
2
24
74
81
55
41
40
39
38
37
36
35
34
33
32
31
30
29
1
23
75
82
54
53
52
51
50
49
48
47
46
45
44
43
42
0
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
90
92
72
84
104
118
89
91
71
83
103
119
88
90
70
82
102
120
87
89
69
81
101
121
86
88
68
80
100
122
85
87
67
79
99
123
84
86
66
78
98
124
83
85
65
77
97
124
82
84
64
76
96
123
81
83
63
75
95
122
80
82
62
74
94
121
79
81
61
49
50
51
52
53
54
55
56
57
58
59
60
61
73
93
120
78
80
60
48
60
72
92
119
77
79
59
47
59
71
91
118
76
78
58
46
58
70
90
117
75
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
116
74
70
56
44
56
68
82
115
73
71
55
43
55
67
83
114
72
72
54
42
54
66
84
113
71
73
53
41
53
65
85
112
70
74
52
40
52
64
86
111
69
73
51
39
51
63
87
110
68
72
50
38
50
62
88
109
67
71
49
37
49
61
89
108
66
70
48
36
48
60
90
107
65
69
47
35
47
59
91
106
64
68
46
34
46
58
92
105
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
45
44
43
42
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
93
94
95
96
97
98
99
100
100
99
98
97
96
97
98
99
100
101
102
103
104
54
32
44
95
53
31
43
94
52
30
42
93
51
29
41
92
50
28
40
91
49
27
39
90
48
26
38
89
47
25
37
88
46
24
36
87
45
23
35
86
44
22
34
85
43
42
41
40
39
38
37
36
35
34
33
32
31
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
85
86
87
88
89
90
90
89
88
87
86
85
84
44
30
8
46
84
83
45
29
7
47
83
82
46
28
6
48
82
81
47
27
5
49
81
80
48
26
4
50
80
79
49
25
3
51
79
78
50
24
2
52
78
77
63
62
61
60
59
58
57
56
55
54
53
52
51
23
1
53
77
76
75
74
73
72
71
70
69
68
67
66
65
64
22
0
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
118
104
84
72
92
90
119
103
83
71
91
89
120
102
82
70
90
88
121
101
81
69
89
87
122
100
80
68
88
86
123
99
79
67
87
85
124
98
78
66
86
84
124
97
77
65
85
83
123
96
76
64
84
82
122
95
75
63
83
81
121
94
74
62
82
80
120
93
73
61
60
59
58
57
56
55
54
53
52
51
50
49
61
81
79
119
92
72
60
48
60
80
78
118
91
71
59
47
59
79
77
117
90
70
58
46
58
78
76
116
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
75
115
82
68
56
44
56
70
74
114
83
67
55
43
55
71
73
113
84
66
54
42
54
72
72
112
85
65
53
41
53
73
71
111
86
64
52
40
52
74
70
110
87
63
51
39
51
73
69
109
88
62
50
38
50
72
68
108
89
61
49
37
49
71
67
107
90
60
48
36
48
70
66
106
91
59
47
35
47
69
65
105
92
58
46
34
46
68
64
104
103
102
101
100
99
98
97
96
97
98
99
100
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
37
38
39
40
41
42
43
44
45
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
95
44
32
54
94
43
31
53
93
42
30
52
92
41
29
51
91
40
28
50
90
39
27
49
89
38
26
48
88
37
25
47
87
36
24
46
86
35
23
45
85
34
22
44
84
85
86
87
88
89
90
90
89
88
87
86
85
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
31
32
33
34
35
36
37
38
39
40
41
42
43
83
84
46
8
30
44
82
83
47
7
29
45
81
82
48
6
28
46
80
81
49
5
27
47
79
80
50
4
26
48
78
79
51
3
25
49
77
78
52
2
24
50
64
65
66
67
68
69
70
71
72
73
74
75
76
77
53
1
23
51
52
53
54
55
56
57
58
59
60
61
62
63
76
54
0
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
109
121
106
84
80
68
108
120
105
83
79
67
107
119
104
82
78
66
106
118
103
81
77
65
105
117
102
80
76
64
104
116
101
79
75
63
103
115
100
78
74
62
102
114
99
77
73
61
101
113
98
76
72
60
100
112
97
75
71
59
99
111
96
74
70
58
98
110
95
83
82
81
80
79
78
77
76
75
74
73
72
71
73
69
57
97
109
94
82
70
72
68
56
96
108
93
81
69
71
67
55
95
107
92
80
68
70
66
54
94
106
105
104
103
102
101
100
99
98
99
100
100
99
98
97
96
95
94
93
92
91
79
67
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
53
93
97
90
78
66
70
56
52
92
96
89
77
65
71
55
51
91
95
88
76
64
72
54
50
90
94
87
75
63
73
53
49
89
93
86
74
62
74
52
48
88
92
85
73
61
73
51
47
87
91
84
72
60
72
50
46
86
90
83
71
59
71
49
45
85
89
82
70
58
70
48
44
84
88
81
69
57
69
47
43
83
87
80
68
56
68
46
42
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
73
66
54
32
72
65
53
31
71
64
52
30
70
63
51
29
69
62
50
28
68
61
49
27
67
60
48
26
66
59
47
25
65
58
46
24
64
57
45
23
63
56
44
22
62
63
64
65
66
67
68
69
70
71
72
73
74
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
40
39
38
37
36
35
34
33
32
31
9
10
11
12
13
14
15
16
17
18
19
20
21
61
75
68
30
8
22
60
76
69
29
7
23
59
77
70
28
6
24
58
78
71
27
5
25
57
79
72
26
4
26
56
80
73
25
3
27
55
81
74
24
2
28
42
43
44
45
46
47
48
49
50
51
52
53
54
82
75
23
1
29
30
31
32
33
34
35
36
37
38
39
40
41
83
76
22
0
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
69
81
85
105
122
110
68
80
84
104
121
109
67
79
83
103
120
108
66
78
82
102
119
107
65
77
81
101
118
106
64
76
80
100
117
105
63
75
79
99
116
104
62
74
78
98
115
103
61
73
77
97
114
102
60
72
76
96
113
101
59
71
75
95
112
100
58
70
74
70
71
72
73
74
75
76
77
78
79
80
81
82
94
111
99
57
69
73
69
81
93
110
98
56
68
72
68
80
92
109
97
55
67
71
67
79
91
108
96
54
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
66
78
90
91
92
93
94
95
96
97
98
99
100
100
99
100
101
102
103
104
105
106
107
95
53
57
71
65
77
89
98
94
52
56
72
64
76
88
97
93
51
55
73
63
75
87
96
92
50
54
74
62
74
86
95
91
49
53
73
61
73
85
94
90
48
52
72
60
72
84
93
89
47
51
71
59
71
83
92
88
46
50
70
58
70
82
91
87
45
49
69
57
69
81
90
86
44
48
68
56
68
80
89
85
43
47
67
55
67
79
88
84
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
33
53
65
74
32
52
64
73
31
51
63
72
30
50
62
71
29
49
61
70
28
48
60
69
27
47
59
68
26
46
58
67
25
45
57
66
24
44
56
65
23
43
55
64
22
21
20
19
18
17
16
15
14
13
12
11
10
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
75
74
73
72
71
70
69
68
67
66
65
64
63
23
9
29
67
76
62
24
8
28
68
77
61
25
7
27
69
78
60
26
6
26
70
79
59
27
5
25
71
80
58
28
4
24
72
81
57
29
3
23
73
82
56
42
41
40
39
38
37
36
35
34
33
32
31
30
2
22
74
83
55
54
53
52
51
50
49
48
47
46
45
44
43
1
21
75
84
0
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
89
93
73
85
105
119
88
92
72
84
104
120
87
91
71
83
103
121
86
90
70
82
102
122
85
89
69
81
101
123
84
88
68
80
100
124
83
87
67
79
99
124
82
86
66
78
98
123
81
85
65
77
97
122
80
84
64
76
96
121
79
83
63
75
95
120
78
82
62
50
51
52
53
54
55
56
57
58
59
60
61
62
74
94
119
77
81
61
49
61
73
93
118
76
80
60
48
60
72
92
117
75
79
59
47
59
71
91
116
74
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
115
73
71
57
45
57
69
83
114
72
72
56
44
56
68
84
113
71
73
55
43
55
67
85
112
70
74
54
42
54
66
86
111
69
73
53
41
53
65
87
110
68
72
52
40
52
64
88
109
67
71
51
39
51
63
89
108
66
70
50
38
50
62
90
107
65
69
49
37
49
61
91
106
64
68
48
36
48
60
92
105
63
67
47
35
47
59
93
104
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
46
45
44
43
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
94
95
96
97
98
99
100
100
99
98
97
96
95
96
97
98
99
100
101
102
103
53
33
45
94
52
32
44
93
51
31
43
92
50
30
42
91
49
29
41
90
48
28
40
89
47
27
39
88
46
26
38
87
45
25
37
86
44
24
36
85
43
23
35
84
42
41
40
39
38
37
36
35
34
33
32
31
30
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
86
87
88
89
90
90
89
88
87
86
85
84
83
43
29
9
47
85
82
44
28
8
48
84
81
45
27
7
49
83
80
46
26
6
50
82
79
47
25
5
51
81
78
48
24
4
52
80
77
49
23
3
53
79
76
62
61
60
59
58
57
56
55
54
53
52
51
50
22
2
54
78
75
74
73
72
71
70
69
68
67
66
65
64
63
21
1
55
77
20
0
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
119
105
85
73
93
89
120
104
84
72
92
88
121
103
83
71
91
87
122
102
82
70
90
86
123
101
81
69
89
85
124
100
80
68
88
84
124
99
79
67
87
83
123
98
78
66
86
82
122
97
77
65
85
81
121
96
76
64
84
80
120
95
75
63
83
79
119
94
74
62
61
60
59
58
57
56
55
54
53
52
51
50
62
82
78
118
93
73
61
49
61
81
77
117
92
72
60
48
60
80
76
116
91
71
59
47
59
79
75
115
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
74
114
83
69
57
45
57
71
73
113
84
68
56
44
56
72
72
112
85
67
55
43
55
73
71
111
86
66
54
42
54
74
70
110
87
65
53
41
53
73
69
109
88
64
52
40
52
72
68
108
89
63
51
39
51
71
67
107
90
62
50
38
50
70
66
106
91
61
49
37
49
69
65
105
92
60
48
36
48
68
64
104
93
59
47
35
47
67
63
103
102
101
100
99
98
97
96
95
96
97
98
99
100
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
37
38
39
40
41
42
43
44
45
46
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
94
45
33
53
93
44
32
52
92
43
31
51
91
42
30
50
90
41
29
49
89
40
28
48
88
39
27
47
87
38
26
46
86
37
25
45
85
36
24
44
84
35
23
43
83
84
85
86
87
88
89
90
90
89
88
87
86
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
30
31
32
33
34
35
36
37
38
39
40
41
42
82
85
47
9
29
43
81
84
48
8
28
44
80
83
49
7
27
45
79
82
50
6
26
46
78
81
51
5
25
47
77
80
52
4
24
48
76
79
53
3
23
49
63
64
65
66
67
68
69
70
71
72
73
74
75
78
54
2
22
50
51
52
53
54
55
56
57
58
59
60
61
62
77
55
1
21
76
56
0
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
110
122
105
85
81
69
109
121
104
84
80
68
108
120
103
83
79
67
107
119
102
82
78
66
106
118
101
81
77
65
105
117
100
80
76
64
104
116
99
79
75
63
103
115
98
78
74
62
102
114
97
77
73
61
101
113
96
76
72
60
100
112
95
75
71
59
99
111
94
82
81
80
79
78
77
76
75
74
73
72
71
70
74
70
58
98
110
93
81
69
73
69
57
97
109
92
80
68
72
68
56
96
108
91
79
67
71
67
55
95
107
106
105
104
103
102
101
100
99
100
100
99
98
97
96
95
94
93
92
91
90
78
66
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
54
94
98
89
77
65
71
57
53
93
97
88
76
64
72
56
52
92
96
87
75
63
73
55
51
91
95
86
74
62
74
54
50
90
94
85
73
61
73
53
49
89
93
84
72
60
72
52
48
88
92
83
71
59
71
51
47
87
91
82
70
58
70
50
46
86
90
81
69
57
69
49
45
85
89
80
68
56
68
48
44
84
88
79
67
55
67
47
43
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
74
65
53
33
73
64
52
32
72
63
51
31
71
62
50
30
70
61
49
29
69
60
48
28
68
59
47
27
67
58
46
26
66
57
45
25
65
56
44
24
64
55
43
23
63
64
65
66
67
68
69
70
71
72
73
74
75
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
40
39
38
37
36
35
34
33
32
31
30
10
11
12
13
14
15
16
17
18
19
20
21
22
62
76
67
29
9
23
61
77
68
28
8
24
60
78
69
27
7
25
59
79
70
26
6
26
58
80
71
25
5
27
57
81
72
24
4
28
56
82
73
23
3
29
43
44
45
46
47
48
49
50
51
52
53
54
55
83
74
22
2
30
31
32
33
34
35
36
37
38
39
40
41
42
84
75
21
1
85
76
20
0
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
70
82
86
104
123
111
69
81
85
103
122
110
68
80
84
102
121
109
67
79
83
101
120
108
66
78
82
100
119
107
65
77
81
99
118
106
64
76
80
98
117
105
63
75
79
97
116
104
62
74
78
96
115
103
61
73
77
95
114
102
60
72
76
94
113
101
59
71
75
69
70
71
72
73
74
75
76
77
78
79
80
81
93
112
100
58
70
74
68
80
92
111
99
57
69
73
67
79
91
110
98
56
68
72
66
78
90
109
97
55
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
65
77
89
90
91
92
93
94
95
96
97
98
99
100
100
101
102
103
104
105
106
107
108
96
54
58
72
64
76
88
99
95
53
57
73
63
75
87
98
94
52
56
74
62
74
86
97
93
51
55
73
61
73
85
96
92
50
54
72
60
72
84
95
91
49
53
71
59
71
83
94
90
48
52
70
58
70
82
93
89
47
51
69
57
69
81
92
88
46
50
68
56
68
80
91
87
45
49
67
55
67
79
90
86
44
48
66
54
66
78
89
85
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
34
52
64
75
33
51
63
74
32
50
62
73
31
49
61
72
30
48
60
71
29
47
59
70
28
46
58
69
27
45
57
68
26
44
56
67
25
43
55
66
24
42
54
65
23
22
21
20
19
18
17
16
15
14
13
12
11
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
76
75
74
73
72
71
70
69
68
67
66
65
64
24
10
28
66
77
63
25
9
27
67
78
62
26
8
26
68
79
61
27
7
25
69
80
60
28
6
24
70
81
59
29
5
23
71
82
58
30
4
22
72
83
57
43
42
41
40
39
38
37
36
35
34
33
32
31
3
21
73
84
56
55
54
53
52
51
50
49
48
47
46
45
44
2
20
74
85
1
19
75
86
0
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
88
94
74
86
106
120
87
93
73
85
105
121
86
92
72
84
104
122
85
91
71
83
103
123
84
90
70
82
102
124
83
89
69
81
101
124
82
88
68
80
100
123
81
87
67
79
99
122
80
86
66
78
98
121
79
85
65
77
97
120
78
84
64
76
96
119
77
83
63
51
52
53
54
55
56
57
58
59
60
61
62
63
75
95
118
76
82
62
50
62
74
94
117
75
81
61
49
61
73
93
116
74
80
60
48
60
72
92
115
73
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
114
72
72
58
46
58
70
84
113
71
73
57
45
57
69
85
112
70
74
56
44
56
68
86
111
69
73
55
43
55
67
87
110
68
72
54
42
54
66
88
109
67
71
53
41
53
65
89
108
66
70
52
40
52
64
90
107
65
69
51
39
51
63
91
106
64
68
50
38
50
62
92
105
63
67
49
37
49
61
93
104
62
66
48
36
48
60
94
103
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
47
46
45
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
95
96
97
98
99
100
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
52
34
46
93
51
33
45
92
50
32
44
91
49
31
43
90
48
30
42
89
47
29
41
88
46
28
40
87
45
27
39
86
44
26
38
85
43
25
37
84
42
24
36
83
41
40
39
38
37
36
35
34
33
32
31
30
29
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
85
86
87
88
89
89
88
87
86
85
84
83
82
42
28
10
48
84
81
43
27
9
49
83
80
44
26
8
50
82
79
45
25
7
51
81
78
46
24
6
52
80
77
47
23
5
53
79
76
48
22
4
54
78
75
61
60
59
58
57
56
55
54
53
52
51
50
49
21
3
55
77
74
73
72
71
70
69
68
67
66
65
64
63
62
20
2
56
76
19
1
57
75
18
0
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
120
106
86
74
94
88
121
105
85
73
93
87
122
104
84
72
92
86
123
103
83
71
91
85
124
102
82
70
90
84
124
101
81
69
89
83
123
100
80
68
88
82
122
99
79
67
87
81
121
98
78
66
86
80
120
97
77
65
85
79
119
96
76
64
84
78
118
95
75
63
62
61
60
59
58
57
56
55
54
53
52
51
63
83
77
117
94
74
62
50
62
82
76
116
93
73
61
49
61
81
75
115
92
72
60
48
60
80
74
114
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
73
113
84
70
58
46
58
72
72
112
85
69
57
45
57
73
71
111
86
68
56
44
56
74
70
110
87
67
55
43
55
73
69
109
88
66
54
42
54
72
68
108
89
65
53
41
53
71
67
107
90
64
52
40
52
70
66
106
91
63
51
39
51
69
65
105
92
62
50
38
50
68
64
104
93
61
49
37
49
67
63
103
94
60
48
36
48
66
62
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
45
46
47
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
93
46
34
52
92
45
33
51
91
44
32
50
90
43
31
49
89
42
30
48
88
41
29
47
87
40
28
46
86
39
27
45
85
38
26
44
84
37
25
43
83
36
24
42
82
83
84
85
86
87
88
89
89
88
87
86
85
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
29
30
31
32
33
34
35
36
37
38
39
40
41
81
84
48
10
28
42
80
83
49
9
27
43
79
82
50
8
26
44
78
81
51
7
25
45
77
80
52
6
24
46
76
79
53
5
23
47
75
78
54
4
22
48
62
63
64
65
66
67
68
69
70
71
72
73
74
77
55
3
21
49
50
51
52
53
54
55
56
57
58
59
60
61
76
56
2
20
75
57
1
19
74
58
0
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
111
123
104
86
82
70
110
122
103
85
81
69
109
121
102
84
80
68
108
120
101
83
79
67
107
119
100
82
78
66
106
118
99
81
77
65
105
117
98
80
76
64
104
116
97
79
75
63
103
115
96
78
74
62
102
114
95
77
73
61
101
113
94
76
72
60
100
112
93
81
80
79
78
77
76
75
74
73
72
71
70
69
75
71
59
99
111
92
80
68
74
70
58
98
110
91
79
67
73
69
57
97
109
90
78
66
72
68
56
96
108
107
106
105
104
103
102
101
100
100
99
98
97
96
95
94
93
92
91
90
89
77
65
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
55
95
99
88
76
64
72
58
54
94
98
87
75
63
73
57
53
93
97
86
74
62
74
56
52
92
96
85
73
61
73
55
51
91
95
84
72
60
72
54
50
90
94
83
71
59
71
53
49
89
93
82
70
58
70
52
48
88
92
81
69
57
69
51
47
87
91
80
68
56
68
50
46
86
90
79
67
55
67
49
45
85
89
78
66
54
66
48
44
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
75
64
52
34
74
63
51
33
73
62
50
32
72
61
49
31
71
60
48
30
70
59
47
29
69
58
46
28
68
57
45
27
67
56
44
26
66
55
43
25
65
54
42
24
64
65
66
67
68
69
70
71
72
73
74
75
76
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
40
39
38
37
36
35
34
33
32
31
30
29
11
12
13
14
15
16
17
18
19
20
21
22
23
63
77
66
28
10
24
62
78
67
27
9
25
61
79
68
26
8
26
60
80
69
25
7
27
59
81
70
24
6
28
58
82
71
23
5
29
57
83
72
22
4
30
44
45
46
47
48
49
50
51
52
53
54
55
56
84
73
21
3
31
32
33
34
35
36
37
38
39
40
41
42
43
85
74
20
2
86
75
19
1
86
74
18
0
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
71
83
87
103
123
112
70
82
86
102
122
111
69
81
85
101
121
110
68
80
84
100
120
109
67
79
83
99
119
108
66
78
82
98
118
107
65
77
81
97
117
106
64
76
80
96
116
105
63
75
79
95
115
104
62
74
78
94
114
103
61
73
77
93
113
102
60
72
76
68
69
70
71
72
73
74
75
76
77
78
79
80
92
112
101
59
71
75
67
79
91
111
100
58
70
74
66
78
90
110
99
57
69
73
65
77
89
109
98
56
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
64
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
97
55
59
73
63
75
87
100
96
54
58
74
62
74
86
99
95
53
57
73
61
73
85
98
94
52
56
72
60
72
84
97
93
51
55
71
59
71
83
96
92
50
54
70
58
70
82
95
91
49
53
69
57
69
81
94
90
48
52
68
56
68
80
93
89
47
51
67
55
67
79
92
88
46
50
66
54
66
78
91
87
45
49
65
53
65
77
90
86
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
35
51
63
76
34
50
62
75
33
49
61
74
32
48
60
73
31
47
59
72
30
46
58
71
29
45
57
70
28
44
56
69
27
43
55
68
26
42
54
67
25
41
53
66
24
23
22
21
20
19
18
17
16
15
14
13
12
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
77
76
75
74
73
72
71
70
69
68
67
66
65
25
11
27
65
78
64
26
10
26
66
79
63
27
9
25
67
80
62
28
8
24
68
81
61
29
7
23
69
82
60
30
6
22
70
83
59
31
5
21
71
84
58
44
43
42
41
40
39
38
37
36
35
34
33
32
4
20
72
85
57
56
55
54
53
52
51
50
49
48
47
46
45
3
19
73
86
2
18
74
86
1
17
73
85
0
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
87
95
75
87
107
121
86
94
74
86
106
122
85
93
73
85
105
123
84
92
72
84
104
124
83
91
71
83
103
124
82
90
70
82
102
123
81
89
69
81
101
122
80
88
68
80
100
121
79
87
67
79
99
120
78
86
66
78
98
119
77
85
65
77
97
118
76
84
64
52
53
54
55
56
57
58
59
60
61
62
63
64
76
96
117
75
83
63
51
63
75
95
116
74
82
62
50
62
74
94
115
73
81
61
49
61
73
93
114
72
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
113
71
73
59
47
59
71
85
112
70
74
58
46
58
70
86
111
69
73
57
45
57
69
87
110
68
72
56
44
56
68
88
109
67
71
55
43
55
67
89
108
66
70
54
42
54
66
90
107
65
69
53
41
53
65
91
106
64
68
52
40
52
64
92
105
63
67
51
39
51
63
93
104
62
66
50
38
50
62
94
103
61
65
49
37
49
61
95
102
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
48
47
46
45
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
96
97
98
99
100
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
51
35
47
92
50
34
46
91
49
33
45
90
48
32
44
89
47
31
43
88
46
30
42
87
45
29
41
86
44
28
40
85
43
27
39
84
42
26
38
83
41
25
37
82
40
39
38
37
36
35
34
33
32
31
30
29
28
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
88
87
86
85
84
83
82
81
41
27
11
49
83
80
42
26
10
50
82
79
43
25
9
51
81
78
44
24
8
52
80
77
45
23
7
53
79
76
46
22
6
54
78
75
47
21
5
55
77
74
60
59
58
57
56
55
54
53
52
51
50
49
48
20
4
56
76
73
72
71
70
69
68
67
66
65
64
63
62
61
19
3
57
75
18
2
58
74
17
1
59
73
16
0
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
121
107
87
75
95
87
122
106
86
74
94
86
123
105
85
73
93
85
124
104
84
72
92
84
124
103
83
71
91
83
123
102
82
70
90
82
122
101
81
69
89
81
121
100
80
68
88
80
120
99
79
67
87
79
119
98
78
66
86
78
118
97
77
65
85
77
117
96
76
64
63
62
61
60
59
58
57
56
55
54
53
52
64
84
76
116
95
75
63
51
63
83
75
115
94
74
62
50
62
82
74
114
93
73
61
49
61
81
73
113
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
72
112
85
71
59
47
59
73
71
111
86
70
58
46
58
74
70
110
87
69
57
45
57
73
69
109
88
68
56
44
56
72
68
108
89
67
55
43
55
71
67
107
90
66
54
42
54
70
66
106
91
65
53
41
53
69
65
105
92
64
52
40
52
68
64
104
93
63
51
39
51
67
63
103
94
62
50
38
50
66
62
102
95
61
49
37
49
65
61
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
45
46
47
48
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
92
47
35
51
91
46
34
50
90
45
33
49
89
44
32
48
88
43
31
47
87
42
30
46
86
41
29
45
85
40
28
44
84
39
27
43
83
38
26
42
82
37
25
41
81
82
83
84
85
86
87
88
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
28
29
30
31
32
33
34
35
36
37
38
39
40
80
83
49
11
27
41
79
82
50
10
26
42
78
81
51
9
25
43
77
80
52
8
24
44
76
79
53
7
23
45
75
78
54
6
22
46
74
77
55
5
21
47
61
62
63
64
65
66
67
68
69
70
71
72
73
76
56
4
20
48
49
50
51
52
53
54
55
56
57
58
59
60
75
57
3
19
74
58
2
18
73
59
1
17
72
60
0
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
112
123
103
87
83
71
111
122
102
86
82
70
110
121
101
85
81
69
109
120
100
84
80
68
108
119
99
83
79
67
107
118
98
82
78
66
106
117
97
81
77
65
105
116
96
80
76
64
104
115
95
79
75
63
103
114
94
78
74
62
102
113
93
77
73
61
101
112
92
80
79
78
77
76
75
74
73
72
71
70
69
68
76
72
60
100
111
91
79
67
75
71
59
99
110
90
78
66
74
70
58
98
109
89
77
65
73
69
57
97
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
64
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
56
96
100
87
75
63
73
59
55
95
99
86
74
62
74
58
54
94
98
85
73
61
73
57
53
93
97
84
72
60
72
56
52
92
96
83
71
59
71
55
51
91
95
82
70
58
70
54
50
90
94
81
69
57
69
53
49
89
93
80
68
56
68
52
48
88
92
79
67
55
67
51
47
87
91
78
66
54
66
50
46
86
90
77
65
53
65
49
45
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
76
63
51
35
75
62
50
34
74
61
49
33
73
60
48
32
72
59
47
31
71
58
46
30
70
57
45
29
69
56
44
28
68
55
43
27
67
54
42
26
66
53
41
25
65
66
67
68
69
70
71
72
73
74
75
76
77
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
12
13
14
15
16
17
18
19
20
21
22
23
24
64
78
65
27
11
25
63
79
66
26
10
26
62
80
67
25
9
27
61
81
68
24
8
28
60
82
69
23
7
29
59
83
70
22
6
30
58
84
71
21
5
31
45
46
47
48
49
50
51
52
53
54
55
56
57
85
72
20
4
32
33
34
35
36
37
38
39
40
41
42
43
44
86
73
19
3
86
74
18
2
85
73
17
1
84
72
16
0
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
72
84
88
102
122
113
71
83
87
101
121
112
70
82
86
100
120
111
69
81
85
99
119
110
68
80
84
98
118
109
67
79
83
97
117
108
66
78
82
96
116
107
65
77
81
95
115
106
64
76
80
94
114
105
63
75
79
93
113
104
62
74
78
92
112
103
61
73
77
67
68
69
70
71
72
73
74
75
76
77
78
79
91
111
102
60
72
76
66
78
90
110
101
59
71
75
65
77
89
109
100
58
70
74
64
76
88
108
99
57
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
63
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
98
56
60
74
62
74
86
100
97
55
59
73
61
73
85
100
96
54
58
72
60
72
84
99
95
53
57
71
59
71
83
98
94
52
56
70
58
70
82
97
93
51
55
69
57
69
81
96
92
50
54
68
56
68
80
95
91
49
53
67
55
67
79
94
90
48
52
66
54
66
78
93
89
47
51
65
53
65
77
92
88
46
50
64
52
64
76
91
87
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
36
50
62
77
35
49
61
76
34
48
60
75
33
47
59
74
32
46
58
73
31
45
57
72
30
44
56
71
29
43
55
70
28
42
54
69
27
41
53
68
26
40
52
67
25
24
23
22
21
20
19
18
17
16
15
14
13
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
78
77
76
75
74
73
72
71
70
69
68
67
66
26
12
26
64
79
65
27
11
25
65
80
64
28
10
24
66
81
63
29
9
23
67
82
62
30
8
22
68
83
61
31
7
21
69
84
60
32
6
20
70
85
59
45
44
43
42
41
40
39
38
37
36
35
34
33
5
19
71
86
58
57
56
55
54
53
52
51
50
49
48
47
46
4
18
72
86
3
17
73
85
2
16
72
84
1
15
71
83
0
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
86
96
76
88
108
122
85
95
75
87
107
123
84
94
74
86
106
124
83
93
73
85
105
124
82
92
72
84
104
123
81
91
71
83
103
122
80
90
70
82
102
121
79
89
69
81
101
120
78
88
68
80
100
119
77
87
67
79
99
118
76
86
66
78
98
117
75
85
65
53
54
55
56
57
58
59
60
61
62
63
64
65
77
97
116
74
84
64
52
64
76
96
115
73
83
63
51
63
75
95
114
72
82
62
50
62
74
94
113
71
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
112
70
74
60
48
60
72
86
111
69
73
59
47
59
71
87
110
68
72
58
46
58
70
88
109
67
71
57
45
57
69
89
108
66
70
56
44
56
68
90
107
65
69
55
43
55
67
91
106
64
68
54
42
54
66
92
105
63
67
53
41
53
65
93
104
62
66
52
40
52
64
94
103
61
65
51
39
51
63
95
102
60
64
50
38
50
62
96
101
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
49
48
47
46
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
97
98
99
100
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
50
36
48
91
49
35
47
90
48
34
46
89
47
33
45
88
46
32
44
87
45
31
43
86
44
30
42
85
43
29
41
84
42
28
40
83
41
27
39
82
40
26
38
81
39
38
37
36
35
34
33
32
31
30
29
28
27
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
83
84
85
86
87
87
86
85
84
83
82
81
80
40
26
12
50
82
79
41
25
11
51
81
78
42
24
10
52
80
77
43
23
9
53
79
76
44
22
8
54
78
75
45
21
7
55
77
74
46
20
6
56
76
73
59
58
57
56
55
54
53
52
51
50
49
48
47
19
5
57
75
72
71
70
69
68
67
66
65
64
63
62
61
60
18
4
58
74
17
3
59
73
16
2
60
72
15
1
59
71
14
0
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
122
108
88
76
96
86
123
107
87
75
95
85
124
106
86
74
94
84
124
105
85
73
93
83
123
104
84
72
92
82
122
103
83
71
91
81
121
102
82
70
90
80
120
101
81
69
89
79
119
100
80
68
88
78
118
99
79
67
87
77
117
98
78
66
86
76
116
97
77
65
64
63
62
61
60
59
58
57
56
55
54
53
65
85
75
115
96
76
64
52
64
84
74
114
95
75
63
51
63
83
73
113
94
74
62
50
62
82
72
112
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
71
111
86
72
60
48
60
74
70
110
87
71
59
47
59
73
69
109
88
70
58
46
58
72
68
108
89
69
57
45
57
71
67
107
90
68
56
44
56
70
66
106
91
67
55
43
55
69
65
105
92
66
54
42
54
68
64
104
93
65
53
41
53
67
63
103
94
64
52
40
52
66
62
102
95
63
51
39
51
65
61
101
96
62
50
38
50
64
60
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
100
99
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
46
47
48
49
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
91
48
36
50
90
47
35
49
89
46
34
48
88
45
33
47
87
44
32
46
86
43
31
45
85
42
30
44
84
41
29
43
83
40
28
42
82
39
27
41
81
38
26
40
80
81
82
83
84
85
86
87
87
86
85
84
83
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
27
28
29
30
31
32
33
34
35
36
37
38
39
79
82
50
12
26
40
78
81
51
11
25
41
77
80
52
10
24
42
76
79
53
9
23
43
75
78
54
8
22
44
74
77
55
7
21
45
73
76
56
6
20
46
60
61
62
63
64
65
66
67
68
69
70
71
72
75
57
5
19
47
48
49
50
51
52
53
54
55
56
57
58
59
74
58
4
18
73
59
3
17
72
60
2
16
71
59
1
15
70
58
0
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
113
122
102
88
84
72
112
121
101
87
83
71
111
120
100
86
82
70
110
119
99
85
81
69
109
118
98
84
80
68
108
117
97
83
79
67
107
116
96
82
78
66
106
115
95
81
77
65
105
114
94
80
76
64
104
113
93
79
75
63
103
112
92
78
74
62
102
111
91
79
78
77
76
75
74
73
72
71
70
69
68
67
77
73
61
101
110
90
78
66
76
72
60
100
109
89
77
65
75
71
59
99
108
88
76
64
74
70
58
98
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
63
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
57
97
100
86
74
62
74
60
56
96
100
85
73
61
73
59
55
95
99
84
72
60
72
58
54
94
98
83
71
59
71
57
53
93
97
82
70
58
70
56
52
92
96
81
69
57
69
55
51
91
95
80
68
56
68
54
50
90
94
79
67
55
67
53
49
89
93
78
66
54
66
52
48
88
92
77
65
53
65
51
47
87
91
76
64
52
64
50
46
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
77
62
50
36
76
61
49
35
75
60
48
34
74
59
47
33
73
58
46
32
72
57
45
31
71
56
44
30
70
55
43
29
69
54
42
28
68
53
41
27
67
52
40
26
66
67
68
69
70
71
72
73
74
75
76
77
78
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
13
14
15
16
17
18
19
20
21
22
23
24
25
65
79
64
26
12
26
64
80
65
25
11
27
63
81
66
24
10
28
62
82
67
23
9
29
61
83
68
22
8
30
60
84
69
21
7
31
59
85
70
20
6
32
46
47
48
49
50
51
52
53
54
55
56
57
58
86
71
19
5
33
34
35
36
37
38
39
40
41
42
43
44
45
86
72
18
4
85
73
17
3
84
72
16
2
83
71
15
1
82
70
14
0
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
73
85
89
101
121
114
72
84
88
100
120
113
71
83
87
99
119
112
70
82
86
98
118
111
69
81
85
97
117
110
68
80
84
96
116
109
67
79
83
95
115
108
66
78
82
94
114
107
65
77
81
93
113
106
64
76
80
92
112
105
63
75
79
91
111
104
62
74
78
66
67
68
69
70
71
72
73
74
75
76
77
78
90
110
103
61
73
77
65
77
89
109
102
60
72
76
64
76
88
108
101
59
71
75
63
75
87
107
100
58
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
62
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
99
57
61
73
61
73
85
99
98
56
60
72
60
72
84
100
97
55
59
71
59
71
83
100
96
54
58
70
58
70
82
99
95
53
57
69
57
69
81
98
94
52
56
68
56
68
80
97
93
51
55
67
55
67
79
96
92
50
54
66
54
66
78
95
91
49
53
65
53
65
77
94
90
48
52
64
52
64
76
93
89
47
51
63
51
63
75
92
88
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
62
61
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
37
49
61
78
36
48
60
77
35
47
59
76
34
46
58
75
33
45
57
74
32
44
56
73
31
43
55
72
30
42
54
71
29
41
53
70
28
40
52
69
27
39
51
68
26
25
24
23
22
21
20
19
18
17
16
15
14
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
79
78
77
76
75
74
73
72
71
70
69
68
67
27
13
25
63
80
66
28
12
24
64
81
65
29
11
23
65
82
64
30
10
22
66
83
63
31
9
21
67
84
62
32
8
20
68
85
61
33
7
19
69
86
60
46
45
44
43
42
41
40
39
38
37
36
35
34
6
18
70
86
59
58
57
56
55
54
53
52
51
50
49
48
47
5
17
71
85
4
16
72
84
3
15
71
83
2
14
70
82
1
13
69
81
0
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
74
86
88
100
120
115
73
85
87
99
119
114
72
84
86
98
118
113
71
83
85
97
117
112
70
82
84
96
116
111
69
81
83
95
115
110
68
80
82
94
114
109
67
79
81
93
113
108
66
78
80
92
112
107
65
77
79
91
111
106
64
76
78
90
110
105
63
75
77
65
66
67
68
69
70
71
72
73
74
75
76
77
89
109
104
62
74
76
64
76
88
108
103
61
73
75
63
75
87
107
102
60
72
74
62
74
86
106
101
59
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
73
61
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
100
58
62
72
60
72
84
98
99
57
61
71
59
71
83
99
98
56
60
70
58
70
82
100
97
55
59
69
57
69
81
100
96
54
58
68
56
68
80
99
95
53
57
67
55
67
79
98
94
52
56
66
54
66
78
97
93
51
55
65
53
65
77
96
92
50
54
64
52
64
76
95
91
49
53
63
51
63
75
94
90
48
52
62
50
62
74
93
89
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
61
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
38
48
60
79
37
47
59
78
36
46
58
77
35
45
57
76
34
44
56
75
33
43
55
74
32
42
54
73
31
41
53
72
30
40
52
71
29
39
51
70
28
38
50
69
27
26
25
24
23
22
21
20
19
18
17
16
15
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
80
79
78
77
76
75
74
73
72
71
70
69
68
28
14
24
62
81
67
29
13
23
63
82
66
30
12
22
64
83
65
31
11
21
65
84
64
32
10
20
66
85
63
33
9
19
67
86
62
34
8
18
68
86
61
47
46
45
44
43
42
41
40
39
38
37
36
35
7
17
69
85
60
59
58
57
56
55
54
53
52
51
50
49
48
6
16
70
84
5
15
71
83
4
14
70
82
3
13
69
81
2
12
68
80
1
0
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
75
87
87
99
119
116
74
86
86
98
118
115
73
85
85
97
117
114
72
84
84
96
116
113
71
83
83
95
115
112
70
82
82
94
114
111
69
81
81
93
113
110
68
80
80
92
112
109
67
79
79
91
111
108
66
78
78
90
110
107
65
77
77
89
109
106
64
76
76
64
65
66
67
68
69
70
71
72
73
74
75
76
88
108
105
63
75
75
63
75
87
107
104
62
74
74
62
74
86
106
103
61
73
73
61
73
85
105
102
60
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
73
72
60
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
101
59
63
71
59
71
83
97
100
58
62
70
58
70
82
98
99
57
61
69
57
69
81
99
98
56
60
68
56
68
80
100
97
55
59
67
55
67
79
100
96
54
58
66
54
66
78
99
95
53
57
65
53
65
77
98
94
52
56
64
52
64
76
97
93
51
55
63
51
63
75
96
92
50
54
62
50
62
74
95
91
49
53
61
49
61
73
94
90
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
60
59
58
57
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
39
47
59
80
38
46
58
79
37
45
57
78
36
44
56
77
35
43
55
76
34
42
54
75
33
41
53
74
32
40
52
73
31
39
51
72
30
38
50
71
29
37
49
70
28
27
26
25
24
23
22
21
20
19
18
17
16
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
81
80
79
78
77
76
75
74
73
72
71
70
69
29
15
23
61
82
68
30
14
22
62
83
67
31
13
21
63
84
66
32
12
20
64
85
65
33
11
19
65
86
64
34
10
18
66
86
63
35
9
17
67
85
62
48
47
46
45
44
43
42
41
40
39
38
37
36
8
16
68
84
61
60
59
58
57
56
55
54
53
52
51
50
49
7
15
69
83
6
14
70
82
5
13
69
81
4
12
68
80
3
11
67
79
2
1
0
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
76
88
86
98
118
117
75
87
85
97
117
116
74
86
84
96
116
115
73
85
83
95
115
114
72
84
82
94
114
113
71
83
81
93
113
112
70
82
80
92
112
111
69
81
79
91
111
110
68
80
78
90
110
109
67
79
77
89
109
108
66
78
76
88
108
107
65
77
75
63
64
65
66
67
68
69
70
71
72
73
74
75
87
107
106
64
76
74
62
74
86
106
105
63
75
73
61
73
85
105
104
62
74
72
60
72
84
104
103
61
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
73
72
71
59
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
60
64
70
58
70
82
96
101
59
63
69
57
69
81
97
100
58
62
68
56
68
80
98
99
57
61
67
55
67
79
99
98
56
60
66
54
66
78
100
97
55
59
65
53
65
77
100
96
54
58
64
52
64
76
99
95
53
57
63
51
63
75
98
94
52
56
62
50
62
74
97
93
51
55
61
49
61
73
96
92
50
54
60
48
60
72
95
91
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
59
58
57
56
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
40
46
58
81
39
45
57
80
38
44
56
79
37
43
55
78
36
42
54
77
35
41
53
76
34
40
52
75
33
39
51
74
32
38
50
73
31
37
49
72
30
36
48
71
29
28
27
26
25
24
23
22
21
20
19
18
17
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
82
81
80
79
78
77
76
75
74
73
72
71
70
30
16
22
60
83
69
31
15
21
61
84
68
32
14
20
62
85
67
33
13
19
63
86
66
34
12
18
64
86
65
35
11
17
65
85
64
36
10
16
66
84
63
49
48
47
46
45
44
43
42
41
40
39
38
37
9
15
67
83
62
61
60
59
58
57
56
55
54
53
52
51
50
8
14
68
82
7
13
69
81
6
12
68
80
5
11
67
79
4
10
66
78
3
2
1
0
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
77
89
85
97
117
118
76
88
84
96
116
117
75
87
83
95
115
116
74
86
82
94
114
115
73
85
81
93
113
114
72
84
80
92
112
113
71
83
79
91
111
112
70
82
78
90
110
111
69
81
77
89
109
110
68
80
76
88
108
109
67
79
75
87
107
108
66
78
74
62
63
64
65
66
67
68
69
70
71
72
73
74
86
106
107
65
77
73
61
73
85
105
106
64
76
72
60
72
84
104
105
63
75
71
59
71
83
103
104
62
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
73
72
71
70
58
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
61
65
69
57
69
81
95
102
60
64
68
56
68
80
96
101
59
63
67
55
67
79
97
100
58
62
66
54
66
78
98
99
57
61
65
53
65
77
99
98
56
60
64
52
64
76
100
97
55
59
63
51
63
75
100
96
54
58
62
50
62
74
99
95
53
57
61
49
61
73
98
94
52
56
60
48
60
72
97
93
51
55
59
47
59
71
96
92
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
58
57
56
55
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
41
45
57
82
40
44
56
81
39
43
55
80
38
42
54
79
37
41
53
78
36
40
52
77
35
39
51
76
34
38
50
75
33
37
49
74
32
36
48
73
31
35
47
72
30
29
28
27
26
25
24
23
22
21
20
19
18
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
83
82
81
80
79
78
77
76
75
74
73
72
71
31
17
21
59
84
70
32
16
20
60
85
69
33
15
19
61
86
68
34
14
18
62
86
67
35
13
17
63
85
66
36
12
16
64
84
65
37
11
15
65
83
64
50
49
48
47
46
45
44
43
42
41
40
39
38
10
14
66
82
63
62
61
60
59
58
57
56
55
54
53
52
51
9
13
67
81
8
12
68
80
7
11
67
79
6
10
66
78
5
9
65
77
4
3
2
1
0
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
78
90
84
96
116
119
77
89
83
95
115
118
76
88
82
94
114
117
75
87
81
93
113
116
74
86
80
92
112
115
73
85
79
91
111
114
72
84
78
90
110
113
71
83
77
89
109
112
70
82
76
88
108
111
69
81
75
87
107
110
68
80
74
86
106
109
67
79
73
61
62
63
64
65
66
67
68
69
70
71
72
73
85
105
108
66
78
72
60
72
84
104
107
65
77
71
59
71
83
103
106
64
76
70
58
70
82
102
105
63
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
73
72
71
70
69
57
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
104
62
66
68
56
68
80
94
103
61
65
67
55
67
79
95
102
60
64
66
54
66
78
96
101
59
63
65
53
65
77
97
100
58
62
64
52
64
76
98
99
57
61
63
51
63
75
99
98
56
60
62
50
62
74
100
97
55
59
61
49
61
73
100
96
54
58
60
48
60
72
99
95
53
57
59
47
59
71
98
94
52
56
58
46
58
70
97
93
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
57
56
55
54
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
42
44
56
83
41
43
55
82
40
42
54
81
39
41
53
80
38
40
52
79
37
39
51
78
36
38
50
77
35
37
49
76
34
36
48
75
33
35
47
74
32
34
46
73
31
30
29
28
27
26
25
24
23
22
21
20
19
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
84
83
82
81
80
79
78
77
76
75
74
73
72
32
18
20
58
85
71
33
17
19
59
86
70
34
16
18
60
86
69
35
15
17
61
85
68
36
14
16
62
84
67
37
13
15
63
83
66
38
12
14
64
82
65
51
50
49
48
47
46
45
44
43
42
41
40
39
11
13
65
81
64
63
62
61
60
59
58
57
56
55
54
53
52
10
12
66
80
9
11
67
79
8
10
66
78
7
9
65
77
6
8
64
76
5
4
3
2
1
0
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
121
79
91
83
95
115
120
78
90
82
94
114
119
77
89
81
93
113
118
76
88
80
92
112
117
75
87
79
91
111
116
74
86
78
90
110
115
73
85
77
89
109
114
72
84
76
88
108
113
71
83
75
87
107
112
70
82
74
86
106
111
69
81
73
85
105
110
68
80
72
60
61
62
63
64
65
66
67
68
69
70
71
72
84
104
109
67
79
71
59
71
83
103
108
66
78
70
58
70
82
102
107
65
77
69
57
69
81
101
106
64
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
73
72
71
70
69
68
56
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
105
63
67
67
55
67
79
93
104
62
66
66
54
66
78
94
103
61
65
65
53
65
77
95
102
60
64
64
52
64
76
96
101
59
63
63
51
63
75
97
100
58
62
62
50
62
74
98
99
57
61
61
49
61
73
99
98
56
60
60
48
60
72
100
97
55
59
59
47
59
71
100
96
54
58
58
46
58
70
99
95
53
57
57
45
57
69
98
94
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
56
55
54
53
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
43
43
55
84
42
42
54
83
41
41
53
82
40
40
52
81
39
39
51
80
38
38
50
79
37
37
49
78
36
36
48
77
35
35
47
76
34
34
46
75
33
33
45
74
32
31
30
29
28
27
26
25
24
23
22
21
20
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
85
84
83
82
81
80
79
78
77
76
75
74
73
33
19
19
57
86
72
34
18
18
58
86
71
35
17
17
59
85
70
36
16
16
60
84
69
37
15
15
61
83
68
38
14
14
62
82
67
39
13
13
63
81
66
52
51
50
49
48
47
46
45
44
43
42
41
40
12
12
64
80
65
64
63
62
61
60
59
58
57
56
55
54
53
11
11
65
79
10
10
66
78
9
9
65
77
8
8
64
76
7
7
63
75
6
5
4
3
2
1
0
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
122
80
92
82
94
114
121
79
91
81
93
113
120
78
90
80
92
112
119
77
89
79
91
111
118
76
88
78
90
110
117
75
87
77
89
109
116
74
86
76
88
108
115
73
85
75
87
107
114
72
84
74
86
106
113
71
83
73
85
105
112
70
82
72
84
104
111
69
81
71
59
60
61
62
63
64
65
66
67
68
69
70
71
83
103
110
68
80
70
58
70
82
102
109
67
79
69
57
69
81
101
108
66
78
68
56
68
80
100
107
65
77
76
75
74
73
72
71
70
69
70
71
72
73
74
73
72
71
70
69
68
67
55
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
106
64
68
66
54
66
78
92
105
63
67
65
53
65
77
93
104
62
66
64
52
64
76
94
103
61
65
63
51
63
75
95
102
60
64
62
50
62
74
96
101
59
63
61
49
61
73
97
100
58
62
60
48
60
72
98
99
57
61
59
47
59
71
99
98
56
60
58
46
58
70
100
97
55
59
57
45
57
69
100
96
54
58
56
44
56
68
99
95
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
55
54
53
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
44
42
54
85
43
41
53
84
42
40
52
83
41
39
51
82
40
38
50
81
39
37
49
80
38
36
48
79
37
35
47
78
36
34
46
77
35
33
45
76
34
32
44
75
33
32
31
30
29
28
27
26
25
24
23
22
21
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
86
85
84
83
82
81
80
79
78
77
76
75
74
34
20
18
56
86
73
35
19
17
57
85
72
36
18
16
58
84
71
37
17
15
59
83
70
38
16
14
60
82
69
39
15
13
61
81
68
40
14
12
62
80
67
53
52
51
50
49
48
47
46
45
44
43
42
41
13
11
63
79
66
65
64
63
62
61
60
59
58
57
56
55
54
12
10
64
78
11
9
65
77
10
8
64
76
9
7
63
75
8
6
62
74
7
6
5
4
3
2
1
0
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
123
81
93
81
93
113
122
80
92
80
92
112
121
79
91
79
91
111
120
78
90
78
90
110
119
77
89
77
89
109
118
76
88
76
88
108
117
75
87
75
87
107
116
74
86
74
86
106
115
73
85
73
85
105
114
72
84
72
84
104
113
71
83
71
83
103
112
70
82
70
58
59
60
61
62
63
64
65
66
67
68
69
70
82
102
111
69
81
69
57
69
81
101
110
68
80
68
56
68
80
100
109
67
79
67
55
67
79
99
108
66
78
77
76
75
74
73
72
71
70
71
72
73
74
73
72
71
70
69
68
67
66
54
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
107
65
69
65
53
65
77
91
106
64
68
64
52
64
76
92
105
63
67
63
51
63
75
93
104
62
66
62
50
62
74
94
103
61
65
61
49
61
73
95
102
60
64
60
48
60
72
96
101
59
63
59
47
59
71
97
100
58
62
58
46
58
70
98
99
57
61
57
45
57
69
99
98
56
60
56
44
56
68
100
97
55
59
55
43
55
67
100
96
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
54
53
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
45
41
53
86
44
40
52
85
43
39
51
84
42
38
50
83
41
37
49
82
40
36
48
81
39
35
47
80
38
34
46
79
37
33
45
78
36
32
44
77
35
31
43
76
34
33
32
31
30
29
28
27
26
25
24
23
22
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
86
86
85
84
83
82
81
80
79
78
77
76
75
35
21
17
55
85
74
36
20
16
56
84
73
37
19
15
57
83
72
38
18
14
58
82
71
39
17
13
59
81
70
40
16
12
60
80
69
41
15
11
61
79
68
54
53
52
51
50
49
48
47
46
45
44
43
42
14
10
62
78
67
66
65
64
63
62
61
60
59
58
57
56
55
13
9
63
77
12
8
64
76
11
7
63
75
10
6
62
74
9
5
61
73
8
7
6
5
4
3
2
1
0
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
124
82
94
80
92
112
123
81
93
79
91
111
122
80
92
78
90
110
121
79
91
77
89
109
120
78
90
76
88
108
119
77
89
75
87
107
118
76
88
74
86
106
117
75
87
73
85
105
116
74
86
72
84
104
115
73
85
71
83
103
114
72
84
70
82
102
113
71
83
69
57
58
59
60
61
62
63
64
65
66
67
68
69
81
101
112
70
82
68
56
68
80
100
111
69
81
67
55
67
79
99
110
68
80
66
54
66
78
98
109
67
79
78
77
76
75
74
73
72
71
72
73
74
73
72
71
70
69
68
67
66
65
53
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
108
66
70
64
52
64
76
90
107
65
69
63
51
63
75
91
106
64
68
62
50
62
74
92
105
63
67
61
49
61
73
93
104
62
66
60
48
60
72
94
103
61
65
59
47
59
71
95
102
60
64
58
46
58
70
96
101
59
63
57
45
57
69
97
100
58
62
56
44
56
68
98
99
57
61
55
43
55
67
99
98
56
60
54
42
54
66
100
97
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
53
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
46
40
52
87
45
39
51
86
44
38
50
85
43
37
49
84
42
36
48
83
41
35
47
82
40
34
46
81
39
33
45
80
38
32
44
79
37
31
43
78
36
30
42
77
35
34
33
32
31
30
29
28
27
26
25
24
23
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
85
86
86
85
84
83
82
81
80
79
78
77
76
36
22
16
54
84
75
37
21
15
55
83
74
38
20
14
56
82
73
39
19
13
57
81
72
40
18
12
58
80
71
41
17
11
59
79
70
42
16
10
60
78
69
55
54
53
52
51
50
49
48
47
46
45
44
43
15
9
61
77
68
67
66
65
64
63
62
61
60
59
58
57
56
14
8
62
76
13
7
63
75
12
6
62
74
11
5
61
73
10
4
60
72
9
8
7
6
5
4
3
2
1
0
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
83
95
79
91
111
124
82
94
78
90
110
123
81
93
77
89
109
122
80
92
76
88
108
121
79
91
75
87
107
120
78
90
74
86
106
119
77
89
73
85
105
118
76
88
72
84
104
117
75
87
71
83
103
116
74
86
70
82
102
115
73
85
69
81
101
114
72
84
68
56
57
58
59
60
61
62
63
64
65
66
67
68
80
100
113
71
83
67
55
67
79
99
112
70
82
66
54
66
78
98
111
69
81
65
53
65
77
97
110
68
80
79
78
77
76
75
74
73
72
73
74
73
72
71
70
69
68
67
66
65
64
52
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
109
67
71
63
51
63
75
89
108
66
70
62
50
62
74
90
107
65
69
61
49
61
73
91
106
64
68
60
48
60
72
92
105
63
67
59
47
59
71
93
104
62
66
58
46
58
70
94
103
61
65
57
45
57
69
95
102
60
64
56
44
56
68
96
101
59
63
55
43
55
67
97
100
58
62
54
42
54
66
98
99
57
61
53
41
53
65
99
98
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
52
51
50
49
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
100
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
47
39
51
88
46
38
50
87
45
37
49
86
44
36
48
85
43
35
47
84
42
34
46
83
41
33
45
82
40
32
44
81
39
31
43
80
38
30
42
79
37
29
41
78
36
35
34
33
32
31
30
29
28
27
26
25
24
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
84
85
86
86
85
84
83
82
81
80
79
78
77
37
23
15
53
83
76
38
22
14
54
82
75
39
21
13
55
81
74
40
20
12
56
80
73
41
19
11
57
79
72
42
18
10
58
78
71
43
17
9
59
77
70
56
55
54
53
52
51
50
49
48
47
46
45
44
16
8
60
76
69
68
67
66
65
64
63
62
61
60
59
58
57
15
7
61
75
14
6
62
74
13
5
61
73
12
4
60
72
11
3
59
71
10
9
8
7
6
5
4
3
2
1
0
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
84
96
78
90
110
124
83
95
77
89
109
124
82
94
76
88
108
123
81
93
75
87
107
122
80
92
74
86
106
121
79
91
73
85
105
120
78
90
72
84
104
119
77
89
71
83
103
118
76
88
70
82
102
117
75
87
69
81
101
116
74
86
68
80
100
115
73
85
67
55
56
57
58
59
60
61
62
63
64
65
66
67
79
99
114
72
84
66
54
66
78
98
113
71
83
65
53
65
77
97
112
70
82
64
52
64
76
96
111
69
81
80
79
78
77
76
75
74
73
74
73
72
71
70
69
68
67
66
65
64
63
51
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
110
68
72
62
50
62
74
88
109
67
71
61
49
61
73
89
108
66
70
60
48
60
72
90
107
65
69
59
47
59
71
91
106
64
68
58
46
58
70
92
105
63
67
57
45
57
69
93
104
62
66
56
44
56
68
94
103
61
65
55
43
55
67
95
102
60
64
54
42
54
66
96
101
59
63
53
41
53
65
97
100
58
62
52
40
52
64
98
99
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
51
50
49
48
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
99
100
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
48
38
50
89
47
37
49
88
46
36
48
87
45
35
47
86
44
34
46
85
43
33
45
84
42
32
44
83
41
31
43
82
40
30
42
81
39
29
41
80
38
28
40
79
37
36
35
34
33
32
31
30
29
28
27
26
25
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
83
84
85
86
86
85
84
83
82
81
80
79
78
38
24
14
52
82
77
39
23
13
53
81
76
40
22
12
54
80
75
41
21
11
55
79
74
42
20
10
56
78
73
43
19
9
57
77
72
44
18
8
58
76
71
57
56
55
54
53
52
51
50
49
48
47
46
45
17
7
59
75
70
69
68
67
66
65
64
63
62
61
60
59
58
16
6
60
74
15
5
61
73
14
4
60
72
13
3
59
71
12
2
58
70
11
10
9
8
7
6
5
4
3
2
1
0
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
85
97
77
89
109
123
84
96
76
88
108
124
83
95
75
87
107
124
82
94
74
86
106
123
81
93
73
85
105
122
80
92
72
84
104
121
79
91
71
83
103
120
78
90
70
82
102
119
77
89
69
81
101
118
76
88
68
80
100
117
75
87
67
79
99
116
74
86
66
54
55
56
57
58
59
60
61
62
63
64
65
66
78
98
115
73
85
65
53
65
77
97
114
72
84
64
52
64
76
96
113
71
83
63
51
63
75
95
112
70
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
111
69
73
61
49
61
73
87
110
68
72
60
48
60
72
88
109
67
71
59
47
59
71
89
108
66
70
58
46
58
70
90
107
65
69
57
45
57
69
91
106
64
68
56
44
56
68
92
105
63
67
55
43
55
67
93
104
62
66
54
42
54
66
94
103
61
65
53
41
53
65
95
102
60
64
52
40
52
64
96
101
59
63
51
39
51
63
97
100
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
50
49
48
47
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
98
99
100
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
49
37
49
90
48
36
48
89
47
35
47
88
46
34
46
87
45
33
45
86
44
32
44
85
43
31
43
84
42
30
42
83
41
29
41
82
40
28
40
81
39
27
39
80
38
37
36
35
34
33
32
31
30
29
28
27
26
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
82
83
84
85
86
86
85
84
83
82
81
80
79
39
25
13
51
81
78
40
24
12
52
80
77
41
23
11
53
79
76
42
22
10
54
78
75
43
21
9
55
77
74
44
20
8
56
76
73
45
19
7
57
75
72
58
57
56
55
54
53
52
51
50
49
48
47
46
18
6
58
74
71
70
69
68
67
66
65
64
63
62
61
60
59
17
5
59
73
16
4
60
72
15
3
59
71
14
2
58
70
13
1
57
69
12
11
10
9
8
7
6
5
4
3
2
1
0
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
123
109
89
77
97
85
124
108
88
76
96
84
124
107
87
75
95
83
123
106
86
74
94
82
122
105
85
73
93
81
121
104
84
72
92
80
120
103
83
71
91
79
119
102
82
70
90
78
118
101
81
69
89
77
117
100
80
68
88
76
116
99
79
67
87
75
115
98
78
66
65
64
63
62
61
60
59
58
57
56
55
54
66
86
74
114
97
77
65
53
65
85
73
113
96
76
64
52
64
84
72
112
95
75
63
51
63
83
71
111
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
70
110
87
73
61
49
61
73
69
109
88
72
60
48
60
72
68
108
89
71
59
47
59
71
67
107
90
70
58
46
58
70
66
106
91
69
57
45
57
69
65
105
92
68
56
44
56
68
64
104
93
67
55
43
55
67
63
103
94
66
54
42
54
66
62
102
95
65
53
41
53
65
61
101
96
64
52
40
52
64
60
100
97
63
51
39
51
63
59
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
100
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
47
48
49
50
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
90
49
37
49
89
48
36
48
88
47
35
47
87
46
34
46
86
45
33
45
85
44
32
44
84
43
31
43
83
42
30
42
82
41
29
41
81
40
28
40
80
39
27
39
79
80
81
82
83
84
85
86
86
85
84
83
82
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
26
27
28
29
30
31
32
33
34
35
36
37
38
78
81
51
13
25
39
77
80
52
12
24
40
76
79
53
11
23
41
75
78
54
10
22
42
74
77
55
9
21
43
73
76
56
8
20
44
72
75
57
7
19
45
59
60
61
62
63
64
65
66
67
68
69
70
71
74
58
6
18
46
47
48
49
50
51
52
53
54
55
56
57
58
73
59
5
17
72
60
4
16
71
59
3
15
70
58
2
14
69
57
1
13
68
67
66
65
64
63
62
61
60
59
58
57
56
0
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
124
110
90
78
96
84
124
109
89
77
95
83
123
108
88
76
94
82
122
107
87
75
93
81
121
106
86
74
92
80
120
105
85
73
91
79
119
104
84
72
90
78
118
103
83
71
89
77
117
102
82
70
88
76
116
101
81
69
87
75
115
100
80
68
86
74
114
99
79
67
66
65
64
63
62
61
60
59
58
57
56
55
67
85
73
113
98
78
66
54
66
84
72
112
97
77
65
53
65
83
71
111
96
76
64
52
64
82
70
110
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
51
63
64
65
66
67
68
69
70
71
72
73
74
73
74
75
76
77
78
79
80
81
69
109
88
74
62
50
62
72
68
108
89
73
61
49
61
71
67
107
90
72
60
48
60
70
66
106
91
71
59
47
59
69
65
105
92
70
58
46
58
68
64
104
93
69
57
45
57
67
63
103
94
68
56
44
56
66
62
102
95
67
55
43
55
65
61
101
96
66
54
42
54
64
60
100
97
65
53
41
53
63
59
99
98
64
52
40
52
62
58
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
100
99
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
48
49
50
51
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
89
50
38
48
88
49
37
47
87
48
36
46
86
47
35
45
85
46
34
44
84
45
33
43
83
44
32
42
82
43
31
41
81
42
30
40
80
41
29
39
79
40
28
38
78
79
80
81
82
83
84
85
86
86
85
84
83
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
25
26
27
28
29
30
31
32
33
34
35
36
37
77
82
52
14
24
38
76
81
53
13
23
39
75
80
54
12
22
40
74
79
55
11
21
41
73
78
56
10
20
42
72
77
57
9
19
43
71
76
58
8
18
44
58
59
60
61
62
63
64
65
66
67
68
69
70
75
59
7
17
45
46
47
48
49
50
51
52
53
54
55
56
57
74
60
6
16
73
61
5
15
72
60
4
14
71
59
3
13
70
58
2
12
69
68
67
66
65
64
63
62
61
60
59
58
57
1
0
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
124
111
91
79
95
83
123
110
90
78
94
82
122
109
89
77
93
81
121
108
88
76
92
80
120
107
87
75
91
79
119
106
86
74
90
78
118
105
85
73
89
77
117
104
84
72
88
76
116
103
83
71
87
75
115
102
82
70
86
74
114
101
81
69
85
73
113
100
80
68
67
66
65
64
63
62
61
60
59
58
57
56
68
84
72
112
99
79
67
55
67
83
71
111
98
78
66
54
66
82
70
110
97
77
65
53
65
81
69
109
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
52
64
65
66
67
68
69
70
71
72
73
74
73
72
73
74
75
76
77
78
79
80
68
108
89
75
63
51
63
71
67
107
90
74
62
50
62
70
66
106
91
73
61
49
61
69
65
105
92
72
60
48
60
68
64
104
93
71
59
47
59
67
63
103
94
70
58
46
58
66
62
102
95
69
57
45
57
65
61
101
96
68
56
44
56
64
60
100
97
67
55
43
55
63
59
99
98
66
54
42
54
62
58
98
99
65
53
41
53
61
57
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
100
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
49
50
51
52
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
88
51
39
47
87
50
38
46
86
49
37
45
85
48
36
44
84
47
35
43
83
46
34
42
82
45
33
41
81
44
32
40
80
43
31
39
79
42
30
38
78
41
29
37
77
78
79
80
81
82
83
84
85
86
86
85
84
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
24
25
26
27
28
29
30
31
32
33
34
35
36
76
83
53
15
23
37
75
82
54
14
22
38
74
81
55
13
21
39
73
80
56
12
20
40
72
79
57
11
19
41
71
78
58
10
18
42
70
77
59
9
17
43
57
58
59
60
61
62
63
64
65
66
67
68
69
76
60
8
16
44
45
46
47
48
49
50
51
52
53
54
55
56
75
61
7
15
74
62
6
14
73
61
5
13
72
60
4
12
71
59
3
11
70
69
68
67
66
65
64
63
62
61
60
59
58
2
1
0
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
123
112
92
80
94
82
122
111
91
79
93
81
121
110
90
78
92
80
120
109
89
77
91
79
119
108
88
76
90
78
118
107
87
75
89
77
117
106
86
74
88
76
116
105
85
73
87
75
115
104
84
72
86
74
114
103
83
71
85
73
113
102
82
70
84
72
112
101
81
69
68
67
66
65
64
63
62
61
60
59
58
57
69
83
71
111
100
80
68
56
68
82
70
110
99
79
67
55
67
81
69
109
98
78
66
54
66
80
68
108
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
53
65
66
67
68
69
70
71
72
73
74
73
72
71
72
73
74
75
76
77
78
79
67
107
90
76
64
52
64
70
66
106
91
75
63
51
63
69
65
105
92
74
62
50
62
68
64
104
93
73
61
49
61
67
63
103
94
72
60
48
60
66
62
102
95
71
59
47
59
65
61
101
96
70
58
46
58
64
60
100
97
69
57
45
57
63
59
99
98
68
56
44
56
62
58
98
99
67
55
43
55
61
57
97
100
66
54
42
54
60
56
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
87
52
40
46
86
51
39
45
85
50
38
44
84
49
37
43
83
48
36
42
82
47
35
41
81
46
34
40
80
45
33
39
79
44
32
38
78
43
31
37
77
42
30
36
76
77
78
79
80
81
82
83
84
85
86
86
85
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
23
24
25
26
27
28
29
30
31
32
33
34
35
75
84
54
16
22
36
74
83
55
15
21
37
73
82
56
14
20
38
72
81
57
13
19
39
71
80
58
12
18
40
70
79
59
11
17
41
69
78
60
10
16
42
56
57
58
59
60
61
62
63
64
65
66
67
68
77
61
9
15
43
44
45
46
47
48
49
50
51
52
53
54
55
76
62
8
14
75
63
7
13
74
62
6
12
73
61
5
11
72
60
4
10
71
70
69
68
67
66
65
64
63
62
61
60
59
3
2
1
0
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
122
113
93
81
93
81
121
112
92
80
92
80
120
111
91
79
91
79
119
110
90
78
90
78
118
109
89
77
89
77
117
108
88
76
88
76
116
107
87
75
87
75
115
106
86
74
86
74
114
105
85
73
85
73
113
104
84
72
84
72
112
103
83
71
83
71
111
102
82
70
69
68
67
66
65
64
63
62
61
60
59
58
70
82
70
110
101
81
69
57
69
81
69
109
100
80
68
56
68
80
68
108
99
79
67
55
67
79
67
107
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
54
66
67
68
69
70
71
72
73
74
73
72
71
70
71
72
73
74
75
76
77
78
66
106
91
77
65
53
65
69
65
105
92
76
64
52
64
68
64
104
93
75
63
51
63
67
63
103
94
74
62
50
62
66
62
102
95
73
61
49
61
65
61
101
96
72
60
48
60
64
60
100
97
71
59
47
59
63
59
99
98
70
58
46
58
62
58
98
99
69
57
45
57
61
57
97
100
68
56
44
56
60
56
96
100
67
55
43
55
59
55
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
86
53
41
45
85
52
40
44
84
51
39
43
83
50
38
42
82
49
37
41
81
48
36
40
80
47
35
39
79
46
34
38
78
45
33
37
77
44
32
36
76
43
31
35
75
76
77
78
79
80
81
82
83
84
85
86
86
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
22
23
24
25
26
27
28
29
30
31
32
33
34
74
85
55
17
21
35
73
84
56
16
20
36
72
83
57
15
19
37
71
82
58
14
18
38
70
81
59
13
17
39
69
80
60
12
16
40
68
79
61
11
15
41
55
56
57
58
59
60
61
62
63
64
65
66
67
78
62
10
14
42
43
44
45
46
47
48
49
50
51
52
53
54
77
63
9
13
76
64
8
12
75
63
7
11
74
62
6
10
73
61
5
9
72
71
70
69
68
67
66
65
64
63
62
61
60
4
3
2
1
0
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
121
114
94
82
92
80
120
113
93
81
91
79
119
112
92
80
90
78
118
111
91
79
89
77
117
110
90
78
88
76
116
109
89
77
87
75
115
108
88
76
86
74
114
107
87
75
85
73
113
106
86
74
84
72
112
105
85
73
83
71
111
104
84
72
82
70
110
103
83
71
70
69
68
67
66
65
64
63
62
61
60
59
71
81
69
109
102
82
70
58
70
80
68
108
101
81
69
57
69
79
67
107
100
80
68
56
68
78
66
106
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
55
67
68
69
70
71
72
73
74
73
72
71
70
69
70
71
72
73
74
75
76
77
65
105
92
78
66
54
66
68
64
104
93
77
65
53
65
67
63
103
94
76
64
52
64
66
62
102
95
75
63
51
63
65
61
101
96
74
62
50
62
64
60
100
97
73
61
49
61
63
59
99
98
72
60
48
60
62
58
98
99
71
59
47
59
61
57
97
100
70
58
46
58
60
56
96
100
69
57
45
57
59
55
95
99
68
56
44
56
58
54
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
85
54
42
44
84
53
41
43
83
52
40
42
82
51
39
41
81
50
38
40
80
49
37
39
79
48
36
38
78
47
35
37
77
46
34
36
76
45
33
35
75
44
32
34
74
75
76
77
78
79
80
81
82
83
84
85
86
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
21
22
23
24
25
26
27
28
29
30
31
32
33
73
86
56
18
20
34
72
85
57
17
19
35
71
84
58
16
18
36
70
83
59
15
17
37
69
82
60
14
16
38
68
81
61
13
15
39
67
80
62
12
14
40
54
55
56
57
58
59
60
61
62
63
64
65
66
79
63
11
13
41
42
43
44
45
46
47
48
49
50
51
52
53
78
64
10
12
77
65
9
11
76
64
8
10
75
63
7
9
74
62
6
8
73
72
71
70
69
68
67
66
65
64
63
62
61
5
4
3
2
1
0
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
120
115
95
83
91
79
119
114
94
82
90
78
118
113
93
81
89
77
117
112
92
80
88
76
116
111
91
79
87
75
115
110
90
78
86
74
114
109
89
77
85
73
113
108
88
76
84
72
112
107
87
75
83
71
111
106
86
74
82
70
110
105
85
73
81
69
109
104
84
72
71
70
69
68
67
66
65
64
63
62
61
60
72
80
68
108
103
83
71
59
71
79
67
107
102
82
70
58
70
78
66
106
101
81
69
57
69
77
65
105
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
56
68
69
70
71
72
73
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
64
104
93
79
67
55
67
67
63
103
94
78
66
54
66
66
62
102
95
77
65
53
65
65
61
101
96
76
64
52
64
64
60
100
97
75
63
51
63
63
59
99
98
74
62
50
62
62
58
98
99
73
61
49
61
61
57
97
100
72
60
48
60
60
56
96
100
71
59
47
59
59
55
95
99
70
58
46
58
58
54
94
98
69
57
45
57
57
53
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
84
55
43
43
83
54
42
42
82
53
41
41
81
52
40
40
80
51
39
39
79
50
38
38
78
49
37
37
77
48
36
36
76
47
35
35
75
46
34
34
74
45
33
33
73
74
75
76
77
78
79
80
81
82
83
84
85
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
20
21
22
23
24
25
26
27
28
29
30
31
32
72
86
57
19
19
33
71
86
58
18
18
34
70
85
59
17
17
35
69
84
60
16
16
36
68
83
61
15
15
37
67
82
62
14
14
38
66
81
63
13
13
39
53
54
55
56
57
58
59
60
61
62
63
64
65
80
64
12
12
40
41
42
43
44
45
46
47
48
49
50
51
52
79
65
11
11
78
66
10
10
77
65
9
9
76
64
8
8
75
63
7
7
74
73
72
71
70
69
68
67
66
65
64
63
62
6
5
4
3
2
1
0
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
119
116
96
84
90
78
118
115
95
83
89
77
117
114
94
82
88
76
116
113
93
81
87
75
115
112
92
80
86
74
114
111
91
79
85
73
113
110
90
78
84
72
112
109
89
77
83
71
111
108
88
76
82
70
110
107
87
75
81
69
109
106
86
74
80
68
108
105
85
73
72
71
70
69
68
67
66
65
64
63
62
61
73
79
67
107
104
84
72
60
72
78
66
106
103
83
71
59
71
77
65
105
102
82
70
58
70
76
64
104
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
57
69
70
71
72
73
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
63
103
94
80
68
56
68
66
62
102
95
79
67
55
67
65
61
101
96
78
66
54
66
64
60
100
97
77
65
53
65
63
59
99
98
76
64
52
64
62
58
98
99
75
63
51
63
61
57
97
100
74
62
50
62
60
56
96
100
73
61
49
61
59
55
95
99
72
60
48
60
58
54
94
98
71
59
47
59
57
53
93
97
70
58
46
58
56
52
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
57
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
83
56
44
42
82
55
43
41
81
54
42
40
80
53
41
39
79
52
40
38
78
51
39
37
77
50
38
36
76
49
37
35
75
48
36
34
74
47
35
33
73
46
34
32
72
73
74
75
76
77
78
79
80
81
82
83
84
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
19
20
21
22
23
24
25
26
27
28
29
30
31
71
85
58
20
18
32
70
86
59
19
17
33
69
86
60
18
16
34
68
85
61
17
15
35
67
84
62
16
14
36
66
83
63
15
13
37
65
82
64
14
12
38
52
53
54
55
56
57
58
59
60
61
62
63
64
81
65
13
11
39
40
41
42
43
44
45
46
47
48
49
50
51
80
66
12
10
79
67
11
9
78
66
10
8
77
65
9
7
76
64
8
6
75
74
73
72
71
70
69
68
67
66
65
64
63
7
6
5
4
3
2
1
0
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
118
117
97
85
89
77
117
116
96
84
88
76
116
115
95
83
87
75
115
114
94
82
86
74
114
113
93
81
85
73
113
112
92
80
84
72
112
111
91
79
83
71
111
110
90
78
82
70
110
109
89
77
81
69
109
108
88
76
80
68
108
107
87
75
79
67
107
106
86
74
73
72
71
70
69
68
67
66
65
64
63
62
74
78
66
106
105
85
73
61
73
77
65
105
104
84
72
60
72
76
64
104
103
83
71
59
71
75
63
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
58
70
71
72
73
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
62
102
95
81
69
57
69
65
61
101
96
80
68
56
68
64
60
100
97
79
67
55
67
63
59
99
98
78
66
54
66
62
58
98
99
77
65
53
65
61
57
97
100
76
64
52
64
60
56
96
100
75
63
51
63
59
55
95
99
74
62
50
62
58
54
94
98
73
61
49
61
57
53
93
97
72
60
48
60
56
52
92
96
71
59
47
59
55
51
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
57
58
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
82
57
45
41
81
56
44
40
80
55
43
39
79
54
42
38
78
53
41
37
77
52
40
36
76
51
39
35
75
50
38
34
74
49
37
33
73
48
36
32
72
47
35
31
71
72
73
74
75
76
77
78
79
80
81
82
83
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
18
19
20
21
22
23
24
25
26
27
28
29
30
70
84
59
21
17
31
69
85
60
20
16
32
68
86
61
19
15
33
67
86
62
18
14
34
66
85
63
17
13
35
65
84
64
16
12
36
64
83
65
15
11
37
51
52
53
54
55
56
57
58
59
60
61
62
63
82
66
14
10
38
39
40
41
42
43
44
45
46
47
48
49
50
81
67
13
9
80
68
12
8
79
67
11
7
78
66
10
6
77
65
9
5
76
75
74
73
72
71
70
69
68
67
66
65
64
8
7
6
5
4
3
2
1
0
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
117
118
98
86
88
76
116
117
97
85
87
75
115
116
96
84
86
74
114
115
95
83
85
73
113
114
94
82
84
72
112
113
93
81
83
71
111
112
92
80
82
70
110
111
91
79
81
69
109
110
90
78
80
68
108
109
89
77
79
67
107
108
88
76
78
66
106
107
87
75
74
73
72
71
70
69
68
67
66
65
64
63
75
77
65
105
106
86
74
62
74
76
64
104
105
85
73
61
73
75
63
103
104
84
72
60
72
74
62
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
59
71
72
73
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
61
101
96
82
70
58
70
64
60
100
97
81
69
57
69
63
59
99
98
80
68
56
68
62
58
98
99
79
67
55
67
61
57
97
100
78
66
54
66
60
56
96
100
77
65
53
65
59
55
95
99
76
64
52
64
58
54
94
98
75
63
51
63
57
53
93
97
74
62
50
62
56
52
92
96
73
61
49
61
55
51
91
95
72
60
48
60
54
50
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
56
57
58
59
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
81
58
46
40
80
57
45
39
79
56
44
38
78
55
43
37
77
54
42
36
76
53
41
35
75
52
40
34
74
51
39
33
73
50
38
32
72
49
37
31
71
48
36
30
70
71
72
73
74
75
76
77
78
79
80
81
82
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
17
18
19
20
21
22
23
24
25
26
27
28
29
69
83
60
22
16
30
68
84
61
21
15
31
67
85
62
20
14
32
66
86
63
19
13
33
65
86
64
18
12
34
64
85
65
17
11
35
63
84
66
16
10
36
50
51
52
53
54
55
56
57
58
59
60
61
62
83
67
15
9
37
38
39
40
41
42
43
44
45
46
47
48
49
82
68
14
8
81
69
13
7
80
68
12
6
79
67
11
5
78
66
10
4
77
76
75
74
73
72
71
70
69
68
67
66
65
9
8
7
6
5
4
3
2
1
0
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
116
119
99
87
87
75
115
118
98
86
86
74
114
117
97
85
85
73
113
116
96
84
84
72
112
115
95
83
83
71
111
114
94
82
82
70
110
113
93
81
81
69
109
112
92
80
80
68
108
111
91
79
79
67
107
110
90
78
78
66
106
109
89
77
77
65
105
108
88
76
75
74
73
72
71
70
69
68
67
66
65
64
76
76
64
104
107
87
75
63
75
75
63
103
106
86
74
62
74
74
62
102
105
85
73
61
73
73
61
101
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
60
72
73
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
60
100
97
83
71
59
71
63
59
99
98
82
70
58
70
62
58
98
99
81
69
57
69
61
57
97
100
80
68
56
68
60
56
96
100
79
67
55
67
59
55
95
99
78
66
54
66
58
54
94
98
77
65
53
65
57
53
93
97
76
64
52
64
56
52
92
96
75
63
51
63
55
51
91
95
74
62
50
62
54
50
90
94
73
61
49
61
53
49
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
57
58
59
60
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
80
59
47
39
79
58
46
38
78
57
45
37
77
56
44
36
76
55
43
35
75
54
42
34
74
53
41
33
73
52
40
32
72
51
39
31
71
50
38
30
70
49
37
29
69
70
71
72
73
74
75
76
77
78
79
80
81
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
16
17
18
19
20
21
22
23
24
25
26
27
28
68
82
61
23
15
29
67
83
62
22
14
30
66
84
63
21
13
31
65
85
64
20
12
32
64
86
65
19
11
33
63
86
66
18
10
34
62
85
67
17
9
35
49
50
51
52
53
54
55
56
57
58
59
60
61
84
68
16
8
36
37
38
39
40
41
42
43
44
45
46
47
48
83
69
15
7
82
70
14
6
81
69
13
5
80
68
12
4
79
67
11
3
78
77
76
75
74
73
72
71
70
69
68
67
66
10
9
8
7
6
5
4
3
2
1
0
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
115
120
100
88
86
74
114
119
99
87
85
73
113
118
98
86
84
72
112
117
97
85
83
71
111
116
96
84
82
70
110
115
95
83
81
69
109
114
94
82
80
68
108
113
93
81
79
67
107
112
92
80
78
66
106
111
91
79
77
65
105
110
90
78
76
64
104
109
89
77
76
75
74
73
72
71
70
69
68
67
66
65
77
75
63
103
108
88
76
64
76
74
62
102
107
87
75
63
75
73
61
101
106
86
74
62
74
72
60
100
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
61
73
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
59
99
98
84
72
60
72
62
58
98
99
83
71
59
71
61
57
97
100
82
70
58
70
60
56
96
100
81
69
57
69
59
55
95
99
80
68
56
68
58
54
94
98
79
67
55
67
57
53
93
97
78
66
54
66
56
52
92
96
77
65
53
65
55
51
91
95
76
64
52
64
54
50
90
94
75
63
51
63
53
49
89
93
74
62
50
62
52
48
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
79
60
48
38
78
59
47
37
77
58
46
36
76
57
45
35
75
56
44
34
74
55
43
33
73
54
42
32
72
53
41
31
71
52
40
30
70
51
39
29
69
50
38
28
68
69
70
71
72
73
74
75
76
77
78
79
80
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
15
16
17
18
19
20
21
22
23
24
25
26
27
67
81
62
24
14
28
66
82
63
23
13
29
65
83
64
22
12
30
64
84
65
21
11
31
63
85
66
20
10
32
62
86
67
19
9
33
61
86
68
18
8
34
48
49
50
51
52
53
54
55
56
57
58
59
60
85
69
17
7
35
36
37
38
39
40
41
42
43
44
45
46
47
84
70
16
6
83
71
15
5
82
70
14
4
81
69
13
3
80
68
12
2
79
78
77
76
75
74
73
72
71
70
69
68
67
11
10
9
8
7
6
5
4
3
2
1
0
115
116
117
118
119
120
121
122
123
124
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
114
121
101
89
85
73
113
120
100
88
84
72
112
119
99
87
83
71
111
118
98
86
82
70
110
117
97
85
81
69
109
116
96
84
80
68
108
115
95
83
79
67
107
114
94
82
78
66
106
113
93
81
77
65
105
112
92
80
76
64
104
111
91
79
75
63
103
110
90
78
77
76
75
74
73
72
71
70
69
68
67
66
78
74
62
102
109
89
77
65
77
73
61
101
108
88
76
64
76
72
60
100
107
87
75
63
75
71
59
99
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
62
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
58
98
99
85
73
61
73
61
57
97
100
84
72
60
72
60
56
96
100
83
71
59
71
59
55
95
99
82
70
58
70
58
54
94
98
81
69
57
69
57
53
93
97
80
68
56
68
56
52
92
96
79
67
55
67
55
51
91
95
78
66
54
66
54
50
90
94
77
65
53
65
53
49
89
93
76
64
52
64
52
48
88
92
75
63
51
63
51
47
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
78
61
49
37
77
60
48
36
76
59
47
35
75
58
46
34
74
57
45
33
73
56
44
32
72
55
43
31
71
54
42
30
70
53
41
29
69
52
40
28
68
51
39
27
67
68
69
70
71
72
73
74
75
76
77
78
79
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
14
15
16
17
18
19
20
21
22
23
24
25
26
66
80
63
25
13
27
65
81
64
24
12
28
64
82
65
23
11
29
63
83
66
22
10
30
62
84
67
21
9
31
61
85
68
20
8
32
60
86
69
19
7
33
47
48
49
50
51
52
53
54
55
56
57
58
59
86
70
18
6
34
35
36
37
38
39
40
41
42
43
44
45
46
85
71
17
5
84
72
16
4
83
71
15
3
82
70
14
2
81
69
13
1
80
79
78
77
76
75
74
73
72
71
70
69
68
12
11
10
9
8
7
6
5
4
3
2
1
0
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
125
124
123
122
121
120
119
118
117
116
74
86
90
102
122
115
73
85
89
101
121
114
72
84
88
100
120
113
71
83
87
99
119
112
70
82
86
98
118
111
69
81
85
97
117
110
68
80
84
96
116
109
67
79
83
95
115
108
66
78
82
94
114
107
65
77
81
93
113
106
64
76
80
92
112
105
63
75
79
67
68
69
70
71
72
73
74
75
76
77
78
79
91
111
104
62
74
78
66
78
90
110
103
61
73
77
65
77
89
109
102
60
72
76
64
76
88
108
101
59
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
63
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
100
58
62
74
62
74
86
100
99
57
61
73
61
73
85
101
98
56
60
72
60
72
84
101
97
55
59
71
59
71
83
100
96
54
58
70
58
70
82
99
95
53
57
69
57
69
81
98
94
52
56
68
56
68
80
97
93
51
55
67
55
67
79
96
92
50
54
66
54
66
78
95
91
49
53
65
53
65
77
94
90
48
52
64
52
64
76
93
89
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
38
50
62
79
37
49
61
78
36
48
60
77
35
47
59
76
34
46
58
75
33
45
57
74
32
44
56
73
31
43
55
72
30
42
54
71
29
41
53
70
28
40
52
69
27
26
25
24
23
22
21
20
19
18
17
16
15
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
80
79
78
77
76
75
74
73
72
71
70
69
68
28
14
26
64
81
67
29
13
25
65
82
66
30
12
24
66
83
65
31
11
23
67
84
64
32
10
22
68
85
63
33
9
21
69
86
62
34
8
20
70
87
61
47
46
45
44
43
42
41
40
39
38
37
36
35
7
19
71
87
60
59
58
57
56
55
54
53
52
51
50
49
48
6
18
72
86
5
17
73
85
4
16
72
84
3
15
71
83
2
14
70
82
1
2
3
4
5
6
7
8
9
10
11
12
13
69
70
71
72
73
74
75
76
77
78
79
80
81
0
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
86
98
78
90
110
124
85
97
77
89
109
125
84
96
76
88
108
125
83
95
75
87
107
124
82
94
74
86
106
123
81
93
73
85
105
122
80
92
72
84
104
121
79
91
71
83
103
120
78
90
70
82
102
119
77
89
69
81
101
118
76
88
68
80
100
117
75
87
67
55
56
57
58
59
60
61
62
63
64
65
66
67
79
99
116
74
86
66
54
66
78
98
115
73
85
65
53
65
77
97
114
72
84
64
52
64
76
96
113
71
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
112
70
74
62
50
62
74
88
111
69
73
61
49
61
73
89
110
68
72
60
48
60
72
90
109
67
71
59
47
59
71
91
108
66
70
58
46
58
70
92
107
65
69
57
45
57
69
93
106
64
68
56
44
56
68
94
105
63
67
55
43
55
67
95
104
62
66
54
42
54
66
96
103
61
65
53
41
53
65
97
102
60
64
52
40
52
64
98
101
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
51
50
49
48
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
99
100
101
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
50
38
50
91
49
37
49
90
48
36
48
89
47
35
47
88
46
34
46
87
45
33
45
86
44
32
44
85
43
31
43
84
42
30
42
83
41
29
41
82
40
28
40
81
39
38
37
36
35
34
33
32
31
30
29
28
27
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
81
82
83
84
85
86
86
85
84
83
82
81
80
40
26
14
52
80
79
41
25
13
53
79
78
42
24
12
54
78
77
43
23
11
55
77
76
44
22
10
56
76
75
45
21
9
57
75
74
46
20
8
58
74
73
59
58
57
56
55
54
53
52
51
50
49
48
47
19
7
59
73
72
71
70
69
68
67
66
65
64
63
62
61
60
18
6
60
72
17
5
59
71
16
4
58
70
15
3
57
69
14
2
56
68
13
12
11
10
9
8
7
6
5
4
3
2
1
55
56
57
58
59
60
61
62
63
64
65
66
67
14
0
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
124
110
90
78
98
86
125
109
89
77
97
85
125
108
88
76
96
84
124
107
87
75
95
83
123
106
86
74
94
82
122
105
85
73
93
81
121
104
84
72
92
80
120
103
83
71
91
79
119
102
82
70
90
78
118
101
81
69
89
77
117
100
80
68
88
76
116
99
79
67
66
65
64
63
62
61
60
59
58
57
56
55
67
87
75
115
98
78
66
54
66
86
74
114
97
77
65
53
65
85
73
113
96
76
64
52
64
84
72
112
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
71
111
88
74
62
50
62
74
70
110
89
73
61
49
61
73
69
109
90
72
60
48
60
72
68
108
91
71
59
47
59
71
67
107
92
70
58
46
58
70
66
106
93
69
57
45
57
69
65
105
94
68
56
44
56
68
64
104
95
67
55
43
55
67
63
103
96
66
54
42
54
66
62
102
97
65
53
41
53
65
61
101
98
64
52
40
52
64
60
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
101
100
99
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
48
49
50
51
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
91
50
38
50
90
49
37
49
89
48
36
48
88
47
35
47
87
46
34
46
86
45
33
45
85
44
32
44
84
43
31
43
83
42
30
42
82
41
29
41
81
40
28
40
80
81
82
83
84
85
86
86
85
84
83
82
81
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
27
28
29
30
31
32
33
34
35
36
37
38
39
79
80
52
14
26
40
78
79
53
13
25
41
77
78
54
12
24
42
76
77
55
11
23
43
75
76
56
10
22
44
74
75
57
9
21
45
73
74
58
8
20
46
60
61
62
63
64
65
66
67
68
69
70
71
72
73
59
7
19
47
48
49
50
51
52
53
54
55
56
57
58
59
72
60
6
18
71
59
5
17
70
58
4
16
69
57
3
15
68
56
2
14
67
66
65
64
63
62
61
60
59
58
57
56
55
1
2
3
4
5
6
7
8
9
10
11
12
13
68
54
0
116
117
118
119
120
121
122
123
124
125
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
115
122
102
90
86
74
114
121
101
89
85
73
113
120
100
88
84
72
112
119
99
87
83
71
111
118
98
86
82
70
110
117
97
85
81
69
109
116
96
84
80
68
108
115
95
83
79
67
107
114
94
82
78
66
106
113
93
81
77
65
105
112
92
80
76
64
104
111
91
79
78
77
76
75
74
73
72
71
70
69
68
67
79
75
63
103
110
90
78
66
78
74
62
102
109
89
77
65
77
73
61
101
108
88
76
64
76
72
60
100
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
63
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
59
99
100
86
74
62
74
62
58
98
101
85
73
61
73
61
57
97
101
84
72
60
72
60
56
96
100
83
71
59
71
59
55
95
99
82
70
58
70
58
54
94
98
81
69
57
69
57
53
93
97
80
68
56
68
56
52
92
96
79
67
55
67
55
51
91
95
78
66
54
66
54
50
90
94
77
65
53
65
53
49
89
93
76
64
52
64
52
48
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
79
62
50
38
78
61
49
37
77
60
48
36
76
59
47
35
75
58
46
34
74
57
45
33
73
56
44
32
72
55
43
31
71
54
42
30
70
53
41
29
69
52
40
28
68
69
70
71
72
73
74
75
76
77
78
79
80
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
15
16
17
18
19
20
21
22
23
24
25
26
27
67
81
64
26
14
28
66
82
65
25
13
29
65
83
66
24
12
30
64
84
67
23
11
31
63
85
68
22
10
32
62
86
69
21
9
33
61
87
70
20
8
34
48
49
50
51
52
53
54
55
56
57
58
59
60
87
71
19
7
35
36
37
38
39
40
41
42
43
44
45
46
47
86
72
18
6
85
73
17
5
84
72
16
4
83
71
15
3
82
70
14
2
81
80
79
78
77
76
75
74
73
72
71
70
69
13
12
11
10
9
8
7
6
5
4
3
2
1
82
68
14
0
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
126
125
124
123
122
121
120
119
118
117
75
87
91
103
123
116
74
86
90
102
122
115
73
85
89
101
121
114
72
84
88
100
120
113
71
83
87
99
119
112
70
82
86
98
118
111
69
81
85
97
117
110
68
80
84
96
116
109
67
79
83
95
115
108
66
78
82
94
114
107
65
77
81
93
113
106
64
76
80
68
69
70
71
72
73
74
75
76
77
78
79
80
92
112
105
63
75
79
67
79
91
111
104
62
74
78
66
78
90
110
103
61
73
77
65
77
89
109
102
60
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
64
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
101
59
63
75
63
75
87
101
100
58
62
74
62
74
86
102
99
57
61
73
61
73
85
102
98
56
60
72
60
72
84
101
97
55
59
71
59
71
83
100
96
54
58
70
58
70
82
99
95
53
57
69
57
69
81
98
94
52
56
68
56
68
80
97
93
51
55
67
55
67
79
96
92
50
54
66
54
66
78
95
91
49
53
65
53
65
77
94
90
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
39
51
63
80
38
50
62
79
37
49
61
78
36
48
60
77
35
47
59
76
34
46
58
75
33
45
57
74
32
44
56
73
31
43
55
72
30
42
54
71
29
41
53
70
28
27
26
25
24
23
22
21
20
19
18
17
16
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
81
80
79
78
77
76
75
74
73
72
71
70
69
29
15
27
65
82
68
30
14
26
66
83
67
31
13
25
67
84
66
32
12
24
68
85
65
33
11
23
69
86
64
34
10
22
70
87
63
35
9
21
71
88
62
48
47
46
45
44
43
42
41
40
39
38
37
36
8
20
72
88
61
60
59
58
57
56
55
54
53
52
51
50
49
7
19
73
87
6
18
74
86
5
17
73
85
4
16
72
84
3
15
71
83
2
3
4
5
6
7
8
9
10
11
12
13
14
70
71
72
73
74
75
76
77
78
79
80
81
82
1
15
69
83
0
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
87
99
79
91
111
125
86
98
78
90
110
126
85
97
77
89
109
126
84
96
76
88
108
125
83
95
75
87
107
124
82
94
74
86
106
123
81
93
73
85
105
122
80
92
72
84
104
121
79
91
71
83
103
120
78
90
70
82
102
119
77
89
69
81
101
118
76
88
68
56
57
58
59
60
61
62
63
64
65
66
67
68
80
100
117
75
87
67
55
67
79
99
116
74
86
66
54
66
78
98
115
73
85
65
53
65
77
97
114
72
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
113
71
75
63
51
63
75
89
112
70
74
62
50
62
74
90
111
69
73
61
49
61
73
91
110
68
72
60
48
60
72
92
109
67
71
59
47
59
71
93
108
66
70
58
46
58
70
94
107
65
69
57
45
57
69
95
106
64
68
56
44
56
68
96
105
63
67
55
43
55
67
97
104
62
66
54
42
54
66
98
103
61
65
53
41
53
65
99
102
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
52
51
50
49
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
100
101
102
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
51
39
51
92
50
38
50
91
49
37
49
90
48
36
48
89
47
35
47
88
46
34
46
87
45
33
45
86
44
32
44
85
43
31
43
84
42
30
42
83
41
29
41
82
40
39
38
37
36
35
34
33
32
31
30
29
28
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
80
81
82
83
84
85
86
86
85
84
83
82
81
41
27
15
53
79
80
42
26
14
54
78
79
43
25
13
55
77
78
44
24
12
56
76
77
45
23
11
57
75
76
46
22
10
58
74
75
47
21
9
59
73
74
60
59
58
57
56
55
54
53
52
51
50
49
48
20
8
60
72
73
72
71
70
69
68
67
66
65
64
63
62
61
19
7
59
71
18
6
58
70
17
5
57
69
16
4
56
68
15
3
55
67
14
13
12
11
10
9
8
7
6
5
4
3
2
54
55
56
57
58
59
60
61
62
63
64
65
66
15
1
53
67
16
0
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
125
111
91
79
99
87
126
110
90
78
98
86
126
109
89
77
97
85
125
108
88
76
96
84
124
107
87
75
95
83
123
106
86
74
94
82
122
105
85
73
93
81
121
104
84
72
92
80
120
103
83
71
91
79
119
102
82
70
90
78
118
101
81
69
89
77
117
100
80
68
67
66
65
64
63
62
61
60
59
58
57
56
68
88
76
116
99
79
67
55
67
87
75
115
98
78
66
54
66
86
74
114
97
77
65
53
65
85
73
113
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
72
112
89
75
63
51
63
75
71
111
90
74
62
50
62
74
70
110
91
73
61
49
61
73
69
109
92
72
60
48
60
72
68
108
93
71
59
47
59
71
67
107
94
70
58
46
58
70
66
106
95
69
57
45
57
69
65
105
96
68
56
44
56
68
64
104
97
67
55
43
55
67
63
103
98
66
54
42
54
66
62
102
99
65
53
41
53
65
61
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
102
101
100
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
49
50
51
52
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
92
51
39
51
91
50
38
50
90
49
37
49
89
48
36
48
88
47
35
47
87
46
34
46
86
45
33
45
85
44
32
44
84
43
31
43
83
42
30
42
82
41
29
41
81
82
83
84
85
86
86
85
84
83
82
81
80
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
28
29
30
31
32
33
34
35
36
37
38
39
40
80
79
53
15
27
41
79
78
54
14
26
42
78
77
55
13
25
43
77
76
56
12
24
44
76
75
57
11
23
45
75
74
58
10
22
46
74
73
59
9
21
47
61
62
63
64
65
66
67
68
69
70
71
72
73
72
60
8
20
48
49
50
51
52
53
54
55
56
57
58
59
60
71
59
7
19
70
58
6
18
69
57
5
17
68
56
4
16
67
55
3
15
66
65
64
63
62
61
60
59
58
57
56
55
54
2
3
4
5
6
7
8
9
10
11
12
13
14
67
53
1
15
68
52
0
117
118
119
120
121
122
123
124
125
126
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
116
123
103
91
87
75
115
122
102
90
86
74
114
121
101
89
85
73
113
120
100
88
84
72
112
119
99
87
83
71
111
118
98
86
82
70
110
117
97
85
81
69
109
116
96
84
80
68
108
115
95
83
79
67
107
114
94
82
78
66
106
113
93
81
77
65
105
112
92
80
79
78
77
76
75
74
73
72
71
70
69
68
80
76
64
104
111
91
79
67
79
75
63
103
110
90
78
66
78
74
62
102
109
89
77
65
77
73
61
101
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
64
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
60
100
101
87
75
63
75
63
59
99
102
86
74
62
74
62
58
98
102
85
73
61
73
61
57
97
101
84
72
60
72
60
56
96
100
83
71
59
71
59
55
95
99
82
70
58
70
58
54
94
98
81
69
57
69
57
53
93
97
80
68
56
68
56
52
92
96
79
67
55
67
55
51
91
95
78
66
54
66
54
50
90
94
77
65
53
65
53
49
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
80
63
51
39
79
62
50
38
78
61
49
37
77
60
48
36
76
59
47
35
75
58
46
34
74
57
45
33
73
56
44
32
72
55
43
31
71
54
42
30
70
53
41
29
69
70
71
72
73
74
75
76
77
78
79
80
81
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
16
17
18
19
20
21
22
23
24
25
26
27
28
68
82
65
27
15
29
67
83
66
26
14
30
66
84
67
25
13
31
65
85
68
24
12
32
64
86
69
23
11
33
63
87
70
22
10
34
62
88
71
21
9
35
49
50
51
52
53
54
55
56
57
58
59
60
61
88
72
20
8
36
37
38
39
40
41
42
43
44
45
46
47
48
87
73
19
7
86
74
18
6
85
73
17
5
84
72
16
4
83
71
15
3
82
81
80
79
78
77
76
75
74
73
72
71
70
14
13
12
11
10
9
8
7
6
5
4
3
2
83
69
15
1
84
68
16
0
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
127
126
125
124
123
122
121
120
119
118
76
88
92
104
124
117
75
87
91
103
123
116
74
86
90
102
122
115
73
85
89
101
121
114
72
84
88
100
120
113
71
83
87
99
119
112
70
82
86
98
118
111
69
81
85
97
117
110
68
80
84
96
116
109
67
79
83
95
115
108
66
78
82
94
114
107
65
77
81
69
70
71
72
73
74
75
76
77
78
79
80
81
93
113
106
64
76
80
68
80
92
112
105
63
75
79
67
79
91
111
104
62
74
78
66
78
90
110
103
61
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
65
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
102
60
64
76
64
76
88
102
101
59
63
75
63
75
87
103
100
58
62
74
62
74
86
103
99
57
61
73
61
73
85
102
98
56
60
72
60
72
84
101
97
55
59
71
59
71
83
100
96
54
58
70
58
70
82
99
95
53
57
69
57
69
81
98
94
52
56
68
56
68
80
97
93
51
55
67
55
67
79
96
92
50
54
66
54
66
78
95
91
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
40
52
64
81
39
51
63
80
38
50
62
79
37
49
61
78
36
48
60
77
35
47
59
76
34
46
58
75
33
45
57
74
32
44
56
73
31
43
55
72
30
42
54
71
29
28
27
26
25
24
23
22
21
20
19
18
17
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
82
81
80
79
78
77
76
75
74
73
72
71
70
30
16
28
66
83
69
31
15
27
67
84
68
32
14
26
68
85
67
33
13
25
69
86
66
34
12
24
70
87
65
35
11
23
71
88
64
36
10
22
72
89
63
49
48
47
46
45
44
43
42
41
40
39
38
37
9
21
73
89
62
61
60
59
58
57
56
55
54
53
52
51
50
8
20
74
88
7
19
75
87
6
18
74
86
5
17
73
85
4
16
72
84
3
4
5
6
7
8
9
10
11
12
13
14
15
71
72
73
74
75
76
77
78
79
80
81
82
83
2
16
70
84
1
17
69
85
0
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
88
100
80
92
112
126
87
99
79
91
111
127
86
98
78
90
110
127
85
97
77
89
109
126
84
96
76
88
108
125
83
95
75
87
107
124
82
94
74
86
106
123
81
93
73
85
105
122
80
92
72
84
104
121
79
91
71
83
103
120
78
90
70
82
102
119
77
89
69
57
58
59
60
61
62
63
64
65
66
67
68
69
81
101
118
76
88
68
56
68
80
100
117
75
87
67
55
67
79
99
116
74
86
66
54
66
78
98
115
73
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
114
72
76
64
52
64
76
90
113
71
75
63
51
63
75
91
112
70
74
62
50
62
74
92
111
69
73
61
49
61
73
93
110
68
72
60
48
60
72
94
109
67
71
59
47
59
71
95
108
66
70
58
46
58
70
96
107
65
69
57
45
57
69
97
106
64
68
56
44
56
68
98
105
63
67
55
43
55
67
99
104
62
66
54
42
54
66
100
103
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
53
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
101
102
103
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
52
40
52
93
51
39
51
92
50
38
50
91
49
37
49
90
48
36
48
89
47
35
47
88
46
34
46
87
45
33
45
86
44
32
44
85
43
31
43
84
42
30
42
83
41
40
39
38
37
36
35
34
33
32
31
30
29
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
79
80
81
82
83
84
85
86
86
85
84
83
82
42
28
16
54
78
81
43
27
15
55
77
80
44
26
14
56
76
79
45
25
13
57
75
78
46
24
12
58
74
77
47
23
11
59
73
76
48
22
10
60
72
75
61
60
59
58
57
56
55
54
53
52
51
50
49
21
9
59
71
74
73
72
71
70
69
68
67
66
65
64
63
62
20
8
58
70
19
7
57
69
18
6
56
68
17
5
55
67
16
4
54
66
15
14
13
12
11
10
9
8
7
6
5
4
3
53
54
55
56
57
58
59
60
61
62
63
64
65
16
2
52
66
17
1
51
67
18
0
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
126
112
92
80
100
88
127
111
91
79
99
87
127
110
90
78
98
86
126
109
89
77
97
85
125
108
88
76
96
84
124
107
87
75
95
83
123
106
86
74
94
82
122
105
85
73
93
81
121
104
84
72
92
80
120
103
83
71
91
79
119
102
82
70
90
78
118
101
81
69
68
67
66
65
64
63
62
61
60
59
58
57
69
89
77
117
100
80
68
56
68
88
76
116
99
79
67
55
67
87
75
115
98
78
66
54
66
86
74
114
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
73
113
90
76
64
52
64
76
72
112
91
75
63
51
63
75
71
111
92
74
62
50
62
74
70
110
93
73
61
49
61
73
69
109
94
72
60
48
60
72
68
108
95
71
59
47
59
71
67
107
96
70
58
46
58
70
66
106
97
69
57
45
57
69
65
105
98
68
56
44
56
68
64
104
99
67
55
43
55
67
63
103
100
66
54
42
54
66
62
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
103
102
101
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
93
52
40
52
92
51
39
51
91
50
38
50
90
49
37
49
89
48
36
48
88
47
35
47
87
46
34
46
86
45
33
45
85
44
32
44
84
43
31
43
83
42
30
42
82
83
84
85
86
86
85
84
83
82
81
80
79
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
29
30
31
32
33
34
35
36
37
38
39
40
41
81
78
54
16
28
42
80
77
55
15
27
43
79
76
56
14
26
44
78
75
57
13
25
45
77
74
58
12
24
46
76
73
59
11
23
47
75
72
60
10
22
48
62
63
64
65
66
67
68
69
70
71
72
73
74
71
59
9
21
49
50
51
52
53
54
55
56
57
58
59
60
61
70
58
8
20
69
57
7
19
68
56
6
18
67
55
5
17
66
54
4
16
65
64
63
62
61
60
59
58
57
56
55
54
53
3
4
5
6
7
8
9
10
11
12
13
14
15
66
52
2
16
67
51
1
17
68
50
0
118
119
120
121
122
123
124
125
126
127
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
117
124
104
92
88
76
116
123
103
91
87
75
115
122
102
90
86
74
114
121
101
89
85
73
113
120
100
88
84
72
112
119
99
87
83
71
111
118
98
86
82
70
110
117
97
85
81
69
109
116
96
84
80
68
108
115
95
83
79
67
107
114
94
82
78
66
106
113
93
81
80
79
78
77
76
75
74
73
72
71
70
69
81
77
65
105
112
92
80
68
80
76
64
104
111
91
79
67
79
75
63
103
110
90
78
66
78
74
62
102
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
65
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
61
101
102
88
76
64
76
64
60
100
103
87
75
63
75
63
59
99
103
86
74
62
74
62
58
98
102
85
73
61
73
61
57
97
101
84
72
60
72
60
56
96
100
83
71
59
71
59
55
95
99
82
70
58
70
58
54
94
98
81
69
57
69
57
53
93
97
80
68
56
68
56
52
92
96
79
67
55
67
55
51
91
95
78
66
54
66
54
50
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
81
64
52
40
80
63
51
39
79
62
50
38
78
61
49
37
77
60
48
36
76
59
47
35
75
58
46
34
74
57
45
33
73
56
44
32
72
55
43
31
71
54
42
30
70
71
72
73
74
75
76
77
78
79
80
81
82
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
40
39
38
37
36
35
34
33
32
31
30
29
17
18
19
20
21
22
23
24
25
26
27
28
29
69
83
66
28
16
30
68
84
67
27
15
31
67
85
68
26
14
32
66
86
69
25
13
33
65
87
70
24
12
34
64
88
71
23
11
35
63
89
72
22
10
36
50
51
52
53
54
55
56
57
58
59
60
61
62
89
73
21
9
37
38
39
40
41
42
43
44
45
46
47
48
49
88
74
20
8
87
75
19
7
86
74
18
6
85
73
17
5
84
72
16
4
83
82
81
80
79
78
77
76
75
74
73
72
71
15
14
13
12
11
10
9
8
7
6
5
4
3
84
70
16
2
85
69
17
1
85
68
18
0
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
128
127
126
125
124
123
122
121
120
119
77
89
93
105
125
118
76
88
92
104
124
117
75
87
91
103
123
116
74
86
90
102
122
115
73
85
89
101
121
114
72
84
88
100
120
113
71
83
87
99
119
112
70
82
86
98
118
111
69
81
85
97
117
110
68
80
84
96
116
109
67
79
83
95
115
108
66
78
82
70
71
72
73
74
75
76
77
78
79
80
81
82
94
114
107
65
77
81
69
81
93
113
106
64
76
80
68
80
92
112
105
63
75
79
67
79
91
111
104
62
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
66
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
103
61
65
77
65
77
89
103
102
60
64
76
64
76
88
104
101
59
63
75
63
75
87
104
100
58
62
74
62
74
86
103
99
57
61
73
61
73
85
102
98
56
60
72
60
72
84
101
97
55
59
71
59
71
83
100
96
54
58
70
58
70
82
99
95
53
57
69
57
69
81
98
94
52
56
68
56
68
80
97
93
51
55
67
55
67
79
96
92
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
41
53
65
82
40
52
64
81
39
51
63
80
38
50
62
79
37
49
61
78
36
48
60
77
35
47
59
76
34
46
58
75
33
45
57
74
32
44
56
73
31
43
55
72
30
29
28
27
26
25
24
23
22
21
20
19
18
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
83
82
81
80
79
78
77
76
75
74
73
72
71
31
17
29
67
84
70
32
16
28
68
85
69
33
15
27
69
86
68
34
14
26
70
87
67
35
13
25
71
88
66
36
12
24
72
89
65
37
11
23
73
90
64
50
49
48
47
46
45
44
43
42
41
40
39
38
10
22
74
90
63
62
61
60
59
58
57
56
55
54
53
52
51
9
21
75
89
8
20
76
88
7
19
75
87
6
18
74
86
5
17
73
85
4
5
6
7
8
9
10
11
12
13
14
15
16
72
73
74
75
76
77
78
79
80
81
82
83
84
3
17
71
85
2
18
70
85
1
19
69
84
0
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
89
101
81
93
113
127
88
100
80
92
112
128
87
99
79
91
111
128
86
98
78
90
110
127
85
97
77
89
109
126
84
96
76
88
108
125
83
95
75
87
107
124
82
94
74
86
106
123
81
93
73
85
105
122
80
92
72
84
104
121
79
91
71
83
103
120
78
90
70
58
59
60
61
62
63
64
65
66
67
68
69
70
82
102
119
77
89
69
57
69
81
101
118
76
88
68
56
68
80
100
117
75
87
67
55
67
79
99
116
74
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
115
73
77
65
53
65
77
91
114
72
76
64
52
64
76
92
113
71
75
63
51
63
75
93
112
70
74
62
50
62
74
94
111
69
73
61
49
61
73
95
110
68
72
60
48
60
72
96
109
67
71
59
47
59
71
97
108
66
70
58
46
58
70
98
107
65
69
57
45
57
69
99
106
64
68
56
44
56
68
100
105
63
67
55
43
55
67
101
104
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
54
53
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
102
103
104
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
53
41
53
94
52
40
52
93
51
39
51
92
50
38
50
91
49
37
49
90
48
36
48
89
47
35
47
88
46
34
46
87
45
33
45
86
44
32
44
85
43
31
43
84
42
41
40
39
38
37
36
35
34
33
32
31
30
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
78
79
80
81
82
83
84
85
86
86
85
84
83
43
29
17
55
77
82
44
28
16
56
76
81
45
27
15
57
75
80
46
26
14
58
74
79
47
25
13
59
73
78
48
24
12
60
72
77
49
23
11
59
71
76
62
61
60
59
58
57
56
55
54
53
52
51
50
22
10
58
70
75
74
73
72
71
70
69
68
67
66
65
64
63
21
9
57
69
20
8
56
68
19
7
55
67
18
6
54
66
17
5
53
65
16
15
14
13
12
11
10
9
8
7
6
5
4
52
53
54
55
56
57
58
59
60
61
62
63
64
17
3
51
65
18
2
50
66
19
1
49
67
20
0
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
127
113
93
81
101
89
128
112
92
80
100
88
128
111
91
79
99
87
127
110
90
78
98
86
126
109
89
77
97
85
125
108
88
76
96
84
124
107
87
75
95
83
123
106
86
74
94
82
122
105
85
73
93
81
121
104
84
72
92
80
120
103
83
71
91
79
119
102
82
70
69
68
67
66
65
64
63
62
61
60
59
58
70
90
78
118
101
81
69
57
69
89
77
117
100
80
68
56
68
88
76
116
99
79
67
55
67
87
75
115
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
74
114
91
77
65
53
65
77
73
113
92
76
64
52
64
76
72
112
93
75
63
51
63
75
71
111
94
74
62
50
62
74
70
110
95
73
61
49
61
73
69
109
96
72
60
48
60
72
68
108
97
71
59
47
59
71
67
107
98
70
58
46
58
70
66
106
99
69
57
45
57
69
65
105
100
68
56
44
56
68
64
104
101
67
55
43
55
67
63
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
104
103
102
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
94
53
41
53
93
52
40
52
92
51
39
51
91
50
38
50
90
49
37
49
89
48
36
48
88
47
35
47
87
46
34
46
86
45
33
45
85
44
32
44
84
43
31
43
83
84
85
86
86
85
84
83
82
81
80
79
78
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
30
31
32
33
34
35
36
37
38
39
40
41
42
82
77
55
17
29
43
81
76
56
16
28
44
80
75
57
15
27
45
79
74
58
14
26
46
78
73
59
13
25
47
77
72
60
12
24
48
76
71
59
11
23
49
63
64
65
66
67
68
69
70
71
72
73
74
75
70
58
10
22
50
51
52
53
54
55
56
57
58
59
60
61
62
69
57
9
21
68
56
8
20
67
55
7
19
66
54
6
18
65
53
5
17
64
63
62
61
60
59
58
57
56
55
54
53
52
4
5
6
7
8
9
10
11
12
13
14
15
16
65
51
3
17
66
50
2
18
67
49
1
19
68
48
0
119
120
121
122
123
124
125
126
127
128
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
118
125
105
93
89
77
117
124
104
92
88
76
116
123
103
91
87
75
115
122
102
90
86
74
114
121
101
89
85
73
113
120
100
88
84
72
112
119
99
87
83
71
111
118
98
86
82
70
110
117
97
85
81
69
109
116
96
84
80
68
108
115
95
83
79
67
107
114
94
82
81
80
79
78
77
76
75
74
73
72
71
70
82
78
66
106
113
93
81
69
81
77
65
105
112
92
80
68
80
76
64
104
111
91
79
67
79
75
63
103
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
66
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
62
102
103
89
77
65
77
65
61
101
104
88
76
64
76
64
60
100
104
87
75
63
75
63
59
99
103
86
74
62
74
62
58
98
102
85
73
61
73
61
57
97
101
84
72
60
72
60
56
96
100
83
71
59
71
59
55
95
99
82
70
58
70
58
54
94
98
81
69
57
69
57
53
93
97
80
68
56
68
56
52
92
96
79
67
55
67
55
51
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
82
65
53
41
81
64
52
40
80
63
51
39
79
62
50
38
78
61
49
37
77
60
48
36
76
59
47
35
75
58
46
34
74
57
45
33
73
56
44
32
72
55
43
31
71
72
73
74
75
76
77
78
79
80
81
82
83
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
40
39
38
37
36
35
34
33
32
31
30
18
19
20
21
22
23
24
25
26
27
28
29
30
70
84
67
29
17
31
69
85
68
28
16
32
68
86
69
27
15
33
67
87
70
26
14
34
66
88
71
25
13
35
65
89
72
24
12
36
64
90
73
23
11
37
51
52
53
54
55
56
57
58
59
60
61
62
63
90
74
22
10
38
39
40
41
42
43
44
45
46
47
48
49
50
89
75
21
9
88
76
20
8
87
75
19
7
86
74
18
6
85
73
17
5
84
83
82
81
80
79
78
77
76
75
74
73
72
16
15
14
13
12
11
10
9
8
7
6
5
4
85
71
17
3
85
70
18
2
84
69
19
1
83
68
20
0
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
129
128
127
126
125
124
123
122
121
120
78
90
94
106
126
119
77
89
93
105
125
118
76
88
92
104
124
117
75
87
91
103
123
116
74
86
90
102
122
115
73
85
89
101
121
114
72
84
88
100
120
113
71
83
87
99
119
112
70
82
86
98
118
111
69
81
85
97
117
110
68
80
84
96
116
109
67
79
83
71
72
73
74
75
76
77
78
79
80
81
82
83
95
115
108
66
78
82
70
82
94
114
107
65
77
81
69
81
93
113
106
64
76
80
68
80
92
112
105
63
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
67
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
104
62
66
78
66
78
90
104
103
61
65
77
65
77
89
105
102
60
64
76
64
76
88
105
101
59
63
75
63
75
87
104
100
58
62
74
62
74
86
103
99
57
61
73
61
73
85
102
98
56
60
72
60
72
84
101
97
55
59
71
59
71
83
100
96
54
58
70
58
70
82
99
95
53
57
69
57
69
81
98
94
52
56
68
56
68
80
97
93
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
42
54
66
83
41
53
65
82
40
52
64
81
39
51
63
80
38
50
62
79
37
49
61
78
36
48
60
77
35
47
59
76
34
46
58
75
33
45
57
74
32
44
56
73
31
30
29
28
27
26
25
24
23
22
21
20
19
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
84
83
82
81
80
79
78
77
76
75
74
73
72
32
18
30
68
85
71
33
17
29
69
86
70
34
16
28
70
87
69
35
15
27
71
88
68
36
14
26
72
89
67
37
13
25
73
90
66
38
12
24
74
91
65
51
50
49
48
47
46
45
44
43
42
41
40
39
11
23
75
91
64
63
62
61
60
59
58
57
56
55
54
53
52
10
22
76
90
9
21
77
89
8
20
76
88
7
19
75
87
6
18
74
86
5
6
7
8
9
10
11
12
13
14
15
16
17
73
74
75
76
77
78
79
80
81
82
83
84
85
4
18
72
85
3
19
71
84
2
20
70
83
1
21
69
82
0
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
90
102
82
94
114
128
89
101
81
93
113
129
88
100
80
92
112
129
87
99
79
91
111
128
86
98
78
90
110
127
85
97
77
89
109
126
84
96
76
88
108
125
83
95
75
87
107
124
82
94
74
86
106
123
81
93
73
85
105
122
80
92
72
84
104
121
79
91
71
59
60
61
62
63
64
65
66
67
68
69
70
71
83
103
120
78
90
70
58
70
82
102
119
77
89
69
57
69
81
101
118
76
88
68
56
68
80
100
117
75
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
116
74
78
66
54
66
78
92
115
73
77
65
53
65
77
93
114
72
76
64
52
64
76
94
113
71
75
63
51
63
75
95
112
70
74
62
50
62
74
96
111
69
73
61
49
61
73
97
110
68
72
60
48
60
72
98
109
67
71
59
47
59
71
99
108
66
70
58
46
58
70
100
107
65
69
57
45
57
69
101
106
64
68
56
44
56
68
102
105
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
55
54
53
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
103
104
105
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
54
42
54
95
53
41
53
94
52
40
52
93
51
39
51
92
50
38
50
91
49
37
49
90
48
36
48
89
47
35
47
88
46
34
46
87
45
33
45
86
44
32
44
85
43
42
41
40
39
38
37
36
35
34
33
32
31
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
77
78
79
80
81
82
83
84
85
86
86
85
84
44
30
18
56
76
83
45
29
17
57
75
82
46
28
16
58
74
81
47
27
15
59
73
80
48
26
14
60
72
79
49
25
13
59
71
78
50
24
12
58
70
77
63
62
61
60
59
58
57
56
55
54
53
52
51
23
11
57
69
76
75
74
73
72
71
70
69
68
67
66
65
64
22
10
56
68
21
9
55
67
20
8
54
66
19
7
53
65
18
6
52
64
17
16
15
14
13
12
11
10
9
8
7
6
5
51
52
53
54
55
56
57
58
59
60
61
62
63
18
4
50
64
19
3
49
65
20
2
48
66
21
1
47
67
22
0
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
128
114
94
82
102
90
129
113
93
81
101
89
129
112
92
80
100
88
128
111
91
79
99
87
127
110
90
78
98
86
126
109
89
77
97
85
125
108
88
76
96
84
124
107
87
75
95
83
123
106
86
74
94
82
122
105
85
73
93
81
121
104
84
72
92
80
120
103
83
71
70
69
68
67
66
65
64
63
62
61
60
59
71
91
79
119
102
82
70
58
70
90
78
118
101
81
69
57
69
89
77
117
100
80
68
56
68
88
76
116
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
75
115
92
78
66
54
66
78
74
114
93
77
65
53
65
77
73
113
94
76
64
52
64
76
72
112
95
75
63
51
63
75
71
111
96
74
62
50
62
74
70
110
97
73
61
49
61
73
69
109
98
72
60
48
60
72
68
108
99
71
59
47
59
71
67
107
100
70
58
46
58
70
66
106
101
69
57
45
57
69
65
105
102
68
56
44
56
68
64
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
105
104
103
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
95
54
42
54
94
53
41
53
93
52
40
52
92
51
39
51
91
50
38
50
90
49
37
49
89
48
36
48
88
47
35
47
87
46
34
46
86
45
33
45
85
44
32
44
84
85
86
86
85
84
83
82
81
80
79
78
77
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
31
32
33
34
35
36
37
38
39
40
41
42
43
83
76
56
18
30
44
82
75
57
17
29
45
81
74
58
16
28
46
80
73
59
15
27
47
79
72
60
14
26
48
78
71
59
13
25
49
77
70
58
12
24
50
64
65
66
67
68
69
70
71
72
73
74
75
76
69
57
11
23
51
52
53
54
55
56
57
58
59
60
61
62
63
68
56
10
22
67
55
9
21
66
54
8
20
65
53
7
19
64
52
6
18
63
62
61
60
59
58
57
56
55
54
53
52
51
5
6
7
8
9
10
11
12
13
14
15
16
17
64
50
4
18
65
49
3
19
66
48
2
20
67
47
1
21
68
46
0
120
121
122
123
124
125
126
127
128
129
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
119
126
106
94
90
78
118
125
105
93
89
77
117
124
104
92
88
76
116
123
103
91
87
75
115
122
102
90
86
74
114
121
101
89
85
73
113
120
100
88
84
72
112
119
99
87
83
71
111
118
98
86
82
70
110
117
97
85
81
69
109
116
96
84
80
68
108
115
95
83
82
81
80
79
78
77
76
75
74
73
72
71
83
79
67
107
114
94
82
70
82
78
66
106
113
93
81
69
81
77
65
105
112
92
80
68
80
76
64
104
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
67
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
63
103
104
90
78
66
78
66
62
102
105
89
77
65
77
65
61
101
105
88
76
64
76
64
60
100
104
87
75
63
75
63
59
99
103
86
74
62
74
62
58
98
102
85
73
61
73
61
57
97
101
84
72
60
72
60
56
96
100
83
71
59
71
59
55
95
99
82
70
58
70
58
54
94
98
81
69
57
69
57
53
93
97
80
68
56
68
56
52
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
83
66
54
42
82
65
53
41
81
64
52
40
80
63
51
39
79
62
50
38
78
61
49
37
77
60
48
36
76
59
47
35
75
58
46
34
74
57
45
33
73
56
44
32
72
73
74
75
76
77
78
79
80
81
82
83
84
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
40
39
38
37
36
35
34
33
32
31
19
20
21
22
23
24
25
26
27
28
29
30
31
71
85
68
30
18
32
70
86
69
29
17
33
69
87
70
28
16
34
68
88
71
27
15
35
67
89
72
26
14
36
66
90
73
25
13
37
65
91
74
24
12
38
52
53
54
55
56
57
58
59
60
61
62
63
64
91
75
23
11
39
40
41
42
43
44
45
46
47
48
49
50
51
90
76
22
10
89
77
21
9
88
76
20
8
87
75
19
7
86
74
18
6
85
84
83
82
81
80
79
78
77
76
75
74
73
17
16
15
14
13
12
11
10
9
8
7
6
5
85
72
18
4
84
71
19
3
83
70
20
2
82
69
21
1
81
68
22
0
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
79
91
95
107
127
120
78
90
94
106
126
119
77
89
93
105
125
118
76
88
92
104
124
117
75
87
91
103
123
116
74
86
90
102
122
115
73
85
89
101
121
114
72
84
88
100
120
113
71
83
87
99
119
112
70
82
86
98
118
111
69
81
85
97
117
110
68
80
84
72
73
74
75
76
77
78
79
80
81
82
83
84
96
116
109
67
79
83
71
83
95
115
108
66
78
82
70
82
94
114
107
65
77
81
69
81
93
113
106
64
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
68
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
105
63
67
79
67
79
91
105
104
62
66
78
66
78
90
106
103
61
65
77
65
77
89
106
102
60
64
76
64
76
88
105
101
59
63
75
63
75
87
104
100
58
62
74
62
74
86
103
99
57
61
73
61
73
85
102
98
56
60
72
60
72
84
101
97
55
59
71
59
71
83
100
96
54
58
70
58
70
82
99
95
53
57
69
57
69
81
98
94
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
43
55
67
84
42
54
66
83
41
53
65
82
40
52
64
81
39
51
63
80
38
50
62
79
37
49
61
78
36
48
60
77
35
47
59
76
34
46
58
75
33
45
57
74
32
31
30
29
28
27
26
25
24
23
22
21
20
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
85
84
83
82
81
80
79
78
77
76
75
74
73
33
19
31
69
86
72
34
18
30
70
87
71
35
17
29
71
88
70
36
16
28
72
89
69
37
15
27
73
90
68
38
14
26
74
91
67
39
13
25
75
92
66
52
51
50
49
48
47
46
45
44
43
42
41
40
12
24
76
91
65
64
63
62
61
60
59
58
57
56
55
54
53
11
23
77
90
10
22
78
89
9
21
77
88
8
20
76
87
7
19
75
86
6
7
8
9
10
11
12
13
14
15
16
17
18
74
75
76
77
78
79
80
81
82
83
84
85
85
5
19
73
84
4
20
72
83
3
21
71
82
2
22
70
81
1
23
69
80
0
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
91
103
83
95
115
129
90
102
82
94
114
130
89
101
81
93
113
130
88
100
80
92
112
129
87
99
79
91
111
128
86
98
78
90
110
127
85
97
77
89
109
126
84
96
76
88
108
125
83
95
75
87
107
124
82
94
74
86
106
123
81
93
73
85
105
122
80
92
72
60
61
62
63
64
65
66
67
68
69
70
71
72
84
104
121
79
91
71
59
71
83
103
120
78
90
70
58
70
82
102
119
77
89
69
57
69
81
101
118
76
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
117
75
79
67
55
67
79
93
116
74
78
66
54
66
78
94
115
73
77
65
53
65
77
95
114
72
76
64
52
64
76
96
113
71
75
63
51
63
75
97
112
70
74
62
50
62
74
98
111
69
73
61
49
61
73
99
110
68
72
60
48
60
72
100
109
67
71
59
47
59
71
101
108
66
70
58
46
58
70
102
107
65
69
57
45
57
69
103
106
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
56
55
54
53
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
104
105
106
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
55
43
55
96
54
42
54
95
53
41
53
94
52
40
52
93
51
39
51
92
50
38
50
91
49
37
49
90
48
36
48
89
47
35
47
88
46
34
46
87
45
33
45
86
44
43
42
41
40
39
38
37
36
35
34
33
32
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
76
77
78
79
80
81
82
83
84
85
86
86
85
45
31
19
57
75
84
46
30
18
58
74
83
47
29
17
59
73
82
48
28
16
60
72
81
49
27
15
59
71
80
50
26
14
58
70
79
51
25
13
57
69
78
64
63
62
61
60
59
58
57
56
55
54
53
52
24
12
56
68
77
76
75
74
73
72
71
70
69
68
67
66
65
23
11
55
67
22
10
54
66
21
9
53
65
20
8
52
64
19
7
51
63
18
17
16
15
14
13
12
11
10
9
8
7
6
50
51
52
53
54
55
56
57
58
59
60
61
62
19
5
49
63
20
4
48
64
21
3
47
65
22
2
46
66
23
1
45
67
24
0
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
129
115
95
83
103
91
130
114
94
82
102
90
130
113
93
81
101
89
129
112
92
80
100
88
128
111
91
79
99
87
127
110
90
78
98
86
126
109
89
77
97
85
125
108
88
76
96
84
124
107
87
75
95
83
123
106
86
74
94
82
122
105
85
73
93
81
121
104
84
72
71
70
69
68
67
66
65
64
63
62
61
60
72
92
80
120
103
83
71
59
71
91
79
119
102
82
70
58
70
90
78
118
101
81
69
57
69
89
77
117
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
76
116
93
79
67
55
67
79
75
115
94
78
66
54
66
78
74
114
95
77
65
53
65
77
73
113
96
76
64
52
64
76
72
112
97
75
63
51
63
75
71
111
98
74
62
50
62
74
70
110
99
73
61
49
61
73
69
109
100
72
60
48
60
72
68
108
101
71
59
47
59
71
67
107
102
70
58
46
58
70
66
106
103
69
57
45
57
69
65
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
106
105
104
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
96
55
43
55
95
54
42
54
94
53
41
53
93
52
40
52
92
51
39
51
91
50
38
50
90
49
37
49
89
48
36
48
88
47
35
47
87
46
34
46
86
45
33
45
85
86
86
85
84
83
82
81
80
79
78
77
76
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
32
33
34
35
36
37
38
39
40
41
42
43
44
84
75
57
19
31
45
83
74
58
18
30
46
82
73
59
17
29
47
81
72
60
16
28
48
80
71
59
15
27
49
79
70
58
14
26
50
78
69
57
13
25
51
65
66
67
68
69
70
71
72
73
74
75
76
77
68
56
12
24
52
53
54
55
56
57
58
59
60
61
62
63
64
67
55
11
23
66
54
10
22
65
53
9
21
64
52
8
20
63
51
7
19
62
61
60
59
58
57
56
55
54
53
52
51
50
6
7
8
9
10
11
12
13
14
15
16
17
18
63
49
5
19
64
48
4
20
65
47
3
21
66
46
2
22
67
45
1
23
68
44
0
121
122
123
124
125
126
127
128
129
130
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
120
127
107
95
91
79
119
126
106
94
90
78
118
125
105
93
89
77
117
124
104
92
88
76
116
123
103
91
87
75
115
122
102
90
86
74
114
121
101
89
85
73
113
120
100
88
84
72
112
119
99
87
83
71
111
118
98
86
82
70
110
117
97
85
81
69
109
116
96
84
83
82
81
80
79
78
77
76
75
74
73
72
84
80
68
108
115
95
83
71
83
79
67
107
114
94
82
70
82
78
66
106
113
93
81
69
81
77
65
105
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
68
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
64
104
105
91
79
67
79
67
63
103
106
90
78
66
78
66
62
102
106
89
77
65
77
65
61
101
105
88
76
64
76
64
60
100
104
87
75
63
75
63
59
99
103
86
74
62
74
62
58
98
102
85
73
61
73
61
57
97
101
84
72
60
72
60
56
96
100
83
71
59
71
59
55
95
99
82
70
58
70
58
54
94
98
81
69
57
69
57
53
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
84
67
55
43
83
66
54
42
82
65
53
41
81
64
52
40
80
63
51
39
79
62
50
38
78
61
49
37
77
60
48
36
76
59
47
35
75
58
46
34
74
57
45
33
73
74
75
76
77
78
79
80
81
82
83
84
85
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
40
39
38
37
36
35
34
33
32
20
21
22
23
24
25
26
27
28
29
30
31
32
72
86
69
31
19
33
71
87
70
30
18
34
70
88
71
29
17
35
69
89
72
28
16
36
68
90
73
27
15
37
67
91
74
26
14
38
66
92
75
25
13
39
53
54
55
56
57
58
59
60
61
62
63
64
65
91
76
24
12
40
41
42
43
44
45
46
47
48
49
50
51
52
90
77
23
11
89
78
22
10
88
77
21
9
87
76
20
8
86
75
19
7
85
85
84
83
82
81
80
79
78
77
76
75
74
18
17
16
15
14
13
12
11
10
9
8
7
6
84
73
19
5
83
72
20
4
82
71
21
3
81
70
22
2
80
69
23
1
79
68
24
0
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
118
130
134
135
131
119
117
129
133
134
130
118
116
128
132
133
129
117
115
127
131
132
128
116
114
126
130
131
127
115
113
125
129
130
126
114
112
124
128
129
125
113
111
123
127
128
124
112
110
122
126
127
123
111
109
121
125
126
122
110
108
120
124
125
121
109
107
119
123
111
112
113
114
115
116
117
117
116
115
114
113
112
124
120
108
106
118
122
110
111
123
119
107
105
117
121
109
110
122
118
106
104
116
120
108
109
121
117
105
103
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
107
108
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
104
102
106
118
106
107
119
107
103
101
105
117
105
106
118
106
102
100
104
116
104
105
117
105
101
99
103
115
103
104
116
104
100
98
102
114
102
103
115
103
99
97
101
113
101
102
114
102
98
96
100
112
100
101
113
101
97
95
99
111
99
100
112
100
96
94
98
110
98
99
111
99
95
93
97
109
97
98
110
98
94
92
96
108
96
97
109
97
93
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
82
94
95
83
81
93
94
82
80
92
93
81
79
91
92
80
78
90
91
79
77
89
90
78
76
88
89
77
75
87
88
76
74
86
87
75
73
85
86
74
72
84
85
73
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
72
58
70
71
59
73
73
57
69
70
58
74
74
56
68
69
57
75
75
55
67
68
56
76
76
54
66
67
55
77
77
53
65
66
54
78
78
52
64
65
53
79
91
90
89
88
87
86
85
84
83
82
81
80
79
51
63
64
52
80
81
82
83
84
85
86
87
88
89
90
91
92
50
62
63
51
49
61
62
50
48
60
61
49
47
59
60
48
46
58
59
47
45
46
47
48
49
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
49
48
47
46
44
58
59
45
43
59
60
44
42
60
61
43
41
61
62
42
40
62
63
41
39
63
64
40
0
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
117
129
133
136
132
120
116
128
132
135
131
119
115
127
131
134
130
118
114
126
130
133
129
117
113
125
129
132
128
116
112
124
128
131
127
115
111
123
127
130
126
114
110
122
126
129
125
113
109
121
125
128
124
112
108
120
124
127
123
111
107
119
123
126
122
110
106
118
122
110
111
112
113
114
115
116
117
117
116
115
114
113
125
121
109
105
117
121
109
112
124
120
108
104
116
120
108
111
123
119
107
103
115
119
107
110
122
118
106
102
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
106
109
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
105
101
105
117
105
108
120
108
104
100
104
116
104
107
119
107
103
99
103
115
103
106
118
106
102
98
102
114
102
105
117
105
101
97
101
113
101
104
116
104
100
96
100
112
100
103
115
103
99
95
99
111
99
102
114
102
98
94
98
110
98
101
113
101
97
93
97
109
97
100
112
100
96
92
96
108
96
99
111
99
95
91
95
107
95
98
110
98
94
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
106
105
104
103
102
101
100
99
98
97
96
95
94
97
98
99
100
101
102
103
104
105
106
107
108
109
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
81
93
96
84
80
92
95
83
79
91
94
82
78
90
93
81
77
89
92
80
76
88
91
79
75
87
90
78
74
86
89
77
73
85
88
76
72
84
87
75
71
83
86
74
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
71
57
69
72
60
74
72
56
68
71
59
75
73
55
67
70
58
76
74
54
66
69
57
77
75
53
65
68
56
78
76
52
64
67
55
79
77
51
63
66
54
80
90
89
88
87
86
85
84
83
82
81
80
79
78
50
62
65
53
81
82
83
84
85
86
87
88
89
90
91
92
91
49
61
64
52
48
60
63
51
47
59
62
50
46
58
61
49
45
57
60
48
44
45
46
47
48
49
50
51
52
53
54
55
56
59
58
57
56
55
54
53
52
51
50
49
48
47
43
57
60
46
42
58
61
45
41
59
62
44
40
60
63
43
39
61
64
42
38
62
65
41
1
0
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
116
128
132
137
133
121
115
127
131
136
132
120
114
126
130
135
131
119
113
125
129
134
130
118
112
124
128
133
129
117
111
123
127
132
128
116
110
122
126
131
127
115
109
121
125
130
126
114
108
120
124
129
125
113
107
119
123
128
124
112
106
118
122
127
123
111
105
117
121
109
110
111
112
113
114
115
116
117
117
116
115
114
126
122
110
104
116
120
108
113
125
121
109
103
115
119
107
112
124
120
108
102
114
118
106
111
123
119
107
101
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
105
110
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
106
100
104
116
104
109
121
109
105
99
103
115
103
108
120
108
104
98
102
114
102
107
119
107
103
97
101
113
101
106
118
106
102
96
100
112
100
105
117
105
101
95
99
111
99
104
116
104
100
94
98
110
98
103
115
103
99
93
97
109
97
102
114
102
98
92
96
108
96
101
113
101
97
91
95
107
95
100
112
100
96
90
94
106
94
99
111
99
95
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
105
104
103
102
101
100
99
98
97
96
95
94
93
98
99
100
101
102
103
104
105
106
107
108
109
110
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
80
92
97
85
79
91
96
84
78
90
95
83
77
89
94
82
76
88
93
81
75
87
92
80
74
86
91
79
73
85
90
78
72
84
89
77
71
83
88
76
70
82
87
75
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
70
56
68
73
61
75
71
55
67
72
60
76
72
54
66
71
59
77
73
53
65
70
58
78
74
52
64
69
57
79
75
51
63
68
56
80
76
50
62
67
55
81
89
88
87
86
85
84
83
82
81
80
79
78
77
49
61
66
54
82
83
84
85
86
87
88
89
90
91
92
91
90
48
60
65
53
47
59
64
52
46
58
63
51
45
57
62
50
44
56
61
49
43
44
45
46
47
48
49
50
51
52
53
54
55
60
59
58
57
56
55
54
53
52
51
50
49
48
42
56
61
47
41
57
62
46
40
58
63
45
39
59
64
44
38
60
65
43
37
61
66
42
2
1
0
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
115
127
131
138
134
122
114
126
130
137
133
121
113
125
129
136
132
120
112
124
128
135
131
119
111
123
127
134
130
118
110
122
126
133
129
117
109
121
125
132
128
116
108
120
124
131
127
115
107
119
123
130
126
114
106
118
122
129
125
113
105
117
121
128
124
112
104
116
120
108
109
110
111
112
113
114
115
116
117
117
116
115
127
123
111
103
115
119
107
114
126
122
110
102
114
118
106
113
125
121
109
101
113
117
105
112
124
120
108
100
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
104
111
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
107
99
103
115
103
110
122
110
106
98
102
114
102
109
121
109
105
97
101
113
101
108
120
108
104
96
100
112
100
107
119
107
103
95
99
111
99
106
118
106
102
94
98
110
98
105
117
105
101
93
97
109
97
104
116
104
100
92
96
108
96
103
115
103
99
91
95
107
95
102
114
102
98
90
94
106
94
101
113
101
97
89
93
105
93
100
112
100
96
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
104
103
102
101
100
99
98
97
96
95
94
93
92
99
100
101
102
103
104
105
106
107
108
109
110
111
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
79
91
98
86
78
90
97
85
77
89
96
84
76
88
95
83
75
87
94
82
74
86
93
81
73
85
92
80
72
84
91
79
71
83
90
78
70
82
89
77
69
81
88
76
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
69
55
67
74
62
76
70
54
66
73
61
77
71
53
65
72
60
78
72
52
64
71
59
79
73
51
63
70
58
80
74
50
62
69
57
81
75
49
61
68
56
82
88
87
86
85
84
83
82
81
80
79
78
77
76
48
60
67
55
83
84
85
86
87
88
89
90
91
92
91
90
89
47
59
66
54
46
58
65
53
45
57
64
52
44
56
63
51
43
55
62
50
42
43
44
45
46
47
48
49
50
51
52
53
54
61
60
59
58
57
56
55
54
53
52
51
50
49
41
55
62
48
40
56
63
47
39
57
64
46
38
58
65
45
37
59
66
44
36
60
67
43
3
2
1
0
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
114
126
130
139
135
123
113
125
129
138
134
122
112
124
128
137
133
121
111
123
127
136
132
120
110
122
126
135
131
119
109
121
125
134
130
118
108
120
124
133
129
117
107
119
123
132
128
116
106
118
122
131
127
115
105
117
121
130
126
114
104
116
120
129
125
113
103
115
119
107
108
109
110
111
112
113
114
115
116
117
117
116
128
124
112
102
114
118
106
115
127
123
111
101
113
117
105
114
126
122
110
100
112
116
104
113
125
121
109
99
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
103
112
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
108
98
102
114
102
111
123
111
107
97
101
113
101
110
122
110
106
96
100
112
100
109
121
109
105
95
99
111
99
108
120
108
104
94
98
110
98
107
119
107
103
93
97
109
97
106
118
106
102
92
96
108
96
105
117
105
101
91
95
107
95
104
116
104
100
90
94
106
94
103
115
103
99
89
93
105
93
102
114
102
98
88
92
104
92
101
113
101
97
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
103
102
101
100
99
98
97
96
95
94
93
92
91
100
101
102
103
104
105
106
107
108
109
110
111
112
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
78
90
99
87
77
89
98
86
76
88
97
85
75
87
96
84
74
86
95
83
73
85
94
82
72
84
93
81
71
83
92
80
70
82
91
79
69
81
90
78
68
80
89
77
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
68
54
66
75
63
77
69
53
65
74
62
78
70
52
64
73
61
79
71
51
63
72
60
80
72
50
62
71
59
81
73
49
61
70
58
82
74
48
60
69
57
83
87
86
85
84
83
82
81
80
79
78
77
76
75
47
59
68
56
84
85
86
87
88
89
90
91
92
91
90
89
88
46
58
67
55
45
57
66
54
44
56
65
53
43
55
64
52
42
54
63
51
41
42
43
44
45
46
47
48
49
50
51
52
53
62
61
60
59
58
57
56
55
54
53
52
51
50
40
54
63
49
39
55
64
48
38
56
65
47
37
57
66
46
36
58
67
45
35
59
68
44
4
3
2
1
0
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
113
125
129
140
136
124
112
124
128
139
135
123
111
123
127
138
134
122
110
122
126
137
133
121
109
121
125
136
132
120
108
120
124
135
131
119
107
119
123
134
130
118
106
118
122
133
129
117
105
117
121
132
128
116
104
116
120
131
127
115
103
115
119
130
126
114
102
114
118
106
107
108
109
110
111
112
113
114
115
116
117
117
129
125
113
101
113
117
105
116
128
124
112
100
112
116
104
115
127
123
111
99
111
115
103
114
126
122
110
98
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
102
113
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
109
97
101
113
101
112
124
112
108
96
100
112
100
111
123
111
107
95
99
111
99
110
122
110
106
94
98
110
98
109
121
109
105
93
97
109
97
108
120
108
104
92
96
108
96
107
119
107
103
91
95
107
95
106
118
106
102
90
94
106
94
105
117
105
101
89
93
105
93
104
116
104
100
88
92
104
92
103
115
103
99
87
91
103
91
102
114
102
98
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
102
101
100
99
98
97
96
95
94
93
92
91
90
101
102
103
104
105
106
107
108
109
110
111
112
113
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
77
89
100
88
76
88
99
87
75
87
98
86
74
86
97
85
73
85
96
84
72
84
95
83
71
83
94
82
70
82
93
81
69
81
92
80
68
80
91
79
67
79
90
78
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
67
53
65
76
64
78
68
52
64
75
63
79
69
51
63
74
62
80
70
50
62
73
61
81
71
49
61
72
60
82
72
48
60
71
59
83
73
47
59
70
58
84
86
85
84
83
82
81
80
79
78
77
76
75
74
46
58
69
57
85
86
87
88
89
90
91
92
91
90
89
88
87
45
57
68
56
44
56
67
55
43
55
66
54
42
54
65
53
41
53
64
52
40
41
42
43
44
45
46
47
48
49
50
51
52
63
62
61
60
59
58
57
56
55
54
53
52
51
39
53
64
50
38
54
65
49
37
55
66
48
36
56
67
47
35
57
68
46
34
58
69
45
5
4
3
2
1
0
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
112
124
128
140
137
125
111
123
127
139
136
124
110
122
126
138
135
123
109
121
125
137
134
122
108
120
124
136
133
121
107
119
123
135
132
120
106
118
122
134
131
119
105
117
121
133
130
118
104
116
120
132
129
117
103
115
119
131
128
116
102
114
118
130
127
115
101
113
117
105
106
107
108
109
110
111
112
113
114
115
116
117
129
126
114
100
112
116
104
116
128
125
113
99
111
115
103
115
127
124
112
98
110
114
102
114
126
123
111
97
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
101
113
125
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
110
96
100
112
100
112
124
113
109
95
99
111
99
111
123
112
108
94
98
110
98
110
122
111
107
93
97
109
97
109
121
110
106
92
96
108
96
108
120
109
105
91
95
107
95
107
119
108
104
90
94
106
94
106
118
107
103
89
93
105
93
105
117
106
102
88
92
104
92
104
116
105
101
87
91
103
91
103
115
104
100
86
90
102
90
102
114
103
99
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
76
88
100
89
75
87
99
88
74
86
98
87
73
85
97
86
72
84
96
85
71
83
95
84
70
82
94
83
69
81
93
82
68
80
92
81
67
79
91
80
66
78
90
79
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
66
52
64
77
65
79
67
51
63
76
64
80
68
50
62
75
63
81
69
49
61
74
62
82
70
48
60
73
61
83
71
47
59
72
60
84
72
46
58
71
59
85
85
84
83
82
81
80
79
78
77
76
75
74
73
45
57
70
58
86
87
88
89
90
91
92
91
90
89
88
87
86
44
56
69
57
43
55
68
56
42
54
67
55
41
53
66
54
40
52
65
53
39
40
41
42
43
44
45
46
47
48
49
50
51
64
63
62
61
60
59
58
57
56
55
54
53
52
38
52
65
51
37
53
66
50
36
54
67
49
35
55
68
48
34
56
69
47
33
57
70
46
6
5
4
3
2
1
0
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
111
123
127
139
138
126
110
122
126
138
137
125
109
121
125
137
136
124
108
120
124
136
135
123
107
119
123
135
134
122
106
118
122
134
133
121
105
117
121
133
132
120
104
116
120
132
131
119
103
115
119
131
130
118
102
114
118
130
129
117
101
113
117
129
128
116
100
112
116
104
105
106
107
108
109
110
111
112
113
114
115
116
128
127
115
99
111
115
103
115
127
126
114
98
110
114
102
114
126
125
113
97
109
113
101
113
125
124
112
96
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
100
112
124
125
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
111
95
99
111
99
111
123
114
110
94
98
110
98
110
122
113
109
93
97
109
97
109
121
112
108
92
96
108
96
108
120
111
107
91
95
107
95
107
119
110
106
90
94
106
94
106
118
109
105
89
93
105
93
105
117
108
104
88
92
104
92
104
116
107
103
87
91
103
91
103
115
106
102
86
90
102
90
102
114
105
101
85
89
101
89
101
113
104
100
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
111
112
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
75
87
99
90
74
86
98
89
73
85
97
88
72
84
96
87
71
83
95
86
70
82
94
85
69
81
93
84
68
80
92
83
67
79
91
82
66
78
90
81
65
77
89
80
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
65
51
63
78
66
80
66
50
62
77
65
81
67
49
61
76
64
82
68
48
60
75
63
83
69
47
59
74
62
84
70
46
58
73
61
85
71
45
57
72
60
86
84
83
82
81
80
79
78
77
76
75
74
73
72
44
56
71
59
87
88
89
90
91
92
91
90
89
88
87
86
85
43
55
70
58
42
54
69
57
41
53
68
56
40
52
67
55
39
51
66
54
38
39
40
41
42
43
44
45
46
47
48
49
50
65
64
63
62
61
60
59
58
57
56
55
54
53
37
51
66
52
36
52
67
51
35
53
68
50
34
54
69
49
33
55
70
48
32
56
71
47
7
6
5
4
3
2
1
0
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
110
122
126
138
139
127
109
121
125
137
138
126
108
120
124
136
137
125
107
119
123
135
136
124
106
118
122
134
135
123
105
117
121
133
134
122
104
116
120
132
133
121
103
115
119
131
132
120
102
114
118
130
131
119
101
113
117
129
130
118
100
112
116
128
129
117
99
111
115
103
104
105
106
107
108
109
110
111
112
113
114
115
127
128
116
98
110
114
102
114
126
127
115
97
109
113
101
113
125
126
114
96
108
112
100
112
124
125
113
95
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
99
111
123
124
125
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
112
94
98
110
98
110
122
115
111
93
97
109
97
109
121
114
110
92
96
108
96
108
120
113
109
91
95
107
95
107
119
112
108
90
94
106
94
106
118
111
107
89
93
105
93
105
117
110
106
88
92
104
92
104
116
109
105
87
91
103
91
103
115
108
104
86
90
102
90
102
114
107
103
85
89
101
89
101
113
106
102
84
88
100
88
100
112
105
101
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
110
111
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
74
86
98
91
73
85
97
90
72
84
96
89
71
83
95
88
70
82
94
87
69
81
93
86
68
80
92
85
67
79
91
84
66
78
90
83
65
77
89
82
64
76
88
81
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
64
50
62
79
67
81
65
49
61
78
66
82
66
48
60
77
65
83
67
47
59
76
64
84
68
46
58
75
63
85
69
45
57
74
62
86
70
44
56
73
61
87
83
82
81
80
79
78
77
76
75
74
73
72
71
43
55
72
60
88
89
90
91
92
91
90
89
88
87
86
85
84
42
54
71
59
41
53
70
58
40
52
69
57
39
51
68
56
38
50
67
55
37
38
39
40
41
42
43
44
45
46
47
48
49
66
65
64
63
62
61
60
59
58
57
56
55
54
36
50
67
53
35
51
68
52
34
52
69
51
33
53
70
50
32
54
71
49
31
55
72
48
8
7
6
5
4
3
2
1
0
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
109
121
125
137
140
128
108
120
124
136
139
127
107
119
123
135
138
126
106
118
122
134
137
125
105
117
121
133
136
124
104
116
120
132
135
123
103
115
119
131
134
122
102
114
118
130
133
121
101
113
117
129
132
120
100
112
116
128
131
119
99
111
115
127
130
118
98
110
114
102
103
104
105
106
107
108
109
110
111
112
113
114
126
129
117
97
109
113
101
113
125
128
116
96
108
112
100
112
124
127
115
95
107
111
99
111
123
126
114
94
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
98
110
122
123
124
125
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
113
93
97
109
97
109
121
116
112
92
96
108
96
108
120
115
111
91
95
107
95
107
119
114
110
90
94
106
94
106
118
113
109
89
93
105
93
105
117
112
108
88
92
104
92
104
116
111
107
87
91
103
91
103
115
110
106
86
90
102
90
102
114
109
105
85
89
101
89
101
113
108
104
84
88
100
88
100
112
107
103
83
87
99
87
99
111
106
102
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
109
110
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
73
85
97
92
72
84
96
91
71
83
95
90
70
82
94
89
69
81
93
88
68
80
92
87
67
79
91
86
66
78
90
85
65
77
89
84
64
76
88
83
63
75
87
82
62
61
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
63
49
61
80
68
82
64
48
60
79
67
83
65
47
59
78
66
84
66
46
58
77
65
85
67
45
57
76
64
86
68
44
56
75
63
87
69
43
55
74
62
88
82
81
80
79
78
77
76
75
74
73
72
71
70
42
54
73
61
89
90
91
92
91
90
89
88
87
86
85
84
83
41
53
72
60
40
52
71
59
39
51
70
58
38
50
69
57
37
49
68
56
36
37
38
39
40
41
42
43
44
45
46
47
48
67
66
65
64
63
62
61
60
59
58
57
56
55
35
49
68
54
34
50
69
53
33
51
70
52
32
52
71
51
31
53
72
50
30
54
73
49
9
8
7
6
5
4
3
2
1
0
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
108
120
124
136
141
129
107
119
123
135
140
128
106
118
122
134
139
127
105
117
121
133
138
126
104
116
120
132
137
125
103
115
119
131
136
124
102
114
118
130
135
123
101
113
117
129
134
122
100
112
116
128
133
121
99
111
115
127
132
120
98
110
114
126
131
119
97
109
113
101
102
103
104
105
106
107
108
109
110
111
112
113
125
130
118
96
108
112
100
112
124
129
117
95
107
111
99
111
123
128
116
94
106
110
98
110
122
127
115
93
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
97
109
121
122
123
124
125
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
114
92
96
108
96
108
120
117
113
91
95
107
95
107
119
116
112
90
94
106
94
106
118
115
111
89
93
105
93
105
117
114
110
88
92
104
92
104
116
113
109
87
91
103
91
103
115
112
108
86
90
102
90
102
114
111
107
85
89
101
89
101
113
110
106
84
88
100
88
100
112
109
105
83
87
99
87
99
111
108
104
82
86
98
86
98
110
107
103
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
108
109
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
72
84
96
93
71
83
95
92
70
82
94
91
69
81
93
90
68
80
92
89
67
79
91
88
66
78
90
87
65
77
89
86
64
76
88
85
63
75
87
84
62
74
86
83
61
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
62
48
60
81
69
83
63
47
59
80
68
84
64
46
58
79
67
85
65
45
57
78
66
86
66
44
56
77
65
87
67
43
55
76
64
88
68
42
54
75
63
89
81
80
79
78
77
76
75
74
73
72
71
70
69
41
53
74
62
90
91
92
91
90
89
88
87
86
85
84
83
82
40
52
73
61
39
51
72
60
38
50
71
59
37
49
70
58
36
48
69
57
35
36
37
38
39
40
41
42
43
44
45
46
47
68
67
66
65
64
63
62
61
60
59
58
57
56
34
48
69
55
33
49
70
54
32
50
71
53
31
51
72
52
30
52
73
51
29
53
74
50
10
9
8
7
6
5
4
3
2
1
0
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
107
119
123
135
142
130
106
118
122
134
141
129
105
117
121
133
140
128
104
116
120
132
139
127
103
115
119
131
138
126
102
114
118
130
137
125
101
113
117
129
136
124
100
112
116
128
135
123
99
111
115
127
134
122
98
110
114
126
133
121
97
109
113
125
132
120
96
108
112
100
101
102
103
104
105
106
107
108
109
110
111
112
124
131
119
95
107
111
99
111
123
130
118
94
106
110
98
110
122
129
117
93
105
109
97
109
121
128
116
92
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
96
108
120
121
122
123
124
125
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
115
91
95
107
95
107
119
118
114
90
94
106
94
106
118
117
113
89
93
105
93
105
117
116
112
88
92
104
92
104
116
115
111
87
91
103
91
103
115
114
110
86
90
102
90
102
114
113
109
85
89
101
89
101
113
112
108
84
88
100
88
100
112
111
107
83
87
99
87
99
111
110
106
82
86
98
86
98
110
109
105
81
85
97
85
97
109
108
104
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
71
83
95
94
70
82
94
93
69
81
93
92
68
80
92
91
67
79
91
90
66
78
90
89
65
77
89
88
64
76
88
87
63
75
87
86
62
74
86
85
61
73
85
84
60
59
58
57
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
61
47
59
82
70
84
62
46
58
81
69
85
63
45
57
80
68
86
64
44
56
79
67
87
65
43
55
78
66
88
66
42
54
77
65
89
67
41
53
76
64
90
80
79
78
77
76
75
74
73
72
71
70
69
68
40
52
75
63
91
92
91
90
89
88
87
86
85
84
83
82
81
39
51
74
62
38
50
73
61
37
49
72
60
36
48
71
59
35
47
70
58
34
35
36
37
38
39
40
41
42
43
44
45
46
69
68
67
66
65
64
63
62
61
60
59
58
57
33
47
70
56
32
48
71
55
31
49
72
54
30
50
73
53
29
51
74
52
28
52
75
51
11
10
9
8
7
6
5
4
3
2
1
0
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
106
118
122
134
143
131
105
117
121
133
142
130
104
116
120
132
141
129
103
115
119
131
140
128
102
114
118
130
139
127
101
113
117
129
138
126
100
112
116
128
137
125
99
111
115
127
136
124
98
110
114
126
135
123
97
109
113
125
134
122
96
108
112
124
133
121
95
107
111
99
100
101
102
103
104
105
106
107
108
109
110
111
123
132
120
94
106
110
98
110
122
131
119
93
105
109
97
109
121
130
118
92
104
108
96
108
120
129
117
91
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
95
107
119
120
121
122
123
124
125
125
124
123
122
121
120
121
122
123
124
125
126
127
128
116
90
94
106
94
106
118
119
115
89
93
105
93
105
117
118
114
88
92
104
92
104
116
117
113
87
91
103
91
103
115
116
112
86
90
102
90
102
114
115
111
85
89
101
89
101
113
114
110
84
88
100
88
100
112
113
109
83
87
99
87
99
111
112
108
82
86
98
86
98
110
111
107
81
85
97
85
97
109
110
106
80
84
96
84
96
108
109
105
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
70
82
94
95
69
81
93
94
68
80
92
93
67
79
91
92
66
78
90
91
65
77
89
90
64
76
88
89
63
75
87
88
62
74
86
87
61
73
85
86
60
72
84
85
59
58
57
56
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
60
46
58
83
71
85
61
45
57
82
70
86
62
44
56
81
69
87
63
43
55
80
68
88
64
42
54
79
67
89
65
41
53
78
66
90
66
40
52
77
65
91
79
78
77
76
75
74
73
72
71
70
69
68
67
39
51
76
64
92
91
90
89
88
87
86
85
84
83
82
81
80
38
50
75
63
37
49
74
62
36
48
73
61
35
47
72
60
34
46
71
59
33
34
35
36
37
38
39
40
41
42
43
44
45
70
69
68
67
66
65
64
63
62
61
60
59
58
32
46
71
57
31
47
72
56
30
48
73
55
29
49
74
54
28
50
75
53
27
51
76
52
12
11
10
9
8
7
6
5
4
3
2
1
0
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
131
130
129
128
127
126
125
124
123
122
80
92
96
108
128
121
79
91
95
107
127
120
78
90
94
106
126
119
77
89
93
105
125
118
76
88
92
104
124
117
75
87
91
103
123
116
74
86
90
102
122
115
73
85
89
101
121
114
72
84
88
100
120
113
71
83
87
99
119
112
70
82
86
98
118
111
69
81
85
73
74
75
76
77
78
79
80
81
82
83
84
85
97
117
110
68
80
84
72
84
96
116
109
67
79
83
71
83
95
115
108
66
78
82
70
82
94
114
107
65
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
69
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
106
64
68
80
68
80
92
106
105
63
67
79
67
79
91
107
104
62
66
78
66
78
90
107
103
61
65
77
65
77
89
106
102
60
64
76
64
76
88
105
101
59
63
75
63
75
87
104
100
58
62
74
62
74
86
103
99
57
61
73
61
73
85
102
98
56
60
72
60
72
84
101
97
55
59
71
59
71
83
100
96
54
58
70
58
70
82
99
95
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
44
56
68
85
43
55
67
84
42
54
66
83
41
53
65
82
40
52
64
81
39
51
63
80
38
50
62
79
37
49
61
78
36
48
60
77
35
47
59
76
34
46
58
75
33
32
31
30
29
28
27
26
25
24
23
22
21
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
86
85
84
83
82
81
80
79
78
77
76
75
74
34
20
32
70
87
73
35
19
31
71
88
72
36
18
30
72
89
71
37
17
29
73
90
70
38
16
28
74
91
69
39
15
27
75
92
68
40
14
26
76
91
67
53
52
51
50
49
48
47
46
45
44
43
42
41
13
25
77
90
66
65
64
63
62
61
60
59
58
57
56
55
54
12
24
78
89
11
23
79
88
10
22
78
87
9
21
77
86
8
20
76
85
7
8
9
10
11
12
13
14
15
16
17
18
19
75
76
77
78
79
80
81
82
83
84
85
85
84
6
20
74
83
5
21
73
82
4
22
72
81
3
23
71
80
2
24
70
79
1
25
69
78
38
37
36
35
34
33
32
31
30
29
28
27
26
0
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
92
104
84
96
116
130
91
103
83
95
115
131
90
102
82
94
114
131
89
101
81
93
113
130
88
100
80
92
112
129
87
99
79
91
111
128
86
98
78
90
110
127
85
97
77
89
109
126
84
96
76
88
108
125
83
95
75
87
107
124
82
94
74
86
106
123
81
93
73
61
62
63
64
65
66
67
68
69
70
71
72
73
85
105
122
80
92
72
60
72
84
104
121
79
91
71
59
71
83
103
120
78
90
70
58
70
82
102
119
77
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
118
76
80
68
56
68
80
94
117
75
79
67
55
67
79
95
116
74
78
66
54
66
78
96
115
73
77
65
53
65
77
97
114
72
76
64
52
64
76
98
113
71
75
63
51
63
75
99
112
70
74
62
50
62
74
100
111
69
73
61
49
61
73
101
110
68
72
60
48
60
72
102
109
67
71
59
47
59
71
103
108
66
70
58
46
58
70
104
107
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
57
56
55
54
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
105
106
107
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
56
44
56
97
55
43
55
96
54
42
54
95
53
41
53
94
52
40
52
93
51
39
51
92
50
38
50
91
49
37
49
90
48
36
48
89
47
35
47
88
46
34
46
87
45
44
43
42
41
40
39
38
37
36
35
34
33
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
75
76
77
78
79
80
81
82
83
84
85
86
86
46
32
20
58
74
85
47
31
19
59
73
84
48
30
18
60
72
83
49
29
17
59
71
82
50
28
16
58
70
81
51
27
15
57
69
80
52
26
14
56
68
79
65
64
63
62
61
60
59
58
57
56
55
54
53
25
13
55
67
78
77
76
75
74
73
72
71
70
69
68
67
66
24
12
54
66
23
11
53
65
22
10
52
64
21
9
51
63
20
8
50
62
19
18
17
16
15
14
13
12
11
10
9
8
7
49
50
51
52
53
54
55
56
57
58
59
60
61
20
6
48
62
21
5
47
63
22
4
46
64
23
3
45
65
24
2
44
66
25
1
43
67
64
63
62
61
60
59
58
57
56
55
54
53
52
26
0
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
130
116
96
84
104
92
131
115
95
83
103
91
131
114
94
82
102
90
130
113
93
81
101
89
129
112
92
80
100
88
128
111
91
79
99
87
127
110
90
78
98
86
126
109
89
77
97
85
125
108
88
76
96
84
124
107
87
75
95
83
123
106
86
74
94
82
122
105
85
73
72
71
70
69
68
67
66
65
64
63
62
61
73
93
81
121
104
84
72
60
72
92
80
120
103
83
71
59
71
91
79
119
102
82
70
58
70
90
78
118
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
77
117
94
80
68
56
68
80
76
116
95
79
67
55
67
79
75
115
96
78
66
54
66
78
74
114
97
77
65
53
65
77
73
113
98
76
64
52
64
76
72
112
99
75
63
51
63
75
71
111
100
74
62
50
62
74
70
110
101
73
61
49
61
73
69
109
102
72
60
48
60
72
68
108
103
71
59
47
59
71
67
107
104
70
58
46
58
70
66
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
107
106
105
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
57
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
97
56
44
56
96
55
43
55
95
54
42
54
94
53
41
53
93
52
40
52
92
51
39
51
91
50
38
50
90
49
37
49
89
48
36
48
88
47
35
47
87
46
34
46
86
86
85
84
83
82
81
80
79
78
77
76
75
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
33
34
35
36
37
38
39
40
41
42
43
44
45
85
74
58
20
32
46
84
73
59
19
31
47
83
72
60
18
30
48
82
71
59
17
29
49
81
70
58
16
28
50
80
69
57
15
27
51
79
68
56
14
26
52
66
67
68
69
70
71
72
73
74
75
76
77
78
67
55
13
25
53
54
55
56
57
58
59
60
61
62
63
64
65
66
54
12
24
65
53
11
23
64
52
10
22
63
51
9
21
62
50
8
20
61
60
59
58
57
56
55
54
53
52
51
50
49
7
8
9
10
11
12
13
14
15
16
17
18
19
62
48
6
20
63
47
5
21
64
46
4
22
65
45
3
23
66
44
2
24
67
43
1
25
65
66
67
68
69
70
71
72
73
74
75
76
77
68
42
0
122
123
124
125
126
127
128
129
130
131
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
121
128
108
96
92
80
120
127
107
95
91
79
119
126
106
94
90
78
118
125
105
93
89
77
117
124
104
92
88
76
116
123
103
91
87
75
115
122
102
90
86
74
114
121
101
89
85
73
113
120
100
88
84
72
112
119
99
87
83
71
111
118
98
86
82
70
110
117
97
85
84
83
82
81
80
79
78
77
76
75
74
73
85
81
69
109
116
96
84
72
84
80
68
108
115
95
83
71
83
79
67
107
114
94
82
70
82
78
66
106
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
69
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
65
105
106
92
80
68
80
68
64
104
107
91
79
67
79
67
63
103
107
90
78
66
78
66
62
102
106
89
77
65
77
65
61
101
105
88
76
64
76
64
60
100
104
87
75
63
75
63
59
99
103
86
74
62
74
62
58
98
102
85
73
61
73
61
57
97
101
84
72
60
72
60
56
96
100
83
71
59
71
59
55
95
99
82
70
58
70
58
54
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
85
68
56
44
84
67
55
43
83
66
54
42
82
65
53
41
81
64
52
40
80
63
51
39
79
62
50
38
78
61
49
37
77
60
48
36
76
59
47
35
75
58
46
34
74
75
76
77
78
79
80
81
82
83
84
85
86
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
40
39
38
37
36
35
34
33
21
22
23
24
25
26
27
28
29
30
31
32
33
73
87
70
32
20
34
72
88
71
31
19
35
71
89
72
30
18
36
70
90
73
29
17
37
69
91
74
28
16
38
68
92
75
27
15
39
67
91
76
26
14
40
54
55
56
57
58
59
60
61
62
63
64
65
66
90
77
25
13
41
42
43
44
45
46
47
48
49
50
51
52
53
89
78
24
12
88
79
23
11
87
78
22
10
86
77
21
9
85
76
20
8
84
85
85
84
83
82
81
80
79
78
77
76
75
19
18
17
16
15
14
13
12
11
10
9
8
7
83
74
20
6
82
73
21
5
81
72
22
4
80
71
23
3
79
70
24
2
78
69
25
1
39
40
41
42
43
44
45
46
47
48
49
50
51
77
68
26
0
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
131
143
134
122
118
106
130
142
133
121
117
105
129
141
132
120
116
104
128
140
131
119
115
103
127
139
130
118
114
102
126
138
129
117
113
101
125
137
128
116
112
100
124
136
127
115
111
99
123
135
126
114
110
98
122
134
125
113
109
97
121
133
124
112
108
96
120
132
123
111
110
109
108
107
106
105
104
103
102
101
100
99
111
107
95
119
131
122
110
98
110
106
94
118
130
121
109
97
109
105
93
117
129
120
108
96
108
104
92
116
128
127
126
125
124
123
122
121
120
121
122
123
124
125
125
124
123
122
121
120
119
107
95
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
91
115
119
118
106
94
106
94
90
114
118
117
105
93
105
93
89
113
117
116
104
92
104
92
88
112
116
115
103
91
103
91
87
111
115
114
102
90
102
90
86
110
114
113
101
89
101
89
85
109
113
112
100
88
100
88
84
108
112
111
99
87
99
87
83
107
111
110
98
86
98
86
82
106
110
109
97
85
97
85
81
105
109
108
96
84
96
84
80
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
95
94
82
70
94
93
81
69
93
92
80
68
92
91
79
67
91
90
78
66
90
89
77
65
89
88
76
64
88
87
75
63
87
86
74
62
86
85
73
61
85
84
72
60
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
56
57
58
59
85
71
83
58
46
60
86
70
82
57
45
61
87
69
81
56
44
62
88
68
80
55
43
63
89
67
79
54
42
64
90
66
78
53
41
65
91
65
77
52
40
66
80
81
82
83
84
85
86
87
88
89
90
91
92
64
76
51
39
67
68
69
70
71
72
73
74
75
76
77
78
79
63
75
50
38
62
74
49
37
61
73
48
36
60
72
47
35
59
71
46
34
58
59
60
61
62
63
64
65
66
67
68
69
70
45
44
43
42
41
40
39
38
37
36
35
34
33
57
71
46
32
56
72
47
31
55
73
48
30
54
74
49
29
53
75
50
28
52
76
51
27
13
14
15
16
17
18
19
20
21
22
23
24
25
51
77
52
26
0
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
130
142
135
123
119
107
129
141
134
122
118
106
128
140
133
121
117
105
127
139
132
120
116
104
126
138
131
119
115
103
125
137
130
118
114
102
124
136
129
117
113
101
123
135
128
116
112
100
122
134
127
115
111
99
121
133
126
114
110
98
120
132
125
113
109
97
119
131
124
112
111
110
109
108
107
106
105
104
103
102
101
100
112
108
96
118
130
123
111
99
111
107
95
117
129
122
110
98
110
106
94
116
128
121
109
97
109
105
93
115
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
125
124
123
122
121
120
108
96
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
92
114
118
119
107
95
107
95
91
113
117
118
106
94
106
94
90
112
116
117
105
93
105
93
89
111
115
116
104
92
104
92
88
110
114
115
103
91
103
91
87
109
113
114
102
90
102
90
86
108
112
113
101
89
101
89
85
107
111
112
100
88
100
88
84
106
110
111
99
87
99
87
83
105
109
110
98
86
98
86
82
104
108
109
97
85
97
85
81
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
94
95
83
71
93
94
82
70
92
93
81
69
91
92
80
68
90
91
79
67
89
90
78
66
88
89
77
65
87
88
76
64
86
87
75
63
85
86
74
62
84
85
73
61
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
57
58
59
60
84
70
82
59
47
61
85
69
81
58
46
62
86
68
80
57
45
63
87
67
79
56
44
64
88
66
78
55
43
65
89
65
77
54
42
66
90
64
76
53
41
67
81
82
83
84
85
86
87
88
89
90
91
92
91
63
75
52
40
68
69
70
71
72
73
74
75
76
77
78
79
80
62
74
51
39
61
73
50
38
60
72
49
37
59
71
48
36
58
70
47
35
57
58
59
60
61
62
63
64
65
66
67
68
69
46
45
44
43
42
41
40
39
38
37
36
35
34
56
70
47
33
55
71
48
32
54
72
49
31
53
73
50
30
52
74
51
29
51
75
52
28
12
13
14
15
16
17
18
19
20
21
22
23
24
50
76
53
27
1
0
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
129
141
136
124
120
108
128
140
135
123
119
107
127
139
134
122
118
106
126
138
133
121
117
105
125
137
132
120
116
104
124
136
131
119
115
103
123
135
130
118
114
102
122
134
129
117
113
101
121
133
128
116
112
100
120
132
127
115
111
99
119
131
126
114
110
98
118
130
125
113
112
111
110
109
108
107
106
105
104
103
102
101
113
109
97
117
129
124
112
100
112
108
96
116
128
123
111
99
111
107
95
115
127
122
110
98
110
106
94
114
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
125
124
123
122
121
109
97
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
93
113
117
120
108
96
108
96
92
112
116
119
107
95
107
95
91
111
115
118
106
94
106
94
90
110
114
117
105
93
105
93
89
109
113
116
104
92
104
92
88
108
112
115
103
91
103
91
87
107
111
114
102
90
102
90
86
106
110
113
101
89
101
89
85
105
109
112
100
88
100
88
84
104
108
111
99
87
99
87
83
103
107
110
98
86
98
86
82
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
109
108
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
93
96
84
72
92
95
83
71
91
94
82
70
90
93
81
69
89
92
80
68
88
91
79
67
87
90
78
66
86
89
77
65
85
88
76
64
84
87
75
63
83
86
74
62
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
83
69
81
60
48
62
84
68
80
59
47
63
85
67
79
58
46
64
86
66
78
57
45
65
87
65
77
56
44
66
88
64
76
55
43
67
89
63
75
54
42
68
82
83
84
85
86
87
88
89
90
91
92
91
90
62
74
53
41
69
70
71
72
73
74
75
76
77
78
79
80
81
61
73
52
40
60
72
51
39
59
71
50
38
58
70
49
37
57
69
48
36
56
57
58
59
60
61
62
63
64
65
66
67
68
47
46
45
44
43
42
41
40
39
38
37
36
35
55
69
48
34
54
70
49
33
53
71
50
32
52
72
51
31
51
73
52
30
50
74
53
29
11
12
13
14
15
16
17
18
19
20
21
22
23
49
75
54
28
2
1
0
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
128
140
137
125
121
109
127
139
136
124
120
108
126
138
135
123
119
107
125
137
134
122
118
106
124
136
133
121
117
105
123
135
132
120
116
104
122
134
131
119
115
103
121
133
130
118
114
102
120
132
129
117
113
101
119
131
128
116
112
100
118
130
127
115
111
99
117
129
126
114
113
112
111
110
109
108
107
106
105
104
103
102
114
110
98
116
128
125
113
101
113
109
97
115
127
124
112
100
112
108
96
114
126
123
111
99
111
107
95
113
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
125
124
123
122
110
98
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
94
112
116
121
109
97
109
97
93
111
115
120
108
96
108
96
92
110
114
119
107
95
107
95
91
109
113
118
106
94
106
94
90
108
112
117
105
93
105
93
89
107
111
116
104
92
104
92
88
106
110
115
103
91
103
91
87
105
109
114
102
90
102
90
86
104
108
113
101
89
101
89
85
103
107
112
100
88
100
88
84
102
106
111
99
87
99
87
83
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
110
109
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
92
97
85
73
91
96
84
72
90
95
83
71
89
94
82
70
88
93
81
69
87
92
80
68
86
91
79
67
85
90
78
66
84
89
77
65
83
88
76
64
82
87
75
63
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
82
68
80
61
49
63
83
67
79
60
48
64
84
66
78
59
47
65
85
65
77
58
46
66
86
64
76
57
45
67
87
63
75
56
44
68
88
62
74
55
43
69
83
84
85
86
87
88
89
90
91
92
91
90
89
61
73
54
42
70
71
72
73
74
75
76
77
78
79
80
81
82
60
72
53
41
59
71
52
40
58
70
51
39
57
69
50
38
56
68
49
37
55
56
57
58
59
60
61
62
63
64
65
66
67
48
47
46
45
44
43
42
41
40
39
38
37
36
54
68
49
35
53
69
50
34
52
70
51
33
51
71
52
32
50
72
53
31
49
73
54
30
10
11
12
13
14
15
16
17
18
19
20
21
22
48
74
55
29
3
2
1
0
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
127
139
138
126
122
110
126
138
137
125
121
109
125
137
136
124
120
108
124
136
135
123
119
107
123
135
134
122
118
106
122
134
133
121
117
105
121
133
132
120
116
104
120
132
131
119
115
103
119
131
130
118
114
102
118
130
129
117
113
101
117
129
128
116
112
100
116
128
127
115
114
113
112
111
110
109
108
107
106
105
104
103
115
111
99
115
127
126
114
102
114
110
98
114
126
125
113
101
113
109
97
113
125
124
112
100
112
108
96
112
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
125
124
123
111
99
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
95
111
115
122
110
98
110
98
94
110
114
121
109
97
109
97
93
109
113
120
108
96
108
96
92
108
112
119
107
95
107
95
91
107
111
118
106
94
106
94
90
106
110
117
105
93
105
93
89
105
109
116
104
92
104
92
88
104
108
115
103
91
103
91
87
103
107
114
102
90
102
90
86
102
106
113
101
89
101
89
85
101
105
112
100
88
100
88
84
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
111
110
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
91
98
86
74
90
97
85
73
89
96
84
72
88
95
83
71
87
94
82
70
86
93
81
69
85
92
80
68
84
91
79
67
83
90
78
66
82
89
77
65
81
88
76
64
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
81
67
79
62
50
64
82
66
78
61
49
65
83
65
77
60
48
66
84
64
76
59
47
67
85
63
75
58
46
68
86
62
74
57
45
69
87
61
73
56
44
70
84
85
86
87
88
89
90
91
92
91
90
89
88
60
72
55
43
71
72
73
74
75
76
77
78
79
80
81
82
83
59
71
54
42
58
70
53
41
57
69
52
40
56
68
51
39
55
67
50
38
54
55
56
57
58
59
60
61
62
63
64
65
66
49
48
47
46
45
44
43
42
41
40
39
38
37
53
67
50
36
52
68
51
35
51
69
52
34
50
70
53
33
49
71
54
32
48
72
55
31
9
10
11
12
13
14
15
16
17
18
19
20
21
47
73
56
30
4
3
2
1
0
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
126
138
139
127
123
111
125
137
138
126
122
110
124
136
137
125
121
109
123
135
136
124
120
108
122
134
135
123
119
107
121
133
134
122
118
106
120
132
133
121
117
105
119
131
132
120
116
104
118
130
131
119
115
103
117
129
130
118
114
102
116
128
129
117
113
101
115
127
128
116
115
114
113
112
111
110
109
108
107
106
105
104
116
112
100
114
126
127
115
103
115
111
99
113
125
126
114
102
114
110
98
112
124
125
113
101
113
109
97
111
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
125
124
112
100
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
96
110
114
123
111
99
111
99
95
109
113
122
110
98
110
98
94
108
112
121
109
97
109
97
93
107
111
120
108
96
108
96
92
106
110
119
107
95
107
95
91
105
109
118
106
94
106
94
90
104
108
117
105
93
105
93
89
103
107
116
104
92
104
92
88
102
106
115
103
91
103
91
87
101
105
114
102
90
102
90
86
100
104
113
101
89
101
89
85
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
112
111
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
90
99
87
75
89
98
86
74
88
97
85
73
87
96
84
72
86
95
83
71
85
94
82
70
84
93
81
69
83
92
80
68
82
91
79
67
81
90
78
66
80
89
77
65
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
80
66
78
63
51
65
81
65
77
62
50
66
82
64
76
61
49
67
83
63
75
60
48
68
84
62
74
59
47
69
85
61
73
58
46
70
86
60
72
57
45
71
85
86
87
88
89
90
91
92
91
90
89
88
87
59
71
56
44
72
73
74
75
76
77
78
79
80
81
82
83
84
58
70
55
43
57
69
54
42
56
68
53
41
55
67
52
40
54
66
51
39
53
54
55
56
57
58
59
60
61
62
63
64
65
50
49
48
47
46
45
44
43
42
41
40
39
38
52
66
51
37
51
67
52
36
50
68
53
35
49
69
54
34
48
70
55
33
47
71
56
32
8
9
10
11
12
13
14
15
16
17
18
19
20
46
72
57
31
5
4
3
2
1
0
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
125
137
140
128
124
112
124
136
139
127
123
111
123
135
138
126
122
110
122
134
137
125
121
109
121
133
136
124
120
108
120
132
135
123
119
107
119
131
134
122
118
106
118
130
133
121
117
105
117
129
132
120
116
104
116
128
131
119
115
103
115
127
130
118
114
102
114
126
129
117
116
115
114
113
112
111
110
109
108
107
106
105
117
113
101
113
125
128
116
104
116
112
100
112
124
127
115
103
115
111
99
111
123
126
114
102
114
110
98
110
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
125
113
101
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
97
109
113
124
112
100
112
100
96
108
112
123
111
99
111
99
95
107
111
122
110
98
110
98
94
106
110
121
109
97
109
97
93
105
109
120
108
96
108
96
92
104
108
119
107
95
107
95
91
103
107
118
106
94
106
94
90
102
106
117
105
93
105
93
89
101
105
116
104
92
104
92
88
100
104
115
103
91
103
91
87
99
103
114
102
90
102
90
86
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
89
100
88
76
88
99
87
75
87
98
86
74
86
97
85
73
85
96
84
72
84
95
83
71
83
94
82
70
82
93
81
69
81
92
80
68
80
91
79
67
79
90
78
66
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
79
65
77
64
52
66
80
64
76
63
51
67
81
63
75
62
50
68
82
62
74
61
49
69
83
61
73
60
48
70
84
60
72
59
47
71
85
59
71
58
46
72
86
87
88
89
90
91
92
91
90
89
88
87
86
58
70
57
45
73
74
75
76
77
78
79
80
81
82
83
84
85
57
69
56
44
56
68
55
43
55
67
54
42
54
66
53
41
53
65
52
40
52
53
54
55
56
57
58
59
60
61
62
63
64
51
50
49
48
47
46
45
44
43
42
41
40
39
51
65
52
38
50
66
53
37
49
67
54
36
48
68
55
35
47
69
56
34
46
70
57
33
7
8
9
10
11
12
13
14
15
16
17
18
19
45
71
58
32
6
5
4
3
2
1
0
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
124
136
140
129
125
113
123
135
139
128
124
112
122
134
138
127
123
111
121
133
137
126
122
110
120
132
136
125
121
109
119
131
135
124
120
108
118
130
134
123
119
107
117
129
133
122
118
106
116
128
132
121
117
105
115
127
131
120
116
104
114
126
130
119
115
103
113
125
129
117
117
116
115
114
113
112
111
110
109
108
107
106
118
114
102
112
124
128
116
105
117
113
101
111
123
127
115
104
116
112
100
110
122
126
114
103
115
111
99
109
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
113
102
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
98
108
112
124
112
101
113
101
97
107
111
123
111
100
112
100
96
106
110
122
110
99
111
99
95
105
109
121
109
98
110
98
94
104
108
120
108
97
109
97
93
103
107
119
107
96
108
96
92
102
106
118
106
95
107
95
91
101
105
117
105
94
106
94
90
100
104
116
104
93
105
93
89
99
103
115
103
92
104
92
88
98
102
114
102
91
103
91
87
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
113
112
111
110
109
108
107
106
105
104
103
102
101
90
91
92
93
94
95
96
97
98
99
100
101
102
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
88
100
89
77
87
99
88
76
86
98
87
75
85
97
86
74
84
96
85
73
83
95
84
72
82
94
83
71
81
93
82
70
80
92
81
69
79
91
80
68
78
90
79
67
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
78
64
76
65
53
67
79
63
75
64
52
68
80
62
74
63
51
69
81
61
73
62
50
70
82
60
72
61
49
71
83
59
71
60
48
72
84
58
70
59
47
73
87
88
89
90
91
92
91
90
89
88
87
86
85
57
69
58
46
74
75
76
77
78
79
80
81
82
83
84
85
86
56
68
57
45
55
67
56
44
54
66
55
43
53
65
54
42
52
64
53
41
51
52
53
54
55
56
57
58
59
60
61
62
63
52
51
50
49
48
47
46
45
44
43
42
41
40
50
64
53
39
49
65
54
38
48
66
55
37
47
67
56
36
46
68
57
35
45
69
58
34
6
7
8
9
10
11
12
13
14
15
16
17
18
44
70
59
33
7
6
5
4
3
2
1
0
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
123
135
139
130
126
114
122
134
138
129
125
113
121
133
137
128
124
112
120
132
136
127
123
111
119
131
135
126
122
110
118
130
134
125
121
109
117
129
133
124
120
108
116
128
132
123
119
107
115
127
131
122
118
106
114
126
130
121
117
105
113
125
129
120
116
104
112
124
128
116
117
117
116
115
114
113
112
111
110
109
108
107
119
115
103
111
123
127
115
106
118
114
102
110
122
126
114
105
117
113
101
109
121
125
113
104
116
112
100
108
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
112
103
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
99
107
111
123
111
102
114
102
98
106
110
122
110
101
113
101
97
105
109
121
109
100
112
100
96
104
108
120
108
99
111
99
95
103
107
119
107
98
110
98
94
102
106
118
106
97
109
97
93
101
105
117
105
96
108
96
92
100
104
116
104
95
107
95
91
99
103
115
103
94
106
94
90
98
102
114
102
93
105
93
89
97
101
113
101
92
104
92
88
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
112
111
110
109
108
107
106
105
104
103
102
101
100
91
92
93
94
95
96
97
98
99
100
101
102
103
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
87
99
90
78
86
98
89
77
85
97
88
76
84
96
87
75
83
95
86
74
82
94
85
73
81
93
84
72
80
92
83
71
79
91
82
70
78
90
81
69
77
89
80
68
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
77
63
75
66
54
68
78
62
74
65
53
69
79
61
73
64
52
70
80
60
72
63
51
71
81
59
71
62
50
72
82
58
70
61
49
73
83
57
69
60
48
74
88
89
90
91
92
91
90
89
88
87
86
85
84
56
68
59
47
75
76
77
78
79
80
81
82
83
84
85
86
87
55
67
58
46
54
66
57
45
53
65
56
44
52
64
55
43
51
63
54
42
50
51
52
53
54
55
56
57
58
59
60
61
62
53
52
51
50
49
48
47
46
45
44
43
42
41
49
63
54
40
48
64
55
39
47
65
56
38
46
66
57
37
45
67
58
36
44
68
59
35
5
6
7
8
9
10
11
12
13
14
15
16
17
43
69
60
34
8
7
6
5
4
3
2
1
0
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
122
134
138
131
127
115
121
133
137
130
126
114
120
132
136
129
125
113
119
131
135
128
124
112
118
130
134
127
123
111
117
129
133
126
122
110
116
128
132
125
121
109
115
127
131
124
120
108
114
126
130
123
119
107
113
125
129
122
118
106
112
124
128
121
117
105
111
123
127
115
116
117
117
116
115
114
113
112
111
110
109
108
120
116
104
110
122
126
114
107
119
115
103
109
121
125
113
106
118
114
102
108
120
124
112
105
117
113
101
107
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
111
104
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
100
106
110
122
110
103
115
103
99
105
109
121
109
102
114
102
98
104
108
120
108
101
113
101
97
103
107
119
107
100
112
100
96
102
106
118
106
99
111
99
95
101
105
117
105
98
110
98
94
100
104
116
104
97
109
97
93
99
103
115
103
96
108
96
92
98
102
114
102
95
107
95
91
97
101
113
101
94
106
94
90
96
100
112
100
93
105
93
89
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
111
110
109
108
107
106
105
104
103
102
101
100
99
92
93
94
95
96
97
98
99
100
101
102
103
104
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
86
98
91
79
85
97
90
78
84
96
89
77
83
95
88
76
82
94
87
75
81
93
86
74
80
92
85
73
79
91
84
72
78
90
83
71
77
89
82
70
76
88
81
69
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
76
62
74
67
55
69
77
61
73
66
54
70
78
60
72
65
53
71
79
59
71
64
52
72
80
58
70
63
51
73
81
57
69
62
50
74
82
56
68
61
49
75
89
90
91
92
91
90
89
88
87
86
85
84
83
55
67
60
48
76
77
78
79
80
81
82
83
84
85
86
87
88
54
66
59
47
53
65
58
46
52
64
57
45
51
63
56
44
50
62
55
43
49
50
51
52
53
54
55
56
57
58
59
60
61
54
53
52
51
50
49
48
47
46
45
44
43
42
48
62
55
41
47
63
56
40
46
64
57
39
45
65
58
38
44
66
59
37
43
67
60
36
4
5
6
7
8
9
10
11
12
13
14
15
16
42
68
61
35
9
8
7
6
5
4
3
2
1
0
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
121
133
137
132
128
116
120
132
136
131
127
115
119
131
135
130
126
114
118
130
134
129
125
113
117
129
133
128
124
112
116
128
132
127
123
111
115
127
131
126
122
110
114
126
130
125
121
109
113
125
129
124
120
108
112
124
128
123
119
107
111
123
127
122
118
106
110
122
126
114
115
116
117
117
116
115
114
113
112
111
110
109
121
117
105
109
121
125
113
108
120
116
104
108
120
124
112
107
119
115
103
107
119
123
111
106
118
114
102
106
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
110
105
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
101
105
109
121
109
104
116
104
100
104
108
120
108
103
115
103
99
103
107
119
107
102
114
102
98
102
106
118
106
101
113
101
97
101
105
117
105
100
112
100
96
100
104
116
104
99
111
99
95
99
103
115
103
98
110
98
94
98
102
114
102
97
109
97
93
97
101
113
101
96
108
96
92
96
100
112
100
95
107
95
91
95
99
111
99
94
106
94
90
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
110
109
108
107
106
105
104
103
102
101
100
99
98
93
94
95
96
97
98
99
100
101
102
103
104
105
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
85
97
92
80
84
96
91
79
83
95
90
78
82
94
89
77
81
93
88
76
80
92
87
75
79
91
86
74
78
90
85
73
77
89
84
72
76
88
83
71
75
87
82
70
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
75
61
73
68
56
70
76
60
72
67
55
71
77
59
71
66
54
72
78
58
70
65
53
73
79
57
69
64
52
74
80
56
68
63
51
75
81
55
67
62
50
76
90
91
92
91
90
89
88
87
86
85
84
83
82
54
66
61
49
77
78
79
80
81
82
83
84
85
86
87
88
89
53
65
60
48
52
64
59
47
51
63
58
46
50
62
57
45
49
61
56
44
48
49
50
51
52
53
54
55
56
57
58
59
60
55
54
53
52
51
50
49
48
47
46
45
44
43
47
61
56
42
46
62
57
41
45
63
58
40
44
64
59
39
43
65
60
38
42
66
61
37
3
4
5
6
7
8
9
10
11
12
13
14
15
41
67
62
36
10
9
8
7
6
5
4
3
2
1
0
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
120
132
136
133
129
117
119
131
135
132
128
116
118
130
134
131
127
115
117
129
133
130
126
114
116
128
132
129
125
113
115
127
131
128
124
112
114
126
130
127
123
111
113
125
129
126
122
110
112
124
128
125
121
109
111
123
127
124
120
108
110
122
126
123
119
107
109
121
125
113
114
115
116
117
117
116
115
114
113
112
111
110
122
118
106
108
120
124
112
109
121
117
105
107
119
123
111
108
120
116
104
106
118
122
110
107
119
115
103
105
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
109
106
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
102
104
108
120
108
105
117
105
101
103
107
119
107
104
116
104
100
102
106
118
106
103
115
103
99
101
105
117
105
102
114
102
98
100
104
116
104
101
113
101
97
99
103
115
103
100
112
100
96
98
102
114
102
99
111
99
95
97
101
113
101
98
110
98
94
96
100
112
100
97
109
97
93
95
99
111
99
96
108
96
92
94
98
110
98
95
107
95
91
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
109
108
107
106
105
104
103
102
101
100
99
98
97
94
95
96
97
98
99
100
101
102
103
104
105
106
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
84
96
93
81
83
95
92
80
82
94
91
79
81
93
90
78
80
92
89
77
79
91
88
76
78
90
87
75
77
89
86
74
76
88
85
73
75
87
84
72
74
86
83
71
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
74
60
72
69
57
71
75
59
71
68
56
72
76
58
70
67
55
73
77
57
69
66
54
74
78
56
68
65
53
75
79
55
67
64
52
76
80
54
66
63
51
77
91
92
91
90
89
88
87
86
85
84
83
82
81
53
65
62
50
78
79
80
81
82
83
84
85
86
87
88
89
90
52
64
61
49
51
63
60
48
50
62
59
47
49
61
58
46
48
60
57
45
47
48
49
50
51
52
53
54
55
56
57
58
59
56
55
54
53
52
51
50
49
48
47
46
45
44
46
60
57
43
45
61
58
42
44
62
59
41
43
63
60
40
42
64
61
39
41
65
62
38
2
3
4
5
6
7
8
9
10
11
12
13
14
40
66
63
37
11
10
9
8
7
6
5
4
3
2
1
0
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
119
131
135
134
130
118
118
130
134
133
129
117
117
129
133
132
128
116
116
128
132
131
127
115
115
127
131
130
126
114
114
126
130
129
125
113
113
125
129
128
124
112
112
124
128
127
123
111
111
123
127
126
122
110
110
122
126
125
121
109
109
121
125
124
120
108
108
120
124
112
113
114
115
116
117
117
116
115
114
113
112
111
123
119
107
107
119
123
111
110
122
118
106
106
118
122
110
109
121
117
105
105
117
121
109
108
120
116
104
104
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
108
107
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
103
103
107
119
107
106
118
106
102
102
106
118
106
105
117
105
101
101
105
117
105
104
116
104
100
100
104
116
104
103
115
103
99
99
103
115
103
102
114
102
98
98
102
114
102
101
113
101
97
97
101
113
101
100
112
100
96
96
100
112
100
99
111
99
95
95
99
111
99
98
110
98
94
94
98
110
98
97
109
97
93
93
97
109
97
96
108
96
92
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
83
95
94
82
82
94
93
81
81
93
92
80
80
92
91
79
79
91
90
78
78
90
89
77
77
89
88
76
76
88
87
75
75
87
86
74
74
86
85
73
73
85
84
72
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
73
59
71
70
58
72
74
58
70
69
57
73
75
57
69
68
56
74
76
56
68
67
55
75
77
55
67
66
54
76
78
54
66
65
53
77
79
53
65
64
52
78
92
91
90
89
88
87
86
85
84
83
82
81
80
52
64
63
51
79
80
81
82
83
84
85
86
87
88
89
90
91
51
63
62
50
50
62
61
49
49
61
60
48
48
60
59
47
47
59
58
46
46
47
48
49
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
49
48
47
46
45
45
59
58
44
44
60
59
43
43
61
60
42
42
62
61
41
41
63
62
40
40
64
63
39
1
2
3
4
5
6
7
8
9
10
11
12
13
39
65
64
38
12
11
10
9
8
7
6
5
4
3
2
1
0
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
105
117
121
133
144
132
104
116
120
132
143
131
103
115
119
131
142
130
102
114
118
130
141
129
101
113
117
129
140
128
100
112
116
128
139
127
99
111
115
127
138
126
98
110
114
126
137
125
97
109
113
125
136
124
96
108
112
124
135
123
95
107
111
123
134
122
94
106
110
98
99
100
101
102
103
104
105
106
107
108
109
110
122
133
121
93
105
109
97
109
121
132
120
92
104
108
96
108
120
131
119
91
103
107
95
107
119
130
118
90
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
94
106
118
119
120
121
122
123
124
125
125
124
123
122
121
122
123
124
125
126
127
128
129
117
89
93
105
93
105
117
120
116
88
92
104
92
104
116
119
115
87
91
103
91
103
115
118
114
86
90
102
90
102
114
117
113
85
89
101
89
101
113
116
112
84
88
100
88
100
112
115
111
83
87
99
87
99
111
114
110
82
86
98
86
98
110
113
109
81
85
97
85
97
109
112
108
80
84
96
84
96
108
111
107
79
83
95
83
95
107
110
106
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
69
81
93
96
68
80
92
95
67
79
91
94
66
78
90
93
65
77
89
92
64
76
88
91
63
75
87
90
62
74
86
89
61
73
85
88
60
72
84
87
59
71
83
86
58
57
56
55
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
59
45
57
84
72
86
60
44
56
83
71
87
61
43
55
82
70
88
62
42
54
81
69
89
63
41
53
80
68
90
64
40
52
79
67
91
65
39
51
78
66
92
78
77
76
75
74
73
72
71
70
69
68
67
66
38
50
77
65
91
90
89
88
87
86
85
84
83
82
81
80
79
37
49
76
64
36
48
75
63
35
47
74
62
34
46
73
61
33
45
72
60
32
33
34
35
36
37
38
39
40
41
42
43
44
71
70
69
68
67
66
65
64
63
62
61
60
59
31
45
72
58
30
46
73
57
29
47
74
56
28
48
75
55
27
49
76
54
26
50
77
53
13
12
11
10
9
8
7
6
5
4
3
2
1
25
51
78
52
26
25
24
23
22
21
20
19
18
17
16
15
14
0
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
132
131
130
129
128
127
126
125
124
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
107
127
120
78
90
94
106
126
119
77
89
93
105
125
118
76
88
92
104
124
117
75
87
91
103
123
116
74
86
90
102
122
115
73
85
89
101
121
114
72
84
88
100
120
113
71
83
87
99
119
112
70
82
86
74
75
76
77
78
79
80
81
82
83
84
85
86
98
118
111
69
81
85
73
85
97
117
110
68
80
84
72
84
96
116
109
67
79
83
71
83
95
115
108
66
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
70
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
107
65
69
81
69
81
93
107
106
64
68
80
68
80
92
108
105
63
67
79
67
79
91
108
104
62
66
78
66
78
90
107
103
61
65
77
65
77
89
106
102
60
64
76
64
76
88
105
101
59
63
75
63
75
87
104
100
58
62
74
62
74
86
103
99
57
61
73
61
73
85
102
98
56
60
72
60
72
84
101
97
55
59
71
59
71
83
100
96
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
45
57
69
86
44
56
68
85
43
55
67
84
42
54
66
83
41
53
65
82
40
52
64
81
39
51
63
80
38
50
62
79
37
49
61
78
36
48
60
77
35
47
59
76
34
33
32
31
30
29
28
27
26
25
24
23
22
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
87
86
85
84
83
82
81
80
79
78
77
76
75
35
21
33
71
88
74
36
20
32
72
89
73
37
19
31
73
90
72
38
18
30
74
91
71
39
17
29
75
92
70
40
16
28
76
91
69
41
15
27
77
90
68
54
53
52
51
50
49
48
47
46
45
44
43
42
14
26
78
89
67
66
65
64
63
62
61
60
59
58
57
56
55
13
25
79
88
12
24
80
87
11
23
79
86
10
22
78
85
9
21
77
84
8
9
10
11
12
13
14
15
16
17
18
19
20
76
77
78
79
80
81
82
83
84
85
85
84
83
7
21
75
82
6
22
74
81
5
23
73
80
4
24
72
79
3
25
71
78
2
26
70
77
37
36
35
34
33
32
31
30
29
28
27
26
25
1
27
69
76
50
49
48
47
46
45
44
43
42
41
40
39
38
24
0
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
93
105
85
97
117
131
92
104
84
96
116
132
91
103
83
95
115
131
90
102
82
94
114
130
89
101
81
93
113
129
88
100
80
92
112
128
87
99
79
91
111
127
86
98
78
90
110
126
85
97
77
89
109
125
84
96
76
88
108
124
83
95
75
87
107
123
82
94
74
62
63
64
65
66
67
68
69
70
71
72
73
74
86
106
122
81
93
73
61
73
85
105
121
80
92
72
60
72
84
104
120
79
91
71
59
71
83
103
119
78
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
118
77
81
69
57
69
81
95
117
76
80
68
56
68
80
96
116
75
79
67
55
67
79
97
115
74
78
66
54
66
78
98
114
73
77
65
53
65
77
99
113
72
76
64
52
64
76
100
112
71
75
63
51
63
75
101
111
70
74
62
50
62
74
102
110
69
73
61
49
61
73
103
109
68
72
60
48
60
72
104
108
67
71
59
47
59
71
105
107
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
58
57
56
55
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
106
107
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
57
45
57
97
56
44
56
96
55
43
55
95
54
42
54
94
53
41
53
93
52
40
52
92
51
39
51
91
50
38
50
90
49
37
49
89
48
36
48
88
47
35
47
87
46
45
44
43
42
41
40
39
38
37
36
35
34
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
74
75
76
77
78
79
80
81
82
83
84
85
86
47
33
21
59
73
86
48
32
20
60
72
85
49
31
19
59
71
84
50
30
18
58
70
83
51
29
17
57
69
82
52
28
16
56
68
81
53
27
15
55
67
80
66
65
64
63
62
61
60
59
58
57
56
55
54
26
14
54
66
79
78
77
76
75
74
73
72
71
70
69
68
67
25
13
53
65
24
12
52
64
23
11
51
63
22
10
50
62
21
9
49
61
20
19
18
17
16
15
14
13
12
11
10
9
8
48
49
50
51
52
53
54
55
56
57
58
59
60
21
7
47
61
22
6
46
62
23
5
45
63
24
4
44
64
25
3
43
65
26
2
42
66
65
64
63
62
61
60
59
58
57
56
55
54
53
27
1
41
67
78
77
76
75
74
73
72
71
70
69
68
67
66
52
28
0
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
131
117
97
85
105
93
132
116
96
84
104
92
131
115
95
83
103
91
130
114
94
82
102
90
129
113
93
81
101
89
128
112
92
80
100
88
127
111
91
79
99
87
126
110
90
78
98
86
125
109
89
77
97
85
124
108
88
76
96
84
123
107
87
75
95
83
122
106
86
74
73
72
71
70
69
68
67
66
65
64
63
62
74
94
82
121
105
85
73
61
73
93
81
120
104
84
72
60
72
92
80
119
103
83
71
59
71
91
79
118
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
78
117
95
81
69
57
69
81
77
116
96
80
68
56
68
80
76
115
97
79
67
55
67
79
75
114
98
78
66
54
66
78
74
113
99
77
65
53
65
77
73
112
100
76
64
52
64
76
72
111
101
75
63
51
63
75
71
110
102
74
62
50
62
74
70
109
103
73
61
49
61
73
69
108
104
72
60
48
60
72
68
107
105
71
59
47
59
71
67
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
107
106
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
57
58
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
97
57
45
57
96
56
44
56
95
55
43
55
94
54
42
54
93
53
41
53
92
52
40
52
91
51
39
51
90
50
38
50
89
49
37
49
88
48
36
48
87
47
35
47
86
85
84
83
82
81
80
79
78
77
76
75
74
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
34
35
36
37
38
39
40
41
42
43
44
45
46
86
73
59
21
33
47
85
72
60
20
32
48
84
71
59
19
31
49
83
70
58
18
30
50
82
69
57
17
29
51
81
68
56
16
28
52
80
67
55
15
27
53
67
68
69
70
71
72
73
74
75
76
77
78
79
66
54
14
26
54
55
56
57
58
59
60
61
62
63
64
65
66
65
53
13
25
64
52
12
24
63
51
11
23
62
50
10
22
61
49
9
21
60
59
58
57
56
55
54
53
52
51
50
49
48
8
9
10
11
12
13
14
15
16
17
18
19
20
61
47
7
21
62
46
6
22
63
45
5
23
64
44
4
24
65
43
3
25
66
42
2
26
66
67
68
69
70
71
72
73
74
75
76
77
78
67
41
1
27
53
54
55
56
57
58
59
60
61
62
63
64
65
79
68
40
0
123
124
125
126
127
128
129
130
131
132
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
91
79
119
126
106
94
90
78
118
125
105
93
89
77
117
124
104
92
88
76
116
123
103
91
87
75
115
122
102
90
86
74
114
121
101
89
85
73
113
120
100
88
84
72
112
119
99
87
83
71
111
118
98
86
85
84
83
82
81
80
79
78
77
76
75
74
86
82
70
110
117
97
85
73
85
81
69
109
116
96
84
72
84
80
68
108
115
95
83
71
83
79
67
107
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
70
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
66
106
107
93
81
69
81
69
65
105
108
92
80
68
80
68
64
104
108
91
79
67
79
67
63
103
107
90
78
66
78
66
62
102
106
89
77
65
77
65
61
101
105
88
76
64
76
64
60
100
104
87
75
63
75
63
59
99
103
86
74
62
74
62
58
98
102
85
73
61
73
61
57
97
101
84
72
60
72
60
56
96
100
83
71
59
71
59
55
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
86
69
57
45
85
68
56
44
84
67
55
43
83
66
54
42
82
65
53
41
81
64
52
40
80
63
51
39
79
62
50
38
78
61
49
37
77
60
48
36
76
59
47
35
75
76
77
78
79
80
81
82
83
84
85
86
87
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
40
39
38
37
36
35
34
22
23
24
25
26
27
28
29
30
31
32
33
34
74
88
71
33
21
35
73
89
72
32
20
36
72
90
73
31
19
37
71
91
74
30
18
38
70
92
75
29
17
39
69
91
76
28
16
40
68
90
77
27
15
41
55
56
57
58
59
60
61
62
63
64
65
66
67
89
78
26
14
42
43
44
45
46
47
48
49
50
51
52
53
54
88
79
25
13
87
80
24
12
86
79
23
11
85
78
22
10
84
77
21
9
83
84
85
85
84
83
82
81
80
79
78
77
76
20
19
18
17
16
15
14
13
12
11
10
9
8
82
75
21
7
81
74
22
6
80
73
23
5
79
72
24
4
78
71
25
3
77
70
26
2
38
39
40
41
42
43
44
45
46
47
48
49
50
76
69
27
1
25
26
27
28
29
30
31
32
33
34
35
36
37
51
75
68
28
0
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
132
144
133
121
117
105
131
143
132
120
116
104
130
142
131
119
115
103
129
141
130
118
114
102
128
140
129
117
113
101
127
139
128
116
112
100
126
138
127
115
111
99
125
137
126
114
110
98
124
136
125
113
109
97
123
135
124
112
108
96
122
134
123
111
107
95
121
133
122
110
109
108
107
106
105
104
103
102
101
100
99
98
110
106
94
120
132
121
109
97
109
105
93
119
131
120
108
96
108
104
92
118
130
119
107
95
107
103
91
117
129
128
127
126
125
124
123
122
121
122
123
124
125
125
124
123
122
121
120
119
118
106
94
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
90
116
120
117
105
93
105
93
89
115
119
116
104
92
104
92
88
114
118
115
103
91
103
91
87
113
117
114
102
90
102
90
86
112
116
113
101
89
101
89
85
111
115
112
100
88
100
88
84
110
114
111
99
87
99
87
83
109
113
110
98
86
98
86
82
108
112
109
97
85
97
85
81
107
111
108
96
84
96
84
80
106
110
107
95
83
95
83
79
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
96
93
81
69
95
92
80
68
94
91
79
67
93
90
78
66
92
89
77
65
91
88
76
64
90
87
75
63
89
86
74
62
88
85
73
61
87
84
72
60
86
83
71
59
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
57
58
86
72
84
57
45
59
87
71
83
56
44
60
88
70
82
55
43
61
89
69
81
54
42
62
90
68
80
53
41
63
91
67
79
52
40
64
92
66
78
51
39
65
79
80
81
82
83
84
85
86
87
88
89
90
91
65
77
50
38
66
67
68
69
70
71
72
73
74
75
76
77
78
64
76
49
37
63
75
48
36
62
74
47
35
61
73
46
34
60
72
45
33
59
60
61
62
63
64
65
66
67
68
69
70
71
44
43
42
41
40
39
38
37
36
35
34
33
32
58
72
45
31
57
73
46
30
56
74
47
29
55
75
48
28
54
76
49
27
53
77
50
26
14
15
16
17
18
19
20
21
22
23
24
25
26
52
78
51
25
1
2
3
4
5
6
7
8
9
10
11
12
13
27
51
79
52
24
0
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
104
116
120
132
145
133
103
115
119
131
144
132
102
114
118
130
143
131
101
113
117
129
142
130
100
112
116
128
141
129
99
111
115
127
140
128
98
110
114
126
139
127
97
109
113
125
138
126
96
108
112
124
137
125
95
107
111
123
136
124
94
106
110
122
135
123
93
105
109
97
98
99
100
101
102
103
104
105
106
107
108
109
121
134
122
92
104
108
96
108
120
133
121
91
103
107
95
107
119
132
120
90
102
106
94
106
118
131
119
89
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
93
105
117
118
119
120
121
122
123
124
125
125
124
123
122
123
124
125
126
127
128
129
130
118
88
92
104
92
104
116
121
117
87
91
103
91
103
115
120
116
86
90
102
90
102
114
119
115
85
89
101
89
101
113
118
114
84
88
100
88
100
112
117
113
83
87
99
87
99
111
116
112
82
86
98
86
98
110
115
111
81
85
97
85
97
109
114
110
80
84
96
84
96
108
113
109
79
83
95
83
95
107
112
108
78
82
94
82
94
106
111
107
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
68
80
92
97
67
79
91
96
66
78
90
95
65
77
89
94
64
76
88
93
63
75
87
92
62
74
86
91
61
73
85
90
60
72
84
89
59
71
83
88
58
70
82
87
57
56
55
54
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
58
44
56
85
73
87
59
43
55
84
72
88
60
42
54
83
71
89
61
41
53
82
70
90
62
40
52
81
69
91
63
39
51
80
68
92
64
38
50
79
67
91
77
76
75
74
73
72
71
70
69
68
67
66
65
37
49
78
66
90
89
88
87
86
85
84
83
82
81
80
79
78
36
48
77
65
35
47
76
64
34
46
75
63
33
45
74
62
32
44
73
61
31
32
33
34
35
36
37
38
39
40
41
42
43
72
71
70
69
68
67
66
65
64
63
62
61
60
30
44
73
59
29
45
74
58
28
46
75
57
27
47
76
56
26
48
77
55
25
49
78
54
14
13
12
11
10
9
8
7
6
5
4
3
2
24
50
79
53
27
26
25
24
23
22
21
20
19
18
17
16
15
1
23
51
80
52
28
0
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
133
132
131
130
129
128
127
126
125
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
107
127
120
78
90
94
106
126
119
77
89
93
105
125
118
76
88
92
104
124
117
75
87
91
103
123
116
74
86
90
102
122
115
73
85
89
101
121
114
72
84
88
100
120
113
71
83
87
75
76
77
78
79
80
81
82
83
84
85
86
87
99
119
112
70
82
86
74
86
98
118
111
69
81
85
73
85
97
117
110
68
80
84
72
84
96
116
109
67
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
71
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
108
66
70
82
70
82
94
108
107
65
69
81
69
81
93
109
106
64
68
80
68
80
92
109
105
63
67
79
67
79
91
108
104
62
66
78
66
78
90
107
103
61
65
77
65
77
89
106
102
60
64
76
64
76
88
105
101
59
63
75
63
75
87
104
100
58
62
74
62
74
86
103
99
57
61
73
61
73
85
102
98
56
60
72
60
72
84
101
97
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
46
58
70
87
45
57
69
86
44
56
68
85
43
55
67
84
42
54
66
83
41
53
65
82
40
52
64
81
39
51
63
80
38
50
62
79
37
49
61
78
36
48
60
77
35
34
33
32
31
30
29
28
27
26
25
24
23
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
88
87
86
85
84
83
82
81
80
79
78
77
76
36
22
34
72
89
75
37
21
33
73
90
74
38
20
32
74
91
73
39
19
31
75
92
72
40
18
30
76
91
71
41
17
29
77
90
70
42
16
28
78
89
69
55
54
53
52
51
50
49
48
47
46
45
44
43
15
27
79
88
68
67
66
65
64
63
62
61
60
59
58
57
56
14
26
80
87
13
25
81
86
12
24
80
85
11
23
79
84
10
22
78
83
9
10
11
12
13
14
15
16
17
18
19
20
21
77
78
79
80
81
82
83
84
85
85
84
83
82
8
22
76
81
7
23
75
80
6
24
74
79
5
25
73
78
4
26
72
77
3
27
71
76
36
35
34
33
32
31
30
29
28
27
26
25
24
2
28
70
75
49
48
47
46
45
44
43
42
41
40
39
38
37
23
1
29
69
74
50
22
0
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
94
106
86
98
118
132
93
105
85
97
117
131
92
104
84
96
116
130
91
103
83
95
115
129
90
102
82
94
114
128
89
101
81
93
113
127
88
100
80
92
112
126
87
99
79
91
111
125
86
98
78
90
110
124
85
97
77
89
109
123
84
96
76
88
108
122
83
95
75
63
64
65
66
67
68
69
70
71
72
73
74
75
87
107
121
82
94
74
62
74
86
106
120
81
93
73
61
73
85
105
119
80
92
72
60
72
84
104
118
79
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
117
78
82
70
58
70
82
96
116
77
81
69
57
69
81
97
115
76
80
68
56
68
80
98
114
75
79
67
55
67
79
99
113
74
78
66
54
66
78
100
112
73
77
65
53
65
77
101
111
72
76
64
52
64
76
102
110
71
75
63
51
63
75
103
109
70
74
62
50
62
74
104
108
69
73
61
49
61
73
105
107
68
72
60
48
60
72
106
106
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
59
58
57
56
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
107
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
58
46
58
96
57
45
57
95
56
44
56
94
55
43
55
93
54
42
54
92
53
41
53
91
52
40
52
90
51
39
51
89
50
38
50
88
49
37
49
87
48
36
48
86
47
46
45
44
43
42
41
40
39
38
37
36
35
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
73
74
75
76
77
78
79
80
81
82
83
84
85
48
34
22
60
72
86
49
33
21
59
71
86
50
32
20
58
70
85
51
31
19
57
69
84
52
30
18
56
68
83
53
29
17
55
67
82
54
28
16
54
66
81
67
66
65
64
63
62
61
60
59
58
57
56
55
27
15
53
65
80
79
78
77
76
75
74
73
72
71
70
69
68
26
14
52
64
25
13
51
63
24
12
50
62
23
11
49
61
22
10
48
60
21
20
19
18
17
16
15
14
13
12
11
10
9
47
48
49
50
51
52
53
54
55
56
57
58
59
22
8
46
60
23
7
45
61
24
6
44
62
25
5
43
63
26
4
42
64
27
3
41
65
66
65
64
63
62
61
60
59
58
57
56
55
54
28
2
40
66
79
78
77
76
75
74
73
72
71
70
69
68
67
53
29
1
39
67
80
52
30
0
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
132
118
98
86
106
94
131
117
97
85
105
93
130
116
96
84
104
92
129
115
95
83
103
91
128
114
94
82
102
90
127
113
93
81
101
89
126
112
92
80
100
88
125
111
91
79
99
87
124
110
90
78
98
86
123
109
89
77
97
85
122
108
88
76
96
84
121
107
87
75
74
73
72
71
70
69
68
67
66
65
64
63
75
95
83
120
106
86
74
62
74
94
82
119
105
85
73
61
73
93
81
118
104
84
72
60
72
92
80
117
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
79
116
96
82
70
58
70
82
78
115
97
81
69
57
69
81
77
114
98
80
68
56
68
80
76
113
99
79
67
55
67
79
75
112
100
78
66
54
66
78
74
111
101
77
65
53
65
77
73
110
102
76
64
52
64
76
72
109
103
75
63
51
63
75
71
108
104
74
62
50
62
74
70
107
105
73
61
49
61
73
69
106
106
72
60
48
60
72
68
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
107
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
56
57
58
59
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
96
58
46
58
95
57
45
57
94
56
44
56
93
55
43
55
92
54
42
54
91
53
41
53
90
52
40
52
89
51
39
51
88
50
38
50
87
49
37
49
86
48
36
48
85
84
83
82
81
80
79
78
77
76
75
74
73
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
35
36
37
38
39
40
41
42
43
44
45
46
47
86
72
60
22
34
48
86
71
59
21
33
49
85
70
58
20
32
50
84
69
57
19
31
51
83
68
56
18
30
52
82
67
55
17
29
53
81
66
54
16
28
54
68
69
70
71
72
73
74
75
76
77
78
79
80
65
53
15
27
55
56
57
58
59
60
61
62
63
64
65
66
67
64
52
14
26
63
51
13
25
62
50
12
24
61
49
11
23
60
48
10
22
59
58
57
56
55
54
53
52
51
50
49
48
47
9
10
11
12
13
14
15
16
17
18
19
20
21
60
46
8
22
61
45
7
23
62
44
6
24
63
43
5
25
64
42
4
26
65
41
3
27
67
68
69
70
71
72
73
74
75
76
77
78
79
66
40
2
28
54
55
56
57
58
59
60
61
62
63
64
65
66
80
67
39
1
29
53
81
68
38
0
124
125
126
127
128
129
130
131
132
133
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
91
79
119
126
106
94
90
78
118
125
105
93
89
77
117
124
104
92
88
76
116
123
103
91
87
75
115
122
102
90
86
74
114
121
101
89
85
73
113
120
100
88
84
72
112
119
99
87
86
85
84
83
82
81
80
79
78
77
76
75
87
83
71
111
118
98
86
74
86
82
70
110
117
97
85
73
85
81
69
109
116
96
84
72
84
80
68
108
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
71
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
67
107
108
94
82
70
82
70
66
106
109
93
81
69
81
69
65
105
109
92
80
68
80
68
64
104
108
91
79
67
79
67
63
103
107
90
78
66
78
66
62
102
106
89
77
65
77
65
61
101
105
88
76
64
76
64
60
100
104
87
75
63
75
63
59
99
103
86
74
62
74
62
58
98
102
85
73
61
73
61
57
97
101
84
72
60
72
60
56
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
87
70
58
46
86
69
57
45
85
68
56
44
84
67
55
43
83
66
54
42
82
65
53
41
81
64
52
40
80
63
51
39
79
62
50
38
78
61
49
37
77
60
48
36
76
77
78
79
80
81
82
83
84
85
86
87
88
71
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
40
39
38
37
36
35
23
24
25
26
27
28
29
30
31
32
33
34
35
75
89
72
34
22
36
74
90
73
33
21
37
73
91
74
32
20
38
72
92
75
31
19
39
71
91
76
30
18
40
70
90
77
29
17
41
69
89
78
28
16
42
56
57
58
59
60
61
62
63
64
65
66
67
68
88
79
27
15
43
44
45
46
47
48
49
50
51
52
53
54
55
87
80
26
14
86
81
25
13
85
80
24
12
84
79
23
11
83
78
22
10
82
83
84
85
85
84
83
82
81
80
79
78
77
21
20
19
18
17
16
15
14
13
12
11
10
9
81
76
22
8
80
75
23
7
79
74
24
6
78
73
25
5
77
72
26
4
76
71
27
3
37
38
39
40
41
42
43
44
45
46
47
48
49
75
70
28
2
24
25
26
27
28
29
30
31
32
33
34
35
36
50
74
69
29
1
23
51
73
68
30
0
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
133
145
132
120
116
104
132
144
131
119
115
103
131
143
130
118
114
102
130
142
129
117
113
101
129
141
128
116
112
100
128
140
127
115
111
99
127
139
126
114
110
98
126
138
125
113
109
97
125
137
124
112
108
96
124
136
123
111
107
95
123
135
122
110
106
94
122
134
121
109
108
107
106
105
104
103
102
101
100
99
98
97
109
105
93
121
133
120
108
96
108
104
92
120
132
119
107
95
107
103
91
119
131
118
106
94
106
102
90
118
130
129
128
127
126
125
124
123
122
123
124
125
125
124
123
122
121
120
119
118
117
105
93
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
89
117
121
116
104
92
104
92
88
116
120
115
103
91
103
91
87
115
119
114
102
90
102
90
86
114
118
113
101
89
101
89
85
113
117
112
100
88
100
88
84
112
116
111
99
87
99
87
83
111
115
110
98
86
98
86
82
110
114
109
97
85
97
85
81
109
113
108
96
84
96
84
80
108
112
107
95
83
95
83
79
107
111
106
94
82
94
82
78
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
97
92
80
68
96
91
79
67
95
90
78
66
94
89
77
65
93
88
76
64
92
87
75
63
91
86
74
62
90
85
73
61
89
84
72
60
88
83
71
59
87
82
70
58
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
57
87
73
85
56
44
58
88
72
84
55
43
59
89
71
83
54
42
60
90
70
82
53
41
61
91
69
81
52
40
62
92
68
80
51
39
63
91
67
79
50
38
64
78
79
80
81
82
83
84
85
86
87
88
89
90
66
78
49
37
65
66
67
68
69
70
71
72
73
74
75
76
77
65
77
48
36
64
76
47
35
63
75
46
34
62
74
45
33
61
73
44
32
60
61
62
63
64
65
66
67
68
69
70
71
72
43
42
41
40
39
38
37
36
35
34
33
32
31
59
73
44
30
58
74
45
29
57
75
46
28
56
76
47
27
55
77
48
26
54
78
49
25
15
16
17
18
19
20
21
22
23
24
25
26
27
53
79
50
24
2
3
4
5
6
7
8
9
10
11
12
13
14
28
52
80
51
23
1
29
51
81
52
22
0
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
103
115
119
131
146
134
102
114
118
130
145
133
101
113
117
129
144
132
100
112
116
128
143
131
99
111
115
127
142
130
98
110
114
126
141
129
97
109
113
125
140
128
96
108
112
124
139
127
95
107
111
123
138
126
94
106
110
122
137
125
93
105
109
121
136
124
92
104
108
96
97
98
99
100
101
102
103
104
105
106
107
108
120
135
123
91
103
107
95
107
119
134
122
90
102
106
94
106
118
133
121
89
101
105
93
105
117
132
120
88
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
92
104
116
117
118
119
120
121
122
123
124
125
125
124
123
124
125
126
127
128
129
130
131
119
87
91
103
91
103
115
122
118
86
90
102
90
102
114
121
117
85
89
101
89
101
113
120
116
84
88
100
88
100
112
119
115
83
87
99
87
99
111
118
114
82
86
98
86
98
110
117
113
81
85
97
85
97
109
116
112
80
84
96
84
96
108
115
111
79
83
95
83
95
107
114
110
78
82
94
82
94
106
113
109
77
81
93
81
93
105
112
108
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
67
79
91
98
66
78
90
97
65
77
89
96
64
76
88
95
63
75
87
94
62
74
86
93
61
73
85
92
60
72
84
91
59
71
83
90
58
70
82
89
57
69
81
88
56
55
54
53
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
57
43
55
86
74
88
58
42
54
85
73
89
59
41
53
84
72
90
60
40
52
83
71
91
61
39
51
82
70
92
62
38
50
81
69
91
63
37
49
80
68
90
76
75
74
73
72
71
70
69
68
67
66
65
64
36
48
79
67
89
88
87
86
85
84
83
82
81
80
79
78
77
35
47
78
66
34
46
77
65
33
45
76
64
32
44
75
63
31
43
74
62
30
31
32
33
34
35
36
37
38
39
40
41
42
73
72
71
70
69
68
67
66
65
64
63
62
61
29
43
74
60
28
44
75
59
27
45
76
58
26
46
77
57
25
47
78
56
24
48
79
55
15
14
13
12
11
10
9
8
7
6
5
4
3
23
49
80
54
28
27
26
25
24
23
22
21
20
19
18
17
16
2
22
50
81
53
29
1
21
51
82
52
30
0
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
107
127
120
78
90
94
106
126
119
77
89
93
105
125
118
76
88
92
104
124
117
75
87
91
103
123
116
74
86
90
102
122
115
73
85
89
101
121
114
72
84
88
76
77
78
79
80
81
82
83
84
85
86
87
88
100
120
113
71
83
87
75
87
99
119
112
70
82
86
74
86
98
118
111
69
81
85
73
85
97
117
110
68
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
72
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
109
67
71
83
71
83
95
109
108
66
70
82
70
82
94
110
107
65
69
81
69
81
93
110
106
64
68
80
68
80
92
109
105
63
67
79
67
79
91
108
104
62
66
78
66
78
90
107
103
61
65
77
65
77
89
106
102
60
64
76
64
76
88
105
101
59
63
75
63
75
87
104
100
58
62
74
62
74
86
103
99
57
61
73
61
73
85
102
98
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
47
59
71
88
46
58
70
87
45
57
69
86
44
56
68
85
43
55
67
84
42
54
66
83
41
53
65
82
40
52
64
81
39
51
63
80
38
50
62
79
37
49
61
78
36
35
34
33
32
31
30
29
28
27
26
25
24
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
89
88
87
86
85
84
83
82
81
80
79
78
77
37
23
35
73
90
76
38
22
34
74
91
75
39
21
33
75
92
74
40
20
32
76
91
73
41
19
31
77
90
72
42
18
30
78
89
71
43
17
29
79
88
70
56
55
54
53
52
51
50
49
48
47
46
45
44
16
28
80
87
69
68
67
66
65
64
63
62
61
60
59
58
57
15
27
81
86
14
26
82
85
13
25
81
84
12
24
80
83
11
23
79
82
10
11
12
13
14
15
16
17
18
19
20
21
22
78
79
80
81
82
83
84
85
85
84
83
82
81
9
23
77
80
8
24
76
79
7
25
75
78
6
26
74
77
5
27
73
76
4
28
72
75
35
34
33
32
31
30
29
28
27
26
25
24
23
3
29
71
74
48
47
46
45
44
43
42
41
40
39
38
37
36
22
2
30
70
73
49
21
1
31
69
72
50
20
0
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
95
107
87
99
119
131
94
106
86
98
118
130
93
105
85
97
117
129
92
104
84
96
116
128
91
103
83
95
115
127
90
102
82
94
114
126
89
101
81
93
113
125
88
100
80
92
112
124
87
99
79
91
111
123
86
98
78
90
110
122
85
97
77
89
109
121
84
96
76
64
65
66
67
68
69
70
71
72
73
74
75
76
88
108
120
83
95
75
63
75
87
107
119
82
94
74
62
74
86
106
118
81
93
73
61
73
85
105
117
80
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
116
79
83
71
59
71
83
97
115
78
82
70
58
70
82
98
114
77
81
69
57
69
81
99
113
76
80
68
56
68
80
100
112
75
79
67
55
67
79
101
111
74
78
66
54
66
78
102
110
73
77
65
53
65
77
103
109
72
76
64
52
64
76
104
108
71
75
63
51
63
75
105
107
70
74
62
50
62
74
106
106
69
73
61
49
61
73
107
105
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
60
59
58
57
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
59
47
59
95
58
46
58
94
57
45
57
93
56
44
56
92
55
43
55
91
54
42
54
90
53
41
53
89
52
40
52
88
51
39
51
87
50
38
50
86
49
37
49
85
48
47
46
45
44
43
42
41
40
39
38
37
36
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
72
73
74
75
76
77
78
79
80
81
82
83
84
49
35
23
59
71
85
50
34
22
58
70
86
51
33
21
57
69
86
52
32
20
56
68
85
53
31
19
55
67
84
54
30
18
54
66
83
55
29
17
53
65
82
68
67
66
65
64
63
62
61
60
59
58
57
56
28
16
52
64
81
80
79
78
77
76
75
74
73
72
71
70
69
27
15
51
63
26
14
50
62
25
13
49
61
24
12
48
60
23
11
47
59
22
21
20
19
18
17
16
15
14
13
12
11
10
46
47
48
49
50
51
52
53
54
55
56
57
58
23
9
45
59
24
8
44
60
25
7
43
61
26
6
42
62
27
5
41
63
28
4
40
64
67
66
65
64
63
62
61
60
59
58
57
56
55
29
3
39
65
80
79
78
77
76
75
74
73
72
71
70
69
68
54
30
2
38
66
81
53
31
1
37
67
82
52
32
0
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
96
108
88
100
120
130
95
107
87
99
119
129
94
106
86
98
118
128
93
105
85
97
117
127
92
104
84
96
116
126
91
103
83
95
115
125
90
102
82
94
114
124
89
101
81
93
113
123
88
100
80
92
112
122
87
99
79
91
111
121
86
98
78
90
110
120
85
97
77
65
66
67
68
69
70
71
72
73
74
75
76
77
89
109
119
84
96
76
64
76
88
108
118
83
95
75
63
75
87
107
117
82
94
74
62
74
86
106
116
81
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
115
80
84
72
60
72
84
98
114
79
83
71
59
71
83
99
113
78
82
70
58
70
82
100
112
77
81
69
57
69
81
101
111
76
80
68
56
68
80
102
110
75
79
67
55
67
79
103
109
74
78
66
54
66
78
104
108
73
77
65
53
65
77
105
107
72
76
64
52
64
76
106
106
71
75
63
51
63
75
107
105
70
74
62
50
62
74
108
104
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
61
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
60
48
60
94
59
47
59
93
58
46
58
92
57
45
57
91
56
44
56
90
55
43
55
89
54
42
54
88
53
41
53
87
52
40
52
86
51
39
51
85
50
38
50
84
49
48
47
46
45
44
43
42
41
40
39
38
37
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
50
36
24
58
70
84
51
35
23
57
69
85
52
34
22
56
68
86
53
33
21
55
67
86
54
32
20
54
66
85
55
31
19
53
65
84
56
30
18
52
64
83
69
68
67
66
65
64
63
62
61
60
59
58
57
29
17
51
63
82
81
80
79
78
77
76
75
74
73
72
71
70
28
16
50
62
27
15
49
61
26
14
48
60
25
13
47
59
24
12
46
58
23
22
21
20
19
18
17
16
15
14
13
12
11
45
46
47
48
49
50
51
52
53
54
55
56
57
24
10
44
58
25
9
43
59
26
8
42
60
27
7
41
61
28
6
40
62
29
5
39
63
68
67
66
65
64
63
62
61
60
59
58
57
56
30
4
38
64
81
80
79
78
77
76
75
74
73
72
71
70
69
55
31
3
37
65
82
54
32
2
36
66
83
53
33
1
0
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
97
109
89
101
121
129
96
108
88
100
120
128
95
107
87
99
119
127
94
106
86
98
118
126
93
105
85
97
117
125
92
104
84
96
116
124
91
103
83
95
115
123
90
102
82
94
114
122
89
101
81
93
113
121
88
100
80
92
112
120
87
99
79
91
111
119
86
98
78
66
67
68
69
70
71
72
73
74
75
76
77
78
90
110
118
85
97
77
65
77
89
109
117
84
96
76
64
76
88
108
116
83
95
75
63
75
87
107
115
82
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
114
81
85
73
61
73
85
99
113
80
84
72
60
72
84
100
112
79
83
71
59
71
83
101
111
78
82
70
58
70
82
102
110
77
81
69
57
69
81
103
109
76
80
68
56
68
80
104
108
75
79
67
55
67
79
105
107
74
78
66
54
66
78
106
106
73
77
65
53
65
77
107
105
72
76
64
52
64
76
108
104
71
75
63
51
63
75
107
103
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
62
61
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
61
49
61
93
60
48
60
92
59
47
59
91
58
46
58
90
57
45
57
89
56
44
56
88
55
43
55
87
54
42
54
86
53
41
53
85
52
40
52
84
51
39
51
83
50
49
48
47
46
45
44
43
42
41
40
39
38
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
51
37
25
57
69
83
52
36
24
56
68
84
53
35
23
55
67
85
54
34
22
54
66
86
55
33
21
53
65
86
56
32
20
52
64
85
57
31
19
51
63
84
70
69
68
67
66
65
64
63
62
61
60
59
58
30
18
50
62
83
82
81
80
79
78
77
76
75
74
73
72
71
29
17
49
61
28
16
48
60
27
15
47
59
26
14
46
58
25
13
45
57
24
23
22
21
20
19
18
17
16
15
14
13
12
44
45
46
47
48
49
50
51
52
53
54
55
56
25
11
43
57
26
10
42
58
27
9
41
59
28
8
40
60
29
7
39
61
30
6
38
62
69
68
67
66
65
64
63
62
61
60
59
58
57
31
5
37
63
82
81
80
79
78
77
76
75
74
73
72
71
70
56
32
4
36
64
83
55
33
3
35
65
83
54
34
2
1
0
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
98
110
90
102
122
128
97
109
89
101
121
127
96
108
88
100
120
126
95
107
87
99
119
125
94
106
86
98
118
124
93
105
85
97
117
123
92
104
84
96
116
122
91
103
83
95
115
121
90
102
82
94
114
120
89
101
81
93
113
119
88
100
80
92
112
118
87
99
79
67
68
69
70
71
72
73
74
75
76
77
78
79
91
111
117
86
98
78
66
78
90
110
116
85
97
77
65
77
89
109
115
84
96
76
64
76
88
108
114
83
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
113
82
86
74
62
74
86
100
112
81
85
73
61
73
85
101
111
80
84
72
60
72
84
102
110
79
83
71
59
71
83
103
109
78
82
70
58
70
82
104
108
77
81
69
57
69
81
105
107
76
80
68
56
68
80
106
106
75
79
67
55
67
79
107
105
74
78
66
54
66
78
108
104
73
77
65
53
65
77
107
103
72
76
64
52
64
76
106
102
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
62
50
62
92
61
49
61
91
60
48
60
90
59
47
59
89
58
46
58
88
57
45
57
87
56
44
56
86
55
43
55
85
54
42
54
84
53
41
53
83
52
40
52
82
51
50
49
48
47
46
45
44
43
42
41
40
39
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
52
38
26
56
68
82
53
37
25
55
67
83
54
36
24
54
66
84
55
35
23
53
65
85
56
34
22
52
64
86
57
33
21
51
63
86
58
32
20
50
62
85
71
70
69
68
67
66
65
64
63
62
61
60
59
31
19
49
61
84
83
82
81
80
79
78
77
76
75
74
73
72
30
18
48
60
29
17
47
59
28
16
46
58
27
15
45
57
26
14
44
56
25
24
23
22
21
20
19
18
17
16
15
14
13
43
44
45
46
47
48
49
50
51
52
53
54
55
26
12
42
56
27
11
41
57
28
10
40
58
29
9
39
59
30
8
38
60
31
7
37
61
70
69
68
67
66
65
64
63
62
61
60
59
58
32
6
36
62
83
82
81
80
79
78
77
76
75
74
73
72
71
57
33
5
35
63
83
56
34
4
34
64
82
55
35
3
2
1
0
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
99
111
91
103
123
127
98
110
90
102
122
126
97
109
89
101
121
125
96
108
88
100
120
124
95
107
87
99
119
123
94
106
86
98
118
122
93
105
85
97
117
121
92
104
84
96
116
120
91
103
83
95
115
119
90
102
82
94
114
118
89
101
81
93
113
117
88
100
80
68
69
70
71
72
73
74
75
76
77
78
79
80
92
112
116
87
99
79
67
79
91
111
115
86
98
78
66
78
90
110
114
85
97
77
65
77
89
109
113
84
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
112
83
87
75
63
75
87
101
111
82
86
74
62
74
86
102
110
81
85
73
61
73
85
103
109
80
84
72
60
72
84
104
108
79
83
71
59
71
83
105
107
78
82
70
58
70
82
106
106
77
81
69
57
69
81
107
105
76
80
68
56
68
80
108
104
75
79
67
55
67
79
107
103
74
78
66
54
66
78
106
102
73
77
65
53
65
77
105
101
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
63
51
63
91
62
50
62
90
61
49
61
89
60
48
60
88
59
47
59
87
58
46
58
86
57
45
57
85
56
44
56
84
55
43
55
83
54
42
54
82
53
41
53
81
52
51
50
49
48
47
46
45
44
43
42
41
40
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
53
39
27
55
67
81
54
38
26
54
66
82
55
37
25
53
65
83
56
36
24
52
64
84
57
35
23
51
63
85
58
34
22
50
62
86
59
33
21
49
61
86
72
71
70
69
68
67
66
65
64
63
62
61
60
32
20
48
60
85
84
83
82
81
80
79
78
77
76
75
74
73
31
19
47
59
30
18
46
58
29
17
45
57
28
16
44
56
27
15
43
55
26
25
24
23
22
21
20
19
18
17
16
15
14
42
43
44
45
46
47
48
49
50
51
52
53
54
27
13
41
55
28
12
40
56
29
11
39
57
30
10
38
58
31
9
37
59
32
8
36
60
71
70
69
68
67
66
65
64
63
62
61
60
59
33
7
35
61
83
83
82
81
80
79
78
77
76
75
74
73
72
58
34
6
34
62
82
57
35
5
33
63
81
56
36
4
3
2
1
0
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
100
112
92
104
124
126
99
111
91
103
123
125
98
110
90
102
122
124
97
109
89
101
121
123
96
108
88
100
120
122
95
107
87
99
119
121
94
106
86
98
118
120
93
105
85
97
117
119
92
104
84
96
116
118
91
103
83
95
115
117
90
102
82
94
114
116
89
101
81
69
70
71
72
73
74
75
76
77
78
79
80
81
93
113
115
88
100
80
68
80
92
112
114
87
99
79
67
79
91
111
113
86
98
78
66
78
90
110
112
85
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
111
84
88
76
64
76
88
102
110
83
87
75
63
75
87
103
109
82
86
74
62
74
86
104
108
81
85
73
61
73
85
105
107
80
84
72
60
72
84
106
106
79
83
71
59
71
83
107
105
78
82
70
58
70
82
108
104
77
81
69
57
69
81
107
103
76
80
68
56
68
80
106
102
75
79
67
55
67
79
105
101
74
78
66
54
66
78
104
100
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
64
52
64
90
63
51
63
89
62
50
62
88
61
49
61
87
60
48
60
86
59
47
59
85
58
46
58
84
57
45
57
83
56
44
56
82
55
43
55
81
54
42
54
80
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
54
40
28
54
66
80
55
39
27
53
65
81
56
38
26
52
64
82
57
37
25
51
63
83
58
36
24
50
62
84
59
35
23
49
61
85
60
34
22
48
60
86
73
72
71
70
69
68
67
66
65
64
63
62
61
33
21
47
59
86
85
84
83
82
81
80
79
78
77
76
75
74
32
20
46
58
31
19
45
57
30
18
44
56
29
17
43
55
28
16
42
54
27
26
25
24
23
22
21
20
19
18
17
16
15
41
42
43
44
45
46
47
48
49
50
51
52
53
28
14
40
54
29
13
39
55
30
12
38
56
31
11
37
57
32
10
36
58
33
9
35
59
72
71
70
69
68
67
66
65
64
63
62
61
60
34
8
34
60
82
83
83
82
81
80
79
78
77
76
75
74
73
59
35
7
33
61
81
58
36
6
32
62
80
57
37
5
4
3
2
1
0
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
101
113
93
105
125
125
100
112
92
104
124
124
99
111
91
103
123
123
98
110
90
102
122
122
97
109
89
101
121
121
96
108
88
100
120
120
95
107
87
99
119
119
94
106
86
98
118
118
93
105
85
97
117
117
92
104
84
96
116
116
91
103
83
95
115
115
90
102
82
70
71
72
73
74
75
76
77
78
79
80
81
82
94
114
114
89
101
81
69
81
93
113
113
88
100
80
68
80
92
112
112
87
99
79
67
79
91
111
111
86
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
85
89
77
65
77
89
103
109
84
88
76
64
76
88
104
108
83
87
75
63
75
87
105
107
82
86
74
62
74
86
106
106
81
85
73
61
73
85
107
105
80
84
72
60
72
84
108
104
79
83
71
59
71
83
107
103
78
82
70
58
70
82
106
102
77
81
69
57
69
81
105
101
76
80
68
56
68
80
104
100
75
79
67
55
67
79
103
99
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
65
53
65
89
64
52
64
88
63
51
63
87
62
50
62
86
61
49
61
85
60
48
60
84
59
47
59
83
58
46
58
82
57
45
57
81
56
44
56
80
55
43
55
79
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
55
41
29
53
65
79
56
40
28
52
64
80
57
39
27
51
63
81
58
38
26
50
62
82
59
37
25
49
61
83
60
36
24
48
60
84
61
35
23
47
59
85
74
73
72
71
70
69
68
67
66
65
64
63
62
34
22
46
58
86
86
85
84
83
82
81
80
79
78
77
76
75
33
21
45
57
32
20
44
56
31
19
43
55
30
18
42
54
29
17
41
53
28
27
26
25
24
23
22
21
20
19
18
17
16
40
41
42
43
44
45
46
47
48
49
50
51
52
29
15
39
53
30
14
38
54
31
13
37
55
32
12
36
56
33
11
35
57
34
10
34
58
73
72
71
70
69
68
67
66
65
64
63
62
61
35
9
33
59
81
82
83
83
82
81
80
79
78
77
76
75
74
60
36
8
32
60
80
59
37
7
31
61
79
58
38
6
5
4
3
2
1
0
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
102
114
94
106
126
124
101
113
93
105
125
123
100
112
92
104
124
122
99
111
91
103
123
121
98
110
90
102
122
120
97
109
89
101
121
119
96
108
88
100
120
118
95
107
87
99
119
117
94
106
86
98
118
116
93
105
85
97
117
115
92
104
84
96
116
114
91
103
83
71
72
73
74
75
76
77
78
79
80
81
82
83
95
115
113
90
102
82
70
82
94
114
112
89
101
81
69
81
93
113
111
88
100
80
68
80
92
112
110
87
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
109
86
90
78
66
78
90
104
108
85
89
77
65
77
89
105
107
84
88
76
64
76
88
106
106
83
87
75
63
75
87
107
105
82
86
74
62
74
86
108
104
81
85
73
61
73
85
107
103
80
84
72
60
72
84
106
102
79
83
71
59
71
83
105
101
78
82
70
58
70
82
104
100
77
81
69
57
69
81
103
99
76
80
68
56
68
80
102
98
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
66
54
66
88
65
53
65
87
64
52
64
86
63
51
63
85
62
50
62
84
61
49
61
83
60
48
60
82
59
47
59
81
58
46
58
80
57
45
57
79
56
44
56
78
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
56
42
30
52
64
78
57
41
29
51
63
79
58
40
28
50
62
80
59
39
27
49
61
81
60
38
26
48
60
82
61
37
25
47
59
83
62
36
24
46
58
84
75
74
73
72
71
70
69
68
67
66
65
64
63
35
23
45
57
85
86
86
85
84
83
82
81
80
79
78
77
76
34
22
44
56
33
21
43
55
32
20
42
54
31
19
41
53
30
18
40
52
29
28
27
26
25
24
23
22
21
20
19
18
17
39
40
41
42
43
44
45
46
47
48
49
50
51
30
16
38
52
31
15
37
53
32
14
36
54
33
13
35
55
34
12
34
56
35
11
33
57
74
73
72
71
70
69
68
67
66
65
64
63
62
36
10
32
58
80
81
82
83
83
82
81
80
79
78
77
76
75
61
37
9
31
59
79
60
38
8
30
60
78
59
39
7
6
5
4
3
2
1
0
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
103
115
95
107
127
123
102
114
94
106
126
122
101
113
93
105
125
121
100
112
92
104
124
120
99
111
91
103
123
119
98
110
90
102
122
118
97
109
89
101
121
117
96
108
88
100
120
116
95
107
87
99
119
115
94
106
86
98
118
114
93
105
85
97
117
113
92
104
84
72
73
74
75
76
77
78
79
80
81
82
83
84
96
116
112
91
103
83
71
83
95
115
111
90
102
82
70
82
94
114
110
89
101
81
69
81
93
113
109
88
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
108
87
91
79
67
79
91
105
107
86
90
78
66
78
90
106
106
85
89
77
65
77
89
107
105
84
88
76
64
76
88
108
104
83
87
75
63
75
87
107
103
82
86
74
62
74
86
106
102
81
85
73
61
73
85
105
101
80
84
72
60
72
84
104
100
79
83
71
59
71
83
103
99
78
82
70
58
70
82
102
98
77
81
69
57
69
81
101
97
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
67
55
67
87
66
54
66
86
65
53
65
85
64
52
64
84
63
51
63
83
62
50
62
82
61
49
61
81
60
48
60
80
59
47
59
79
58
46
58
78
57
45
57
77
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
57
43
31
51
63
77
58
42
30
50
62
78
59
41
29
49
61
79
60
40
28
48
60
80
61
39
27
47
59
81
62
38
26
46
58
82
63
37
25
45
57
83
76
75
74
73
72
71
70
69
68
67
66
65
64
36
24
44
56
84
85
86
86
85
84
83
82
81
80
79
78
77
35
23
43
55
34
22
42
54
33
21
41
53
32
20
40
52
31
19
39
51
30
29
28
27
26
25
24
23
22
21
20
19
18
38
39
40
41
42
43
44
45
46
47
48
49
50
31
17
37
51
32
16
36
52
33
15
35
53
34
14
34
54
35
13
33
55
36
12
32
56
75
74
73
72
71
70
69
68
67
66
65
64
63
37
11
31
57
79
80
81
82
83
83
82
81
80
79
78
77
76
62
38
10
30
58
78
61
39
9
29
59
77
60
40
8
7
6
5
4
3
2
1
0
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
104
116
96
108
128
122
103
115
95
107
127
121
102
114
94
106
126
120
101
113
93
105
125
119
100
112
92
104
124
118
99
111
91
103
123
117
98
110
90
102
122
116
97
109
89
101
121
115
96
108
88
100
120
114
95
107
87
99
119
113
94
106
86
98
118
112
93
105
85
73
74
75
76
77
78
79
80
81
82
83
84
85
97
117
111
92
104
84
72
84
96
116
110
91
103
83
71
83
95
115
109
90
102
82
70
82
94
114
108
89
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
107
88
92
80
68
80
92
106
106
87
91
79
67
79
91
107
105
86
90
78
66
78
90
108
104
85
89
77
65
77
89
107
103
84
88
76
64
76
88
106
102
83
87
75
63
75
87
105
101
82
86
74
62
74
86
104
100
81
85
73
61
73
85
103
99
80
84
72
60
72
84
102
98
79
83
71
59
71
83
101
97
78
82
70
58
70
82
100
96
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
68
56
68
86
67
55
67
85
66
54
66
84
65
53
65
83
64
52
64
82
63
51
63
81
62
50
62
80
61
49
61
79
60
48
60
78
59
47
59
77
58
46
58
76
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
58
44
32
50
62
76
59
43
31
49
61
77
60
42
30
48
60
78
61
41
29
47
59
79
62
40
28
46
58
80
63
39
27
45
57
81
64
38
26
44
56
82
77
76
75
74
73
72
71
70
69
68
67
66
65
37
25
43
55
83
84
85
86
86
85
84
83
82
81
80
79
78
36
24
42
54
35
23
41
53
34
22
40
52
33
21
39
51
32
20
38
50
31
30
29
28
27
26
25
24
23
22
21
20
19
37
38
39
40
41
42
43
44
45
46
47
48
49
32
18
36
50
33
17
35
51
34
16
34
52
35
15
33
53
36
14
32
54
37
13
31
55
76
75
74
73
72
71
70
69
68
67
66
65
64
38
12
30
56
78
79
80
81
82
83
83
82
81
80
79
78
77
63
39
11
29
57
77
62
40
10
28
58
76
61
41
9
8
7
6
5
4
3
2
1
0
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
105
117
97
109
129
121
104
116
96
108
128
120
103
115
95
107
127
119
102
114
94
106
126
118
101
113
93
105
125
117
100
112
92
104
124
116
99
111
91
103
123
115
98
110
90
102
122
114
97
109
89
101
121
113
96
108
88
100
120
112
95
107
87
99
119
111
94
106
86
74
75
76
77
78
79
80
81
82
83
84
85
86
98
118
110
93
105
85
73
85
97
117
109
92
104
84
72
84
96
116
108
91
103
83
71
83
95
115
107
90
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
106
89
93
81
69
81
93
107
105
88
92
80
68
80
92
108
104
87
91
79
67
79
91
107
103
86
90
78
66
78
90
106
102
85
89
77
65
77
89
105
101
84
88
76
64
76
88
104
100
83
87
75
63
75
87
103
99
82
86
74
62
74
86
102
98
81
85
73
61
73
85
101
97
80
84
72
60
72
84
100
96
79
83
71
59
71
83
99
95
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
69
57
69
85
68
56
68
84
67
55
67
83
66
54
66
82
65
53
65
81
64
52
64
80
63
51
63
79
62
50
62
78
61
49
61
77
60
48
60
76
59
47
59
75
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
59
45
33
49
61
75
60
44
32
48
60
76
61
43
31
47
59
77
62
42
30
46
58
78
63
41
29
45
57
79
64
40
28
44
56
80
65
39
27
43
55
81
78
77
76
75
74
73
72
71
70
69
68
67
66
38
26
42
54
82
83
84
85
86
86
85
84
83
82
81
80
79
37
25
41
53
36
24
40
52
35
23
39
51
34
22
38
50
33
21
37
49
32
31
30
29
28
27
26
25
24
23
22
21
20
36
37
38
39
40
41
42
43
44
45
46
47
48
33
19
35
49
34
18
34
50
35
17
33
51
36
16
32
52
37
15
31
53
38
14
30
54
77
76
75
74
73
72
71
70
69
68
67
66
65
39
13
29
55
77
78
79
80
81
82
83
83
82
81
80
79
78
64
40
12
28
56
76
63
41
11
27
57
75
62
42
10
9
8
7
6
5
4
3
2
1
0
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
106
118
98
110
130
120
105
117
97
109
129
119
104
116
96
108
128
118
103
115
95
107
127
117
102
114
94
106
126
116
101
113
93
105
125
115
100
112
92
104
124
114
99
111
91
103
123
113
98
110
90
102
122
112
97
109
89
101
121
111
96
108
88
100
120
110
95
107
87
75
76
77
78
79
80
81
82
83
84
85
86
87
99
119
109
94
106
86
74
86
98
118
108
93
105
85
73
85
97
117
107
92
104
84
72
84
96
116
106
91
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
105
90
94
82
70
82
94
108
104
89
93
81
69
81
93
107
103
88
92
80
68
80
92
106
102
87
91
79
67
79
91
105
101
86
90
78
66
78
90
104
100
85
89
77
65
77
89
103
99
84
88
76
64
76
88
102
98
83
87
75
63
75
87
101
97
82
86
74
62
74
86
100
96
81
85
73
61
73
85
99
95
80
84
72
60
72
84
98
94
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
70
58
70
84
69
57
69
83
68
56
68
82
67
55
67
81
66
54
66
80
65
53
65
79
64
52
64
78
63
51
63
77
62
50
62
76
61
49
61
75
60
48
60
74
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
60
46
34
48
60
74
61
45
33
47
59
75
62
44
32
46
58
76
63
43
31
45
57
77
64
42
30
44
56
78
65
41
29
43
55
79
66
40
28
42
54
80
79
78
77
76
75
74
73
72
71
70
69
68
67
39
27
41
53
81
82
83
84
85
86
86
85
84
83
82
81
80
38
26
40
52
37
25
39
51
36
24
38
50
35
23
37
49
34
22
36
48
33
32
31
30
29
28
27
26
25
24
23
22
21
35
36
37
38
39
40
41
42
43
44
45
46
47
34
20
34
48
35
19
33
49
36
18
32
50
37
17
31
51
38
16
30
52
39
15
29
53
76
75
74
73
72
71
70
69
68
67
66
65
64
40
14
28
54
76
77
78
79
80
81
82
82
81
80
79
78
77
63
41
13
27
55
75
62
42
12
26
56
74
61
43
11
10
9
8
7
6
5
4
3
2
1
0
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
107
119
99
111
131
119
106
118
98
110
130
118
105
117
97
109
129
117
104
116
96
108
128
116
103
115
95
107
127
115
102
114
94
106
126
114
101
113
93
105
125
113
100
112
92
104
124
112
99
111
91
103
123
111
98
110
90
102
122
110
97
109
89
101
121
109
96
108
88
76
77
78
79
80
81
82
83
84
85
86
87
88
100
120
108
95
107
87
75
87
99
119
107
94
106
86
74
86
98
118
106
93
105
85
73
85
97
117
105
92
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
104
91
95
83
71
83
95
107
103
90
94
82
70
82
94
106
102
89
93
81
69
81
93
105
101
88
92
80
68
80
92
104
100
87
91
79
67
79
91
103
99
86
90
78
66
78
90
102
98
85
89
77
65
77
89
101
97
84
88
76
64
76
88
100
96
83
87
75
63
75
87
99
95
82
86
74
62
74
86
98
94
81
85
73
61
73
85
97
93
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
71
59
71
83
70
58
70
82
69
57
69
81
68
56
68
80
67
55
67
79
66
54
66
78
65
53
65
77
64
52
64
76
63
51
63
75
62
50
62
74
61
49
61
73
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
61
47
35
47
59
73
62
46
34
46
58
74
63
45
33
45
57
75
64
44
32
44
56
76
65
43
31
43
55
77
66
42
30
42
54
78
67
41
29
41
53
79
80
79
78
77
76
75
74
73
72
71
70
69
68
40
28
40
52
80
81
82
83
84
85
86
86
85
84
83
82
81
39
27
39
51
38
26
38
50
37
25
37
49
36
24
36
48
35
23
35
47
34
33
32
31
30
29
28
27
26
25
24
23
22
34
35
36
37
38
39
40
41
42
43
44
45
46
35
21
33
47
36
20
32
48
37
19
31
49
38
18
30
50
39
17
29
51
40
16
28
52
75
74
73
72
71
70
69
68
67
66
65
64
63
41
15
27
53
75
76
77
78
79
80
81
81
80
79
78
77
76
62
42
14
26
54
74
61
43
13
25
55
73
60
44
12
11
10
9
8
7
6
5
4
3
2
1
0
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
108
120
100
110
130
118
107
119
99
109
129
117
106
118
98
108
128
116
105
117
97
107
127
115
104
116
96
106
126
114
103
115
95
105
125
113
102
114
94
104
124
112
101
113
93
103
123
111
100
112
92
102
122
110
99
111
91
101
121
109
98
110
90
100
120
108
97
109
89
77
78
79
80
81
82
83
84
85
86
87
88
87
99
119
107
96
108
88
76
86
98
118
106
95
107
87
75
85
97
117
105
94
106
86
74
84
96
116
104
93
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
103
92
96
84
72
82
94
106
102
91
95
83
71
81
93
105
101
90
94
82
70
80
92
104
100
89
93
81
69
79
91
103
99
88
92
80
68
78
90
102
98
87
91
79
67
77
89
101
97
86
90
78
66
76
88
100
96
85
89
77
65
75
87
99
95
84
88
76
64
74
86
98
94
83
87
75
63
73
85
97
93
82
86
74
62
72
84
96
92
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
73
72
71
70
69
68
67
66
65
64
63
62
61
71
72
73
74
75
76
77
78
79
80
81
82
83
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
72
60
70
82
71
59
69
81
70
58
68
80
69
57
67
79
68
56
66
78
67
55
65
77
66
54
64
76
65
53
63
75
64
52
62
74
63
51
61
73
62
50
60
72
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
62
48
36
46
58
72
63
47
35
45
57
73
64
46
34
44
56
74
65
45
33
43
55
75
66
44
32
42
54
76
67
43
31
41
53
77
68
42
30
40
52
78
81
80
79
78
77
76
75
74
73
72
71
70
69
41
29
39
51
79
80
81
82
83
84
85
86
86
85
84
83
82
40
28
38
50
39
27
37
49
38
26
36
48
37
25
35
47
36
24
34
46
35
34
33
32
31
30
29
28
27
26
25
24
23
33
34
35
36
37
38
39
40
41
42
43
44
45
36
22
32
46
37
21
31
47
38
20
30
48
39
19
29
49
40
18
28
50
41
17
27
51
76
75
74
73
72
71
70
69
68
67
66
65
64
42
16
26
52
74
75
76
77
78
79
80
81
81
80
79
78
77
63
43
15
25
53
73
62
44
14
24
54
72
61
45
13
12
11
10
9
8
7
6
5
4
3
2
1
0
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
109
121
101
109
129
117
108
120
100
108
128
116
107
119
99
107
127
115
106
118
98
106
126
114
105
117
97
105
125
113
104
116
96
104
124
112
103
115
95
103
123
111
102
114
94
102
122
110
101
113
93
101
121
109
100
112
92
100
120
108
99
111
91
99
119
107
98
110
90
78
79
80
81
82
83
84
85
86
87
88
87
86
98
118
106
97
109
89
77
85
97
117
105
96
108
88
76
84
96
116
104
95
107
87
75
83
95
115
103
94
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
102
93
97
85
73
81
93
105
101
92
96
84
72
80
92
104
100
91
95
83
71
79
91
103
99
90
94
82
70
78
90
102
98
89
93
81
69
77
89
101
97
88
92
80
68
76
88
100
96
87
91
79
67
75
87
99
95
86
90
78
66
74
86
98
94
85
89
77
65
73
85
97
93
84
88
76
64
72
84
96
92
83
87
75
63
71
83
95
91
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
74
73
72
71
70
69
68
67
66
65
64
63
62
70
71
72
73
74
75
76
77
78
79
80
81
82
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
73
61
69
81
72
60
68
80
71
59
67
79
70
58
66
78
69
57
65
77
68
56
64
76
67
55
63
75
66
54
62
74
65
53
61
73
64
52
60
72
63
51
59
71
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
63
49
37
45
57
71
64
48
36
44
56
72
65
47
35
43
55
73
66
46
34
42
54
74
67
45
33
41
53
75
68
44
32
40
52
76
69
43
31
39
51
77
82
81
80
79
78
77
76
75
74
73
72
71
70
42
30
38
50
78
79
80
81
82
83
84
85
86
86
85
84
83
41
29
37
49
40
28
36
48
39
27
35
47
38
26
34
46
37
25
33
45
36
35
34
33
32
31
30
29
28
27
26
25
24
32
33
34
35
36
37
38
39
40
41
42
43
44
37
23
31
45
38
22
30
46
39
21
29
47
40
20
28
48
41
19
27
49
42
18
26
50
77
76
75
74
73
72
71
70
69
68
67
66
65
43
17
25
51
73
74
75
76
77
78
79
80
81
81
80
79
78
64
44
16
24
52
72
63
45
15
23
53
71
62
46
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
110
122
102
108
128
116
109
121
101
107
127
115
108
120
100
106
126
114
107
119
99
105
125
113
106
118
98
104
124
112
105
117
97
103
123
111
104
116
96
102
122
110
103
115
95
101
121
109
102
114
94
100
120
108
101
113
93
99
119
107
100
112
92
98
118
106
99
111
91
79
80
81
82
83
84
85
86
87
88
87
86
85
97
117
105
98
110
90
78
84
96
116
104
97
109
89
77
83
95
115
103
96
108
88
76
82
94
114
102
95
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
101
94
98
86
74
80
92
104
100
93
97
85
73
79
91
103
99
92
96
84
72
78
90
102
98
91
95
83
71
77
89
101
97
90
94
82
70
76
88
100
96
89
93
81
69
75
87
99
95
88
92
80
68
74
86
98
94
87
91
79
67
73
85
97
93
86
90
78
66
72
84
96
92
85
89
77
65
71
83
95
91
84
88
76
64
70
82
94
90
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
75
74
73
72
71
70
69
68
67
66
65
64
63
69
70
71
72
73
74
75
76
77
78
79
80
81
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
74
62
68
80
73
61
67
79
72
60
66
78
71
59
65
77
70
58
64
76
69
57
63
75
68
56
62
74
67
55
61
73
66
54
60
72
65
53
59
71
64
52
58
70
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
64
50
38
44
56
70
65
49
37
43
55
71
66
48
36
42
54
72
67
47
35
41
53
73
68
46
34
40
52
74
69
45
33
39
51
75
70
44
32
38
50
76
83
82
81
80
79
78
77
76
75
74
73
72
71
43
31
37
49
77
78
79
80
81
82
83
84
85
86
86
85
84
42
30
36
48
41
29
35
47
40
28
34
46
39
27
33
45
38
26
32
44
37
36
35
34
33
32
31
30
29
28
27
26
25
31
32
33
34
35
36
37
38
39
40
41
42
43
38
24
30
44
39
23
29
45
40
22
28
46
41
21
27
47
42
20
26
48
43
19
25
49
78
77
76
75
74
73
72
71
70
69
68
67
66
44
18
24
50
72
73
74
75
76
77
78
79
80
81
81
80
79
65
45
17
23
51
71
64
46
16
22
52
70
63
47
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
111
123
103
107
127
115
110
122
102
106
126
114
109
121
101
105
125
113
108
120
100
104
124
112
107
119
99
103
123
111
106
118
98
102
122
110
105
117
97
101
121
109
104
116
96
100
120
108
103
115
95
99
119
107
102
114
94
98
118
106
101
113
93
97
117
105
100
112
92
80
81
82
83
84
85
86
87
88
87
86
85
84
96
116
104
99
111
91
79
83
95
115
103
98
110
90
78
82
94
114
102
97
109
89
77
81
93
113
101
96
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
100
95
99
87
75
79
91
103
99
94
98
86
74
78
90
102
98
93
97
85
73
77
89
101
97
92
96
84
72
76
88
100
96
91
95
83
71
75
87
99
95
90
94
82
70
74
86
98
94
89
93
81
69
73
85
97
93
88
92
80
68
72
84
96
92
87
91
79
67
71
83
95
91
86
90
78
66
70
82
94
90
85
89
77
65
69
81
93
89
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
76
75
74
73
72
71
70
69
68
67
66
65
64
68
69
70
71
72
73
74
75
76
77
78
79
80
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
75
63
67
79
74
62
66
78
73
61
65
77
72
60
64
76
71
59
63
75
70
58
62
74
69
57
61
73
68
56
60
72
67
55
59
71
66
54
58
70
65
53
57
69
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
65
51
39
43
55
69
66
50
38
42
54
70
67
49
37
41
53
71
68
48
36
40
52
72
69
47
35
39
51
73
70
46
34
38
50
74
71
45
33
37
49
75
84
83
82
81
80
79
78
77
76
75
74
73
72
44
32
36
48
76
77
78
79
80
81
82
83
84
85
86
86
85
43
31
35
47
42
30
34
46
41
29
33
45
40
28
32
44
39
27
31
43
38
37
36
35
34
33
32
31
30
29
28
27
26
30
31
32
33
34
35
36
37
38
39
40
41
42
39
25
29
43
40
24
28
44
41
23
27
45
42
22
26
46
43
21
25
47
44
20
24
48
79
78
77
76
75
74
73
72
71
70
69
68
67
45
19
23
49
71
72
73
74
75
76
77
78
79
80
81
81
80
66
46
18
22
50
70
65
47
17
21
51
69
64
48
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
112
124
104
106
126
114
111
123
103
105
125
113
110
122
102
104
124
112
109
121
101
103
123
111
108
120
100
102
122
110
107
119
99
101
121
109
106
118
98
100
120
108
105
117
97
99
119
107
104
116
96
98
118
106
103
115
95
97
117
105
102
114
94
96
116
104
101
113
93
81
82
83
84
85
86
87
88
87
86
85
84
83
95
115
103
100
112
92
80
82
94
114
102
99
111
91
79
81
93
113
101
98
110
90
78
80
92
112
100
97
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
99
96
100
88
76
78
90
102
98
95
99
87
75
77
89
101
97
94
98
86
74
76
88
100
96
93
97
85
73
75
87
99
95
92
96
84
72
74
86
98
94
91
95
83
71
73
85
97
93
90
94
82
70
72
84
96
92
89
93
81
69
71
83
95
91
88
92
80
68
70
82
94
90
87
91
79
67
69
81
93
89
86
90
78
66
68
80
92
88
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
77
76
75
74
73
72
71
70
69
68
67
66
65
67
68
69
70
71
72
73
74
75
76
77
78
79
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
76
64
66
78
75
63
65
77
74
62
64
76
73
61
63
75
72
60
62
74
71
59
61
73
70
58
60
72
69
57
59
71
68
56
58
70
67
55
57
69
66
54
56
68
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
66
52
40
42
54
68
67
51
39
41
53
69
68
50
38
40
52
70
69
49
37
39
51
71
70
48
36
38
50
72
71
47
35
37
49
73
72
46
34
36
48
74
85
84
83
82
81
80
79
78
77
76
75
74
73
45
33
35
47
75
76
77
78
79
80
81
82
83
84
85
86
86
44
32
34
46
43
31
33
45
42
30
32
44
41
29
31
43
40
28
30
42
39
38
37
36
35
34
33
32
31
30
29
28
27
29
30
31
32
33
34
35
36
37
38
39
40
41
40
26
28
42
41
25
27
43
42
24
26
44
43
23
25
45
44
22
24
46
45
21
23
47
80
79
78
77
76
75
74
73
72
71
70
69
68
46
20
22
48
70
71
72
73
74
75
76
77
78
79
80
81
81
67
47
19
21
49
69
66
48
18
20
50
68
65
49
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
125
105
105
125
113
112
124
104
104
124
112
111
123
103
103
123
111
110
122
102
102
122
110
109
121
101
101
121
109
108
120
100
100
120
108
107
119
99
99
119
107
106
118
98
98
118
106
105
117
97
97
117
105
104
116
96
96
116
104
103
115
95
95
115
103
102
114
94
82
83
84
85
86
87
88
87
86
85
84
83
82
94
114
102
101
113
93
81
81
93
113
101
100
112
92
80
80
92
112
100
99
111
91
79
79
91
111
99
98
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
98
97
101
89
77
77
89
101
97
96
100
88
76
76
88
100
96
95
99
87
75
75
87
99
95
94
98
86
74
74
86
98
94
93
97
85
73
73
85
97
93
92
96
84
72
72
84
96
92
91
95
83
71
71
83
95
91
90
94
82
70
70
82
94
90
89
93
81
69
69
81
93
89
88
92
80
68
68
80
92
88
87
91
79
67
67
79
91
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
78
77
76
75
74
73
72
71
70
69
68
67
66
66
67
68
69
70
71
72
73
74
75
76
77
78
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
77
65
65
77
76
64
64
76
75
63
63
75
74
62
62
74
73
61
61
73
72
60
60
72
71
59
59
71
70
58
58
70
69
57
57
69
68
56
56
68
67
55
55
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
53
41
41
53
67
68
52
40
40
52
68
69
51
39
39
51
69
70
50
38
38
50
70
71
49
37
37
49
71
72
48
36
36
48
72
73
47
35
35
47
73
86
85
84
83
82
81
80
79
78
77
76
75
74
46
34
34
46
74
75
76
77
78
79
80
81
82
83
84
85
86
45
33
33
45
44
32
32
44
43
31
31
43
42
30
30
42
41
29
29
41
40
39
38
37
36
35
34
33
32
31
30
29
28
28
29
30
31
32
33
34
35
36
37
38
39
40
41
27
27
41
42
26
26
42
43
25
25
43
44
24
24
44
45
23
23
45
46
22
22
46
81
80
79
78
77
76
75
74
73
72
71
70
69
47
21
21
47
69
70
71
72
73
74
75
76
77
78
79
80
81
68
48
20
20
48
68
67
49
19
19
49
67
66
50
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
114
126
106
104
124
112
113
125
105
103
123
111
112
124
104
102
122
110
111
123
103
101
121
109
110
122
102
100
120
108
109
121
101
99
119
107
108
120
100
98
118
106
107
119
99
97
117
105
106
118
98
96
116
104
105
117
97
95
115
103
104
116
96
94
114
102
103
115
95
83
84
85
86
87
88
87
86
85
84
83
82
81
93
113
101
102
114
94
82
80
92
112
100
101
113
93
81
79
91
111
99
100
112
92
80
78
90
110
98
99
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
97
98
102
90
78
76
88
100
96
97
101
89
77
75
87
99
95
96
100
88
76
74
86
98
94
95
99
87
75
73
85
97
93
94
98
86
74
72
84
96
92
93
97
85
73
71
83
95
91
92
96
84
72
70
82
94
90
91
95
83
71
69
81
93
89
90
94
82
70
68
80
92
88
89
93
81
69
67
79
91
87
88
92
80
68
66
78
90
86
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
79
78
77
76
75
74
73
72
71
70
69
68
67
65
66
67
68
69
70
71
72
73
74
75
76
77
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
78
66
64
76
77
65
63
75
76
64
62
74
75
63
61
73
74
62
60
72
73
61
59
71
72
60
58
70
71
59
57
69
70
58
56
68
69
57
55
67
68
56
54
66
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
68
54
42
40
52
66
69
53
41
39
51
67
70
52
40
38
50
68
71
51
39
37
49
69
72
50
38
36
48
70
73
49
37
35
47
71
74
48
36
34
46
72
86
86
85
84
83
82
81
80
79
78
77
76
75
47
35
33
45
73
74
75
76
77
78
79
80
81
82
83
84
85
46
34
32
44
45
33
31
43
44
32
30
42
43
31
29
41
42
30
28
40
41
40
39
38
37
36
35
34
33
32
31
30
29
27
28
29
30
31
32
33
34
35
36
37
38
39
42
28
26
40
43
27
25
41
44
26
24
42
45
25
23
43
46
24
22
44
47
23
21
45
81
81
80
79
78
77
76
75
74
73
72
71
70
48
22
20
46
68
69
70
71
72
73
74
75
76
77
78
79
80
69
49
21
19
47
67
68
50
20
18
48
66
67
51
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
115
127
107
103
123
111
114
126
106
102
122
110
113
125
105
101
121
109
112
124
104
100
120
108
111
123
103
99
119
107
110
122
102
98
118
106
109
121
101
97
117
105
108
120
100
96
116
104
107
119
99
95
115
103
106
118
98
94
114
102
105
117
97
93
113
101
104
116
96
84
85
86
87
88
87
86
85
84
83
82
81
80
92
112
100
103
115
95
83
79
91
111
99
102
114
94
82
78
90
110
98
101
113
93
81
77
89
109
97
100
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
96
99
103
91
79
75
87
99
95
98
102
90
78
74
86
98
94
97
101
89
77
73
85
97
93
96
100
88
76
72
84
96
92
95
99
87
75
71
83
95
91
94
98
86
74
70
82
94
90
93
97
85
73
69
81
93
89
92
96
84
72
68
80
92
88
91
95
83
71
67
79
91
87
90
94
82
70
66
78
90
86
89
93
81
69
65
77
89
85
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
80
79
78
77
76
75
74
73
72
71
70
69
68
64
65
66
67
68
69
70
71
72
73
74
75
76
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
79
67
63
75
78
66
62
74
77
65
61
73
76
64
60
72
75
63
59
71
74
62
58
70
73
61
57
69
72
60
56
68
71
59
55
67
70
58
54
66
69
57
53
65
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
69
55
43
39
51
65
70
54
42
38
50
66
71
53
41
37
49
67
72
52
40
36
48
68
73
51
39
35
47
69
74
50
38
34
46
70
75
49
37
33
45
71
85
86
86
85
84
83
82
81
80
79
78
77
76
48
36
32
44
72
73
74
75
76
77
78
79
80
81
82
83
84
47
35
31
43
46
34
30
42
45
33
29
41
44
32
28
40
43
31
27
39
42
41
40
39
38
37
36
35
34
33
32
31
30
26
27
28
29
30
31
32
33
34
35
36
37
38
43
29
25
39
44
28
24
40
45
27
23
41
46
26
22
42
47
25
21
43
48
24
20
44
80
81
81
80
79
78
77
76
75
74
73
72
71
49
23
19
45
67
68
69
70
71
72
73
74
75
76
77
78
79
70
50
22
18
46
66
69
51
21
17
47
65
68
52
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
116
128
108
102
122
110
115
127
107
101
121
109
114
126
106
100
120
108
113
125
105
99
119
107
112
124
104
98
118
106
111
123
103
97
117
105
110
122
102
96
116
104
109
121
101
95
115
103
108
120
100
94
114
102
107
119
99
93
113
101
106
118
98
92
112
100
105
117
97
85
86
87
88
87
86
85
84
83
82
81
80
79
91
111
99
104
116
96
84
78
90
110
98
103
115
95
83
77
89
109
97
102
114
94
82
76
88
108
96
101
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
95
100
104
92
80
74
86
98
94
99
103
91
79
73
85
97
93
98
102
90
78
72
84
96
92
97
101
89
77
71
83
95
91
96
100
88
76
70
82
94
90
95
99
87
75
69
81
93
89
94
98
86
74
68
80
92
88
93
97
85
73
67
79
91
87
92
96
84
72
66
78
90
86
91
95
83
71
65
77
89
85
90
94
82
70
64
76
88
84
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
81
80
79
78
77
76
75
74
73
72
71
70
69
63
64
65
66
67
68
69
70
71
72
73
74
75
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
80
68
62
74
79
67
61
73
78
66
60
72
77
65
59
71
76
64
58
70
75
63
57
69
74
62
56
68
73
61
55
67
72
60
54
66
71
59
53
65
70
58
52
64
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
70
56
44
38
50
64
71
55
43
37
49
65
72
54
42
36
48
66
73
53
41
35
47
67
74
52
40
34
46
68
75
51
39
33
45
69
76
50
38
32
44
70
84
85
86
86
85
84
83
82
81
80
79
78
77
49
37
31
43
71
72
73
74
75
76
77
78
79
80
81
82
83
48
36
30
42
47
35
29
41
46
34
28
40
45
33
27
39
44
32
26
38
43
42
41
40
39
38
37
36
35
34
33
32
31
25
26
27
28
29
30
31
32
33
34
35
36
37
44
30
24
38
45
29
23
39
46
28
22
40
47
27
21
41
48
26
20
42
49
25
19
43
79
80
81
81
80
79
78
77
76
75
74
73
72
50
24
18
44
66
67
68
69
70
71
72
73
74
75
76
77
78
71
51
23
17
45
65
70
52
22
16
46
64
69
53
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
117
129
109
101
121
109
116
128
108
100
120
108
115
127
107
99
119
107
114
126
106
98
118
106
113
125
105
97
117
105
112
124
104
96
116
104
111
123
103
95
115
103
110
122
102
94
114
102
109
121
101
93
113
101
108
120
100
92
112
100
107
119
99
91
111
99
106
118
98
86
87
88
87
86
85
84
83
82
81
80
79
78
90
110
98
105
117
97
85
77
89
109
97
104
116
96
84
76
88
108
96
103
115
95
83
75
87
107
95
102
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
94
101
105
93
81
73
85
97
93
100
104
92
80
72
84
96
92
99
103
91
79
71
83
95
91
98
102
90
78
70
82
94
90
97
101
89
77
69
81
93
89
96
100
88
76
68
80
92
88
95
99
87
75
67
79
91
87
94
98
86
74
66
78
90
86
93
97
85
73
65
77
89
85
92
96
84
72
64
76
88
84
91
95
83
71
63
75
87
83
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
82
81
80
79
78
77
76
75
74
73
72
71
70
62
63
64
65
66
67
68
69
70
71
72
73
74
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
81
69
61
73
80
68
60
72
79
67
59
71
78
66
58
70
77
65
57
69
76
64
56
68
75
63
55
67
74
62
54
66
73
61
53
65
72
60
52
64
71
59
51
63
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
71
57
45
37
49
63
72
56
44
36
48
64
73
55
43
35
47
65
74
54
42
34
46
66
75
53
41
33
45
67
76
52
40
32
44
68
77
51
39
31
43
69
83
84
85
86
86
85
84
83
82
81
80
79
78
50
38
30
42
70
71
72
73
74
75
76
77
78
79
80
81
82
49
37
29
41
48
36
28
40
47
35
27
39
46
34
26
38
45
33
25
37
44
43
42
41
40
39
38
37
36
35
34
33
32
24
25
26
27
28
29
30
31
32
33
34
35
36
45
31
23
37
46
30
22
38
47
29
21
39
48
28
20
40
49
27
19
41
50
26
18
42
78
79
80
81
81
80
79
78
77
76
75
74
73
51
25
17
43
65
66
67
68
69
70
71
72
73
74
75
76
77
72
52
24
16
44
64
71
53
23
15
45
63
70
54
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
118
130
110
100
120
108
117
129
109
99
119
107
116
128
108
98
118
106
115
127
107
97
117
105
114
126
106
96
116
104
113
125
105
95
115
103
112
124
104
94
114
102
111
123
103
93
113
101
110
122
102
92
112
100
109
121
101
91
111
99
108
120
100
90
110
98
107
119
99
87
88
87
86
85
84
83
82
81
80
79
78
77
89
109
97
106
118
98
86
76
88
108
96
105
117
97
85
75
87
107
95
104
116
96
84
74
86
106
94
103
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
93
102
106
94
82
72
84
96
92
101
105
93
81
71
83
95
91
100
104
92
80
70
82
94
90
99
103
91
79
69
81
93
89
98
102
90
78
68
80
92
88
97
101
89
77
67
79
91
87
96
100
88
76
66
78
90
86
95
99
87
75
65
77
89
85
94
98
86
74
64
76
88
84
93
97
85
73
63
75
87
83
92
96
84
72
62
74
86
82
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
83
82
81
80
79
78
77
76
75
74
73
72
71
61
62
63
64
65
66
67
68
69
70
71
72
73
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
70
60
72
81
69
59
71
80
68
58
70
79
67
57
69
78
66
56
68
77
65
55
67
76
64
54
66
75
63
53
65
74
62
52
64
73
61
51
63
72
60
50
62
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
72
58
46
36
48
62
73
57
45
35
47
63
74
56
44
34
46
64
75
55
43
33
45
65
76
54
42
32
44
66
77
53
41
31
43
67
78
52
40
30
42
68
82
83
84
85
86
86
85
84
83
82
81
80
79
51
39
29
41
69
70
71
72
73
74
75
76
77
78
79
80
81
50
38
28
40
49
37
27
39
48
36
26
38
47
35
25
37
46
34
24
36
45
44
43
42
41
40
39
38
37
36
35
34
33
23
24
25
26
27
28
29
30
31
32
33
34
35
46
32
22
36
47
31
21
37
48
30
20
38
49
29
19
39
50
28
18
40
51
27
17
41
77
78
79
80
81
81
80
79
78
77
76
75
74
52
26
16
42
64
65
66
67
68
69
70
71
72
73
74
75
76
73
53
25
15
43
63
72
54
24
14
44
62
71
55
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
119
131
111
99
119
107
118
130
110
98
118
106
117
129
109
97
117
105
116
128
108
96
116
104
115
127
107
95
115
103
114
126
106
94
114
102
113
125
105
93
113
101
112
124
104
92
112
100
111
123
103
91
111
99
110
122
102
90
110
98
109
121
101
89
109
97
108
120
100
88
87
86
85
84
83
82
81
80
79
78
77
76
88
108
96
107
119
99
87
75
87
107
95
106
118
98
86
74
86
106
94
105
117
97
85
73
85
105
93
104
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
92
103
107
95
83
71
83
95
91
102
106
94
82
70
82
94
90
101
105
93
81
69
81
93
89
100
104
92
80
68
80
92
88
99
103
91
79
67
79
91
87
98
102
90
78
66
78
90
86
97
101
89
77
65
77
89
85
96
100
88
76
64
76
88
84
95
99
87
75
63
75
87
83
94
98
86
74
62
74
86
82
93
97
85
73
61
73
85
81
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
83
71
59
71
82
70
58
70
81
69
57
69
80
68
56
68
79
67
55
67
78
66
54
66
77
65
53
65
76
64
52
64
75
63
51
63
74
62
50
62
73
61
49
61
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
73
59
47
35
47
61
74
58
46
34
46
62
75
57
45
33
45
63
76
56
44
32
44
64
77
55
43
31
43
65
78
54
42
30
42
66
79
53
41
29
41
67
81
82
83
84
85
86
86
85
84
83
82
81
80
52
40
28
40
68
69
70
71
72
73
74
75
76
77
78
79
80
51
39
27
39
50
38
26
38
49
37
25
37
48
36
24
36
47
35
23
35
46
45
44
43
42
41
40
39
38
37
36
35
34
22
23
24
25
26
27
28
29
30
31
32
33
34
47
33
21
35
48
32
20
36
49
31
19
37
50
30
18
38
51
29
17
39
52
28
16
40
76
77
78
79
80
81
81
80
79
78
77
76
75
53
27
15
41
63
64
65
66
67
68
69
70
71
72
73
74
75
74
54
26
14
42
62
73
55
25
13
43
61
72
56
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
120
130
110
98
118
106
119
129
109
97
117
105
118
128
108
96
116
104
117
127
107
95
115
103
116
126
106
94
114
102
115
125
105
93
113
101
114
124
104
92
112
100
113
123
103
91
111
99
112
122
102
90
110
98
111
121
101
89
109
97
110
120
100
88
108
96
109
119
99
87
86
85
84
83
82
81
80
79
78
77
76
75
87
107
95
108
118
98
86
74
86
106
94
107
117
97
85
73
85
105
93
106
116
96
84
72
84
104
92
105
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
91
104
108
94
82
70
82
94
90
103
107
93
81
69
81
93
89
102
106
92
80
68
80
92
88
101
105
91
79
67
79
91
87
100
104
90
78
66
78
90
86
99
103
89
77
65
77
89
85
98
102
88
76
64
76
88
84
97
101
87
75
63
75
87
83
96
100
86
74
62
74
86
82
95
99
85
73
61
73
85
81
94
98
84
72
60
72
84
80
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
84
70
58
70
83
69
57
69
82
68
56
68
81
67
55
67
80
66
54
66
79
65
53
65
78
64
52
64
77
63
51
63
76
62
50
62
75
61
49
61
74
60
48
60
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
74
60
48
34
46
60
75
59
47
33
45
61
76
58
46
32
44
62
77
57
45
31
43
63
78
56
44
30
42
64
79
55
43
29
41
65
80
54
42
28
40
66
80
81
82
83
84
85
86
86
85
84
83
82
81
53
41
27
39
67
68
69
70
71
72
73
74
75
76
77
78
79
52
40
26
38
51
39
25
37
50
38
24
36
49
37
23
35
48
36
22
34
47
46
45
44
43
42
41
40
39
38
37
36
35
21
22
23
24
25
26
27
28
29
30
31
32
33
48
34
20
34
49
33
19
35
50
32
18
36
51
31
17
37
52
30
16
38
53
29
15
39
77
78
79
80
81
82
82
81
80
79
78
77
76
54
28
14
40
64
65
66
67
68
69
70
71
72
73
74
75
76
75
55
27
13
41
63
74
56
26
12
42
62
73
57
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
121
129
109
97
117
105
120
128
108
96
116
104
119
127
107
95
115
103
118
126
106
94
114
102
117
125
105
93
113
101
116
124
104
92
112
100
115
123
103
91
111
99
114
122
102
90
110
98
113
121
101
89
109
97
112
120
100
88
108
96
111
119
99
87
107
95
110
118
98
86
85
84
83
82
81
80
79
78
77
76
75
74
86
106
94
109
117
97
85
73
85
105
93
108
116
96
84
72
84
104
92
107
115
95
83
71
83
103
91
106
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
90
105
107
93
81
69
81
93
89
104
108
92
80
68
80
92
88
103
107
91
79
67
79
91
87
102
106
90
78
66
78
90
86
101
105
89
77
65
77
89
85
100
104
88
76
64
76
88
84
99
103
87
75
63
75
87
83
98
102
86
74
62
74
86
82
97
101
85
73
61
73
85
81
96
100
84
72
60
72
84
80
95
99
83
71
59
71
83
79
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
85
69
57
69
84
68
56
68
83
67
55
67
82
66
54
66
81
65
53
65
80
64
52
64
79
63
51
63
78
62
50
62
77
61
49
61
76
60
48
60
75
59
47
59
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
75
61
49
33
45
59
76
60
48
32
44
60
77
59
47
31
43
61
78
58
46
30
42
62
79
57
45
29
41
63
80
56
44
28
40
64
81
55
43
27
39
65
79
80
81
82
83
84
85
86
86
85
84
83
82
54
42
26
38
66
67
68
69
70
71
72
73
74
75
76
77
78
53
41
25
37
52
40
24
36
51
39
23
35
50
38
22
34
49
37
21
33
48
47
46
45
44
43
42
41
40
39
38
37
36
20
21
22
23
24
25
26
27
28
29
30
31
32
49
35
19
33
50
34
18
34
51
33
17
35
52
32
16
36
53
31
15
37
54
30
14
38
78
79
80
81
82
83
83
82
81
80
79
78
77
55
29
13
39
65
66
67
68
69
70
71
72
73
74
75
76
77
76
56
28
12
40
64
75
57
27
11
41
63
74
58
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
122
128
108
96
116
104
121
127
107
95
115
103
120
126
106
94
114
102
119
125
105
93
113
101
118
124
104
92
112
100
117
123
103
91
111
99
116
122
102
90
110
98
115
121
101
89
109
97
114
120
100
88
108
96
113
119
99
87
107
95
112
118
98
86
106
94
111
117
97
85
84
83
82
81
80
79
78
77
76
75
74
73
85
105
93
110
116
96
84
72
84
104
92
109
115
95
83
71
83
103
91
108
114
94
82
70
82
102
90
107
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
89
106
106
92
80
68
80
92
88
105
107
91
79
67
79
91
87
104
108
90
78
66
78
90
86
103
107
89
77
65
77
89
85
102
106
88
76
64
76
88
84
101
105
87
75
63
75
87
83
100
104
86
74
62
74
86
82
99
103
85
73
61
73
85
81
98
102
84
72
60
72
84
80
97
101
83
71
59
71
83
79
96
100
82
70
58
70
82
78
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
86
68
56
68
85
67
55
67
84
66
54
66
83
65
53
65
82
64
52
64
81
63
51
63
80
62
50
62
79
61
49
61
78
60
48
60
77
59
47
59
76
58
46
58
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
76
62
50
32
44
58
77
61
49
31
43
59
78
60
48
30
42
60
79
59
47
29
41
61
80
58
46
28
40
62
81
57
45
27
39
63
82
56
44
26
38
64
78
79
80
81
82
83
84
85
86
86
85
84
83
55
43
25
37
65
66
67
68
69
70
71
72
73
74
75
76
77
54
42
24
36
53
41
23
35
52
40
22
34
51
39
21
33
50
38
20
32
49
48
47
46
45
44
43
42
41
40
39
38
37
19
20
21
22
23
24
25
26
27
28
29
30
31
50
36
18
32
51
35
17
33
52
34
16
34
53
33
15
35
54
32
14
36
55
31
13
37
77
78
79
80
81
82
83
83
82
81
80
79
78
56
30
12
38
64
65
66
67
68
69
70
71
72
73
74
75
76
77
57
29
11
39
63
76
58
28
10
40
62
75
59
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
123
127
107
95
115
103
122
126
106
94
114
102
121
125
105
93
113
101
120
124
104
92
112
100
119
123
103
91
111
99
118
122
102
90
110
98
117
121
101
89
109
97
116
120
100
88
108
96
115
119
99
87
107
95
114
118
98
86
106
94
113
117
97
85
105
93
112
116
96
84
83
82
81
80
79
78
77
76
75
74
73
72
84
104
92
111
115
95
83
71
83
103
91
110
114
94
82
70
82
102
90
109
113
93
81
69
81
101
89
108
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
88
107
105
91
79
67
79
91
87
106
106
90
78
66
78
90
86
105
107
89
77
65
77
89
85
104
108
88
76
64
76
88
84
103
107
87
75
63
75
87
83
102
106
86
74
62
74
86
82
101
105
85
73
61
73
85
81
100
104
84
72
60
72
84
80
99
103
83
71
59
71
83
79
98
102
82
70
58
70
82
78
97
101
81
69
57
69
81
77
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
87
67
55
67
86
66
54
66
85
65
53
65
84
64
52
64
83
63
51
63
82
62
50
62
81
61
49
61
80
60
48
60
79
59
47
59
78
58
46
58
77
57
45
57
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
77
63
51
31
43
57
78
62
50
30
42
58
79
61
49
29
41
59
80
60
48
28
40
60
81
59
47
27
39
61
82
58
46
26
38
62
83
57
45
25
37
63
77
78
79
80
81
82
83
84
85
86
86
85
84
56
44
24
36
64
65
66
67
68
69
70
71
72
73
74
75
76
55
43
23
35
54
42
22
34
53
41
21
33
52
40
20
32
51
39
19
31
50
49
48
47
46
45
44
43
42
41
40
39
38
18
19
20
21
22
23
24
25
26
27
28
29
30
51
37
17
31
52
36
16
32
53
35
15
33
54
34
14
34
55
33
13
35
56
32
12
36
76
77
78
79
80
81
82
83
83
82
81
80
79
57
31
11
37
63
64
65
66
67
68
69
70
71
72
73
74
75
78
58
30
10
38
62
77
59
29
9
39
61
76
60
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
124
126
106
94
114
102
123
125
105
93
113
101
122
124
104
92
112
100
121
123
103
91
111
99
120
122
102
90
110
98
119
121
101
89
109
97
118
120
100
88
108
96
117
119
99
87
107
95
116
118
98
86
106
94
115
117
97
85
105
93
114
116
96
84
104
92
113
115
95
83
82
81
80
79
78
77
76
75
74
73
72
71
83
103
91
112
114
94
82
70
82
102
90
111
113
93
81
69
81
101
89
110
112
92
80
68
80
100
88
109
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
87
108
104
90
78
66
78
90
86
107
105
89
77
65
77
89
85
106
106
88
76
64
76
88
84
105
107
87
75
63
75
87
83
104
108
86
74
62
74
86
82
103
107
85
73
61
73
85
81
102
106
84
72
60
72
84
80
101
105
83
71
59
71
83
79
100
104
82
70
58
70
82
78
99
103
81
69
57
69
81
77
98
102
80
68
56
68
80
76
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
88
66
54
66
87
65
53
65
86
64
52
64
85
63
51
63
84
62
50
62
83
61
49
61
82
60
48
60
81
59
47
59
80
58
46
58
79
57
45
57
78
56
44
56
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
78
64
52
30
42
56
79
63
51
29
41
57
80
62
50
28
40
58
81
61
49
27
39
59
82
60
48
26
38
60
83
59
47
25
37
61
84
58
46
24
36
62
76
77
78
79
80
81
82
83
84
85
86
86
85
57
45
23
35
63
64
65
66
67
68
69
70
71
72
73
74
75
56
44
22
34
55
43
21
33
54
42
20
32
53
41
19
31
52
40
18
30
51
50
49
48
47
46
45
44
43
42
41
40
39
17
18
19
20
21
22
23
24
25
26
27
28
29
52
38
16
30
53
37
15
31
54
36
14
32
55
35
13
33
56
34
12
34
57
33
11
35
75
76
77
78
79
80
81
82
83
83
82
81
80
58
32
10
36
62
63
64
65
66
67
68
69
70
71
72
73
74
79
59
31
9
37
61
78
60
30
8
38
60
77
61
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
125
125
105
93
113
101
124
124
104
92
112
100
123
123
103
91
111
99
122
122
102
90
110
98
121
121
101
89
109
97
120
120
100
88
108
96
119
119
99
87
107
95
118
118
98
86
106
94
117
117
97
85
105
93
116
116
96
84
104
92
115
115
95
83
103
91
114
114
94
82
81
80
79
78
77
76
75
74
73
72
71
70
82
102
90
113
113
93
81
69
81
101
89
112
112
92
80
68
80
100
88
111
111
91
79
67
79
99
87
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
86
109
103
89
77
65
77
89
85
108
104
88
76
64
76
88
84
107
105
87
75
63
75
87
83
106
106
86
74
62
74
86
82
105
107
85
73
61
73
85
81
104
108
84
72
60
72
84
80
103
107
83
71
59
71
83
79
102
106
82
70
58
70
82
78
101
105
81
69
57
69
81
77
100
104
80
68
56
68
80
76
99
103
79
67
55
67
79
75
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
89
65
53
65
88
64
52
64
87
63
51
63
86
62
50
62
85
61
49
61
84
60
48
60
83
59
47
59
82
58
46
58
81
57
45
57
80
56
44
56
79
55
43
55
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
79
65
53
29
41
55
80
64
52
28
40
56
81
63
51
27
39
57
82
62
50
26
38
58
83
61
49
25
37
59
84
60
48
24
36
60
85
59
47
23
35
61
75
76
77
78
79
80
81
82
83
84
85
86
86
58
46
22
34
62
63
64
65
66
67
68
69
70
71
72
73
74
57
45
21
33
56
44
20
32
55
43
19
31
54
42
18
30
53
41
17
29
52
51
50
49
48
47
46
45
44
43
42
41
40
16
17
18
19
20
21
22
23
24
25
26
27
28
53
39
15
29
54
38
14
30
55
37
13
31
56
36
12
32
57
35
11
33
58
34
10
34
74
75
76
77
78
79
80
81
82
83
83
82
81
59
33
9
35
61
62
63
64
65
66
67
68
69
70
71
72
73
80
60
32
8
36
60
79
61
31
7
37
59
78
62
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
126
124
104
92
112
100
125
123
103
91
111
99
124
122
102
90
110
98
123
121
101
89
109
97
122
120
100
88
108
96
121
119
99
87
107
95
120
118
98
86
106
94
119
117
97
85
105
93
118
116
96
84
104
92
117
115
95
83
103
91
116
114
94
82
102
90
115
113
93
81
80
79
78
77
76
75
74
73
72
71
70
69
81
101
89
114
112
92
80
68
80
100
88
113
111
91
79
67
79
99
87
112
110
90
78
66
78
98
86
111
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
85
110
102
88
76
64
76
88
84
109
103
87
75
63
75
87
83
108
104
86
74
62
74
86
82
107
105
85
73
61
73
85
81
106
106
84
72
60
72
84
80
105
107
83
71
59
71
83
79
104
108
82
70
58
70
82
78
103
107
81
69
57
69
81
77
102
106
80
68
56
68
80
76
101
105
79
67
55
67
79
75
100
104
78
66
54
66
78
74
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
90
64
52
64
89
63
51
63
88
62
50
62
87
61
49
61
86
60
48
60
85
59
47
59
84
58
46
58
83
57
45
57
82
56
44
56
81
55
43
55
80
54
42
54
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
80
66
54
28
40
54
81
65
53
27
39
55
82
64
52
26
38
56
83
63
51
25
37
57
84
62
50
24
36
58
85
61
49
23
35
59
86
60
48
22
34
60
74
75
76
77
78
79
80
81
82
83
84
85
86
59
47
21
33
61
62
63
64
65
66
67
68
69
70
71
72
73
58
46
20
32
57
45
19
31
56
44
18
30
55
43
17
29
54
42
16
28
53
52
51
50
49
48
47
46
45
44
43
42
41
15
16
17
18
19
20
21
22
23
24
25
26
27
54
40
14
28
55
39
13
29
56
38
12
30
57
37
11
31
58
36
10
32
59
35
9
33
73
74
75
76
77
78
79
80
81
82
83
83
82
60
34
8
34
60
61
62
63
64
65
66
67
68
69
70
71
72
81
61
33
7
35
59
80
62
32
6
36
58
79
63
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
127
123
103
91
111
99
126
122
102
90
110
98
125
121
101
89
109
97
124
120
100
88
108
96
123
119
99
87
107
95
122
118
98
86
106
94
121
117
97
85
105
93
120
116
96
84
104
92
119
115
95
83
103
91
118
114
94
82
102
90
117
113
93
81
101
89
116
112
92
80
79
78
77
76
75
74
73
72
71
70
69
68
80
100
88
115
111
91
79
67
79
99
87
114
110
90
78
66
78
98
86
113
109
89
77
65
77
97
85
112
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
84
111
101
87
75
63
75
87
83
110
102
86
74
62
74
86
82
109
103
85
73
61
73
85
81
108
104
84
72
60
72
84
80
107
105
83
71
59
71
83
79
106
106
82
70
58
70
82
78
105
107
81
69
57
69
81
77
104
108
80
68
56
68
80
76
103
107
79
67
55
67
79
75
102
106
78
66
54
66
78
74
101
105
77
65
53
65
77
73
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
91
63
51
63
90
62
50
62
89
61
49
61
88
60
48
60
87
59
47
59
86
58
46
58
85
57
45
57
84
56
44
56
83
55
43
55
82
54
42
54
81
53
41
53
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
40
41
42
43
44
45
46
47
48
49
50
51
52
81
67
55
27
39
53
82
66
54
26
38
54
83
65
53
25
37
55
84
64
52
24
36
56
85
63
51
23
35
57
86
62
50
22
34
58
86
61
49
21
33
59
73
74
75
76
77
78
79
80
81
82
83
84
85
60
48
20
32
60
61
62
63
64
65
66
67
68
69
70
71
72
59
47
19
31
58
46
18
30
57
45
17
29
56
44
16
28
55
43
15
27
54
53
52
51
50
49
48
47
46
45
44
43
42
14
15
16
17
18
19
20
21
22
23
24
25
26
55
41
13
27
56
40
12
28
57
39
11
29
58
38
10
30
59
37
9
31
60
36
8
32
72
73
74
75
76
77
78
79
80
81
82
83
83
61
35
7
33
59
60
61
62
63
64
65
66
67
68
69
70
71
82
62
34
6
34
58
81
63
33
5
35
57
80
64
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
128
122
102
90
110
98
127
121
101
89
109
97
126
120
100
88
108
96
125
119
99
87
107
95
124
118
98
86
106
94
123
117
97
85
105
93
122
116
96
84
104
92
121
115
95
83
103
91
120
114
94
82
102
90
119
113
93
81
101
89
118
112
92
80
100
88
117
111
91
79
78
77
76
75
74
73
72
71
70
69
68
67
79
99
87
116
110
90
78
66
78
98
86
115
109
89
77
65
77
97
85
114
108
88
76
64
76
96
84
113
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
83
112
100
86
74
62
74
86
82
111
101
85
73
61
73
85
81
110
102
84
72
60
72
84
80
109
103
83
71
59
71
83
79
108
104
82
70
58
70
82
78
107
105
81
69
57
69
81
77
106
106
80
68
56
68
80
76
105
107
79
67
55
67
79
75
104
108
78
66
54
66
78
74
103
107
77
65
53
65
77
73
102
106
76
64
52
64
76
72
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
92
62
50
62
91
61
49
61
90
60
48
60
89
59
47
59
88
58
46
58
87
57
45
57
86
56
44
56
85
55
43
55
84
54
42
54
83
53
41
53
82
52
40
52
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
39
40
41
42
43
44
45
46
47
48
49
50
51
82
68
56
26
38
52
83
67
55
25
37
53
84
66
54
24
36
54
85
65
53
23
35
55
86
64
52
22
34
56
86
63
51
21
33
57
85
62
50
20
32
58
72
73
74
75
76
77
78
79
80
81
82
83
84
61
49
19
31
59
60
61
62
63
64
65
66
67
68
69
70
71
60
48
18
30
59
47
17
29
58
46
16
28
57
45
15
27
56
44
14
26
55
54
53
52
51
50
49
48
47
46
45
44
43
13
14
15
16
17
18
19
20
21
22
23
24
25
56
42
12
26
57
41
11
27
58
40
10
28
59
39
9
29
60
38
8
30
61
37
7
31
71
72
73
74
75
76
77
78
79
80
81
82
83
62
36
6
32
58
59
60
61
62
63
64
65
66
67
68
69
70
83
63
35
5
33
57
82
64
34
4
34
56
81
65
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
129
121
101
89
109
97
128
120
100
88
108
96
127
119
99
87
107
95
126
118
98
86
106
94
125
117
97
85
105
93
124
116
96
84
104
92
123
115
95
83
103
91
122
114
94
82
102
90
121
113
93
81
101
89
120
112
92
80
100
88
119
111
91
79
99
87
118
110
90
78
77
76
75
74
73
72
71
70
69
68
67
66
78
98
86
117
109
89
77
65
77
97
85
116
108
88
76
64
76
96
84
115
107
87
75
63
75
95
83
114
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
82
113
99
85
73
61
73
85
81
112
100
84
72
60
72
84
80
111
101
83
71
59
71
83
79
110
102
82
70
58
70
82
78
109
103
81
69
57
69
81
77
108
104
80
68
56
68
80
76
107
105
79
67
55
67
79
75
106
106
78
66
54
66
78
74
105
107
77
65
53
65
77
73
104
108
76
64
52
64
76
72
103
107
75
63
51
63
75
71
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
93
61
49
61
92
60
48
60
91
59
47
59
90
58
46
58
89
57
45
57
88
56
44
56
87
55
43
55
86
54
42
54
85
53
41
53
84
52
40
52
83
51
39
51
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
38
39
40
41
42
43
44
45
46
47
48
49
50
83
69
57
25
37
51
84
68
56
24
36
52
85
67
55
23
35
53
86
66
54
22
34
54
86
65
53
21
33
55
85
64
52
20
32
56
84
63
51
19
31
57
71
72
73
74
75
76
77
78
79
80
81
82
83
62
50
18
30
58
59
60
61
62
63
64
65
66
67
68
69
70
61
49
17
29
60
48
16
28
59
47
15
27
58
46
14
26
57
45
13
25
56
55
54
53
52
51
50
49
48
47
46
45
44
12
13
14
15
16
17
18
19
20
21
22
23
24
57
43
11
25
58
42
10
26
59
41
9
27
60
40
8
28
61
39
7
29
62
38
6
30
70
71
72
73
74
75
76
77
78
79
80
81
82
63
37
5
31
57
58
59
60
61
62
63
64
65
66
67
68
69
83
64
36
4
32
56
83
65
35
3
33
55
82
66
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
130
120
100
88
108
96
129
119
99
87
107
95
128
118
98
86
106
94
127
117
97
85
105
93
126
116
96
84
104
92
125
115
95
83
103
91
124
114
94
82
102
90
123
113
93
81
101
89
122
112
92
80
100
88
121
111
91
79
99
87
120
110
90
78
98
86
119
109
89
77
76
75
74
73
72
71
70
69
68
67
66
65
77
97
85
118
108
88
76
64
76
96
84
117
107
87
75
63
75
95
83
116
106
86
74
62
74
94
82
115
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
81
114
98
84
72
60
72
84
80
113
99
83
71
59
71
83
79
112
100
82
70
58
70
82
78
111
101
81
69
57
69
81
77
110
102
80
68
56
68
80
76
109
103
79
67
55
67
79
75
108
104
78
66
54
66
78
74
107
105
77
65
53
65
77
73
106
106
76
64
52
64
76
72
105
107
75
63
51
63
75
71
104
108
74
62
50
62
74
70
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
94
60
48
60
93
59
47
59
92
58
46
58
91
57
45
57
90
56
44
56
89
55
43
55
88
54
42
54
87
53
41
53
86
52
40
52
85
51
39
51
84
50
38
50
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
37
38
39
40
41
42
43
44
45
46
47
48
49
84
70
58
24
36
50
85
69
57
23
35
51
86
68
56
22
34
52
86
67
55
21
33
53
85
66
54
20
32
54
84
65
53
19
31
55
83
64
52
18
30
56
70
71
72
73
74
75
76
77
78
79
80
81
82
63
51
17
29
57
58
59
60
61
62
63
64
65
66
67
68
69
62
50
16
28
61
49
15
27
60
48
14
26
59
47
13
25
58
46
12
24
57
56
55
54
53
52
51
50
49
48
47
46
45
11
12
13
14
15
16
17
18
19
20
21
22
23
58
44
10
24
59
43
9
25
60
42
8
26
61
41
7
27
62
40
6
28
63
39
5
29
69
70
71
72
73
74
75
76
77
78
79
80
81
64
38
4
30
56
57
58
59
60
61
62
63
64
65
66
67
68
82
65
37
3
31
55
83
66
36
2
32
54
83
67
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
131
119
99
87
107
95
130
118
98
86
106
94
129
117
97
85
105
93
128
116
96
84
104
92
127
115
95
83
103
91
126
114
94
82
102
90
125
113
93
81
101
89
124
112
92
80
100
88
123
111
91
79
99
87
122
110
90
78
98
86
121
109
89
77
97
85
120
108
88
76
75
74
73
72
71
70
69
68
67
66
65
64
76
96
84
119
107
87
75
63
75
95
83
118
106
86
74
62
74
94
82
117
105
85
73
61
73
93
81
116
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
80
115
97
83
71
59
71
83
79
114
98
82
70
58
70
82
78
113
99
81
69
57
69
81
77
112
100
80
68
56
68
80
76
111
101
79
67
55
67
79
75
110
102
78
66
54
66
78
74
109
103
77
65
53
65
77
73
108
104
76
64
52
64
76
72
107
105
75
63
51
63
75
71
106
106
74
62
50
62
74
70
105
107
73
61
49
61
73
69
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
57
58
59
60
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
95
59
47
59
94
58
46
58
93
57
45
57
92
56
44
56
91
55
43
55
90
54
42
54
89
53
41
53
88
52
40
52
87
51
39
51
86
50
38
50
85
49
37
49
84
83
82
81
80
79
78
77
76
75
74
73
72
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
36
37
38
39
40
41
42
43
44
45
46
47
48
85
71
59
23
35
49
86
70
58
22
34
50
86
69
57
21
33
51
85
68
56
20
32
52
84
67
55
19
31
53
83
66
54
18
30
54
82
65
53
17
29
55
69
70
71
72
73
74
75
76
77
78
79
80
81
64
52
16
28
56
57
58
59
60
61
62
63
64
65
66
67
68
63
51
15
27
62
50
14
26
61
49
13
25
60
48
12
24
59
47
11
23
58
57
56
55
54
53
52
51
50
49
48
47
46
10
11
12
13
14
15
16
17
18
19
20
21
22
59
45
9
23
60
44
8
24
61
43
7
25
62
42
6
26
63
41
5
27
64
40
4
28
68
69
70
71
72
73
74
75
76
77
78
79
80
65
39
3
29
55
56
57
58
59
60
61
62
63
64
65
66
67
81
66
38
2
30
54
82
67
37
1
31
53
83
68
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
125
126
127
128
129
130
131
132
133
134
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
91
79
119
126
106
94
90
78
118
125
105
93
89
77
117
124
104
92
88
76
116
123
103
91
87
75
115
122
102
90
86
74
114
121
101
89
85
73
113
120
100
88
87
86
85
84
83
82
81
80
79
78
77
76
88
84
72
112
119
99
87
75
87
83
71
111
118
98
86
74
86
82
70
110
117
97
85
73
85
81
69
109
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
72
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
68
108
109
95
83
71
83
71
67
107
110
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
109
92
80
68
80
68
64
104
108
91
79
67
79
67
63
103
107
90
78
66
78
66
62
102
106
89
77
65
77
65
61
101
105
88
76
64
76
64
60
100
104
87
75
63
75
63
59
99
103
86
74
62
74
62
58
98
102
85
73
61
73
61
57
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
88
71
59
47
87
70
58
46
86
69
57
45
85
68
56
44
84
67
55
43
83
66
54
42
82
65
53
41
81
64
52
40
80
63
51
39
79
62
50
38
78
61
49
37
77
78
79
80
81
82
83
84
85
86
87
88
89
72
71
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
40
39
38
37
36
24
25
26
27
28
29
30
31
32
33
34
35
36
76
90
73
35
23
37
75
91
74
34
22
38
74
92
75
33
21
39
73
91
76
32
20
40
72
90
77
31
19
41
71
89
78
30
18
42
70
88
79
29
17
43
57
58
59
60
61
62
63
64
65
66
67
68
69
87
80
28
16
44
45
46
47
48
49
50
51
52
53
54
55
56
86
81
27
15
85
82
26
14
84
81
25
13
83
80
24
12
82
79
23
11
81
82
83
84
85
85
84
83
82
81
80
79
78
22
21
20
19
18
17
16
15
14
13
12
11
10
80
77
23
9
79
76
24
8
78
75
25
7
77
74
26
6
76
73
27
5
75
72
28
4
36
37
38
39
40
41
42
43
44
45
46
47
48
74
71
29
3
23
24
25
26
27
28
29
30
31
32
33
34
35
49
73
70
30
2
22
50
72
69
31
1
21
51
71
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
40
39
38
37
36
35
34
33
32
0
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
134
146
131
119
115
103
133
145
130
118
114
102
132
144
129
117
113
101
131
143
128
116
112
100
130
142
127
115
111
99
129
141
126
114
110
98
128
140
125
113
109
97
127
139
124
112
108
96
126
138
123
111
107
95
125
137
122
110
106
94
124
136
121
109
105
93
123
135
120
108
107
106
105
104
103
102
101
100
99
98
97
96
108
104
92
122
134
119
107
95
107
103
91
121
133
118
106
94
106
102
90
120
132
117
105
93
105
101
89
119
131
130
129
128
127
126
125
124
123
124
125
125
124
123
122
121
120
119
118
117
116
104
92
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
88
118
122
115
103
91
103
91
87
117
121
114
102
90
102
90
86
116
120
113
101
89
101
89
85
115
119
112
100
88
100
88
84
114
118
111
99
87
99
87
83
113
117
110
98
86
98
86
82
112
116
109
97
85
97
85
81
111
115
108
96
84
96
84
80
110
114
107
95
83
95
83
79
109
113
106
94
82
94
82
78
108
112
105
93
81
93
81
77
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
98
91
79
67
97
90
78
66
96
89
77
65
95
88
76
64
94
87
75
63
93
86
74
62
92
85
73
61
91
84
72
60
90
83
71
59
89
82
70
58
88
81
69
57
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
88
74
86
55
43
57
89
73
85
54
42
58
90
72
84
53
41
59
91
71
83
52
40
60
92
70
82
51
39
61
91
69
81
50
38
62
90
68
80
49
37
63
77
78
79
80
81
82
83
84
85
86
87
88
89
67
79
48
36
64
65
66
67
68
69
70
71
72
73
74
75
76
66
78
47
35
65
77
46
34
64
76
45
33
63
75
44
32
62
74
43
31
61
62
63
64
65
66
67
68
69
70
71
72
73
42
41
40
39
38
37
36
35
34
33
32
31
30
60
74
43
29
59
75
44
28
58
76
45
27
57
77
46
26
56
78
47
25
55
79
48
24
16
17
18
19
20
21
22
23
24
25
26
27
28
54
80
49
23
3
4
5
6
7
8
9
10
11
12
13
14
15
29
53
81
50
22
2
30
52
82
51
21
1
31
51
83
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
61
60
59
58
57
56
55
54
53
52
20
0
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
102
114
118
130
147
135
101
113
117
129
146
134
100
112
116
128
145
133
99
111
115
127
144
132
98
110
114
126
143
131
97
109
113
125
142
130
96
108
112
124
141
129
95
107
111
123
140
128
94
106
110
122
139
127
93
105
109
121
138
126
92
104
108
120
137
125
91
103
107
95
96
97
98
99
100
101
102
103
104
105
106
107
119
136
124
90
102
106
94
106
118
135
123
89
101
105
93
105
117
134
122
88
100
104
92
104
116
133
121
87
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
91
103
115
116
117
118
119
120
121
122
123
124
125
125
124
125
126
127
128
129
130
131
132
120
86
90
102
90
102
114
123
119
85
89
101
89
101
113
122
118
84
88
100
88
100
112
121
117
83
87
99
87
99
111
120
116
82
86
98
86
98
110
119
115
81
85
97
85
97
109
118
114
80
84
96
84
96
108
117
113
79
83
95
83
95
107
116
112
78
82
94
82
94
106
115
111
77
81
93
81
93
105
114
110
76
80
92
80
92
104
113
109
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
66
78
90
99
65
77
89
98
64
76
88
97
63
75
87
96
62
74
86
95
61
73
85
94
60
72
84
93
59
71
83
92
58
70
82
91
57
69
81
90
56
68
80
89
55
54
53
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
56
42
54
87
75
89
57
41
53
86
74
90
58
40
52
85
73
91
59
39
51
84
72
92
60
38
50
83
71
91
61
37
49
82
70
90
62
36
48
81
69
89
75
74
73
72
71
70
69
68
67
66
65
64
63
35
47
80
68
88
87
86
85
84
83
82
81
80
79
78
77
76
34
46
79
67
33
45
78
66
32
44
77
65
31
43
76
64
30
42
75
63
29
30
31
32
33
34
35
36
37
38
39
40
41
74
73
72
71
70
69
68
67
66
65
64
63
62
28
42
75
61
27
43
76
60
26
44
77
59
25
45
78
58
24
46
79
57
23
47
80
56
16
15
14
13
12
11
10
9
8
7
6
5
4
22
48
81
55
29
28
27
26
25
24
23
22
21
20
19
18
17
3
21
49
82
54
30
2
20
50
83
53
31
1
19
51
52
53
54
55
56
57
58
59
60
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
52
32
0
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
135
134
133
132
131
130
129
128
127
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
107
127
120
78
90
94
106
126
119
77
89
93
105
125
118
76
88
92
104
124
117
75
87
91
103
123
116
74
86
90
102
122
115
73
85
89
77
78
79
80
81
82
83
84
85
86
87
88
89
101
121
114
72
84
88
76
88
100
120
113
71
83
87
75
87
99
119
112
70
82
86
74
86
98
118
111
69
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
73
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
110
68
72
84
72
84
96
110
109
67
71
83
71
83
95
111
108
66
70
82
70
82
94
111
107
65
69
81
69
81
93
110
106
64
68
80
68
80
92
109
105
63
67
79
67
79
91
108
104
62
66
78
66
78
90
107
103
61
65
77
65
77
89
106
102
60
64
76
64
76
88
105
101
59
63
75
63
75
87
104
100
58
62
74
62
74
86
103
99
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
48
60
72
89
47
59
71
88
46
58
70
87
45
57
69
86
44
56
68
85
43
55
67
84
42
54
66
83
41
53
65
82
40
52
64
81
39
51
63
80
38
50
62
79
37
36
35
34
33
32
31
30
29
28
27
26
25
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
90
89
88
87
86
85
84
83
82
81
80
79
78
38
24
36
74
91
77
39
23
35
75
92
76
40
22
34
76
91
75
41
21
33
77
90
74
42
20
32
78
89
73
43
19
31
79
88
72
44
18
30
80
87
71
57
56
55
54
53
52
51
50
49
48
47
46
45
17
29
81
86
70
69
68
67
66
65
64
63
62
61
60
59
58
16
28
82
85
15
27
83
84
14
26
82
83
13
25
81
82
12
24
80
81
11
12
13
14
15
16
17
18
19
20
21
22
23
79
80
81
82
83
84
85
85
84
83
82
81
80
10
24
78
79
9
25
77
78
8
26
76
77
7
27
75
76
6
28
74
75
5
29
73
74
34
33
32
31
30
29
28
27
26
25
24
23
22
4
30
72
73
47
46
45
44
43
42
41
40
39
38
37
36
35
21
3
31
71
72
48
20
2
32
70
71
49
19
1
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
50
18
0
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
108
120
100
112
132
120
107
119
99
111
131
119
106
118
98
110
130
118
105
117
97
109
129
117
104
116
96
108
128
116
103
115
95
107
127
115
102
114
94
106
126
114
101
113
93
105
125
113
100
112
92
104
124
112
99
111
91
103
123
111
98
110
90
102
122
110
97
109
89
77
78
79
80
81
82
83
84
85
86
87
88
89
101
121
109
96
108
88
76
88
100
120
108
95
107
87
75
87
99
119
107
94
106
86
74
86
98
118
106
93
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
105
92
96
84
72
84
96
108
104
91
95
83
71
83
95
107
103
90
94
82
70
82
94
106
102
89
93
81
69
81
93
105
101
88
92
80
68
80
92
104
100
87
91
79
67
79
91
103
99
86
90
78
66
78
90
102
98
85
89
77
65
77
89
101
97
84
88
76
64
76
88
100
96
83
87
75
63
75
87
99
95
82
86
74
62
74
86
98
94
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
72
60
72
84
71
59
71
83
70
58
70
82
69
57
69
81
68
56
68
80
67
55
67
79
66
54
66
78
65
53
65
77
64
52
64
76
63
51
63
75
62
50
62
74
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
62
48
36
48
60
74
63
47
35
47
59
75
64
46
34
46
58
76
65
45
33
45
57
77
66
44
32
44
56
78
67
43
31
43
55
79
68
42
30
42
54
80
81
80
79
78
77
76
75
74
73
72
71
70
69
41
29
41
53
81
82
83
84
85
86
87
87
86
85
84
83
82
40
28
40
52
39
27
39
51
38
26
38
50
37
25
37
49
36
24
36
48
35
34
33
32
31
30
29
28
27
26
25
24
23
35
36
37
38
39
40
41
42
43
44
45
46
47
36
22
34
48
37
21
33
49
38
20
32
50
39
19
31
51
40
18
30
52
41
17
29
53
74
73
72
71
70
69
68
67
66
65
64
63
62
42
16
28
54
76
77
78
79
80
81
81
80
79
78
77
76
75
61
43
15
27
55
75
60
44
14
26
56
74
59
45
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
57
73
58
46
0
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
120
132
112
100
120
108
119
131
111
99
119
107
118
130
110
98
118
106
117
129
109
97
117
105
116
128
108
96
116
104
115
127
107
95
115
103
114
126
106
94
114
102
113
125
105
93
113
101
112
124
104
92
112
100
111
123
103
91
111
99
110
122
102
90
110
98
109
121
101
89
88
87
86
85
84
83
82
81
80
79
78
77
89
109
97
108
120
100
88
76
88
108
96
107
119
99
87
75
87
107
95
106
118
98
86
74
86
106
94
105
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
93
104
108
96
84
72
84
96
92
103
107
95
83
71
83
95
91
102
106
94
82
70
82
94
90
101
105
93
81
69
81
93
89
100
104
92
80
68
80
92
88
99
103
91
79
67
79
91
87
98
102
90
78
66
78
90
86
97
101
89
77
65
77
89
85
96
100
88
76
64
76
88
84
95
99
87
75
63
75
87
83
94
98
86
74
62
74
86
82
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
84
72
60
72
83
71
59
71
82
70
58
70
81
69
57
69
80
68
56
68
79
67
55
67
78
66
54
66
77
65
53
65
76
64
52
64
75
63
51
63
74
62
50
62
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
74
60
48
36
48
62
75
59
47
35
47
63
76
58
46
34
46
64
77
57
45
33
45
65
78
56
44
32
44
66
79
55
43
31
43
67
80
54
42
30
42
68
82
83
84
85
86
87
87
86
85
84
83
82
81
53
41
29
41
69
70
71
72
73
74
75
76
77
78
79
80
81
52
40
28
40
51
39
27
39
50
38
26
38
49
37
25
37
48
36
24
36
47
46
45
44
43
42
41
40
39
38
37
36
35
23
24
25
26
27
28
29
30
31
32
33
34
35
48
34
22
36
49
33
21
37
50
32
20
38
51
31
19
39
52
30
18
40
53
29
17
41
75
76
77
78
79
80
81
81
80
79
78
77
76
54
28
16
42
62
63
64
65
66
67
68
69
70
71
72
73
74
75
55
27
15
43
61
74
56
26
14
44
60
73
57
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
45
59
72
58
14
0
126
127
128
129
130
131
132
133
134
135
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
91
79
119
126
106
94
90
78
118
125
105
93
89
77
117
124
104
92
88
76
116
123
103
91
87
75
115
122
102
90
86
74
114
121
101
89
88
87
86
85
84
83
82
81
80
79
78
77
89
85
73
113
120
100
88
76
88
84
72
112
119
99
87
75
87
83
71
111
118
98
86
74
86
82
70
110
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
73
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
69
109
110
96
84
72
84
72
68
108
111
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
109
92
80
68
80
68
64
104
108
91
79
67
79
67
63
103
107
90
78
66
78
66
62
102
106
89
77
65
77
65
61
101
105
88
76
64
76
64
60
100
104
87
75
63
75
63
59
99
103
86
74
62
74
62
58
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
89
72
60
48
88
71
59
47
87
70
58
46
86
69
57
45
85
68
56
44
84
67
55
43
83
66
54
42
82
65
53
41
81
64
52
40
80
63
51
39
79
62
50
38
78
79
80
81
82
83
84
85
86
87
88
89
90
73
72
71
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
40
39
38
37
25
26
27
28
29
30
31
32
33
34
35
36
37
77
91
74
36
24
38
76
92
75
35
23
39
75
91
76
34
22
40
74
90
77
33
21
41
73
89
78
32
20
42
72
88
79
31
19
43
71
87
80
30
18
44
58
59
60
61
62
63
64
65
66
67
68
69
70
86
81
29
17
45
46
47
48
49
50
51
52
53
54
55
56
57
85
82
28
16
84
83
27
15
83
82
26
14
82
81
25
13
81
80
24
12
80
81
82
83
84
85
85
84
83
82
81
80
79
23
22
21
20
19
18
17
16
15
14
13
12
11
79
78
24
10
78
77
25
9
77
76
26
8
76
75
27
7
75
74
28
6
74
73
29
5
35
36
37
38
39
40
41
42
43
44
45
46
47
73
72
30
4
22
23
24
25
26
27
28
29
30
31
32
33
34
48
72
71
31
3
21
49
71
70
32
2
20
50
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
40
39
38
37
36
35
34
33
1
19
51
69
58
46
0
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
135
147
130
118
114
102
134
146
129
117
113
101
133
145
128
116
112
100
132
144
127
115
111
99
131
143
126
114
110
98
130
142
125
113
109
97
129
141
124
112
108
96
128
140
123
111
107
95
127
139
122
110
106
94
126
138
121
109
105
93
125
137
120
108
104
92
124
136
119
107
106
105
104
103
102
101
100
99
98
97
96
95
107
103
91
123
135
118
106
94
106
102
90
122
134
117
105
93
105
101
89
121
133
116
104
92
104
100
88
120
132
131
130
129
128
127
126
125
124
125
125
124
123
122
121
120
119
118
117
116
115
103
91
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
87
119
123
114
102
90
102
90
86
118
122
113
101
89
101
89
85
117
121
112
100
88
100
88
84
116
120
111
99
87
99
87
83
115
119
110
98
86
98
86
82
114
118
109
97
85
97
85
81
113
117
108
96
84
96
84
80
112
116
107
95
83
95
83
79
111
115
106
94
82
94
82
78
110
114
105
93
81
93
81
77
109
113
104
92
80
92
80
76
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
99
90
78
66
98
89
77
65
97
88
76
64
96
87
75
63
95
86
74
62
94
85
73
61
93
84
72
60
92
83
71
59
91
82
70
58
90
81
69
57
89
80
68
56
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
89
75
87
54
42
56
90
74
86
53
41
57
91
73
85
52
40
58
92
72
84
51
39
59
91
71
83
50
38
60
90
70
82
49
37
61
89
69
81
48
36
62
76
77
78
79
80
81
82
83
84
85
86
87
88
68
80
47
35
63
64
65
66
67
68
69
70
71
72
73
74
75
67
79
46
34
66
78
45
33
65
77
44
32
64
76
43
31
63
75
42
30
62
63
64
65
66
67
68
69
70
71
72
73
74
41
40
39
38
37
36
35
34
33
32
31
30
29
61
75
42
28
60
76
43
27
59
77
44
26
58
78
45
25
57
79
46
24
56
80
47
23
17
18
19
20
21
22
23
24
25
26
27
28
29
55
81
48
22
4
5
6
7
8
9
10
11
12
13
14
15
16
30
54
82
49
21
3
31
53
83
50
20
2
32
52
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
60
59
58
57
56
55
54
53
52
51
19
1
33
51
72
58
18
0
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
101
113
117
129
148
136
100
112
116
128
147
135
99
111
115
127
146
134
98
110
114
126
145
133
97
109
113
125
144
132
96
108
112
124
143
131
95
107
111
123
142
130
94
106
110
122
141
129
93
105
109
121
140
128
92
104
108
120
139
127
91
103
107
119
138
126
90
102
106
94
95
96
97
98
99
100
101
102
103
104
105
106
118
137
125
89
101
105
93
105
117
136
124
88
100
104
92
104
116
135
123
87
99
103
91
103
115
134
122
86
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
90
102
114
115
116
117
118
119
120
121
122
123
124
125
125
126
127
128
129
130
131
132
133
121
85
89
101
89
101
113
124
120
84
88
100
88
100
112
123
119
83
87
99
87
99
111
122
118
82
86
98
86
98
110
121
117
81
85
97
85
97
109
120
116
80
84
96
84
96
108
119
115
79
83
95
83
95
107
118
114
78
82
94
82
94
106
117
113
77
81
93
81
93
105
116
112
76
80
92
80
92
104
115
111
75
79
91
79
91
103
114
110
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
65
77
89
100
64
76
88
99
63
75
87
98
62
74
86
97
61
73
85
96
60
72
84
95
59
71
83
94
58
70
82
93
57
69
81
92
56
68
80
91
55
67
79
90
54
53
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
77
78
79
80
81
82
83
84
85
86
87
88
89
55
41
53
88
76
90
56
40
52
87
75
91
57
39
51
86
74
92
58
38
50
85
73
91
59
37
49
84
72
90
60
36
48
83
71
89
61
35
47
82
70
88
74
73
72
71
70
69
68
67
66
65
64
63
62
34
46
81
69
87
86
85
84
83
82
81
80
79
78
77
76
75
33
45
80
68
32
44
79
67
31
43
78
66
30
42
77
65
29
41
76
64
28
29
30
31
32
33
34
35
36
37
38
39
40
75
74
73
72
71
70
69
68
67
66
65
64
63
27
41
76
62
26
42
77
61
25
43
78
60
24
44
79
59
23
45
80
58
22
46
81
57
17
16
15
14
13
12
11
10
9
8
7
6
5
21
47
82
56
30
29
28
27
26
25
24
23
22
21
20
19
18
4
20
48
83
55
31
3
19
49
83
54
32
2
18
50
51
52
53
54
55
56
57
58
59
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
53
33
1
17
57
71
52
34
0
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
136
135
134
133
132
131
130
129
128
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
107
127
120
78
90
94
106
126
119
77
89
93
105
125
118
76
88
92
104
124
117
75
87
91
103
123
116
74
86
90
78
79
80
81
82
83
84
85
86
87
88
89
90
102
122
115
73
85
89
77
89
101
121
114
72
84
88
76
88
100
120
113
71
83
87
75
87
99
119
112
70
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
74
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
111
69
73
85
73
85
97
111
110
68
72
84
72
84
96
112
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
69
81
69
81
93
110
106
64
68
80
68
80
92
109
105
63
67
79
67
79
91
108
104
62
66
78
66
78
90
107
103
61
65
77
65
77
89
106
102
60
64
76
64
76
88
105
101
59
63
75
63
75
87
104
100
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
57
69
86
44
56
68
85
43
55
67
84
42
54
66
83
41
53
65
82
40
52
64
81
39
51
63
80
38
37
36
35
34
33
32
31
30
29
28
27
26
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
91
90
89
88
87
86
85
84
83
82
81
80
79
39
25
37
75
92
78
40
24
36
76
91
77
41
23
35
77
90
76
42
22
34
78
89
75
43
21
33
79
88
74
44
20
32
80
87
73
45
19
31
81
86
72
58
57
56
55
54
53
52
51
50
49
48
47
46
18
30
82
85
71
70
69
68
67
66
65
64
63
62
61
60
59
17
29
83
84
16
28
84
83
15
27
83
82
14
26
82
81
13
25
81
80
12
13
14
15
16
17
18
19
20
21
22
23
24
80
81
82
83
84
85
85
84
83
82
81
80
79
11
25
79
78
10
26
78
77
9
27
77
76
8
28
76
75
7
29
75
74
6
30
74
73
33
32
31
30
29
28
27
26
25
24
23
22
21
5
31
73
72
46
45
44
43
42
41
40
39
38
37
36
35
34
20
4
32
72
71
47
19
3
33
71
70
48
18
2
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
69
49
17
1
45
59
68
50
16
0
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
109
121
101
113
133
121
108
120
100
112
132
120
107
119
99
111
131
119
106
118
98
110
130
118
105
117
97
109
129
117
104
116
96
108
128
116
103
115
95
107
127
115
102
114
94
106
126
114
101
113
93
105
125
113
100
112
92
104
124
112
99
111
91
103
123
111
98
110
90
78
79
80
81
82
83
84
85
86
87
88
89
90
102
122
110
97
109
89
77
89
101
121
109
96
108
88
76
88
100
120
108
95
107
87
75
87
99
119
107
94
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
106
93
97
85
73
85
97
109
105
92
96
84
72
84
96
108
104
91
95
83
71
83
95
107
103
90
94
82
70
82
94
106
102
89
93
81
69
81
93
105
101
88
92
80
68
80
92
104
100
87
91
79
67
79
91
103
99
86
90
78
66
78
90
102
98
85
89
77
65
77
89
101
97
84
88
76
64
76
88
100
96
83
87
75
63
75
87
99
95
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
73
61
73
85
72
60
72
84
71
59
71
83
70
58
70
82
69
57
69
81
68
56
68
80
67
55
67
79
66
54
66
78
65
53
65
77
64
52
64
76
63
51
63
75
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
63
49
37
49
61
75
64
48
36
48
60
76
65
47
35
47
59
77
66
46
34
46
58
78
67
45
33
45
57
79
68
44
32
44
56
80
69
43
31
43
55
81
82
81
80
79
78
77
76
75
74
73
72
71
70
42
30
42
54
82
83
84
85
86
87
88
88
87
86
85
84
83
41
29
41
53
40
28
40
52
39
27
39
51
38
26
38
50
37
25
37
49
36
35
34
33
32
31
30
29
28
27
26
25
24
36
37
38
39
40
41
42
43
44
45
46
47
48
37
23
35
49
38
22
34
50
39
21
33
51
40
20
32
52
41
19
31
53
42
18
30
54
73
72
71
70
69
68
67
66
65
64
63
62
61
43
17
29
55
77
78
79
80
81
81
80
79
78
77
76
75
74
60
44
16
28
56
76
59
45
15
27
57
75
58
46
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
58
74
57
45
1
15
59
73
56
44
0
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
121
133
113
101
121
109
120
132
112
100
120
108
119
131
111
99
119
107
118
130
110
98
118
106
117
129
109
97
117
105
116
128
108
96
116
104
115
127
107
95
115
103
114
126
106
94
114
102
113
125
105
93
113
101
112
124
104
92
112
100
111
123
103
91
111
99
110
122
102
90
89
88
87
86
85
84
83
82
81
80
79
78
90
110
98
109
121
101
89
77
89
109
97
108
120
100
88
76
88
108
96
107
119
99
87
75
87
107
95
106
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
94
105
109
97
85
73
85
97
93
104
108
96
84
72
84
96
92
103
107
95
83
71
83
95
91
102
106
94
82
70
82
94
90
101
105
93
81
69
81
93
89
100
104
92
80
68
80
92
88
99
103
91
79
67
79
91
87
98
102
90
78
66
78
90
86
97
101
89
77
65
77
89
85
96
100
88
76
64
76
88
84
95
99
87
75
63
75
87
83
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
85
73
61
73
84
72
60
72
83
71
59
71
82
70
58
70
81
69
57
69
80
68
56
68
79
67
55
67
78
66
54
66
77
65
53
65
76
64
52
64
75
63
51
63
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
75
61
49
37
49
63
76
60
48
36
48
64
77
59
47
35
47
65
78
58
46
34
46
66
79
57
45
33
45
67
80
56
44
32
44
68
81
55
43
31
43
69
83
84
85
86
87
88
88
87
86
85
84
83
82
54
42
30
42
70
71
72
73
74
75
76
77
78
79
80
81
82
53
41
29
41
52
40
28
40
51
39
27
39
50
38
26
38
49
37
25
37
48
47
46
45
44
43
42
41
40
39
38
37
36
24
25
26
27
28
29
30
31
32
33
34
35
36
49
35
23
37
50
34
22
38
51
33
21
39
52
32
20
40
53
31
19
41
54
30
18
42
74
75
76
77
78
79
80
81
81
80
79
78
77
55
29
17
43
61
62
63
64
65
66
67
68
69
70
71
72
73
76
56
28
16
44
60
75
57
27
15
45
59
74
58
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
46
58
73
59
15
1
45
57
72
60
16
0
127
128
129
130
131
132
133
134
135
136
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
91
79
119
126
106
94
90
78
118
125
105
93
89
77
117
124
104
92
88
76
116
123
103
91
87
75
115
122
102
90
89
88
87
86
85
84
83
82
81
80
79
78
90
86
74
114
121
101
89
77
89
85
73
113
120
100
88
76
88
84
72
112
119
99
87
75
87
83
71
111
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
74
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
70
110
111
97
85
73
85
73
69
109
112
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
109
92
80
68
80
68
64
104
108
91
79
67
79
67
63
103
107
90
78
66
78
66
62
102
106
89
77
65
77
65
61
101
105
88
76
64
76
64
60
100
104
87
75
63
75
63
59
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
69
57
45
85
68
56
44
84
67
55
43
83
66
54
42
82
65
53
41
81
64
52
40
80
63
51
39
79
80
81
82
83
84
85
86
87
88
89
90
91
74
73
72
71
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
40
39
38
26
27
28
29
30
31
32
33
34
35
36
37
38
78
92
75
37
25
39
77
91
76
36
24
40
76
90
77
35
23
41
75
89
78
34
22
42
74
88
79
33
21
43
73
87
80
32
20
44
72
86
81
31
19
45
59
60
61
62
63
64
65
66
67
68
69
70
71
85
82
30
18
46
47
48
49
50
51
52
53
54
55
56
57
58
84
83
29
17
83
84
28
16
82
83
27
15
81
82
26
14
80
81
25
13
79
80
81
82
83
84
85
85
84
83
82
81
80
24
23
22
21
20
19
18
17
16
15
14
13
12
78
79
25
11
77
78
26
10
76
77
27
9
75
76
28
8
74
75
29
7
73
74
30
6
34
35
36
37
38
39
40
41
42
43
44
45
46
72
73
31
5
21
22
23
24
25
26
27
28
29
30
31
32
33
47
71
72
32
4
20
48
70
71
33
3
19
49
69
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
40
39
38
37
36
35
34
2
18
50
68
59
45
1
17
51
67
60
44
0
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
136
148
129
117
113
101
135
147
128
116
112
100
134
146
127
115
111
99
133
145
126
114
110
98
132
144
125
113
109
97
131
143
124
112
108
96
130
142
123
111
107
95
129
141
122
110
106
94
128
140
121
109
105
93
127
139
120
108
104
92
126
138
119
107
103
91
125
137
118
106
105
104
103
102
101
100
99
98
97
96
95
94
106
102
90
124
136
117
105
93
105
101
89
123
135
116
104
92
104
100
88
122
134
115
103
91
103
99
87
121
133
132
131
130
129
128
127
126
125
125
124
123
122
121
120
119
118
117
116
115
114
102
90
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
86
120
124
113
101
89
101
89
85
119
123
112
100
88
100
88
84
118
122
111
99
87
99
87
83
117
121
110
98
86
98
86
82
116
120
109
97
85
97
85
81
115
119
108
96
84
96
84
80
114
118
107
95
83
95
83
79
113
117
106
94
82
94
82
78
112
116
105
93
81
93
81
77
111
115
104
92
80
92
80
76
110
114
103
91
79
91
79
75
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
100
89
77
65
99
88
76
64
98
87
75
63
97
86
74
62
96
85
73
61
95
84
72
60
94
83
71
59
93
82
70
58
92
81
69
57
91
80
68
56
90
79
67
55
89
88
87
86
85
84
83
82
81
80
79
78
77
89
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
90
76
88
53
41
55
91
75
87
52
40
56
92
74
86
51
39
57
91
73
85
50
38
58
90
72
84
49
37
59
89
71
83
48
36
60
88
70
82
47
35
61
75
76
77
78
79
80
81
82
83
84
85
86
87
69
81
46
34
62
63
64
65
66
67
68
69
70
71
72
73
74
68
80
45
33
67
79
44
32
66
78
43
31
65
77
42
30
64
76
41
29
63
64
65
66
67
68
69
70
71
72
73
74
75
40
39
38
37
36
35
34
33
32
31
30
29
28
62
76
41
27
61
77
42
26
60
78
43
25
59
79
44
24
58
80
45
23
57
81
46
22
18
19
20
21
22
23
24
25
26
27
28
29
30
56
82
47
21
5
6
7
8
9
10
11
12
13
14
15
16
17
31
55
83
48
20
4
32
54
83
49
19
3
33
53
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
59
58
57
56
55
54
53
52
51
50
18
2
34
52
71
57
17
1
35
51
72
56
16
0
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
100
112
116
128
148
137
99
111
115
127
147
136
98
110
114
126
146
135
97
109
113
125
145
134
96
108
112
124
144
133
95
107
111
123
143
132
94
106
110
122
142
131
93
105
109
121
141
130
92
104
108
120
140
129
91
103
107
119
139
128
90
102
106
118
138
127
89
101
105
93
94
95
96
97
98
99
100
101
102
103
104
105
117
137
126
88
100
104
92
104
116
136
125
87
99
103
91
103
115
135
124
86
98
102
90
102
114
134
123
85
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
89
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
122
84
88
100
88
100
112
125
121
83
87
99
87
99
111
124
120
82
86
98
86
98
110
123
119
81
85
97
85
97
109
122
118
80
84
96
84
96
108
121
117
79
83
95
83
95
107
120
116
78
82
94
82
94
106
119
115
77
81
93
81
93
105
118
114
76
80
92
80
92
104
117
113
75
79
91
79
91
103
116
112
74
78
90
78
90
102
115
111
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
64
76
88
101
63
75
87
100
62
74
86
99
61
73
85
98
60
72
84
97
59
71
83
96
58
70
82
95
57
69
81
94
56
68
80
93
55
67
79
92
54
66
78
91
53
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
78
79
80
81
82
83
84
85
86
87
88
89
90
54
40
52
89
77
91
55
39
51
88
76
92
56
38
50
87
75
91
57
37
49
86
74
90
58
36
48
85
73
89
59
35
47
84
72
88
60
34
46
83
71
87
73
72
71
70
69
68
67
66
65
64
63
62
61
33
45
82
70
86
85
84
83
82
81
80
79
78
77
76
75
74
32
44
81
69
31
43
80
68
30
42
79
67
29
41
78
66
28
40
77
65
27
28
29
30
31
32
33
34
35
36
37
38
39
76
75
74
73
72
71
70
69
68
67
66
65
64
26
40
77
63
25
41
78
62
24
42
79
61
23
43
80
60
22
44
81
59
21
45
82
58
18
17
16
15
14
13
12
11
10
9
8
7
6
20
46
83
57
31
30
29
28
27
26
25
24
23
22
21
20
19
5
19
47
83
56
32
4
18
48
82
55
33
3
17
49
50
51
52
53
54
55
56
57
58
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
54
34
2
16
56
70
53
35
1
15
55
71
52
36
0
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
137
136
135
134
133
132
131
130
129
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
107
127
120
78
90
94
106
126
119
77
89
93
105
125
118
76
88
92
104
124
117
75
87
91
79
80
81
82
83
84
85
86
87
88
89
90
91
103
123
116
74
86
90
78
90
102
122
115
73
85
89
77
89
101
121
114
72
84
88
76
88
100
120
113
71
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
75
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
112
70
74
86
74
86
98
112
111
69
73
85
73
85
97
113
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
69
81
69
81
93
110
106
64
68
80
68
80
92
109
105
63
67
79
67
79
91
108
104
62
66
78
66
78
90
107
103
61
65
77
65
77
89
106
102
60
64
76
64
76
88
105
101
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
57
69
86
44
56
68
85
43
55
67
84
42
54
66
83
41
53
65
82
40
52
64
81
39
38
37
36
35
34
33
32
31
30
29
28
27
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
92
91
90
89
88
87
86
85
84
83
82
81
80
40
26
38
76
91
79
41
25
37
77
90
78
42
24
36
78
89
77
43
23
35
79
88
76
44
22
34
80
87
75
45
21
33
81
86
74
46
20
32
82
85
73
59
58
57
56
55
54
53
52
51
50
49
48
47
19
31
83
84
72
71
70
69
68
67
66
65
64
63
62
61
60
18
30
84
83
17
29
83
82
16
28
82
81
15
27
81
80
14
26
80
79
13
14
15
16
17
18
19
20
21
22
23
24
25
79
80
81
82
83
84
84
83
82
81
80
79
78
12
26
78
77
11
27
77
76
10
28
76
75
9
29
75
74
8
30
74
73
7
31
73
72
32
31
30
29
28
27
26
25
24
23
22
21
20
6
32
72
71
45
44
43
42
41
40
39
38
37
36
35
34
33
19
5
33
71
70
46
18
4
34
70
69
47
17
3
35
36
37
38
39
40
41
42
43
44
45
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
68
48
16
2
44
58
67
49
15
1
43
59
66
50
14
0
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
110
122
102
114
134
122
109
121
101
113
133
121
108
120
100
112
132
120
107
119
99
111
131
119
106
118
98
110
130
118
105
117
97
109
129
117
104
116
96
108
128
116
103
115
95
107
127
115
102
114
94
106
126
114
101
113
93
105
125
113
100
112
92
104
124
112
99
111
91
79
80
81
82
83
84
85
86
87
88
89
90
91
103
123
111
98
110
90
78
90
102
122
110
97
109
89
77
89
101
121
109
96
108
88
76
88
100
120
108
95
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
107
94
98
86
74
86
98
110
106
93
97
85
73
85
97
109
105
92
96
84
72
84
96
108
104
91
95
83
71
83
95
107
103
90
94
82
70
82
94
106
102
89
93
81
69
81
93
105
101
88
92
80
68
80
92
104
100
87
91
79
67
79
91
103
99
86
90
78
66
78
90
102
98
85
89
77
65
77
89
101
97
84
88
76
64
76
88
100
96
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
74
62
74
86
73
61
73
85
72
60
72
84
71
59
71
83
70
58
70
82
69
57
69
81
68
56
68
80
67
55
67
79
66
54
66
78
65
53
65
77
64
52
64
76
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
64
50
38
50
62
76
65
49
37
49
61
77
66
48
36
48
60
78
67
47
35
47
59
79
68
46
34
46
58
80
69
45
33
45
57
81
70
44
32
44
56
82
83
82
81
80
79
78
77
76
75
74
73
72
71
43
31
43
55
83
84
85
86
87
88
89
89
88
87
86
85
84
42
30
42
54
41
29
41
53
40
28
40
52
39
27
39
51
38
26
38
50
37
36
35
34
33
32
31
30
29
28
27
26
25
37
38
39
40
41
42
43
44
45
46
47
48
49
38
24
36
50
39
23
35
51
40
22
34
52
41
21
33
53
42
20
32
54
43
19
31
55
72
71
70
69
68
67
66
65
64
63
62
61
60
44
18
30
56
78
79
80
81
81
80
79
78
77
76
75
74
73
59
45
17
29
57
77
58
46
16
28
58
76
57
45
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
59
75
56
44
2
16
60
74
55
43
1
17
61
73
54
42
0
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
122
134
114
102
122
110
121
133
113
101
121
109
120
132
112
100
120
108
119
131
111
99
119
107
118
130
110
98
118
106
117
129
109
97
117
105
116
128
108
96
116
104
115
127
107
95
115
103
114
126
106
94
114
102
113
125
105
93
113
101
112
124
104
92
112
100
111
123
103
91
90
89
88
87
86
85
84
83
82
81
80
79
91
111
99
110
122
102
90
78
90
110
98
109
121
101
89
77
89
109
97
108
120
100
88
76
88
108
96
107
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
95
106
110
98
86
74
86
98
94
105
109
97
85
73
85
97
93
104
108
96
84
72
84
96
92
103
107
95
83
71
83
95
91
102
106
94
82
70
82
94
90
101
105
93
81
69
81
93
89
100
104
92
80
68
80
92
88
99
103
91
79
67
79
91
87
98
102
90
78
66
78
90
86
97
101
89
77
65
77
89
85
96
100
88
76
64
76
88
84
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
86
74
62
74
85
73
61
73
84
72
60
72
83
71
59
71
82
70
58
70
81
69
57
69
80
68
56
68
79
67
55
67
78
66
54
66
77
65
53
65
76
64
52
64
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
76
62
50
38
50
64
77
61
49
37
49
65
78
60
48
36
48
66
79
59
47
35
47
67
80
58
46
34
46
68
81
57
45
33
45
69
82
56
44
32
44
70
84
85
86
87
88
89
89
88
87
86
85
84
83
55
43
31
43
71
72
73
74
75
76
77
78
79
80
81
82
83
54
42
30
42
53
41
29
41
52
40
28
40
51
39
27
39
50
38
26
38
49
48
47
46
45
44
43
42
41
40
39
38
37
25
26
27
28
29
30
31
32
33
34
35
36
37
50
36
24
38
51
35
23
39
52
34
22
40
53
33
21
41
54
32
20
42
55
31
19
43
73
74
75
76
77
78
79
80
81
81
80
79
78
56
30
18
44
60
61
62
63
64
65
66
67
68
69
70
71
72
77
57
29
17
45
59
76
58
28
16
46
58
75
59
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
45
57
74
60
16
2
44
56
73
61
17
1
43
55
72
60
18
0
128
129
130
131
132
133
134
135
136
137
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
91
79
119
126
106
94
90
78
118
125
105
93
89
77
117
124
104
92
88
76
116
123
103
91
90
89
88
87
86
85
84
83
82
81
80
79
91
87
75
115
122
102
90
78
90
86
74
114
121
101
89
77
89
85
73
113
120
100
88
76
88
84
72
112
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
75
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
71
111
112
98
86
74
86
74
70
110
113
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
109
92
80
68
80
68
64
104
108
91
79
67
79
67
63
103
107
90
78
66
78
66
62
102
106
89
77
65
77
65
61
101
105
88
76
64
76
64
60
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
69
57
45
85
68
56
44
84
67
55
43
83
66
54
42
82
65
53
41
81
64
52
40
80
81
82
83
84
85
86
87
88
89
90
91
92
75
74
73
72
71
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
40
39
27
28
29
30
31
32
33
34
35
36
37
38
39
79
91
76
38
26
40
78
90
77
37
25
41
77
89
78
36
24
42
76
88
79
35
23
43
75
87
80
34
22
44
74
86
81
33
21
45
73
85
82
32
20
46
60
61
62
63
64
65
66
67
68
69
70
71
72
84
83
31
19
47
48
49
50
51
52
53
54
55
56
57
58
59
83
84
30
18
82
83
29
17
81
82
28
16
80
81
27
15
79
80
26
14
78
79
80
81
82
83
84
84
83
82
81
80
79
25
24
23
22
21
20
19
18
17
16
15
14
13
77
78
26
12
76
77
27
11
75
76
28
10
74
75
29
9
73
74
30
8
72
73
31
7
33
34
35
36
37
38
39
40
41
42
43
44
45
71
72
32
6
20
21
22
23
24
25
26
27
28
29
30
31
32
46
70
71
33
5
19
47
69
70
34
4
18
48
68
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
46
45
44
43
42
41
40
39
38
37
36
35
3
17
49
67
58
44
2
16
50
66
59
43
1
15
51
65
60
42
0
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
137
148
128
116
112
100
136
147
127
115
111
99
135
146
126
114
110
98
134
145
125
113
109
97
133
144
124
112
108
96
132
143
123
111
107
95
131
142
122
110
106
94
130
141
121
109
105
93
129
140
120
108
104
92
128
139
119
107
103
91
127
138
118
106
102
90
126
137
117
105
104
103
102
101
100
99
98
97
96
95
94
93
105
101
89
125
136
116
104
92
104
100
88
124
135
115
103
91
103
99
87
123
134
114
102
90
102
98
86
122
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
89
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
85
121
125
112
100
88
100
88
84
120
124
111
99
87
99
87
83
119
123
110
98
86
98
86
82
118
122
109
97
85
97
85
81
117
121
108
96
84
96
84
80
116
120
107
95
83
95
83
79
115
119
106
94
82
94
82
78
114
118
105
93
81
93
81
77
113
117
104
92
80
92
80
76
112
116
103
91
79
91
79
75
111
115
102
90
78
90
78
74
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
101
88
76
64
100
87
75
63
99
86
74
62
98
85
73
61
97
84
72
60
96
83
71
59
95
82
70
58
94
81
69
57
93
80
68
56
92
79
67
55
91
78
66
54
90
89
88
87
86
85
84
83
82
81
80
79
78
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
91
77
89
52
40
54
92
76
88
51
39
55
91
75
87
50
38
56
90
74
86
49
37
57
89
73
85
48
36
58
88
72
84
47
35
59
87
71
83
46
34
60
74
75
76
77
78
79
80
81
82
83
84
85
86
70
82
45
33
61
62
63
64
65
66
67
68
69
70
71
72
73
69
81
44
32
68
80
43
31
67
79
42
30
66
78
41
29
65
77
40
28
64
65
66
67
68
69
70
71
72
73
74
75
76
39
38
37
36
35
34
33
32
31
30
29
28
27
63
77
40
26
62
78
41
25
61
79
42
24
60
80
43
23
59
81
44
22
58
82
45
21
19
20
21
22
23
24
25
26
27
28
29
30
31
57
83
46
20
6
7
8
9
10
11
12
13
14
15
16
17
18
32
56
83
47
19
5
33
55
82
48
18
4
34
54
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
58
57
56
55
54
53
52
51
50
49
17
3
35
53
70
56
16
2
36
52
71
55
15
1
37
51
72
54
14
0
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
99
111
115
127
147
138
98
110
114
126
146
137
97
109
113
125
145
136
96
108
112
124
144
135
95
107
111
123
143
134
94
106
110
122
142
133
93
105
109
121
141
132
92
104
108
120
140
131
91
103
107
119
139
130
90
102
106
118
138
129
89
101
105
117
137
128
88
100
104
92
93
94
95
96
97
98
99
100
101
102
103
104
116
136
127
87
99
103
91
103
115
135
126
86
98
102
90
102
114
134
125
85
97
101
89
101
113
133
124
84
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
88
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
123
83
87
99
87
99
111
125
122
82
86
98
86
98
110
125
121
81
85
97
85
97
109
124
120
80
84
96
84
96
108
123
119
79
83
95
83
95
107
122
118
78
82
94
82
94
106
121
117
77
81
93
81
93
105
120
116
76
80
92
80
92
104
119
115
75
79
91
79
91
103
118
114
74
78
90
78
90
102
117
113
73
77
89
77
89
101
116
112
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
63
75
87
102
62
74
86
101
61
73
85
100
60
72
84
99
59
71
83
98
58
70
82
97
57
69
81
96
56
68
80
95
55
67
79
94
54
66
78
93
53
65
77
92
52
51
50
49
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
79
80
81
82
83
84
85
86
87
88
89
90
91
53
39
51
89
78
92
54
38
50
89
77
91
55
37
49
88
76
90
56
36
48
87
75
89
57
35
47
86
74
88
58
34
46
85
73
87
59
33
45
84
72
86
72
71
70
69
68
67
66
65
64
63
62
61
60
32
44
83
71
85
84
83
82
81
80
79
78
77
76
75
74
73
31
43
82
70
30
42
81
69
29
41
80
68
28
40
79
67
27
39
78
66
26
27
28
29
30
31
32
33
34
35
36
37
38
77
76
75
74
73
72
71
70
69
68
67
66
65
25
39
78
64
24
40
79
63
23
41
80
62
22
42
81
61
21
43
82
60
20
44
83
59
19
18
17
16
15
14
13
12
11
10
9
8
7
19
45
83
58
32
31
30
29
28
27
26
25
24
23
22
21
20
6
18
46
82
57
33
5
17
47
81
56
34
4
16
48
49
50
51
52
53
54
55
56
57
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
55
35
3
15
55
69
54
36
2
14
54
70
53
37
1
13
53
71
52
38
0
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
98
110
114
126
146
139
97
109
113
125
145
138
96
108
112
124
144
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
91
92
93
94
95
96
97
98
99
100
101
102
103
115
135
128
86
98
102
90
102
114
134
127
85
97
101
89
101
113
133
126
84
96
100
88
100
112
132
125
83
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
87
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
124
82
86
98
86
98
110
124
123
81
85
97
85
97
109
125
122
80
84
96
84
96
108
125
121
79
83
95
83
95
107
124
120
78
82
94
82
94
106
123
119
77
81
93
81
93
105
122
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
62
74
86
103
61
73
85
102
60
72
84
101
59
71
83
100
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
50
49
48
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
80
81
82
83
84
85
86
87
88
89
90
91
92
52
38
50
88
79
91
53
37
49
89
78
90
54
36
48
89
77
89
55
35
47
88
76
88
56
34
46
87
75
87
57
33
45
86
74
86
58
32
44
85
73
85
71
70
69
68
67
66
65
64
63
62
61
60
59
31
43
84
72
84
83
82
81
80
79
78
77
76
75
74
73
72
30
42
83
71
29
41
82
70
28
40
81
69
27
39
80
68
26
38
79
67
25
26
27
28
29
30
31
32
33
34
35
36
37
78
77
76
75
74
73
72
71
70
69
68
67
66
24
38
79
65
23
39
80
64
22
40
81
63
21
41
82
62
20
42
83
61
19
43
83
60
20
19
18
17
16
15
14
13
12
11
10
9
8
18
44
82
59
33
32
31
30
29
28
27
26
25
24
23
22
21
7
17
45
81
58
34
6
16
46
80
57
35
5
15
47
48
49
50
51
52
53
54
55
56
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
56
36
4
14
54
68
55
37
3
13
53
69
54
38
2
12
52
70
53
39
1
0
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
148
147
146
145
144
143
142
141
140
139
97
109
113
125
145
138
96
108
112
124
144
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
90
91
92
93
94
95
96
97
98
99
100
101
102
114
134
127
85
97
101
89
101
113
133
126
84
96
100
88
100
112
132
125
83
95
99
87
99
111
131
124
82
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
86
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
123
81
85
97
85
97
109
123
122
80
84
96
84
96
108
124
121
79
83
95
83
95
107
124
120
78
82
94
82
94
106
123
119
77
81
93
81
93
105
122
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
61
73
85
102
60
72
84
101
59
71
83
100
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
49
48
47
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
81
82
83
84
85
86
87
88
89
90
91
92
91
51
37
49
87
80
90
52
36
48
88
79
89
53
35
47
89
78
88
54
34
46
89
77
87
55
33
45
88
76
86
56
32
44
87
75
85
57
31
43
86
74
84
70
69
68
67
66
65
64
63
62
61
60
59
58
30
42
85
73
83
82
81
80
79
78
77
76
75
74
73
72
71
29
41
84
72
28
40
83
71
27
39
82
70
26
38
81
69
25
37
80
68
24
25
26
27
28
29
30
31
32
33
34
35
36
79
78
77
76
75
74
73
72
71
70
69
68
67
23
37
80
66
22
38
81
65
21
39
82
64
20
40
83
63
19
41
83
62
18
42
82
61
21
20
19
18
17
16
15
14
13
12
11
10
9
17
43
81
60
34
33
32
31
30
29
28
27
26
25
24
23
22
8
16
44
80
59
35
7
15
45
79
58
36
6
14
46
47
48
49
50
51
52
53
54
55
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
57
37
5
13
53
67
56
38
4
12
52
68
55
39
3
11
51
69
54
40
2
1
0
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
147
146
145
144
143
142
141
140
139
138
96
108
112
124
144
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
89
90
91
92
93
94
95
96
97
98
99
100
101
113
133
126
84
96
100
88
100
112
132
125
83
95
99
87
99
111
131
124
82
94
98
86
98
110
130
123
81
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
85
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
122
80
84
96
84
96
108
122
121
79
83
95
83
95
107
123
120
78
82
94
82
94
106
123
119
77
81
93
81
93
105
122
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
60
72
84
101
59
71
83
100
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
48
47
46
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
82
83
84
85
86
87
88
89
90
91
92
91
90
50
36
48
86
81
89
51
35
47
87
80
88
52
34
46
88
79
87
53
33
45
89
78
86
54
32
44
89
77
85
55
31
43
88
76
84
56
30
42
87
75
83
69
68
67
66
65
64
63
62
61
60
59
58
57
29
41
86
74
82
81
80
79
78
77
76
75
74
73
72
71
70
28
40
85
73
27
39
84
72
26
38
83
71
25
37
82
70
24
36
81
69
23
24
25
26
27
28
29
30
31
32
33
34
35
80
79
78
77
76
75
74
73
72
71
70
69
68
22
36
81
67
21
37
82
66
20
38
83
65
19
39
83
64
18
40
82
63
17
41
81
62
22
21
20
19
18
17
16
15
14
13
12
11
10
16
42
80
61
35
34
33
32
31
30
29
28
27
26
25
24
23
9
15
43
79
60
36
8
14
44
78
59
37
7
13
45
46
47
48
49
50
51
52
53
54
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
58
38
6
12
52
66
57
39
5
11
51
67
56
40
4
10
50
68
55
41
3
2
1
0
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
146
145
144
143
142
141
140
139
138
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
88
89
90
91
92
93
94
95
96
97
98
99
100
112
132
125
83
95
99
87
99
111
131
124
82
94
98
86
98
110
130
123
81
93
97
85
97
109
129
122
80
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
84
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
121
79
83
95
83
95
107
121
120
78
82
94
82
94
106
122
119
77
81
93
81
93
105
122
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
59
71
83
100
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
47
46
45
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
84
85
86
87
88
89
90
91
92
91
90
89
49
35
47
85
82
88
50
34
46
86
81
87
51
33
45
87
80
86
52
32
44
88
79
85
53
31
43
89
78
84
54
30
42
89
77
83
55
29
41
88
76
82
68
67
66
65
64
63
62
61
60
59
58
57
56
28
40
87
75
81
80
79
78
77
76
75
74
73
72
71
70
69
27
39
86
74
26
38
85
73
25
37
84
72
24
36
83
71
23
35
82
70
22
23
24
25
26
27
28
29
30
31
32
33
34
81
80
79
78
77
76
75
74
73
72
71
70
69
21
35
82
68
20
36
83
67
19
37
83
66
18
38
82
65
17
39
81
64
16
40
80
63
23
22
21
20
19
18
17
16
15
14
13
12
11
15
41
79
62
36
35
34
33
32
31
30
29
28
27
26
25
24
10
14
42
78
61
37
9
13
43
77
60
38
8
12
44
45
46
47
48
49
50
51
52
53
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
59
39
7
11
51
65
58
40
6
10
50
66
57
41
5
9
49
67
56
42
4
3
2
1
0
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
145
144
143
142
141
140
139
138
137
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
87
88
89
90
91
92
93
94
95
96
97
98
99
111
131
124
82
94
98
86
98
110
130
123
81
93
97
85
97
109
129
122
80
92
96
84
96
108
128
121
79
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
83
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
120
78
82
94
82
94
106
120
119
77
81
93
81
93
105
121
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
46
45
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
48
34
46
84
83
87
49
33
45
85
82
86
50
32
44
86
81
85
51
31
43
87
80
84
52
30
42
88
79
83
53
29
41
89
78
82
54
28
40
89
77
81
67
66
65
64
63
62
61
60
59
58
57
56
55
27
39
88
76
80
79
78
77
76
75
74
73
72
71
70
69
68
26
38
87
75
25
37
86
74
24
36
85
73
23
35
84
72
22
34
83
71
21
22
23
24
25
26
27
28
29
30
31
32
33
82
81
80
79
78
77
76
75
74
73
72
71
70
20
34
83
69
19
35
83
68
18
36
82
67
17
37
81
66
16
38
80
65
15
39
79
64
24
23
22
21
20
19
18
17
16
15
14
13
12
14
40
78
63
37
36
35
34
33
32
31
30
29
28
27
26
25
11
13
41
77
62
38
10
12
42
76
61
39
9
11
43
44
45
46
47
48
49
50
51
52
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
60
40
8
10
50
64
59
41
7
9
49
65
58
42
6
8
48
66
57
43
5
4
3
2
1
0
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
144
143
142
141
140
139
138
137
136
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
86
87
88
89
90
91
92
93
94
95
96
97
98
110
130
123
81
93
97
85
97
109
129
122
80
92
96
84
96
108
128
121
79
91
95
83
95
107
127
120
78
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
82
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
119
77
81
93
81
93
105
119
118
76
80
92
80
92
104
120
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
45
44
43
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
85
86
87
88
89
90
91
92
91
90
89
88
87
47
33
45
83
84
86
48
32
44
84
83
85
49
31
43
85
82
84
50
30
42
86
81
83
51
29
41
87
80
82
52
28
40
88
79
81
53
27
39
89
78
80
66
65
64
63
62
61
60
59
58
57
56
55
54
26
38
89
77
79
78
77
76
75
74
73
72
71
70
69
68
67
25
37
88
76
24
36
87
75
23
35
86
74
22
34
85
73
21
33
84
72
20
21
22
23
24
25
26
27
28
29
30
31
32
83
82
81
80
79
78
77
76
75
74
73
72
71
19
33
83
70
18
34
82
69
17
35
81
68
16
36
80
67
15
37
79
66
14
38
78
65
25
24
23
22
21
20
19
18
17
16
15
14
13
13
39
77
64
38
37
36
35
34
33
32
31
30
29
28
27
26
12
12
40
76
63
39
11
11
41
75
62
40
10
10
42
43
44
45
46
47
48
49
50
51
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
61
41
9
9
49
63
60
42
8
8
48
64
59
43
7
7
47
65
58
44
6
5
4
3
2
1
0
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
143
142
141
140
139
138
137
136
135
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
85
86
87
88
89
90
91
92
93
94
95
96
97
109
129
122
80
92
96
84
96
108
128
121
79
91
95
83
95
107
127
120
78
90
94
82
94
106
126
119
77
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
81
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
118
76
80
92
80
92
104
118
117
75
79
91
79
91
103
119
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
44
43
42
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
86
87
88
89
90
91
92
91
90
89
88
87
86
46
32
44
82
85
85
47
31
43
83
84
84
48
30
42
84
83
83
49
29
41
85
82
82
50
28
40
86
81
81
51
27
39
87
80
80
52
26
38
88
79
79
65
64
63
62
61
60
59
58
57
56
55
54
53
25
37
89
78
78
77
76
75
74
73
72
71
70
69
68
67
66
24
36
88
77
23
35
87
76
22
34
86
75
21
33
85
74
20
32
84
73
19
20
21
22
23
24
25
26
27
28
29
30
31
83
83
82
81
80
79
78
77
76
75
74
73
72
18
32
82
71
17
33
81
70
16
34
80
69
15
35
79
68
14
36
78
67
13
37
77
66
26
25
24
23
22
21
20
19
18
17
16
15
14
12
38
76
65
39
38
37
36
35
34
33
32
31
30
29
28
27
13
11
39
75
64
40
12
10
40
74
63
41
11
9
41
42
43
44
45
46
47
48
49
50
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
62
42
10
8
48
62
61
43
9
7
47
63
60
44
8
6
46
64
59
45
7
6
5
4
3
2
1
0
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
84
85
86
87
88
89
90
91
92
93
94
95
96
108
128
121
79
91
95
83
95
107
127
120
78
90
94
82
94
106
126
119
77
89
93
81
93
105
125
118
76
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
80
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
117
75
79
91
79
91
103
117
116
74
78
90
78
90
102
118
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
69
81
69
81
93
110
106
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
57
69
86
44
43
42
41
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
87
88
89
90
91
92
91
90
89
88
87
86
85
45
31
43
81
86
84
46
30
42
82
85
83
47
29
41
83
84
82
48
28
40
84
83
81
49
27
39
85
82
80
50
26
38
86
81
79
51
25
37
87
80
78
64
63
62
61
60
59
58
57
56
55
54
53
52
24
36
88
79
77
76
75
74
73
72
71
70
69
68
67
66
65
23
35
87
78
22
34
86
77
21
33
85
76
20
32
84
75
19
31
83
74
18
19
20
21
22
23
24
25
26
27
28
29
30
82
83
83
82
81
80
79
78
77
76
75
74
73
17
31
81
72
16
32
80
71
15
33
79
70
14
34
78
69
13
35
77
68
12
36
76
67
27
26
25
24
23
22
21
20
19
18
17
16
15
11
37
75
66
40
39
38
37
36
35
34
33
32
31
30
29
28
14
10
38
74
65
41
13
9
39
73
64
42
12
8
40
41
42
43
44
45
46
47
48
49
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
63
43
11
7
47
61
62
44
10
6
46
62
61
45
9
5
45
63
60
46
8
7
6
5
4
3
2
1
0
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
141
140
139
138
137
136
135
134
133
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
83
84
85
86
87
88
89
90
91
92
93
94
95
107
127
120
78
90
94
82
94
106
126
119
77
89
93
81
93
105
125
118
76
88
92
80
92
104
124
117
75
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
79
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
116
74
78
90
78
90
102
116
115
73
77
89
77
89
101
117
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
69
81
69
81
93
110
106
64
68
80
68
80
92
109
105
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
57
69
86
44
56
68
85
43
42
41
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
88
89
90
91
92
91
90
89
88
87
86
85
84
44
30
42
80
87
83
45
29
41
81
86
82
46
28
40
82
85
81
47
27
39
83
84
80
48
26
38
84
83
79
49
25
37
85
82
78
50
24
36
86
81
77
63
62
61
60
59
58
57
56
55
54
53
52
51
23
35
87
80
76
75
74
73
72
71
70
69
68
67
66
65
64
22
34
86
79
21
33
85
78
20
32
84
77
19
31
83
76
18
30
82
75
17
18
19
20
21
22
23
24
25
26
27
28
29
81
82
83
83
82
81
80
79
78
77
76
75
74
16
30
80
73
15
31
79
72
14
32
78
71
13
33
77
70
12
34
76
69
11
35
75
68
28
27
26
25
24
23
22
21
20
19
18
17
16
10
36
74
67
41
40
39
38
37
36
35
34
33
32
31
30
29
15
9
37
73
66
42
14
8
38
72
65
43
13
7
39
40
41
42
43
44
45
46
47
48
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
64
44
12
6
46
60
63
45
11
5
45
61
62
46
10
4
44
62
61
47
9
8
7
6
5
4
3
2
1
0
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
140
139
138
137
136
135
134
133
132
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
107
127
120
78
90
94
82
83
84
85
86
87
88
89
90
91
92
93
94
106
126
119
77
89
93
81
93
105
125
118
76
88
92
80
92
104
124
117
75
87
91
79
91
103
123
116
74
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
78
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
115
73
77
89
77
89
101
115
114
72
76
88
76
88
100
116
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
69
81
69
81
93
110
106
64
68
80
68
80
92
109
105
63
67
79
67
79
91
108
104
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
57
69
86
44
56
68
85
43
55
67
84
42
41
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
89
90
91
92
91
90
89
88
87
86
85
84
83
43
29
41
79
88
82
44
28
40
80
87
81
45
27
39
81
86
80
46
26
38
82
85
79
47
25
37
83
84
78
48
24
36
84
83
77
49
23
35
85
82
76
62
61
60
59
58
57
56
55
54
53
52
51
50
22
34
86
81
75
74
73
72
71
70
69
68
67
66
65
64
63
21
33
85
80
20
32
84
79
19
31
83
78
18
30
82
77
17
29
81
76
16
17
18
19
20
21
22
23
24
25
26
27
28
80
81
82
83
83
82
81
80
79
78
77
76
75
15
29
79
74
14
30
78
73
13
31
77
72
12
32
76
71
11
33
75
70
10
34
74
69
29
28
27
26
25
24
23
22
21
20
19
18
17
9
35
73
68
42
41
40
39
38
37
36
35
34
33
32
31
30
16
8
36
72
67
43
15
7
37
71
66
44
14
6
38
39
40
41
42
43
44
45
46
47
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
65
45
13
5
45
59
64
46
12
4
44
60
63
47
11
3
43
61
62
48
10
9
8
7
6
5
4
3
2
1
0
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
139
138
137
136
135
134
133
132
131
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
107
127
120
78
90
94
106
126
119
77
89
93
81
82
83
84
85
86
87
88
89
90
91
92
93
105
125
118
76
88
92
80
92
104
124
117
75
87
91
79
91
103
123
116
74
86
90
78
90
102
122
115
73
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
77
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
114
72
76
88
76
88
100
114
113
71
75
87
75
87
99
115
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
69
81
69
81
93
110
106
64
68
80
68
80
92
109
105
63
67
79
67
79
91
108
104
62
66
78
66
78
90
107
103
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
57
69
86
44
56
68
85
43
55
67
84
42
54
66
83
41
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
90
91
92
91
90
89
88
87
86
85
84
83
82
42
28
40
78
89
81
43
27
39
79
88
80
44
26
38
80
87
79
45
25
37
81
86
78
46
24
36
82
85
77
47
23
35
83
84
76
48
22
34
84
83
75
61
60
59
58
57
56
55
54
53
52
51
50
49
21
33
85
82
74
73
72
71
70
69
68
67
66
65
64
63
62
20
32
84
81
19
31
83
80
18
30
82
79
17
29
81
78
16
28
80
77
15
16
17
18
19
20
21
22
23
24
25
26
27
79
80
81
82
83
83
82
81
80
79
78
77
76
14
28
78
75
13
29
77
74
12
30
76
73
11
31
75
72
10
32
74
71
9
33
73
70
30
29
28
27
26
25
24
23
22
21
20
19
18
8
34
72
69
43
42
41
40
39
38
37
36
35
34
33
32
31
17
7
35
71
68
44
16
6
36
70
67
45
15
5
37
38
39
40
41
42
43
44
45
46
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
66
46
14
4
44
58
65
47
13
3
43
59
64
48
12
2
42
60
63
49
11
10
9
8
7
6
5
4
3
2
1
0
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
138
137
136
135
134
133
132
131
130
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
107
127
120
78
90
94
106
126
119
77
89
93
105
125
118
76
88
92
80
81
82
83
84
85
86
87
88
89
90
91
92
104
124
117
75
87
91
79
91
103
123
116
74
86
90
78
90
102
122
115
73
85
89
77
89
101
121
114
72
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
76
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
113
71
75
87
75
87
99
113
112
70
74
86
74
86
98
114
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
69
81
69
81
93
110
106
64
68
80
68
80
92
109
105
63
67
79
67
79
91
108
104
62
66
78
66
78
90
107
103
61
65
77
65
77
89
106
102
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
57
69
86
44
56
68
85
43
55
67
84
42
54
66
83
41
53
65
82
40
39
38
37
36
35
34
33
32
31
30
29
28
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
91
92
91
90
89
88
87
86
85
84
83
82
81
41
27
39
77
90
80
42
26
38
78
89
79
43
25
37
79
88
78
44
24
36
80
87
77
45
23
35
81
86
76
46
22
34
82
85
75
47
21
33
83
84
74
60
59
58
57
56
55
54
53
52
51
50
49
48
20
32
84
83
73
72
71
70
69
68
67
66
65
64
63
62
61
19
31
83
82
18
30
82
81
17
29
81
80
16
28
80
79
15
27
79
78
14
15
16
17
18
19
20
21
22
23
24
25
26
78
79
80
81
82
83
83
82
81
80
79
78
77
13
27
77
76
12
28
76
75
11
29
75
74
10
30
74
73
9
31
73
72
8
32
72
71
31
30
29
28
27
26
25
24
23
22
21
20
19
7
33
71
70
44
43
42
41
40
39
38
37
36
35
34
33
32
18
6
34
70
69
45
17
5
35
69
68
46
16
4
36
37
38
39
40
41
42
43
44
45
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
47
15
3
43
57
66
48
14
2
42
58
65
49
13
1
41
59
64
50
12
11
10
9
8
7
6
5
4
3
2
1
0
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
111
123
103
115
135
123
110
122
102
114
134
122
109
121
101
113
133
121
108
120
100
112
132
120
107
119
99
111
131
119
106
118
98
110
130
118
105
117
97
109
129
117
104
116
96
108
128
116
103
115
95
107
127
115
102
114
94
106
126
114
101
113
93
105
125
113
100
112
92
80
81
82
83
84
85
86
87
88
89
90
91
92
104
124
112
99
111
91
79
91
103
123
111
98
110
90
78
90
102
122
110
97
109
89
77
89
101
121
109
96
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
108
95
99
87
75
87
99
111
107
94
98
86
74
86
98
110
106
93
97
85
73
85
97
109
105
92
96
84
72
84
96
108
104
91
95
83
71
83
95
107
103
90
94
82
70
82
94
106
102
89
93
81
69
81
93
105
101
88
92
80
68
80
92
104
100
87
91
79
67
79
91
103
99
86
90
78
66
78
90
102
98
85
89
77
65
77
89
101
97
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
75
63
75
87
74
62
74
86
73
61
73
85
72
60
72
84
71
59
71
83
70
58
70
82
69
57
69
81
68
56
68
80
67
55
67
79
66
54
66
78
65
53
65
77
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
65
51
39
51
63
77
66
50
38
50
62
78
67
49
37
49
61
79
68
48
36
48
60
80
69
47
35
47
59
81
70
46
34
46
58
82
71
45
33
45
57
83
84
83
82
81
80
79
78
77
76
75
74
73
72
44
32
44
56
84
85
86
87
88
89
90
90
89
88
87
86
85
43
31
43
55
42
30
42
54
41
29
41
53
40
28
40
52
39
27
39
51
38
37
36
35
34
33
32
31
30
29
28
27
26
38
39
40
41
42
43
44
45
46
47
48
49
50
39
25
37
51
40
24
36
52
41
23
35
53
42
22
34
54
43
21
33
55
44
20
32
56
71
70
69
68
67
66
65
64
63
62
61
60
59
45
19
31
57
79
80
81
81
80
79
78
77
76
75
74
73
72
58
46
18
30
58
78
57
45
17
29
59
77
56
44
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
60
76
55
43
3
17
61
75
54
42
2
18
62
74
53
41
1
19
61
73
52
51
50
49
48
47
46
45
44
43
42
41
40
0
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
123
135
115
103
123
111
122
134
114
102
122
110
121
133
113
101
121
109
120
132
112
100
120
108
119
131
111
99
119
107
118
130
110
98
118
106
117
129
109
97
117
105
116
128
108
96
116
104
115
127
107
95
115
103
114
126
106
94
114
102
113
125
105
93
113
101
112
124
104
92
91
90
89
88
87
86
85
84
83
82
81
80
92
112
100
111
123
103
91
79
91
111
99
110
122
102
90
78
90
110
98
109
121
101
89
77
89
109
97
108
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
96
107
111
99
87
75
87
99
95
106
110
98
86
74
86
98
94
105
109
97
85
73
85
97
93
104
108
96
84
72
84
96
92
103
107
95
83
71
83
95
91
102
106
94
82
70
82
94
90
101
105
93
81
69
81
93
89
100
104
92
80
68
80
92
88
99
103
91
79
67
79
91
87
98
102
90
78
66
78
90
86
97
101
89
77
65
77
89
85
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
87
75
63
75
86
74
62
74
85
73
61
73
84
72
60
72
83
71
59
71
82
70
58
70
81
69
57
69
80
68
56
68
79
67
55
67
78
66
54
66
77
65
53
65
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
77
63
51
39
51
65
78
62
50
38
50
66
79
61
49
37
49
67
80
60
48
36
48
68
81
59
47
35
47
69
82
58
46
34
46
70
83
57
45
33
45
71
85
86
87
88
89
90
90
89
88
87
86
85
84
56
44
32
44
72
73
74
75
76
77
78
79
80
81
82
83
84
55
43
31
43
54
42
30
42
53
41
29
41
52
40
28
40
51
39
27
39
50
49
48
47
46
45
44
43
42
41
40
39
38
26
27
28
29
30
31
32
33
34
35
36
37
38
51
37
25
39
52
36
24
40
53
35
23
41
54
34
22
42
55
33
21
43
56
32
20
44
72
73
74
75
76
77
78
79
80
81
81
80
79
57
31
19
45
59
60
61
62
63
64
65
66
67
68
69
70
71
78
58
30
18
46
58
77
59
29
17
45
57
76
60
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
44
56
75
61
17
3
43
55
74
62
18
2
42
54
73
61
19
1
41
53
72
71
70
69
68
67
66
65
64
63
62
61
60
20
0
129
130
131
132
133
134
135
136
137
138
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
91
79
119
126
106
94
90
78
118
125
105
93
89
77
117
124
104
92
91
90
89
88
87
86
85
84
83
82
81
80
92
88
76
116
123
103
91
79
91
87
75
115
122
102
90
78
90
86
74
114
121
101
89
77
89
85
73
113
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
76
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
72
112
113
99
87
75
87
75
71
111
114
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
109
92
80
68
80
68
64
104
108
91
79
67
79
67
63
103
107
90
78
66
78
66
62
102
106
89
77
65
77
65
61
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
69
57
45
85
68
56
44
84
67
55
43
83
66
54
42
82
65
53
41
81
82
83
84
85
86
87
88
89
90
91
92
91
76
75
74
73
72
71
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
40
28
29
30
31
32
33
34
35
36
37
38
39
40
80
90
77
39
27
41
79
89
78
38
26
42
78
88
79
37
25
43
77
87
80
36
24
44
76
86
81
35
23
45
75
85
82
34
22
46
74
84
83
33
21
47
61
62
63
64
65
66
67
68
69
70
71
72
73
83
84
32
20
48
49
50
51
52
53
54
55
56
57
58
59
60
82
83
31
19
81
82
30
18
80
81
29
17
79
80
28
16
78
79
27
15
77
78
79
80
81
82
83
83
82
81
80
79
78
26
25
24
23
22
21
20
19
18
17
16
15
14
76
77
27
13
75
76
28
12
74
75
29
11
73
74
30
10
72
73
31
9
71
72
32
8
32
33
34
35
36
37
38
39
40
41
42
43
44
70
71
33
7
19
20
21
22
23
24
25
26
27
28
29
30
31
45
69
70
34
6
18
46
68
69
35
5
17
47
67
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
45
46
45
44
43
42
41
40
39
38
37
36
4
16
48
66
57
43
3
15
49
65
58
42
2
14
50
64
59
41
1
13
51
52
53
54
55
56
57
58
59
60
61
62
63
60
40
0
130
131
132
133
134
135
136
137
138
139
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
91
79
119
126
106
94
90
78
118
125
105
93
92
91
90
89
88
87
86
85
84
83
82
81
93
89
77
117
124
104
92
80
92
88
76
116
123
103
91
79
91
87
75
115
122
102
90
78
90
86
74
114
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
77
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
73
113
114
100
88
76
88
76
72
112
115
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
109
92
80
68
80
68
64
104
108
91
79
67
79
67
63
103
107
90
78
66
78
66
62
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
69
57
45
85
68
56
44
84
67
55
43
83
66
54
42
82
83
84
85
86
87
88
89
90
91
92
91
90
77
76
75
74
73
72
71
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
29
30
31
32
33
34
35
36
37
38
39
40
41
81
89
78
40
28
42
80
88
79
39
27
43
79
87
80
38
26
44
78
86
81
37
25
45
77
85
82
36
24
46
76
84
83
35
23
47
75
83
84
34
22
48
62
63
64
65
66
67
68
69
70
71
72
73
74
82
85
33
21
49
50
51
52
53
54
55
56
57
58
59
60
61
81
84
32
20
80
83
31
19
79
82
30
18
78
81
29
17
77
80
28
16
76
77
78
79
80
81
82
83
83
82
81
80
79
27
26
25
24
23
22
21
20
19
18
17
16
15
75
78
28
14
74
77
29
13
73
76
30
12
72
75
31
11
71
74
32
10
70
73
33
9
31
32
33
34
35
36
37
38
39
40
41
42
43
69
72
34
8
18
19
20
21
22
23
24
25
26
27
28
29
30
44
68
71
35
7
17
45
67
70
36
6
16
46
66
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
46
47
46
45
44
43
42
41
40
39
38
37
5
15
47
65
58
44
4
14
48
64
59
43
3
13
49
63
60
42
2
12
50
51
52
53
54
55
56
57
58
59
60
61
62
61
41
1
0
131
132
133
134
135
136
137
138
139
140
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
91
79
119
126
106
94
93
92
91
90
89
88
87
86
85
84
83
82
94
90
78
118
125
105
93
81
93
89
77
117
124
104
92
80
92
88
76
116
123
103
91
79
91
87
75
115
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
78
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
74
114
115
101
89
77
89
77
73
113
116
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
109
92
80
68
80
68
64
104
108
91
79
67
79
67
63
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
69
57
45
85
68
56
44
84
67
55
43
83
84
85
86
87
88
89
90
91
92
91
90
89
78
77
76
75
74
73
72
71
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
30
31
32
33
34
35
36
37
38
39
40
41
42
82
88
79
41
29
43
81
87
80
40
28
44
80
86
81
39
27
45
79
85
82
38
26
46
78
84
83
37
25
47
77
83
84
36
24
48
76
82
85
35
23
49
63
64
65
66
67
68
69
70
71
72
73
74
75
81
86
34
22
50
51
52
53
54
55
56
57
58
59
60
61
62
80
85
33
21
79
84
32
20
78
83
31
19
77
82
30
18
76
81
29
17
75
76
77
78
79
80
81
82
83
83
82
81
80
28
27
26
25
24
23
22
21
20
19
18
17
16
74
79
29
15
73
78
30
14
72
77
31
13
71
76
32
12
70
75
33
11
69
74
34
10
30
31
32
33
34
35
36
37
38
39
40
41
42
68
73
35
9
17
18
19
20
21
22
23
24
25
26
27
28
29
43
67
72
36
8
16
44
66
71
37
7
15
45
65
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
47
48
47
46
45
44
43
42
41
40
39
38
6
14
46
64
59
45
5
13
47
63
60
44
4
12
48
62
61
43
3
11
49
50
51
52
53
54
55
56
57
58
59
60
61
62
42
2
1
0
132
133
134
135
136
137
138
139
140
141
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
94
93
92
91
90
89
88
87
86
85
84
83
95
91
79
119
126
106
94
82
94
90
78
118
125
105
93
81
93
89
77
117
124
104
92
80
92
88
76
116
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
79
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
75
115
116
102
90
78
90
78
74
114
117
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
109
92
80
68
80
68
64
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
69
57
45
85
68
56
44
84
85
86
87
88
89
90
91
92
91
90
89
88
79
78
77
76
75
74
73
72
71
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
31
32
33
34
35
36
37
38
39
40
41
42
43
83
87
80
42
30
44
82
86
81
41
29
45
81
85
82
40
28
46
80
84
83
39
27
47
79
83
84
38
26
48
78
82
85
37
25
49
77
81
86
36
24
50
64
65
66
67
68
69
70
71
72
73
74
75
76
80
87
35
23
51
52
53
54
55
56
57
58
59
60
61
62
63
79
86
34
22
78
85
33
21
77
84
32
20
76
83
31
19
75
82
30
18
74
75
76
77
78
79
80
81
82
83
83
82
81
29
28
27
26
25
24
23
22
21
20
19
18
17
73
80
30
16
72
79
31
15
71
78
32
14
70
77
33
13
69
76
34
12
68
75
35
11
29
30
31
32
33
34
35
36
37
38
39
40
41
67
74
36
10
16
17
18
19
20
21
22
23
24
25
26
27
28
42
66
73
37
9
15
43
65
72
38
8
14
44
64
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
48
47
46
45
44
43
42
41
40
39
7
13
45
63
60
46
6
12
46
62
61
45
5
11
47
61
62
44
4
10
48
49
50
51
52
53
54
55
56
57
58
59
60
63
43
3
2
1
0
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
95
94
93
92
91
90
89
88
87
86
85
84
96
92
80
120
127
107
95
83
95
91
79
119
126
106
94
82
94
90
78
118
125
105
93
81
93
89
77
117
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
80
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
76
116
117
103
91
79
91
79
75
115
118
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
69
57
45
85
86
87
88
89
90
91
92
91
90
89
88
87
80
79
78
77
76
75
74
73
72
71
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
32
33
34
35
36
37
38
39
40
41
42
43
44
84
86
81
43
31
45
83
85
82
42
30
46
82
84
83
41
29
47
81
83
84
40
28
48
80
82
85
39
27
49
79
81
86
38
26
50
78
80
87
37
25
51
65
66
67
68
69
70
71
72
73
74
75
76
77
79
88
36
24
52
53
54
55
56
57
58
59
60
61
62
63
64
78
87
35
23
77
86
34
22
76
85
33
21
75
84
32
20
74
83
31
19
73
74
75
76
77
78
79
80
81
82
83
83
82
30
29
28
27
26
25
24
23
22
21
20
19
18
72
81
31
17
71
80
32
16
70
79
33
15
69
78
34
14
68
77
35
13
67
76
36
12
28
29
30
31
32
33
34
35
36
37
38
39
40
66
75
37
11
15
16
17
18
19
20
21
22
23
24
25
26
27
41
65
74
38
10
14
42
64
73
39
9
13
43
63
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
49
48
47
46
45
44
43
42
41
40
8
12
44
62
61
47
7
11
45
61
62
46
6
10
46
60
63
45
5
9
47
48
49
50
51
52
53
54
55
56
57
58
59
64
44
4
3
2
1
0
134
135
136
137
138
139
140
141
142
143
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
96
95
94
93
92
91
90
89
88
87
86
85
97
93
81
121
128
108
96
84
96
92
80
120
127
107
95
83
95
91
79
119
126
106
94
82
94
90
78
118
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
81
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
77
117
118
104
92
80
92
80
76
116
119
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
87
88
89
90
91
92
91
90
89
88
87
86
81
80
79
78
77
76
75
74
73
72
71
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
33
34
35
36
37
38
39
40
41
42
43
44
45
85
85
82
44
32
46
84
84
83
43
31
47
83
83
84
42
30
48
82
82
85
41
29
49
81
81
86
40
28
50
80
80
87
39
27
51
79
79
88
38
26
52
66
67
68
69
70
71
72
73
74
75
76
77
78
78
89
37
25
53
54
55
56
57
58
59
60
61
62
63
64
65
77
88
36
24
76
87
35
23
75
86
34
22
74
85
33
21
73
84
32
20
72
73
74
75
76
77
78
79
80
81
82
83
83
31
30
29
28
27
26
25
24
23
22
21
20
19
71
82
32
18
70
81
33
17
69
80
34
16
68
79
35
15
67
78
36
14
66
77
37
13
27
28
29
30
31
32
33
34
35
36
37
38
39
65
76
38
12
14
15
16
17
18
19
20
21
22
23
24
25
26
40
64
75
39
11
13
41
63
74
40
10
12
42
62
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
50
49
48
47
46
45
44
43
42
41
9
11
43
61
62
48
8
10
44
60
63
47
7
9
45
59
64
46
6
8
46
47
48
49
50
51
52
53
54
55
56
57
58
65
45
5
4
3
2
1
0
135
136
137
138
139
140
141
142
143
144
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
97
96
95
94
93
92
91
90
89
88
87
86
98
94
82
122
129
109
97
85
97
93
81
121
128
108
96
84
96
92
80
120
127
107
95
83
95
91
79
119
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
82
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
78
118
119
105
93
81
93
81
77
117
120
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
88
89
90
91
92
91
90
89
88
87
86
85
82
81
80
79
78
77
76
75
74
73
72
71
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
34
35
36
37
38
39
40
41
42
43
44
45
46
86
84
83
45
33
47
85
83
84
44
32
48
84
82
85
43
31
49
83
81
86
42
30
50
82
80
87
41
29
51
81
79
88
40
28
52
80
78
89
39
27
53
67
68
69
70
71
72
73
74
75
76
77
78
79
77
89
38
26
54
55
56
57
58
59
60
61
62
63
64
65
66
76
88
37
25
75
87
36
24
74
86
35
23
73
85
34
22
72
84
33
21
71
72
73
74
75
76
77
78
79
80
81
82
83
32
31
30
29
28
27
26
25
24
23
22
21
20
70
83
33
19
69
82
34
18
68
81
35
17
67
80
36
16
66
79
37
15
65
78
38
14
26
27
28
29
30
31
32
33
34
35
36
37
38
64
77
39
13
13
14
15
16
17
18
19
20
21
22
23
24
25
39
63
76
40
12
12
40
62
75
41
11
11
41
61
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
51
50
49
48
47
46
45
44
43
42
10
10
42
60
63
49
9
9
43
59
64
48
8
8
44
58
65
47
7
7
45
46
47
48
49
50
51
52
53
54
55
56
57
66
46
6
5
4
3
2
1
0
136
137
138
139
140
141
142
143
144
145
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
98
97
96
95
94
93
92
91
90
89
88
87
99
95
83
123
130
110
98
86
98
94
82
122
129
109
97
85
97
93
81
121
128
108
96
84
96
92
80
120
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
83
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
79
119
120
106
94
82
94
82
78
118
121
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
45
46
47
87
83
84
46
34
48
86
82
85
45
33
49
85
81
86
44
32
50
84
80
87
43
31
51
83
79
88
42
30
52
82
78
89
41
29
53
81
77
89
40
28
54
68
69
70
71
72
73
74
75
76
77
78
79
80
76
88
39
27
55
56
57
58
59
60
61
62
63
64
65
66
67
75
87
38
26
74
86
37
25
73
85
36
24
72
84
35
23
71
83
34
22
70
71
72
73
74
75
76
77
78
79
80
81
82
33
32
31
30
29
28
27
26
25
24
23
22
21
69
83
34
20
68
83
35
19
67
82
36
18
66
81
37
17
65
80
38
16
64
79
39
15
25
26
27
28
29
30
31
32
33
34
35
36
37
63
78
40
14
12
13
14
15
16
17
18
19
20
21
22
23
24
38
62
77
41
13
11
39
61
76
42
12
10
40
60
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
52
51
50
49
48
47
46
45
44
43
11
9
41
59
64
50
10
8
42
58
65
49
9
7
43
57
66
48
8
6
44
45
46
47
48
49
50
51
52
53
54
55
56
67
47
7
6
5
4
3
2
1
0
137
138
139
140
141
142
143
144
145
146
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
99
98
97
96
95
94
93
92
91
90
89
88
100
96
84
124
131
111
99
87
99
95
83
123
130
110
98
86
98
94
82
122
129
109
97
85
97
93
81
121
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
84
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
80
120
121
107
95
83
95
83
79
119
122
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
100
83
71
59
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
90
91
92
91
90
89
88
87
86
85
84
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
45
46
47
48
88
82
85
47
35
49
87
81
86
46
34
50
86
80
87
45
33
51
85
79
88
44
32
52
84
78
89
43
31
53
83
77
89
42
30
54
82
76
88
41
29
55
69
70
71
72
73
74
75
76
77
78
79
80
81
75
87
40
28
56
57
58
59
60
61
62
63
64
65
66
67
68
74
86
39
27
73
85
38
26
72
84
37
25
71
83
36
24
70
82
35
23
69
70
71
72
73
74
75
76
77
78
79
80
81
34
33
32
31
30
29
28
27
26
25
24
23
22
68
82
35
21
67
83
36
20
66
83
37
19
65
82
38
18
64
81
39
17
63
80
40
16
24
25
26
27
28
29
30
31
32
33
34
35
36
62
79
41
15
11
12
13
14
15
16
17
18
19
20
21
22
23
37
61
78
42
14
10
38
60
77
43
13
9
39
59
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
53
52
51
50
49
48
47
46
45
44
12
8
40
58
65
51
11
7
41
57
66
50
10
6
42
56
67
49
9
5
43
44
45
46
47
48
49
50
51
52
53
54
55
68
48
8
7
6
5
4
3
2
1
0
138
139
140
141
142
143
144
145
146
147
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
137
144
124
112
108
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
100
99
98
97
96
95
94
93
92
91
90
89
101
97
85
125
132
112
100
88
100
96
84
124
131
111
99
87
99
95
83
123
130
110
98
86
98
94
82
122
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
85
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
81
121
122
108
96
84
96
84
80
120
123
107
95
83
95
83
79
119
123
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
101
84
72
60
100
83
71
59
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
91
92
91
90
89
88
87
86
85
84
83
82
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
46
47
48
49
89
81
86
48
36
50
88
80
87
47
35
51
87
79
88
46
34
52
86
78
89
45
33
53
85
77
89
44
32
54
84
76
88
43
31
55
83
75
87
42
30
56
70
71
72
73
74
75
76
77
78
79
80
81
82
74
86
41
29
57
58
59
60
61
62
63
64
65
66
67
68
69
73
85
40
28
72
84
39
27
71
83
38
26
70
82
37
25
69
81
36
24
68
69
70
71
72
73
74
75
76
77
78
79
80
35
34
33
32
31
30
29
28
27
26
25
24
23
67
81
36
22
66
82
37
21
65
83
38
20
64
83
39
19
63
82
40
18
62
81
41
17
23
24
25
26
27
28
29
30
31
32
33
34
35
61
80
42
16
10
11
12
13
14
15
16
17
18
19
20
21
22
36
60
79
43
15
9
37
59
78
44
14
8
38
58
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
54
53
52
51
50
49
48
47
46
45
13
7
39
57
66
52
12
6
40
56
67
51
11
5
41
55
68
50
10
4
42
43
44
45
46
47
48
49
50
51
52
53
54
69
49
9
8
7
6
5
4
3
2
1
0
139
140
141
142
143
144
145
146
147
148
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
138
145
125
113
109
97
137
144
124
112
108
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
101
100
99
98
97
96
95
94
93
92
91
90
102
98
86
126
133
113
101
89
101
97
85
125
132
112
100
88
100
96
84
124
131
111
99
87
99
95
83
123
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
86
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
82
122
123
109
97
85
97
85
81
121
124
108
96
84
96
84
80
120
124
107
95
83
95
83
79
119
123
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
102
85
73
61
101
84
72
60
100
83
71
59
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
92
91
90
89
88
87
86
85
84
83
82
81
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
47
48
49
50
90
80
87
49
37
51
89
79
88
48
36
52
88
78
89
47
35
53
87
77
89
46
34
54
86
76
88
45
33
55
85
75
87
44
32
56
84
74
86
43
31
57
71
72
73
74
75
76
77
78
79
80
81
82
83
73
85
42
30
58
59
60
61
62
63
64
65
66
67
68
69
70
72
84
41
29
71
83
40
28
70
82
39
27
69
81
38
26
68
80
37
25
67
68
69
70
71
72
73
74
75
76
77
78
79
36
35
34
33
32
31
30
29
28
27
26
25
24
66
80
37
23
65
81
38
22
64
82
39
21
63
83
40
20
62
83
41
19
61
82
42
18
22
23
24
25
26
27
28
29
30
31
32
33
34
60
81
43
17
9
10
11
12
13
14
15
16
17
18
19
20
21
35
59
80
44
16
8
36
58
79
45
15
7
37
57
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
55
54
53
52
51
50
49
48
47
46
14
6
38
56
67
53
13
5
39
55
68
52
12
4
40
54
69
51
11
3
41
42
43
44
45
46
47
48
49
50
51
52
53
70
50
10
9
8
7
6
5
4
3
2
1
0
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
139
146
126
114
110
98
138
145
125
113
109
97
137
144
124
112
108
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
102
101
100
99
98
97
96
95
94
93
92
91
103
99
87
127
134
114
102
90
102
98
86
126
133
113
101
89
101
97
85
125
132
112
100
88
100
96
84
124
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
87
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
83
123
124
110
98
86
98
86
82
122
125
109
97
85
97
85
81
121
125
108
96
84
96
84
80
120
124
107
95
83
95
83
79
119
123
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
103
86
74
62
102
85
73
61
101
84
72
60
100
83
71
59
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
91
90
89
88
87
86
85
84
83
82
81
80
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
48
49
50
51
91
79
88
50
38
52
90
78
89
49
37
53
89
77
89
48
36
54
88
76
88
47
35
55
87
75
87
46
34
56
86
74
86
45
33
57
85
73
85
44
32
58
72
73
74
75
76
77
78
79
80
81
82
83
84
72
84
43
31
59
60
61
62
63
64
65
66
67
68
69
70
71
71
83
42
30
70
82
41
29
69
81
40
28
68
80
39
27
67
79
38
26
66
67
68
69
70
71
72
73
74
75
76
77
78
37
36
35
34
33
32
31
30
29
28
27
26
25
65
79
38
24
64
80
39
23
63
81
40
22
62
82
41
21
61
83
42
20
60
83
43
19
21
22
23
24
25
26
27
28
29
30
31
32
33
59
82
44
18
8
9
10
11
12
13
14
15
16
17
18
19
20
34
58
81
45
17
7
35
57
80
46
16
6
36
56
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
56
55
54
53
52
51
50
49
48
47
15
5
37
55
68
54
14
4
38
54
69
53
13
3
39
53
70
52
12
2
40
41
42
43
44
45
46
47
48
49
50
51
52
71
51
11
10
9
8
7
6
5
4
3
2
1
0
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
138
147
127
115
111
99
137
146
126
114
110
98
136
145
125
113
109
97
135
144
124
112
108
96
134
143
123
111
107
95
133
142
122
110
106
94
132
141
121
109
105
93
131
140
120
108
104
92
130
139
119
107
103
91
129
138
118
106
102
90
128
137
117
105
101
89
127
136
116
104
103
102
101
100
99
98
97
96
95
94
93
92
104
100
88
126
135
115
103
91
103
99
87
125
134
114
102
90
102
98
86
124
133
113
101
89
101
97
85
123
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
88
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
84
122
125
111
99
87
99
87
83
121
125
110
98
86
98
86
82
120
124
109
97
85
97
85
81
119
123
108
96
84
96
84
80
118
122
107
95
83
95
83
79
117
121
106
94
82
94
82
78
116
120
105
93
81
93
81
77
115
119
104
92
80
92
80
76
114
118
103
91
79
91
79
75
113
117
102
90
78
90
78
74
112
116
101
89
77
89
77
73
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
102
87
75
63
101
86
74
62
100
85
73
61
99
84
72
60
98
83
71
59
97
82
70
58
96
81
69
57
95
80
68
56
94
79
67
55
93
78
66
54
92
77
65
53
91
90
89
88
87
86
85
84
83
82
81
80
79
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
49
50
51
52
92
78
89
51
39
53
91
77
89
50
38
54
90
76
88
49
37
55
89
75
87
48
36
56
88
74
86
47
35
57
87
73
85
46
34
58
86
72
84
45
33
59
73
74
75
76
77
78
79
80
81
82
83
84
85
71
83
44
32
60
61
62
63
64
65
66
67
68
69
70
71
72
70
82
43
31
69
81
42
30
68
80
41
29
67
79
40
28
66
78
39
27
65
66
67
68
69
70
71
72
73
74
75
76
77
38
37
36
35
34
33
32
31
30
29
28
27
26
64
78
39
25
63
79
40
24
62
80
41
23
61
81
42
22
60
82
43
21
59
83
44
20
20
21
22
23
24
25
26
27
28
29
30
31
32
58
83
45
19
7
8
9
10
11
12
13
14
15
16
17
18
19
33
57
82
46
18
6
34
56
81
47
17
5
35
55
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
57
56
55
54
53
52
51
50
49
48
16
4
36
54
69
55
15
3
37
53
70
54
14
2
38
52
71
53
13
1
39
40
41
42
43
44
45
46
47
48
49
50
51
72
52
12
11
10
9
8
7
6
5
4
3
2
1
0
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
100
112
116
128
148
139
99
111
115
127
147
138
98
110
114
126
146
137
97
109
113
125
145
136
96
108
112
124
144
135
95
107
111
123
143
134
94
106
110
122
142
133
93
105
109
121
141
132
92
104
108
120
140
131
91
103
107
119
139
130
90
102
106
118
138
129
89
101
105
93
94
95
96
97
98
99
100
101
102
103
104
105
117
137
128
88
100
104
92
104
116
136
127
87
99
103
91
103
115
135
126
86
98
102
90
102
114
134
125
85
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
89
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
124
84
88
100
88
100
112
126
123
83
87
99
87
99
111
126
122
82
86
98
86
98
110
125
121
81
85
97
85
97
109
124
120
80
84
96
84
96
108
123
119
79
83
95
83
95
107
122
118
78
82
94
82
94
106
121
117
77
81
93
81
93
105
120
116
76
80
92
80
92
104
119
115
75
79
91
79
91
103
118
114
74
78
90
78
90
102
117
113
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
64
76
88
103
63
75
87
102
62
74
86
101
61
73
85
100
60
72
84
99
59
71
83
98
58
70
82
97
57
69
81
96
56
68
80
95
55
67
79
94
54
66
78
93
53
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
80
81
82
83
84
85
86
87
88
89
90
91
92
54
40
52
90
79
93
55
39
51
90
78
92
56
38
50
89
77
91
57
37
49
88
76
90
58
36
48
87
75
89
59
35
47
86
74
88
60
34
46
85
73
87
73
72
71
70
69
68
67
66
65
64
63
62
61
33
45
84
72
86
85
84
83
82
81
80
79
78
77
76
75
74
32
44
83
71
31
43
82
70
30
42
81
69
29
41
80
68
28
40
79
67
27
28
29
30
31
32
33
34
35
36
37
38
39
78
77
76
75
74
73
72
71
70
69
68
67
66
26
40
79
65
25
41
80
64
24
42
81
63
23
43
82
62
22
44
83
61
21
45
84
60
20
19
18
17
16
15
14
13
12
11
10
9
8
20
46
84
59
33
32
31
30
29
28
27
26
25
24
23
22
21
7
19
47
83
58
34
6
18
48
82
57
35
5
17
49
50
51
52
53
54
55
56
57
58
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
56
36
4
16
56
70
55
37
3
15
55
71
54
38
2
14
54
72
53
39
1
2
3
4
5
6
7
8
9
10
11
12
13
53
73
52
51
50
49
48
47
46
45
44
43
42
41
40
0
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
139
138
137
136
135
134
133
132
131
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
107
127
120
78
90
94
106
126
119
77
89
93
81
82
83
84
85
86
87
88
89
90
91
92
93
105
125
118
76
88
92
80
92
104
124
117
75
87
91
79
91
103
123
116
74
86
90
78
90
102
122
115
73
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
77
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
114
72
76
88
76
88
100
114
113
71
75
87
75
87
99
115
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
69
81
69
81
93
110
106
64
68
80
68
80
92
109
105
63
67
79
67
79
91
108
104
62
66
78
66
78
90
107
103
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
57
69
86
44
56
68
85
43
55
67
84
42
54
66
83
41
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
92
93
92
91
90
89
88
87
86
85
84
83
82
42
28
40
78
91
81
43
27
39
79
90
80
44
26
38
80
89
79
45
25
37
81
88
78
46
24
36
82
87
77
47
23
35
83
86
76
48
22
34
84
85
75
61
60
59
58
57
56
55
54
53
52
51
50
49
21
33
83
84
74
73
72
71
70
69
68
67
66
65
64
63
62
20
32
82
83
19
31
81
82
18
30
80
81
17
29
79
80
16
28
78
79
15
16
17
18
19
20
21
22
23
24
25
26
27
77
78
79
80
81
82
83
83
82
81
80
79
78
14
28
76
77
13
29
75
76
12
30
74
75
11
31
73
74
10
32
72
73
9
33
71
72
32
31
30
29
28
27
26
25
24
23
22
21
20
8
34
70
71
45
44
43
42
41
40
39
38
37
36
35
34
33
19
7
35
69
70
46
18
6
36
68
69
47
17
5
37
38
39
40
41
42
43
44
45
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
48
16
4
42
56
67
49
15
3
41
57
66
50
14
2
40
58
65
51
13
12
11
10
9
8
7
6
5
4
3
2
1
39
59
64
63
62
61
60
59
58
57
56
55
54
53
52
14
0
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
112
124
104
116
136
124
111
123
103
115
135
123
110
122
102
114
134
122
109
121
101
113
133
121
108
120
100
112
132
120
107
119
99
111
131
119
106
118
98
110
130
118
105
117
97
109
129
117
104
116
96
108
128
116
103
115
95
107
127
115
102
114
94
106
126
114
101
113
93
81
82
83
84
85
86
87
88
89
90
91
92
93
105
125
113
100
112
92
80
92
104
124
112
99
111
91
79
91
103
123
111
98
110
90
78
90
102
122
110
97
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
109
96
100
88
76
88
100
112
108
95
99
87
75
87
99
111
107
94
98
86
74
86
98
110
106
93
97
85
73
85
97
109
105
92
96
84
72
84
96
108
104
91
95
83
71
83
95
107
103
90
94
82
70
82
94
106
102
89
93
81
69
81
93
105
101
88
92
80
68
80
92
104
100
87
91
79
67
79
91
103
99
86
90
78
66
78
90
102
98
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
76
64
76
88
75
63
75
87
74
62
74
86
73
61
73
85
72
60
72
84
71
59
71
83
70
58
70
82
69
57
69
81
68
56
68
80
67
55
67
79
66
54
66
78
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
66
52
40
52
64
78
67
51
39
51
63
79
68
50
38
50
62
80
69
49
37
49
61
81
70
48
36
48
60
82
71
47
35
47
59
83
72
46
34
46
58
84
85
84
83
82
81
80
79
78
77
76
75
74
73
45
33
45
57
85
86
87
88
89
90
91
91
90
89
88
87
86
44
32
44
56
43
31
43
55
42
30
42
54
41
29
41
53
40
28
40
52
39
38
37
36
35
34
33
32
31
30
29
28
27
39
40
41
42
43
44
45
46
47
48
49
50
51
40
26
38
52
41
25
37
53
42
24
36
54
43
23
35
55
44
22
34
56
45
21
33
57
70
69
68
67
66
65
64
63
62
61
60
59
58
46
20
32
58
80
81
81
80
79
78
77
76
75
74
73
72
71
57
45
19
31
59
79
56
44
18
30
60
78
55
43
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
61
77
54
42
4
18
62
76
53
41
3
19
63
75
52
40
2
20
62
74
51
50
49
48
47
46
45
44
43
42
41
40
39
1
21
61
62
63
64
65
66
67
68
69
70
71
72
73
52
38
0
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
124
136
116
104
124
112
123
135
115
103
123
111
122
134
114
102
122
110
121
133
113
101
121
109
120
132
112
100
120
108
119
131
111
99
119
107
118
130
110
98
118
106
117
129
109
97
117
105
116
128
108
96
116
104
115
127
107
95
115
103
114
126
106
94
114
102
113
125
105
93
92
91
90
89
88
87
86
85
84
83
82
81
93
113
101
112
124
104
92
80
92
112
100
111
123
103
91
79
91
111
99
110
122
102
90
78
90
110
98
109
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
97
108
112
100
88
76
88
100
96
107
111
99
87
75
87
99
95
106
110
98
86
74
86
98
94
105
109
97
85
73
85
97
93
104
108
96
84
72
84
96
92
103
107
95
83
71
83
95
91
102
106
94
82
70
82
94
90
101
105
93
81
69
81
93
89
100
104
92
80
68
80
92
88
99
103
91
79
67
79
91
87
98
102
90
78
66
78
90
86
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
88
76
64
76
87
75
63
75
86
74
62
74
85
73
61
73
84
72
60
72
83
71
59
71
82
70
58
70
81
69
57
69
80
68
56
68
79
67
55
67
78
66
54
66
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
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
53
54
55
56
57
58
59
60
61
62
63
64
65
78
64
52
40
52
66
79
63
51
39
51
67
80
62
50
38
50
68
81
61
49
37
49
69
82
60
48
36
48
70
83
59
47
35
47
71
84
58
46
34
46
72
86
87
88
89
90
91
91
90
89
88
87
86
85
57
45
33
45
73
74
75
76
77
78
79
80
81
82
83
84
85
56
44
32
44
55
43
31
43
54
42
30
42
53
41
29
41
52
40
28
40
51
50
49
48
47
46
45
44
43
42
41
40
39
27
28
29
30
31
32
33
34
35
36
37
38
39
52
38
26
40
53
37
25
41
54
36
24
42
55
35
23
43
56
34
22
44
57
33
21
45
71
72
73
74
75
76
77
78
79
80
81
81
80
58
32
20
46
58
59
60
61
62
63
64
65
66
67
68
69
70
79
59
31
19
45
57
78
60
30
18
44
56
77
61
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
43
55
76
62
18
4
42
54
75
63
19
3
41
53
74
62
20
2
40
52
73
72
71
70
69
68
67
66
65
64
63
62
61
21
1
39
40
41
42
43
44
45
46
47
48
49
50
51
74
60
22
0
130
131
132
133
134
135
136
137
138
139
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
91
79
119
126
106
94
90
78
118
125
105
93
92
91
90
89
88
87
86
85
84
83
82
81
93
89
77
117
124
104
92
80
92
88
76
116
123
103
91
79
91
87
75
115
122
102
90
78
90
86
74
114
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
77
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
73
113
114
100
88
76
88
76
72
112
115
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
109
92
80
68
80
68
64
104
108
91
79
67
79
67
63
103
107
90
78
66
78
66
62
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
69
57
45
85
68
56
44
84
67
55
43
83
66
54
42
82
83
84
85
86
87
88
89
90
91
92
93
92
77
76
75
74
73
72
71
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
29
30
31
32
33
34
35
36
37
38
39
40
41
81
91
78
40
28
42
80
90
79
39
27
43
79
89
80
38
26
44
78
88
81
37
25
45
77
87
82
36
24
46
76
86
83
35
23
47
75
85
84
34
22
48
62
63
64
65
66
67
68
69
70
71
72
73
74
84
83
33
21
49
50
51
52
53
54
55
56
57
58
59
60
61
83
82
32
20
82
81
31
19
81
80
30
18
80
79
29
17
79
78
28
16
78
79
80
81
82
83
83
82
81
80
79
78
77
27
26
25
24
23
22
21
20
19
18
17
16
15
77
76
28
14
76
75
29
13
75
74
30
12
74
73
31
11
73
72
32
10
72
71
33
9
33
34
35
36
37
38
39
40
41
42
43
44
45
71
70
34
8
20
21
22
23
24
25
26
27
28
29
30
31
32
46
70
69
35
7
19
47
69
68
36
6
18
48
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
44
45
46
45
44
43
42
41
40
39
38
37
5
17
49
67
56
42
4
16
50
66
57
41
3
15
51
65
58
40
2
14
52
53
54
55
56
57
58
59
60
61
62
63
64
59
39
1
2
3
4
5
6
7
8
9
10
11
12
13
53
65
60
38
0
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
139
148
128
116
112
100
138
147
127
115
111
99
137
146
126
114
110
98
136
145
125
113
109
97
135
144
124
112
108
96
134
143
123
111
107
95
133
142
122
110
106
94
132
141
121
109
105
93
131
140
120
108
104
92
130
139
119
107
103
91
129
138
118
106
102
90
128
137
117
105
104
103
102
101
100
99
98
97
96
95
94
93
105
101
89
127
136
116
104
92
104
100
88
126
135
115
103
91
103
99
87
125
134
114
102
90
102
98
86
124
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
89
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
85
123
126
112
100
88
100
88
84
122
126
111
99
87
99
87
83
121
125
110
98
86
98
86
82
120
124
109
97
85
97
85
81
119
123
108
96
84
96
84
80
118
122
107
95
83
95
83
79
117
121
106
94
82
94
82
78
116
120
105
93
81
93
81
77
115
119
104
92
80
92
80
76
114
118
103
91
79
91
79
75
113
117
102
90
78
90
78
74
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
103
88
76
64
102
87
75
63
101
86
74
62
100
85
73
61
99
84
72
60
98
83
71
59
97
82
70
58
96
81
69
57
95
80
68
56
94
79
67
55
93
78
66
54
92
91
90
89
88
87
86
85
84
83
82
81
80
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
93
79
90
52
40
54
92
78
90
51
39
55
91
77
89
50
38
56
90
76
88
49
37
57
89
75
87
48
36
58
88
74
86
47
35
59
87
73
85
46
34
60
74
75
76
77
78
79
80
81
82
83
84
85
86
72
84
45
33
61
62
63
64
65
66
67
68
69
70
71
72
73
71
83
44
32
70
82
43
31
69
81
42
30
68
80
41
29
67
79
40
28
66
67
68
69
70
71
72
73
74
75
76
77
78
39
38
37
36
35
34
33
32
31
30
29
28
27
65
79
40
26
64
80
41
25
63
81
42
24
62
82
43
23
61
83
44
22
60
84
45
21
21
22
23
24
25
26
27
28
29
30
31
32
33
59
84
46
20
8
9
10
11
12
13
14
15
16
17
18
19
20
34
58
83
47
19
7
35
57
82
48
18
6
36
56
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
58
57
56
55
54
53
52
51
50
49
17
5
37
55
70
56
16
4
38
54
71
55
15
3
39
53
72
54
14
2
40
41
42
43
44
45
46
47
48
49
50
51
52
73
53
13
12
11
10
9
8
7
6
5
4
3
2
1
41
53
74
52
14
0
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
151
150
149
148
147
146
145
144
143
142
141
101
113
117
129
149
140
100
112
116
128
148
139
99
111
115
127
147
138
98
110
114
126
146
137
97
109
113
125
145
136
96
108
112
124
144
135
95
107
111
123
143
134
94
106
110
122
142
133
93
105
109
121
141
132
92
104
108
120
140
131
91
103
107
119
139
130
90
102
106
94
95
96
97
98
99
100
101
102
103
104
105
106
118
138
129
89
101
105
93
105
117
137
128
88
100
104
92
104
116
136
127
87
99
103
91
103
115
135
126
86
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
90
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
125
85
89
101
89
101
113
127
124
84
88
100
88
100
112
127
123
83
87
99
87
99
111
126
122
82
86
98
86
98
110
125
121
81
85
97
85
97
109
124
120
80
84
96
84
96
108
123
119
79
83
95
83
95
107
122
118
78
82
94
82
94
106
121
117
77
81
93
81
93
105
120
116
76
80
92
80
92
104
119
115
75
79
91
79
91
103
118
114
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
65
77
89
104
64
76
88
103
63
75
87
102
62
74
86
101
61
73
85
100
60
72
84
99
59
71
83
98
58
70
82
97
57
69
81
96
56
68
80
95
55
67
79
94
54
53
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
81
82
83
84
85
86
87
88
89
90
91
92
93
55
41
53
91
80
94
56
40
52
91
79
93
57
39
51
90
78
92
58
38
50
89
77
91
59
37
49
88
76
90
60
36
48
87
75
89
61
35
47
86
74
88
74
73
72
71
70
69
68
67
66
65
64
63
62
34
46
85
73
87
86
85
84
83
82
81
80
79
78
77
76
75
33
45
84
72
32
44
83
71
31
43
82
70
30
42
81
69
29
41
80
68
28
29
30
31
32
33
34
35
36
37
38
39
40
79
78
77
76
75
74
73
72
71
70
69
68
67
27
41
80
66
26
42
81
65
25
43
82
64
24
44
83
63
23
45
84
62
22
46
85
61
21
20
19
18
17
16
15
14
13
12
11
10
9
21
47
85
60
34
33
32
31
30
29
28
27
26
25
24
23
22
8
20
48
84
59
35
7
19
49
83
58
36
6
18
50
51
52
53
54
55
56
57
58
59
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
57
37
5
17
57
71
56
38
4
16
56
72
55
39
3
15
55
73
54
40
2
3
4
5
6
7
8
9
10
11
12
13
14
54
74
53
52
51
50
49
48
47
46
45
44
43
42
41
1
15
53
75
54
42
0
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
140
139
138
137
136
135
134
133
132
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
107
127
120
78
90
94
82
83
84
85
86
87
88
89
90
91
92
93
94
106
126
119
77
89
93
81
93
105
125
118
76
88
92
80
92
104
124
117
75
87
91
79
91
103
123
116
74
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
78
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
115
73
77
89
77
89
101
115
114
72
76
88
76
88
100
116
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
69
81
69
81
93
110
106
64
68
80
68
80
92
109
105
63
67
79
67
79
91
108
104
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
57
69
86
44
56
68
85
43
55
67
84
42
41
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
93
94
93
92
91
90
89
88
87
86
85
84
83
43
29
41
79
92
82
44
28
40
80
91
81
45
27
39
81
90
80
46
26
38
82
89
79
47
25
37
83
88
78
48
24
36
84
87
77
49
23
35
83
86
76
62
61
60
59
58
57
56
55
54
53
52
51
50
22
34
82
85
75
74
73
72
71
70
69
68
67
66
65
64
63
21
33
81
84
20
32
80
83
19
31
79
82
18
30
78
81
17
29
77
80
16
17
18
19
20
21
22
23
24
25
26
27
28
76
77
78
79
80
81
82
83
83
82
81
80
79
15
29
75
78
14
30
74
77
13
31
73
76
12
32
72
75
11
33
71
74
10
34
70
73
33
32
31
30
29
28
27
26
25
24
23
22
21
9
35
69
72
46
45
44
43
42
41
40
39
38
37
36
35
34
20
8
36
68
71
47
19
7
37
67
70
48
18
6
38
39
40
41
42
43
44
45
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
69
49
17
5
41
55
68
50
16
4
40
56
67
51
15
3
39
57
66
52
14
13
12
11
10
9
8
7
6
5
4
3
2
38
58
65
64
63
62
61
60
59
58
57
56
55
54
53
15
1
37
59
66
54
16
0
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
113
125
105
117
137
125
112
124
104
116
136
124
111
123
103
115
135
123
110
122
102
114
134
122
109
121
101
113
133
121
108
120
100
112
132
120
107
119
99
111
131
119
106
118
98
110
130
118
105
117
97
109
129
117
104
116
96
108
128
116
103
115
95
107
127
115
102
114
94
82
83
84
85
86
87
88
89
90
91
92
93
94
106
126
114
101
113
93
81
93
105
125
113
100
112
92
80
92
104
124
112
99
111
91
79
91
103
123
111
98
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
110
97
101
89
77
89
101
113
109
96
100
88
76
88
100
112
108
95
99
87
75
87
99
111
107
94
98
86
74
86
98
110
106
93
97
85
73
85
97
109
105
92
96
84
72
84
96
108
104
91
95
83
71
83
95
107
103
90
94
82
70
82
94
106
102
89
93
81
69
81
93
105
101
88
92
80
68
80
92
104
100
87
91
79
67
79
91
103
99
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
77
65
77
89
76
64
76
88
75
63
75
87
74
62
74
86
73
61
73
85
72
60
72
84
71
59
71
83
70
58
70
82
69
57
69
81
68
56
68
80
67
55
67
79
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
67
53
41
53
65
79
68
52
40
52
64
80
69
51
39
51
63
81
70
50
38
50
62
82
71
49
37
49
61
83
72
48
36
48
60
84
73
47
35
47
59
85
86
85
84
83
82
81
80
79
78
77
76
75
74
46
34
46
58
86
87
88
89
90
91
92
92
91
90
89
88
87
45
33
45
57
44
32
44
56
43
31
43
55
42
30
42
54
41
29
41
53
40
39
38
37
36
35
34
33
32
31
30
29
28
40
41
42
43
44
45
46
47
48
49
50
51
52
41
27
39
53
42
26
38
54
43
25
37
55
44
24
36
56
45
23
35
57
46
22
34
58
69
68
67
66
65
64
63
62
61
60
59
58
57
45
21
33
59
81
81
80
79
78
77
76
75
74
73
72
71
70
56
44
20
32
60
80
55
43
19
31
61
79
54
42
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
62
78
53
41
5
19
63
77
52
40
4
20
64
76
51
39
3
21
63
75
50
49
48
47
46
45
44
43
42
41
40
39
38
2
22
62
63
64
65
66
67
68
69
70
71
72
73
74
51
37
1
23
61
75
52
36
0
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
125
137
117
105
125
113
124
136
116
104
124
112
123
135
115
103
123
111
122
134
114
102
122
110
121
133
113
101
121
109
120
132
112
100
120
108
119
131
111
99
119
107
118
130
110
98
118
106
117
129
109
97
117
105
116
128
108
96
116
104
115
127
107
95
115
103
114
126
106
94
93
92
91
90
89
88
87
86
85
84
83
82
94
114
102
113
125
105
93
81
93
113
101
112
124
104
92
80
92
112
100
111
123
103
91
79
91
111
99
110
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
98
109
113
101
89
77
89
101
97
108
112
100
88
76
88
100
96
107
111
99
87
75
87
99
95
106
110
98
86
74
86
98
94
105
109
97
85
73
85
97
93
104
108
96
84
72
84
96
92
103
107
95
83
71
83
95
91
102
106
94
82
70
82
94
90
101
105
93
81
69
81
93
89
100
104
92
80
68
80
92
88
99
103
91
79
67
79
91
87
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
89
77
65
77
88
76
64
76
87
75
63
75
86
74
62
74
85
73
61
73
84
72
60
72
83
71
59
71
82
70
58
70
81
69
57
69
80
68
56
68
79
67
55
67
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
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
54
55
56
57
58
59
60
61
62
63
64
65
66
79
65
53
41
53
67
80
64
52
40
52
68
81
63
51
39
51
69
82
62
50
38
50
70
83
61
49
37
49
71
84
60
48
36
48
72
85
59
47
35
47
73
87
88
89
90
91
92
92
91
90
89
88
87
86
58
46
34
46
74
75
76
77
78
79
80
81
82
83
84
85
86
57
45
33
45
56
44
32
44
55
43
31
43
54
42
30
42
53
41
29
41
52
51
50
49
48
47
46
45
44
43
42
41
40
28
29
30
31
32
33
34
35
36
37
38
39
40
53
39
27
41
54
38
26
42
55
37
25
43
56
36
24
44
57
35
23
45
58
34
22
46
70
71
72
73
74
75
76
77
78
79
80
81
81
59
33
21
45
57
58
59
60
61
62
63
64
65
66
67
68
69
80
60
32
20
44
56
79
61
31
19
43
55
78
62
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
42
54
77
63
19
5
41
53
76
64
20
4
40
52
75
63
21
3
39
51
74
73
72
71
70
69
68
67
66
65
64
63
62
22
2
38
39
40
41
42
43
44
45
46
47
48
49
50
75
61
23
1
37
51
76
60
24
0
131
132
133
134
135
136
137
138
139
140
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
91
79
119
126
106
94
93
92
91
90
89
88
87
86
85
84
83
82
94
90
78
118
125
105
93
81
93
89
77
117
124
104
92
80
92
88
76
116
123
103
91
79
91
87
75
115
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
78
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
74
114
115
101
89
77
89
77
73
113
116
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
109
92
80
68
80
68
64
104
108
91
79
67
79
67
63
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
69
57
45
85
68
56
44
84
67
55
43
83
84
85
86
87
88
89
90
91
92
93
94
93
78
77
76
75
74
73
72
71
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
30
31
32
33
34
35
36
37
38
39
40
41
42
82
92
79
41
29
43
81
91
80
40
28
44
80
90
81
39
27
45
79
89
82
38
26
46
78
88
83
37
25
47
77
87
84
36
24
48
76
86
83
35
23
49
63
64
65
66
67
68
69
70
71
72
73
74
75
85
82
34
22
50
51
52
53
54
55
56
57
58
59
60
61
62
84
81
33
21
83
80
32
20
82
79
31
19
81
78
30
18
80
77
29
17
79
80
81
82
83
83
82
81
80
79
78
77
76
28
27
26
25
24
23
22
21
20
19
18
17
16
78
75
29
15
77
74
30
14
76
73
31
13
75
72
32
12
74
71
33
11
73
70
34
10
34
35
36
37
38
39
40
41
42
43
44
45
46
72
69
35
9
21
22
23
24
25
26
27
28
29
30
31
32
33
47
71
68
36
8
20
48
70
67
37
7
19
49
69
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
43
44
45
46
45
44
43
42
41
40
39
38
6
18
50
68
55
41
5
17
51
67
56
40
4
16
52
66
57
39
3
15
53
54
55
56
57
58
59
60
61
62
63
64
65
58
38
2
3
4
5
6
7
8
9
10
11
12
13
14
54
66
59
37
1
15
55
67
60
36
0
141
142
143
144
145
146
147
148
149
150
151
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
140
149
129
117
113
101
139
148
128
116
112
100
138
147
127
115
111
99
137
146
126
114
110
98
136
145
125
113
109
97
135
144
124
112
108
96
134
143
123
111
107
95
133
142
122
110
106
94
132
141
121
109
105
93
131
140
120
108
104
92
130
139
119
107
103
91
129
138
118
106
105
104
103
102
101
100
99
98
97
96
95
94
106
102
90
128
137
117
105
93
105
101
89
127
136
116
104
92
104
100
88
126
135
115
103
91
103
99
87
125
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
90
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
86
124
127
113
101
89
101
89
85
123
127
112
100
88
100
88
84
122
126
111
99
87
99
87
83
121
125
110
98
86
98
86
82
120
124
109
97
85
97
85
81
119
123
108
96
84
96
84
80
118
122
107
95
83
95
83
79
117
121
106
94
82
94
82
78
116
120
105
93
81
93
81
77
115
119
104
92
80
92
80
76
114
118
103
91
79
91
79
75
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
104
89
77
65
103
88
76
64
102
87
75
63
101
86
74
62
100
85
73
61
99
84
72
60
98
83
71
59
97
82
70
58
96
81
69
57
95
80
68
56
94
79
67
55
93
92
91
90
89
88
87
86
85
84
83
82
81
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
94
80
91
53
41
55
93
79
91
52
40
56
92
78
90
51
39
57
91
77
89
50
38
58
90
76
88
49
37
59
89
75
87
48
36
60
88
74
86
47
35
61
75
76
77
78
79
80
81
82
83
84
85
86
87
73
85
46
34
62
63
64
65
66
67
68
69
70
71
72
73
74
72
84
45
33
71
83
44
32
70
82
43
31
69
81
42
30
68
80
41
29
67
68
69
70
71
72
73
74
75
76
77
78
79
40
39
38
37
36
35
34
33
32
31
30
29
28
66
80
41
27
65
81
42
26
64
82
43
25
63
83
44
24
62
84
45
23
61
85
46
22
22
23
24
25
26
27
28
29
30
31
32
33
34
60
85
47
21
9
10
11
12
13
14
15
16
17
18
19
20
21
35
59
84
48
20
8
36
58
83
49
19
7
37
57
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
59
58
57
56
55
54
53
52
51
50
18
6
38
56
71
57
17
5
39
55
72
56
16
4
40
54
73
55
15
3
41
42
43
44
45
46
47
48
49
50
51
52
53
74
54
14
13
12
11
10
9
8
7
6
5
4
3
2
42
54
75
53
15
1
43
55
76
52
16
0
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
152
151
150
149
148
147
146
145
144
143
142
102
114
118
130
150
141
101
113
117
129
149
140
100
112
116
128
148
139
99
111
115
127
147
138
98
110
114
126
146
137
97
109
113
125
145
136
96
108
112
124
144
135
95
107
111
123
143
134
94
106
110
122
142
133
93
105
109
121
141
132
92
104
108
120
140
131
91
103
107
95
96
97
98
99
100
101
102
103
104
105
106
107
119
139
130
90
102
106
94
106
118
138
129
89
101
105
93
105
117
137
128
88
100
104
92
104
116
136
127
87
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
91
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
126
86
90
102
90
102
114
128
125
85
89
101
89
101
113
128
124
84
88
100
88
100
112
127
123
83
87
99
87
99
111
126
122
82
86
98
86
98
110
125
121
81
85
97
85
97
109
124
120
80
84
96
84
96
108
123
119
79
83
95
83
95
107
122
118
78
82
94
82
94
106
121
117
77
81
93
81
93
105
120
116
76
80
92
80
92
104
119
115
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
66
78
90
105
65
77
89
104
64
76
88
103
63
75
87
102
62
74
86
101
61
73
85
100
60
72
84
99
59
71
83
98
58
70
82
97
57
69
81
96
56
68
80
95
55
54
53
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
82
83
84
85
86
87
88
89
90
91
92
93
94
56
42
54
92
81
95
57
41
53
92
80
94
58
40
52
91
79
93
59
39
51
90
78
92
60
38
50
89
77
91
61
37
49
88
76
90
62
36
48
87
75
89
75
74
73
72
71
70
69
68
67
66
65
64
63
35
47
86
74
88
87
86
85
84
83
82
81
80
79
78
77
76
34
46
85
73
33
45
84
72
32
44
83
71
31
43
82
70
30
42
81
69
29
30
31
32
33
34
35
36
37
38
39
40
41
80
79
78
77
76
75
74
73
72
71
70
69
68
28
42
81
67
27
43
82
66
26
44
83
65
25
45
84
64
24
46
85
63
23
47
86
62
22
21
20
19
18
17
16
15
14
13
12
11
10
22
48
86
61
35
34
33
32
31
30
29
28
27
26
25
24
23
9
21
49
85
60
36
8
20
50
84
59
37
7
19
51
52
53
54
55
56
57
58
59
60
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
58
38
6
18
58
72
57
39
5
17
57
73
56
40
4
16
56
74
55
41
3
4
5
6
7
8
9
10
11
12
13
14
15
55
75
54
53
52
51
50
49
48
47
46
45
44
43
42
2
16
54
76
55
43
1
17
53
77
56
44
0
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
141
140
139
138
137
136
135
134
133
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
108
128
121
79
91
95
83
84
85
86
87
88
89
90
91
92
93
94
95
107
127
120
78
90
94
82
94
106
126
119
77
89
93
81
93
105
125
118
76
88
92
80
92
104
124
117
75
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
79
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
116
74
78
90
78
90
102
116
115
73
77
89
77
89
101
117
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
69
81
69
81
93
110
106
64
68
80
68
80
92
109
105
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
57
69
86
44
56
68
85
43
42
41
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
94
95
94
93
92
91
90
89
88
87
86
85
84
44
30
42
80
93
83
45
29
41
81
92
82
46
28
40
82
91
81
47
27
39
83
90
80
48
26
38
84
89
79
49
25
37
83
88
78
50
24
36
82
87
77
63
62
61
60
59
58
57
56
55
54
53
52
51
23
35
81
86
76
75
74
73
72
71
70
69
68
67
66
65
64
22
34
80
85
21
33
79
84
20
32
78
83
19
31
77
82
18
30
76
81
17
18
19
20
21
22
23
24
25
26
27
28
29
75
76
77
78
79
80
81
82
83
83
82
81
80
16
30
74
79
15
31
73
78
14
32
72
77
13
33
71
76
12
34
70
75
11
35
69
74
34
33
32
31
30
29
28
27
26
25
24
23
22
10
36
68
73
47
46
45
44
43
42
41
40
39
38
37
36
35
21
9
37
67
72
48
20
8
38
66
71
49
19
7
39
40
41
42
43
44
45
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
70
50
18
6
40
54
69
51
17
5
39
55
68
52
16
4
38
56
67
53
15
14
13
12
11
10
9
8
7
6
5
4
3
37
57
66
65
64
63
62
61
60
59
58
57
56
55
54
16
2
36
58
67
55
17
1
35
59
68
56
18
0
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
114
126
106
118
138
126
113
125
105
117
137
125
112
124
104
116
136
124
111
123
103
115
135
123
110
122
102
114
134
122
109
121
101
113
133
121
108
120
100
112
132
120
107
119
99
111
131
119
106
118
98
110
130
118
105
117
97
109
129
117
104
116
96
108
128
116
103
115
95
83
84
85
86
87
88
89
90
91
92
93
94
95
107
127
115
102
114
94
82
94
106
126
114
101
113
93
81
93
105
125
113
100
112
92
80
92
104
124
112
99
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
111
98
102
90
78
90
102
114
110
97
101
89
77
89
101
113
109
96
100
88
76
88
100
112
108
95
99
87
75
87
99
111
107
94
98
86
74
86
98
110
106
93
97
85
73
85
97
109
105
92
96
84
72
84
96
108
104
91
95
83
71
83
95
107
103
90
94
82
70
82
94
106
102
89
93
81
69
81
93
105
101
88
92
80
68
80
92
104
100
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
78
66
78
90
77
65
77
89
76
64
76
88
75
63
75
87
74
62
74
86
73
61
73
85
72
60
72
84
71
59
71
83
70
58
70
82
69
57
69
81
68
56
68
80
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
68
54
42
54
66
80
69
53
41
53
65
81
70
52
40
52
64
82
71
51
39
51
63
83
72
50
38
50
62
84
73
49
37
49
61
85
74
48
36
48
60
86
87
86
85
84
83
82
81
80
79
78
77
76
75
47
35
47
59
87
88
89
90
91
92
93
93
92
91
90
89
88
46
34
46
58
45
33
45
57
44
32
44
56
43
31
43
55
42
30
42
54
41
40
39
38
37
36
35
34
33
32
31
30
29
41
42
43
44
45
46
47
48
49
50
51
52
53
42
28
40
54
43
27
39
55
44
26
38
56
45
25
37
57
46
24
36
58
45
23
35
59
68
67
66
65
64
63
62
61
60
59
58
57
56
44
22
34
60
81
80
79
78
77
76
75
74
73
72
71
70
69
55
43
21
33
61
81
54
42
20
32
62
80
53
41
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
63
79
52
40
6
20
64
78
51
39
5
21
65
77
50
38
4
22
64
76
49
48
47
46
45
44
43
42
41
40
39
38
37
3
23
63
64
65
66
67
68
69
70
71
72
73
74
75
50
36
2
24
62
76
51
35
1
25
61
77
52
34
0
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
126
138
118
106
126
114
125
137
117
105
125
113
124
136
116
104
124
112
123
135
115
103
123
111
122
134
114
102
122
110
121
133
113
101
121
109
120
132
112
100
120
108
119
131
111
99
119
107
118
130
110
98
118
106
117
129
109
97
117
105
116
128
108
96
116
104
115
127
107
95
94
93
92
91
90
89
88
87
86
85
84
83
95
115
103
114
126
106
94
82
94
114
102
113
125
105
93
81
93
113
101
112
124
104
92
80
92
112
100
111
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
99
110
114
102
90
78
90
102
98
109
113
101
89
77
89
101
97
108
112
100
88
76
88
100
96
107
111
99
87
75
87
99
95
106
110
98
86
74
86
98
94
105
109
97
85
73
85
97
93
104
108
96
84
72
84
96
92
103
107
95
83
71
83
95
91
102
106
94
82
70
82
94
90
101
105
93
81
69
81
93
89
100
104
92
80
68
80
92
88
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
90
78
66
78
89
77
65
77
88
76
64
76
87
75
63
75
86
74
62
74
85
73
61
73
84
72
60
72
83
71
59
71
82
70
58
70
81
69
57
69
80
68
56
68
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
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
55
56
57
58
59
60
61
62
63
64
65
66
67
80
66
54
42
54
68
81
65
53
41
53
69
82
64
52
40
52
70
83
63
51
39
51
71
84
62
50
38
50
72
85
61
49
37
49
73
86
60
48
36
48
74
88
89
90
91
92
93
93
92
91
90
89
88
87
59
47
35
47
75
76
77
78
79
80
81
82
83
84
85
86
87
58
46
34
46
57
45
33
45
56
44
32
44
55
43
31
43
54
42
30
42
53
52
51
50
49
48
47
46
45
44
43
42
41
29
30
31
32
33
34
35
36
37
38
39
40
41
54
40
28
42
55
39
27
43
56
38
26
44
57
37
25
45
58
36
24
46
59
35
23
45
69
70
71
72
73
74
75
76
77
78
79
80
81
60
34
22
44
56
57
58
59
60
61
62
63
64
65
66
67
68
81
61
33
21
43
55
80
62
32
20
42
54
79
63
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
41
53
78
64
20
6
40
52
77
65
21
5
39
51
76
64
22
4
38
50
75
74
73
72
71
70
69
68
67
66
65
64
63
23
3
37
38
39
40
41
42
43
44
45
46
47
48
49
76
62
24
2
36
50
77
61
25
1
35
51
78
60
26
0
132
133
134
135
136
137
138
139
140
141
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
92
80
120
127
107
95
94
93
92
91
90
89
88
87
86
85
84
83
95
91
79
119
126
106
94
82
94
90
78
118
125
105
93
81
93
89
77
117
124
104
92
80
92
88
76
116
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
79
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
75
115
116
102
90
78
90
78
74
114
117
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
109
92
80
68
80
68
64
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
69
57
45
85
68
56
44
84
85
86
87
88
89
90
91
92
93
94
95
94
79
78
77
76
75
74
73
72
71
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
31
32
33
34
35
36
37
38
39
40
41
42
43
83
93
80
42
30
44
82
92
81
41
29
45
81
91
82
40
28
46
80
90
83
39
27
47
79
89
84
38
26
48
78
88
83
37
25
49
77
87
82
36
24
50
64
65
66
67
68
69
70
71
72
73
74
75
76
86
81
35
23
51
52
53
54
55
56
57
58
59
60
61
62
63
85
80
34
22
84
79
33
21
83
78
32
20
82
77
31
19
81
76
30
18
80
81
82
83
83
82
81
80
79
78
77
76
75
29
28
27
26
25
24
23
22
21
20
19
18
17
79
74
30
16
78
73
31
15
77
72
32
14
76
71
33
13
75
70
34
12
74
69
35
11
35
36
37
38
39
40
41
42
43
44
45
46
47
73
68
36
10
22
23
24
25
26
27
28
29
30
31
32
33
34
48
72
67
37
9
21
49
71
66
38
8
20
50
70
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
42
43
44
45
46
45
44
43
42
41
40
39
7
19
51
69
54
40
6
18
52
68
55
39
5
17
53
67
56
38
4
16
54
55
56
57
58
59
60
61
62
63
64
65
66
57
37
3
4
5
6
7
8
9
10
11
12
13
14
15
55
67
58
36
2
16
56
68
59
35
1
17
57
69
60
34
0
142
143
144
145
146
147
148
149
150
151
152
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
141
150
130
118
114
102
140
149
129
117
113
101
139
148
128
116
112
100
138
147
127
115
111
99
137
146
126
114
110
98
136
145
125
113
109
97
135
144
124
112
108
96
134
143
123
111
107
95
133
142
122
110
106
94
132
141
121
109
105
93
131
140
120
108
104
92
130
139
119
107
106
105
104
103
102
101
100
99
98
97
96
95
107
103
91
129
138
118
106
94
106
102
90
128
137
117
105
93
105
101
89
127
136
116
104
92
104
100
88
126
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
91
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
87
125
128
114
102
90
102
90
86
124
128
113
101
89
101
89
85
123
127
112
100
88
100
88
84
122
126
111
99
87
99
87
83
121
125
110
98
86
98
86
82
120
124
109
97
85
97
85
81
119
123
108
96
84
96
84
80
118
122
107
95
83
95
83
79
117
121
106
94
82
94
82
78
116
120
105
93
81
93
81
77
115
119
104
92
80
92
80
76
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
105
90
78
66
104
89
77
65
103
88
76
64
102
87
75
63
101
86
74
62
100
85
73
61
99
84
72
60
98
83
71
59
97
82
70
58
96
81
69
57
95
80
68
56
94
93
92
91
90
89
88
87
86
85
84
83
82
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
95
81
92
54
42
56
94
80
92
53
41
57
93
79
91
52
40
58
92
78
90
51
39
59
91
77
89
50
38
60
90
76
88
49
37
61
89
75
87
48
36
62
76
77
78
79
80
81
82
83
84
85
86
87
88
74
86
47
35
63
64
65
66
67
68
69
70
71
72
73
74
75
73
85
46
34
72
84
45
33
71
83
44
32
70
82
43
31
69
81
42
30
68
69
70
71
72
73
74
75
76
77
78
79
80
41
40
39
38
37
36
35
34
33
32
31
30
29
67
81
42
28
66
82
43
27
65
83
44
26
64
84
45
25
63
85
46
24
62
86
47
23
23
24
25
26
27
28
29
30
31
32
33
34
35
61
86
48
22
10
11
12
13
14
15
16
17
18
19
20
21
22
36
60
85
49
21
9
37
59
84
50
20
8
38
58
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
60
59
58
57
56
55
54
53
52
51
19
7
39
57
72
58
18
6
40
56
73
57
17
5
41
55
74
56
16
4
42
43
44
45
46
47
48
49
50
51
52
53
54
75
55
15
14
13
12
11
10
9
8
7
6
5
4
3
43
55
76
54
16
2
44
56
77
53
17
1
45
57
78
52
18
0
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
103
115
119
131
151
142
102
114
118
130
150
141
101
113
117
129
149
140
100
112
116
128
148
139
99
111
115
127
147
138
98
110
114
126
146
137
97
109
113
125
145
136
96
108
112
124
144
135
95
107
111
123
143
134
94
106
110
122
142
133
93
105
109
121
141
132
92
104
108
96
97
98
99
100
101
102
103
104
105
106
107
108
120
140
131
91
103
107
95
107
119
139
130
90
102
106
94
106
118
138
129
89
101
105
93
105
117
137
128
88
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
92
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
127
87
91
103
91
103
115
129
126
86
90
102
90
102
114
129
125
85
89
101
89
101
113
128
124
84
88
100
88
100
112
127
123
83
87
99
87
99
111
126
122
82
86
98
86
98
110
125
121
81
85
97
85
97
109
124
120
80
84
96
84
96
108
123
119
79
83
95
83
95
107
122
118
78
82
94
82
94
106
121
117
77
81
93
81
93
105
120
116
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
67
79
91
106
66
78
90
105
65
77
89
104
64
76
88
103
63
75
87
102
62
74
86
101
61
73
85
100
60
72
84
99
59
71
83
98
58
70
82
97
57
69
81
96
56
55
54
53
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
83
84
85
86
87
88
89
90
91
92
93
94
95
57
43
55
93
82
96
58
42
54
93
81
95
59
41
53
92
80
94
60
40
52
91
79
93
61
39
51
90
78
92
62
38
50
89
77
91
63
37
49
88
76
90
76
75
74
73
72
71
70
69
68
67
66
65
64
36
48
87
75
89
88
87
86
85
84
83
82
81
80
79
78
77
35
47
86
74
34
46
85
73
33
45
84
72
32
44
83
71
31
43
82
70
30
31
32
33
34
35
36
37
38
39
40
41
42
81
80
79
78
77
76
75
74
73
72
71
70
69
29
43
82
68
28
44
83
67
27
45
84
66
26
46
85
65
25
47
86
64
24
48
87
63
23
22
21
20
19
18
17
16
15
14
13
12
11
23
49
87
62
36
35
34
33
32
31
30
29
28
27
26
25
24
10
22
50
86
61
37
9
21
51
85
60
38
8
20
52
53
54
55
56
57
58
59
60
61
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
59
39
7
19
59
73
58
40
6
18
58
74
57
41
5
17
57
75
56
42
4
5
6
7
8
9
10
11
12
13
14
15
16
56
76
55
54
53
52
51
50
49
48
47
46
45
44
43
3
17
55
77
56
44
2
18
54
78
57
45
1
19
53
79
58
46
0
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
109
129
122
80
92
96
84
85
86
87
88
89
90
91
92
93
94
95
96
108
128
121
79
91
95
83
95
107
127
120
78
90
94
82
94
106
126
119
77
89
93
81
93
105
125
118
76
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
80
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
117
75
79
91
79
91
103
117
116
74
78
90
78
90
102
118
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
69
81
69
81
93
110
106
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
57
69
86
44
43
42
41
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
95
96
95
94
93
92
91
90
89
88
87
86
85
45
31
43
81
94
84
46
30
42
82
93
83
47
29
41
83
92
82
48
28
40
84
91
81
49
27
39
83
90
80
50
26
38
82
89
79
51
25
37
81
88
78
64
63
62
61
60
59
58
57
56
55
54
53
52
24
36
80
87
77
76
75
74
73
72
71
70
69
68
67
66
65
23
35
79
86
22
34
78
85
21
33
77
84
20
32
76
83
19
31
75
82
18
19
20
21
22
23
24
25
26
27
28
29
30
74
75
76
77
78
79
80
81
82
83
83
82
81
17
31
73
80
16
32
72
79
15
33
71
78
14
34
70
77
13
35
69
76
12
36
68
75
35
34
33
32
31
30
29
28
27
26
25
24
23
11
37
67
74
48
47
46
45
44
43
42
41
40
39
38
37
36
22
10
38
66
73
49
21
9
39
65
72
50
20
8
40
41
42
43
44
45
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
71
51
19
7
39
53
70
52
18
6
38
54
69
53
17
5
37
55
68
54
16
15
14
13
12
11
10
9
8
7
6
5
4
36
56
67
66
65
64
63
62
61
60
59
58
57
56
55
17
3
35
57
68
56
18
2
34
58
69
57
19
1
33
59
70
58
20
0
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
115
127
107
119
139
127
114
126
106
118
138
126
113
125
105
117
137
125
112
124
104
116
136
124
111
123
103
115
135
123
110
122
102
114
134
122
109
121
101
113
133
121
108
120
100
112
132
120
107
119
99
111
131
119
106
118
98
110
130
118
105
117
97
109
129
117
104
116
96
84
85
86
87
88
89
90
91
92
93
94
95
96
108
128
116
103
115
95
83
95
107
127
115
102
114
94
82
94
106
126
114
101
113
93
81
93
105
125
113
100
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
112
99
103
91
79
91
103
115
111
98
102
90
78
90
102
114
110
97
101
89
77
89
101
113
109
96
100
88
76
88
100
112
108
95
99
87
75
87
99
111
107
94
98
86
74
86
98
110
106
93
97
85
73
85
97
109
105
92
96
84
72
84
96
108
104
91
95
83
71
83
95
107
103
90
94
82
70
82
94
106
102
89
93
81
69
81
93
105
101
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
79
67
79
91
78
66
78
90
77
65
77
89
76
64
76
88
75
63
75
87
74
62
74
86
73
61
73
85
72
60
72
84
71
59
71
83
70
58
70
82
69
57
69
81
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
69
55
43
55
67
81
70
54
42
54
66
82
71
53
41
53
65
83
72
52
40
52
64
84
73
51
39
51
63
85
74
50
38
50
62
86
75
49
37
49
61
87
88
87
86
85
84
83
82
81
80
79
78
77
76
48
36
48
60
88
89
90
91
92
93
94
94
93
92
91
90
89
47
35
47
59
46
34
46
58
45
33
45
57
44
32
44
56
43
31
43
55
42
41
40
39
38
37
36
35
34
33
32
31
30
42
43
44
45
46
47
48
49
50
51
52
53
54
43
29
41
55
44
28
40
56
45
27
39
57
46
26
38
58
45
25
37
59
44
24
36
60
67
66
65
64
63
62
61
60
59
58
57
56
55
43
23
35
61
80
79
78
77
76
75
74
73
72
71
70
69
68
54
42
22
34
62
81
53
41
21
33
63
81
52
40
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
64
80
51
39
7
21
65
79
50
38
6
22
66
78
49
37
5
23
65
77
48
47
46
45
44
43
42
41
40
39
38
37
36
4
24
64
65
66
67
68
69
70
71
72
73
74
75
76
49
35
3
25
63
77
50
34
2
26
62
78
51
33
1
27
61
79
52
32
0
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
127
139
119
107
127
115
126
138
118
106
126
114
125
137
117
105
125
113
124
136
116
104
124
112
123
135
115
103
123
111
122
134
114
102
122
110
121
133
113
101
121
109
120
132
112
100
120
108
119
131
111
99
119
107
118
130
110
98
118
106
117
129
109
97
117
105
116
128
108
96
95
94
93
92
91
90
89
88
87
86
85
84
96
116
104
115
127
107
95
83
95
115
103
114
126
106
94
82
94
114
102
113
125
105
93
81
93
113
101
112
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
100
111
115
103
91
79
91
103
99
110
114
102
90
78
90
102
98
109
113
101
89
77
89
101
97
108
112
100
88
76
88
100
96
107
111
99
87
75
87
99
95
106
110
98
86
74
86
98
94
105
109
97
85
73
85
97
93
104
108
96
84
72
84
96
92
103
107
95
83
71
83
95
91
102
106
94
82
70
82
94
90
101
105
93
81
69
81
93
89
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
91
79
67
79
90
78
66
78
89
77
65
77
88
76
64
76
87
75
63
75
86
74
62
74
85
73
61
73
84
72
60
72
83
71
59
71
82
70
58
70
81
69
57
69
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
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
56
57
58
59
60
61
62
63
64
65
66
67
68
81
67
55
43
55
69
82
66
54
42
54
70
83
65
53
41
53
71
84
64
52
40
52
72
85
63
51
39
51
73
86
62
50
38
50
74
87
61
49
37
49
75
89
90
91
92
93
94
94
93
92
91
90
89
88
60
48
36
48
76
77
78
79
80
81
82
83
84
85
86
87
88
59
47
35
47
58
46
34
46
57
45
33
45
56
44
32
44
55
43
31
43
54
53
52
51
50
49
48
47
46
45
44
43
42
30
31
32
33
34
35
36
37
38
39
40
41
42
55
41
29
43
56
40
28
44
57
39
27
45
58
38
26
46
59
37
25
45
60
36
24
44
68
69
70
71
72
73
74
75
76
77
78
79
80
61
35
23
43
55
56
57
58
59
60
61
62
63
64
65
66
67
81
62
34
22
42
54
81
63
33
21
41
53
80
64
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
40
52
79
65
21
7
39
51
78
66
22
6
38
50
77
65
23
5
37
49
76
75
74
73
72
71
70
69
68
67
66
65
64
24
4
36
37
38
39
40
41
42
43
44
45
46
47
48
77
63
25
3
35
49
78
62
26
2
34
50
79
61
27
1
33
51
80
60
28
0
133
134
135
136
137
138
139
140
141
142
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
93
81
121
128
108
96
95
94
93
92
91
90
89
88
87
86
85
84
96
92
80
120
127
107
95
83
95
91
79
119
126
106
94
82
94
90
78
118
125
105
93
81
93
89
77
117
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
80
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
76
116
117
103
91
79
91
79
75
115
118
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
110
93
81
69
81
69
65
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
69
57
45
85
86
87
88
89
90
91
92
93
94
95
96
95
80
79
78
77
76
75
74
73
72
71
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
32
33
34
35
36
37
38
39
40
41
42
43
44
84
94
81
43
31
45
83
93
82
42
30
46
82
92
83
41
29
47
81
91
84
40
28
48
80
90
83
39
27
49
79
89
82
38
26
50
78
88
81
37
25
51
65
66
67
68
69
70
71
72
73
74
75
76
77
87
80
36
24
52
53
54
55
56
57
58
59
60
61
62
63
64
86
79
35
23
85
78
34
22
84
77
33
21
83
76
32
20
82
75
31
19
81
82
83
83
82
81
80
79
78
77
76
75
74
30
29
28
27
26
25
24
23
22
21
20
19
18
80
73
31
17
79
72
32
16
78
71
33
15
77
70
34
14
76
69
35
13
75
68
36
12
36
37
38
39
40
41
42
43
44
45
46
47
48
74
67
37
11
23
24
25
26
27
28
29
30
31
32
33
34
35
49
73
66
38
10
22
50
72
65
39
9
21
51
71
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
45
44
43
42
41
40
8
20
52
70
53
39
7
19
53
69
54
38
6
18
54
68
55
37
5
17
55
56
57
58
59
60
61
62
63
64
65
66
67
56
36
4
5
6
7
8
9
10
11
12
13
14
15
16
56
68
57
35
3
17
57
69
58
34
2
18
58
70
59
33
1
19
59
71
60
32
0
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
142
151
131
119
115
103
141
150
130
118
114
102
140
149
129
117
113
101
139
148
128
116
112
100
138
147
127
115
111
99
137
146
126
114
110
98
136
145
125
113
109
97
135
144
124
112
108
96
134
143
123
111
107
95
133
142
122
110
106
94
132
141
121
109
105
93
131
140
120
108
107
106
105
104
103
102
101
100
99
98
97
96
108
104
92
130
139
119
107
95
107
103
91
129
138
118
106
94
106
102
90
128
137
117
105
93
105
101
89
127
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
92
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
88
126
129
115
103
91
103
91
87
125
129
114
102
90
102
90
86
124
128
113
101
89
101
89
85
123
127
112
100
88
100
88
84
122
126
111
99
87
99
87
83
121
125
110
98
86
98
86
82
120
124
109
97
85
97
85
81
119
123
108
96
84
96
84
80
118
122
107
95
83
95
83
79
117
121
106
94
82
94
82
78
116
120
105
93
81
93
81
77
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
106
91
79
67
105
90
78
66
104
89
77
65
103
88
76
64
102
87
75
63
101
86
74
62
100
85
73
61
99
84
72
60
98
83
71
59
97
82
70
58
96
81
69
57
95
94
93
92
91
90
89
88
87
86
85
84
83
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
96
82
93
55
43
57
95
81
93
54
42
58
94
80
92
53
41
59
93
79
91
52
40
60
92
78
90
51
39
61
91
77
89
50
38
62
90
76
88
49
37
63
77
78
79
80
81
82
83
84
85
86
87
88
89
75
87
48
36
64
65
66
67
68
69
70
71
72
73
74
75
76
74
86
47
35
73
85
46
34
72
84
45
33
71
83
44
32
70
82
43
31
69
70
71
72
73
74
75
76
77
78
79
80
81
42
41
40
39
38
37
36
35
34
33
32
31
30
68
82
43
29
67
83
44
28
66
84
45
27
65
85
46
26
64
86
47
25
63
87
48
24
24
25
26
27
28
29
30
31
32
33
34
35
36
62
87
49
23
11
12
13
14
15
16
17
18
19
20
21
22
23
37
61
86
50
22
10
38
60
85
51
21
9
39
59
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
61
60
59
58
57
56
55
54
53
52
20
8
40
58
73
59
19
7
41
57
74
58
18
6
42
56
75
57
17
5
43
44
45
46
47
48
49
50
51
52
53
54
55
76
56
16
15
14
13
12
11
10
9
8
7
6
5
4
44
56
77
55
17
3
45
57
78
54
18
2
46
58
79
53
19
1
47
59
80
52
20
0
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
154
153
152
151
150
149
148
147
146
145
144
104
116
120
132
152
143
103
115
119
131
151
142
102
114
118
130
150
141
101
113
117
129
149
140
100
112
116
128
148
139
99
111
115
127
147
138
98
110
114
126
146
137
97
109
113
125
145
136
96
108
112
124
144
135
95
107
111
123
143
134
94
106
110
122
142
133
93
105
109
97
98
99
100
101
102
103
104
105
106
107
108
109
121
141
132
92
104
108
96
108
120
140
131
91
103
107
95
107
119
139
130
90
102
106
94
106
118
138
129
89
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
93
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
128
88
92
104
92
104
116
130
127
87
91
103
91
103
115
130
126
86
90
102
90
102
114
129
125
85
89
101
89
101
113
128
124
84
88
100
88
100
112
127
123
83
87
99
87
99
111
126
122
82
86
98
86
98
110
125
121
81
85
97
85
97
109
124
120
80
84
96
84
96
108
123
119
79
83
95
83
95
107
122
118
78
82
94
82
94
106
121
117
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
68
80
92
107
67
79
91
106
66
78
90
105
65
77
89
104
64
76
88
103
63
75
87
102
62
74
86
101
61
73
85
100
60
72
84
99
59
71
83
98
58
70
82
97
57
56
55
54
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
84
85
86
87
88
89
90
91
92
93
94
95
96
58
44
56
94
83
97
59
43
55
94
82
96
60
42
54
93
81
95
61
41
53
92
80
94
62
40
52
91
79
93
63
39
51
90
78
92
64
38
50
89
77
91
77
76
75
74
73
72
71
70
69
68
67
66
65
37
49
88
76
90
89
88
87
86
85
84
83
82
81
80
79
78
36
48
87
75
35
47
86
74
34
46
85
73
33
45
84
72
32
44
83
71
31
32
33
34
35
36
37
38
39
40
41
42
43
82
81
80
79
78
77
76
75
74
73
72
71
70
30
44
83
69
29
45
84
68
28
46
85
67
27
47
86
66
26
48
87
65
25
49
88
64
24
23
22
21
20
19
18
17
16
15
14
13
12
24
50
88
63
37
36
35
34
33
32
31
30
29
28
27
26
25
11
23
51
87
62
38
10
22
52
86
61
39
9
21
53
54
55
56
57
58
59
60
61
62
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
60
40
8
20
60
74
59
41
7
19
59
75
58
42
6
18
58
76
57
43
5
6
7
8
9
10
11
12
13
14
15
16
17
57
77
56
55
54
53
52
51
50
49
48
47
46
45
44
4
18
56
78
57
45
3
19
55
79
58
46
2
20
54
80
59
47
1
21
53
81
60
48
0
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
143
142
141
140
139
138
137
136
135
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
110
130
123
81
93
97
85
86
87
88
89
90
91
92
93
94
95
96
97
109
129
122
80
92
96
84
96
108
128
121
79
91
95
83
95
107
127
120
78
90
94
82
94
106
126
119
77
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
81
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
118
76
80
92
80
92
104
118
117
75
79
91
79
91
103
119
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
70
82
70
82
94
111
107
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
58
70
87
45
44
43
42
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
96
97
96
95
94
93
92
91
90
89
88
87
86
46
32
44
82
95
85
47
31
43
83
94
84
48
30
42
84
93
83
49
29
41
83
92
82
50
28
40
82
91
81
51
27
39
81
90
80
52
26
38
80
89
79
65
64
63
62
61
60
59
58
57
56
55
54
53
25
37
79
88
78
77
76
75
74
73
72
71
70
69
68
67
66
24
36
78
87
23
35
77
86
22
34
76
85
21
33
75
84
20
32
74
83
19
20
21
22
23
24
25
26
27
28
29
30
31
73
74
75
76
77
78
79
80
81
82
83
83
82
18
32
72
81
17
33
71
80
16
34
70
79
15
35
69
78
14
36
68
77
13
37
67
76
36
35
34
33
32
31
30
29
28
27
26
25
24
12
38
66
75
49
48
47
46
45
44
43
42
41
40
39
38
37
23
11
39
65
74
50
22
10
40
64
73
51
21
9
41
42
43
44
45
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
72
52
20
8
38
52
71
53
19
7
37
53
70
54
18
6
36
54
69
55
17
16
15
14
13
12
11
10
9
8
7
6
5
35
55
68
67
66
65
64
63
62
61
60
59
58
57
56
18
4
34
56
69
57
19
3
33
57
70
58
20
2
32
58
71
59
21
1
31
59
72
60
22
0
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
116
128
108
120
140
128
115
127
107
119
139
127
114
126
106
118
138
126
113
125
105
117
137
125
112
124
104
116
136
124
111
123
103
115
135
123
110
122
102
114
134
122
109
121
101
113
133
121
108
120
100
112
132
120
107
119
99
111
131
119
106
118
98
110
130
118
105
117
97
85
86
87
88
89
90
91
92
93
94
95
96
97
109
129
117
104
116
96
84
96
108
128
116
103
115
95
83
95
107
127
115
102
114
94
82
94
106
126
114
101
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
113
100
104
92
80
92
104
116
112
99
103
91
79
91
103
115
111
98
102
90
78
90
102
114
110
97
101
89
77
89
101
113
109
96
100
88
76
88
100
112
108
95
99
87
75
87
99
111
107
94
98
86
74
86
98
110
106
93
97
85
73
85
97
109
105
92
96
84
72
84
96
108
104
91
95
83
71
83
95
107
103
90
94
82
70
82
94
106
102
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
80
68
80
92
79
67
79
91
78
66
78
90
77
65
77
89
76
64
76
88
75
63
75
87
74
62
74
86
73
61
73
85
72
60
72
84
71
59
71
83
70
58
70
82
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
70
56
44
56
68
82
71
55
43
55
67
83
72
54
42
54
66
84
73
53
41
53
65
85
74
52
40
52
64
86
75
51
39
51
63
87
76
50
38
50
62
88
89
88
87
86
85
84
83
82
81
80
79
78
77
49
37
49
61
89
90
91
92
93
94
95
95
94
93
92
91
90
48
36
48
60
47
35
47
59
46
34
46
58
45
33
45
57
44
32
44
56
43
42
41
40
39
38
37
36
35
34
33
32
31
43
44
45
46
47
48
49
50
51
52
53
54
55
44
30
42
56
45
29
41
57
46
28
40
58
45
27
39
59
44
26
38
60
43
25
37
61
66
65
64
63
62
61
60
59
58
57
56
55
54
42
24
36
62
79
78
77
76
75
74
73
72
71
70
69
68
67
53
41
23
35
63
80
52
40
22
34
64
81
51
39
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
65
81
50
38
8
22
66
80
49
37
7
23
67
79
48
36
6
24
66
78
47
46
45
44
43
42
41
40
39
38
37
36
35
5
25
65
66
67
68
69
70
71
72
73
74
75
76
77
48
34
4
26
64
78
49
33
3
27
63
79
50
32
2
28
62
80
51
31
1
29
61
81
52
30
0
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
128
140
120
108
128
116
127
139
119
107
127
115
126
138
118
106
126
114
125
137
117
105
125
113
124
136
116
104
124
112
123
135
115
103
123
111
122
134
114
102
122
110
121
133
113
101
121
109
120
132
112
100
120
108
119
131
111
99
119
107
118
130
110
98
118
106
117
129
109
97
96
95
94
93
92
91
90
89
88
87
86
85
97
117
105
116
128
108
96
84
96
116
104
115
127
107
95
83
95
115
103
114
126
106
94
82
94
114
102
113
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
101
112
116
104
92
80
92
104
100
111
115
103
91
79
91
103
99
110
114
102
90
78
90
102
98
109
113
101
89
77
89
101
97
108
112
100
88
76
88
100
96
107
111
99
87
75
87
99
95
106
110
98
86
74
86
98
94
105
109
97
85
73
85
97
93
104
108
96
84
72
84
96
92
103
107
95
83
71
83
95
91
102
106
94
82
70
82
94
90
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
92
80
68
80
91
79
67
79
90
78
66
78
89
77
65
77
88
76
64
76
87
75
63
75
86
74
62
74
85
73
61
73
84
72
60
72
83
71
59
71
82
70
58
70
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
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
57
58
59
60
61
62
63
64
65
66
67
68
69
82
68
56
44
56
70
83
67
55
43
55
71
84
66
54
42
54
72
85
65
53
41
53
73
86
64
52
40
52
74
87
63
51
39
51
75
88
62
50
38
50
76
90
91
92
93
94
95
95
94
93
92
91
90
89
61
49
37
49
77
78
79
80
81
82
83
84
85
86
87
88
89
60
48
36
48
59
47
35
47
58
46
34
46
57
45
33
45
56
44
32
44
55
54
53
52
51
50
49
48
47
46
45
44
43
31
32
33
34
35
36
37
38
39
40
41
42
43
56
42
30
44
57
41
29
45
58
40
28
46
59
39
27
45
60
38
26
44
61
37
25
43
67
68
69
70
71
72
73
74
75
76
77
78
79
62
36
24
42
54
55
56
57
58
59
60
61
62
63
64
65
66
80
63
35
23
41
53
81
64
34
22
40
52
81
65
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
39
51
80
66
22
8
38
50
79
67
23
7
37
49
78
66
24
6
36
48
77
76
75
74
73
72
71
70
69
68
67
66
65
25
5
35
36
37
38
39
40
41
42
43
44
45
46
47
78
64
26
4
34
48
79
63
27
3
33
49
80
62
28
2
32
50
81
61
29
1
31
51
82
60
30
0
134
135
136
137
138
139
140
141
142
143
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
94
82
122
129
109
97
96
95
94
93
92
91
90
89
88
87
86
85
97
93
81
121
128
108
96
84
96
92
80
120
127
107
95
83
95
91
79
119
126
106
94
82
94
90
78
118
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
81
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
77
117
118
104
92
80
92
80
76
116
119
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
111
94
82
70
82
70
66
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
70
58
46
86
87
88
89
90
91
92
93
94
95
96
97
96
81
80
79
78
77
76
75
74
73
72
71
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
33
34
35
36
37
38
39
40
41
42
43
44
45
85
95
82
44
32
46
84
94
83
43
31
47
83
93
84
42
30
48
82
92
83
41
29
49
81
91
82
40
28
50
80
90
81
39
27
51
79
89
80
38
26
52
66
67
68
69
70
71
72
73
74
75
76
77
78
88
79
37
25
53
54
55
56
57
58
59
60
61
62
63
64
65
87
78
36
24
86
77
35
23
85
76
34
22
84
75
33
21
83
74
32
20
82
83
83
82
81
80
79
78
77
76
75
74
73
31
30
29
28
27
26
25
24
23
22
21
20
19
81
72
32
18
80
71
33
17
79
70
34
16
78
69
35
15
77
68
36
14
76
67
37
13
37
38
39
40
41
42
43
44
45
46
47
48
49
75
66
38
12
24
25
26
27
28
29
30
31
32
33
34
35
36
50
74
65
39
11
23
51
73
64
40
10
22
52
72
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
45
44
43
42
41
9
21
53
71
52
38
8
20
54
70
53
37
7
19
55
69
54
36
6
18
56
57
58
59
60
61
62
63
64
65
66
67
68
55
35
5
6
7
8
9
10
11
12
13
14
15
16
17
57
69
56
34
4
18
58
70
57
33
3
19
59
71
58
32
2
20
60
72
59
31
1
21
61
73
60
30
0
144
145
146
147
148
149
150
151
152
153
154
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
143
152
132
120
116
104
142
151
131
119
115
103
141
150
130
118
114
102
140
149
129
117
113
101
139
148
128
116
112
100
138
147
127
115
111
99
137
146
126
114
110
98
136
145
125
113
109
97
135
144
124
112
108
96
134
143
123
111
107
95
133
142
122
110
106
94
132
141
121
109
108
107
106
105
104
103
102
101
100
99
98
97
109
105
93
131
140
120
108
96
108
104
92
130
139
119
107
95
107
103
91
129
138
118
106
94
106
102
90
128
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
93
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
89
127
130
116
104
92
104
92
88
126
130
115
103
91
103
91
87
125
129
114
102
90
102
90
86
124
128
113
101
89
101
89
85
123
127
112
100
88
100
88
84
122
126
111
99
87
99
87
83
121
125
110
98
86
98
86
82
120
124
109
97
85
97
85
81
119
123
108
96
84
96
84
80
118
122
107
95
83
95
83
79
117
121
106
94
82
94
82
78
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
107
92
80
68
106
91
79
67
105
90
78
66
104
89
77
65
103
88
76
64
102
87
75
63
101
86
74
62
100
85
73
61
99
84
72
60
98
83
71
59
97
82
70
58
96
95
94
93
92
91
90
89
88
87
86
85
84
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
57
97
83
94
56
44
58
96
82
94
55
43
59
95
81
93
54
42
60
94
80
92
53
41
61
93
79
91
52
40
62
92
78
90
51
39
63
91
77
89
50
38
64
78
79
80
81
82
83
84
85
86
87
88
89
90
76
88
49
37
65
66
67
68
69
70
71
72
73
74
75
76
77
75
87
48
36
74
86
47
35
73
85
46
34
72
84
45
33
71
83
44
32
70
71
72
73
74
75
76
77
78
79
80
81
82
43
42
41
40
39
38
37
36
35
34
33
32
31
69
83
44
30
68
84
45
29
67
85
46
28
66
86
47
27
65
87
48
26
64
88
49
25
25
26
27
28
29
30
31
32
33
34
35
36
37
63
88
50
24
12
13
14
15
16
17
18
19
20
21
22
23
24
38
62
87
51
23
11
39
61
86
52
22
10
40
60
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
62
61
60
59
58
57
56
55
54
53
21
9
41
59
74
60
20
8
42
58
75
59
19
7
43
57
76
58
18
6
44
45
46
47
48
49
50
51
52
53
54
55
56
77
57
17
16
15
14
13
12
11
10
9
8
7
6
5
45
57
78
56
18
4
46
58
79
55
19
3
47
59
80
54
20
2
48
60
81
53
21
1
49
61
82
52
22
0
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
155
154
153
152
151
150
149
148
147
146
145
105
117
121
133
153
144
104
116
120
132
152
143
103
115
119
131
151
142
102
114
118
130
150
141
101
113
117
129
149
140
100
112
116
128
148
139
99
111
115
127
147
138
98
110
114
126
146
137
97
109
113
125
145
136
96
108
112
124
144
135
95
107
111
123
143
134
94
106
110
98
99
100
101
102
103
104
105
106
107
108
109
110
122
142
133
93
105
109
97
109
121
141
132
92
104
108
96
108
120
140
131
91
103
107
95
107
119
139
130
90
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
94
106
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
129
89
93
105
93
105
117
131
128
88
92
104
92
104
116
131
127
87
91
103
91
103
115
130
126
86
90
102
90
102
114
129
125
85
89
101
89
101
113
128
124
84
88
100
88
100
112
127
123
83
87
99
87
99
111
126
122
82
86
98
86
98
110
125
121
81
85
97
85
97
109
124
120
80
84
96
84
96
108
123
119
79
83
95
83
95
107
122
118
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
69
81
93
108
68
80
92
107
67
79
91
106
66
78
90
105
65
77
89
104
64
76
88
103
63
75
87
102
62
74
86
101
61
73
85
100
60
72
84
99
59
71
83
98
58
57
56
55
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
85
86
87
88
89
90
91
92
93
94
95
96
97
59
45
57
95
84
98
60
44
56
95
83
97
61
43
55
94
82
96
62
42
54
93
81
95
63
41
53
92
80
94
64
40
52
91
79
93
65
39
51
90
78
92
78
77
76
75
74
73
72
71
70
69
68
67
66
38
50
89
77
91
90
89
88
87
86
85
84
83
82
81
80
79
37
49
88
76
36
48
87
75
35
47
86
74
34
46
85
73
33
45
84
72
32
33
34
35
36
37
38
39
40
41
42
43
44
83
82
81
80
79
78
77
76
75
74
73
72
71
31
45
84
70
30
46
85
69
29
47
86
68
28
48
87
67
27
49
88
66
26
50
89
65
25
24
23
22
21
20
19
18
17
16
15
14
13
25
51
89
64
38
37
36
35
34
33
32
31
30
29
28
27
26
12
24
52
88
63
39
11
23
53
87
62
40
10
22
54
55
56
57
58
59
60
61
62
63
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
61
41
9
21
61
75
60
42
8
20
60
76
59
43
7
19
59
77
58
44
6
7
8
9
10
11
12
13
14
15
16
17
18
58
78
57
56
55
54
53
52
51
50
49
48
47
46
45
5
19
57
79
58
46
4
20
56
80
59
47
3
21
55
81
60
48
2
22
54
82
61
49
1
23
53
83
62
50
0
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
144
143
142
141
140
139
138
137
136
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
111
131
124
82
94
98
86
87
88
89
90
91
92
93
94
95
96
97
98
110
130
123
81
93
97
85
97
109
129
122
80
92
96
84
96
108
128
121
79
91
95
83
95
107
127
120
78
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
82
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
119
77
81
93
81
93
105
119
118
76
80
92
80
92
104
120
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
71
83
71
83
95
112
108
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
59
71
88
46
45
44
43
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
97
98
97
96
95
94
93
92
91
90
89
88
87
47
33
45
83
96
86
48
32
44
84
95
85
49
31
43
83
94
84
50
30
42
82
93
83
51
29
41
81
92
82
52
28
40
80
91
81
53
27
39
79
90
80
66
65
64
63
62
61
60
59
58
57
56
55
54
26
38
78
89
79
78
77
76
75
74
73
72
71
70
69
68
67
25
37
77
88
24
36
76
87
23
35
75
86
22
34
74
85
21
33
73
84
20
21
22
23
24
25
26
27
28
29
30
31
32
72
73
74
75
76
77
78
79
80
81
82
83
83
19
33
71
82
18
34
70
81
17
35
69
80
16
36
68
79
15
37
67
78
14
38
66
77
37
36
35
34
33
32
31
30
29
28
27
26
25
13
39
65
76
50
49
48
47
46
45
44
43
42
41
40
39
38
24
12
40
64
75
51
23
11
41
63
74
52
22
10
42
43
44
45
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
73
53
21
9
37
51
72
54
20
8
36
52
71
55
19
7
35
53
70
56
18
17
16
15
14
13
12
11
10
9
8
7
6
34
54
69
68
67
66
65
64
63
62
61
60
59
58
57
19
5
33
55
70
58
20
4
32
56
71
59
21
3
31
57
72
60
22
2
30
58
73
61
23
1
29
59
74
62
24
0
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
117
129
109
121
141
129
116
128
108
120
140
128
115
127
107
119
139
127
114
126
106
118
138
126
113
125
105
117
137
125
112
124
104
116
136
124
111
123
103
115
135
123
110
122
102
114
134
122
109
121
101
113
133
121
108
120
100
112
132
120
107
119
99
111
131
119
106
118
98
86
87
88
89
90
91
92
93
94
95
96
97
98
110
130
118
105
117
97
85
97
109
129
117
104
116
96
84
96
108
128
116
103
115
95
83
95
107
127
115
102
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
114
101
105
93
81
93
105
117
113
100
104
92
80
92
104
116
112
99
103
91
79
91
103
115
111
98
102
90
78
90
102
114
110
97
101
89
77
89
101
113
109
96
100
88
76
88
100
112
108
95
99
87
75
87
99
111
107
94
98
86
74
86
98
110
106
93
97
85
73
85
97
109
105
92
96
84
72
84
96
108
104
91
95
83
71
83
95
107
103
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
81
69
81
93
80
68
80
92
79
67
79
91
78
66
78
90
77
65
77
89
76
64
76
88
75
63
75
87
74
62
74
86
73
61
73
85
72
60
72
84
71
59
71
83
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
71
57
45
57
69
83
72
56
44
56
68
84
73
55
43
55
67
85
74
54
42
54
66
86
75
53
41
53
65
87
76
52
40
52
64
88
77
51
39
51
63
89
90
89
88
87
86
85
84
83
82
81
80
79
78
50
38
50
62
90
91
92
93
94
95
96
96
95
94
93
92
91
49
37
49
61
48
36
48
60
47
35
47
59
46
34
46
58
45
33
45
57
44
43
42
41
40
39
38
37
36
35
34
33
32
44
45
46
47
48
49
50
51
52
53
54
55
56
45
31
43
57
46
30
42
58
45
29
41
59
44
28
40
60
43
27
39
61
42
26
38
62
65
64
63
62
61
60
59
58
57
56
55
54
53
41
25
37
63
78
77
76
75
74
73
72
71
70
69
68
67
66
52
40
24
36
64
79
51
39
23
35
65
80
50
38
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
66
81
49
37
9
23
67
81
48
36
8
24
68
80
47
35
7
25
67
79
46
45
44
43
42
41
40
39
38
37
36
35
34
6
26
66
67
68
69
70
71
72
73
74
75
76
77
78
47
33
5
27
65
79
48
32
4
28
64
80
49
31
3
29
63
81
50
30
2
30
62
82
51
29
1
31
61
83
52
28
0
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
129
141
121
109
129
117
128
140
120
108
128
116
127
139
119
107
127
115
126
138
118
106
126
114
125
137
117
105
125
113
124
136
116
104
124
112
123
135
115
103
123
111
122
134
114
102
122
110
121
133
113
101
121
109
120
132
112
100
120
108
119
131
111
99
119
107
118
130
110
98
97
96
95
94
93
92
91
90
89
88
87
86
98
118
106
117
129
109
97
85
97
117
105
116
128
108
96
84
96
116
104
115
127
107
95
83
95
115
103
114
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
102
113
117
105
93
81
93
105
101
112
116
104
92
80
92
104
100
111
115
103
91
79
91
103
99
110
114
102
90
78
90
102
98
109
113
101
89
77
89
101
97
108
112
100
88
76
88
100
96
107
111
99
87
75
87
99
95
106
110
98
86
74
86
98
94
105
109
97
85
73
85
97
93
104
108
96
84
72
84
96
92
103
107
95
83
71
83
95
91
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
93
81
69
81
92
80
68
80
91
79
67
79
90
78
66
78
89
77
65
77
88
76
64
76
87
75
63
75
86
74
62
74
85
73
61
73
84
72
60
72
83
71
59
71
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
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
58
59
60
61
62
63
64
65
66
67
68
69
70
83
69
57
45
57
71
84
68
56
44
56
72
85
67
55
43
55
73
86
66
54
42
54
74
87
65
53
41
53
75
88
64
52
40
52
76
89
63
51
39
51
77
91
92
93
94
95
96
96
95
94
93
92
91
90
62
50
38
50
78
79
80
81
82
83
84
85
86
87
88
89
90
61
49
37
49
60
48
36
48
59
47
35
47
58
46
34
46
57
45
33
45
56
55
54
53
52
51
50
49
48
47
46
45
44
32
33
34
35
36
37
38
39
40
41
42
43
44
57
43
31
45
58
42
30
46
59
41
29
45
60
40
28
44
61
39
27
43
62
38
26
42
66
67
68
69
70
71
72
73
74
75
76
77
78
63
37
25
41
53
54
55
56
57
58
59
60
61
62
63
64
65
79
64
36
24
40
52
80
65
35
23
39
51
81
66
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
38
50
81
67
23
9
37
49
80
68
24
8
36
48
79
67
25
7
35
47
78
77
76
75
74
73
72
71
70
69
68
67
66
26
6
34
35
36
37
38
39
40
41
42
43
44
45
46
79
65
27
5
33
47
80
64
28
4
32
48
81
63
29
3
31
49
82
62
30
2
30
50
83
61
31
1
29
51
84
60
32
0
135
136
137
138
139
140
141
142
143
144
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
95
83
123
130
110
98
97
96
95
94
93
92
91
90
89
88
87
86
98
94
82
122
129
109
97
85
97
93
81
121
128
108
96
84
96
92
80
120
127
107
95
83
95
91
79
119
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
82
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
78
118
119
105
93
81
93
81
77
117
120
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
112
95
83
71
83
71
67
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
71
59
47
87
88
89
90
91
92
93
94
95
96
97
98
97
82
81
80
79
78
77
76
75
74
73
72
71
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
34
35
36
37
38
39
40
41
42
43
44
45
46
86
96
83
45
33
47
85
95
84
44
32
48
84
94
83
43
31
49
83
93
82
42
30
50
82
92
81
41
29
51
81
91
80
40
28
52
80
90
79
39
27
53
67
68
69
70
71
72
73
74
75
76
77
78
79
89
78
38
26
54
55
56
57
58
59
60
61
62
63
64
65
66
88
77
37
25
87
76
36
24
86
75
35
23
85
74
34
22
84
73
33
21
83
83
82
81
80
79
78
77
76
75
74
73
72
32
31
30
29
28
27
26
25
24
23
22
21
20
82
71
33
19
81
70
34
18
80
69
35
17
79
68
36
16
78
67
37
15
77
66
38
14
38
39
40
41
42
43
44
45
46
47
48
49
50
76
65
39
13
25
26
27
28
29
30
31
32
33
34
35
36
37
51
75
64
40
12
24
52
74
63
41
11
23
53
73
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
45
44
43
42
10
22
54
72
51
37
9
21
55
71
52
36
8
20
56
70
53
35
7
19
57
58
59
60
61
62
63
64
65
66
67
68
69
54
34
6
7
8
9
10
11
12
13
14
15
16
17
18
58
70
55
33
5
19
59
71
56
32
4
20
60
72
57
31
3
21
61
73
58
30
2
22
62
74
59
29
1
23
63
75
60
28
0
145
146
147
148
149
150
151
152
153
154
155
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
144
153
133
121
117
105
143
152
132
120
116
104
142
151
131
119
115
103
141
150
130
118
114
102
140
149
129
117
113
101
139
148
128
116
112
100
138
147
127
115
111
99
137
146
126
114
110
98
136
145
125
113
109
97
135
144
124
112
108
96
134
143
123
111
107
95
133
142
122
110
109
108
107
106
105
104
103
102
101
100
99
98
110
106
94
132
141
121
109
97
109
105
93
131
140
120
108
96
108
104
92
130
139
119
107
95
107
103
91
129
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
106
94
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
90
128
131
117
105
93
105
93
89
127
131
116
104
92
104
92
88
126
130
115
103
91
103
91
87
125
129
114
102
90
102
90
86
124
128
113
101
89
101
89
85
123
127
112
100
88
100
88
84
122
126
111
99
87
99
87
83
121
125
110
98
86
98
86
82
120
124
109
97
85
97
85
81
119
123
108
96
84
96
84
80
118
122
107
95
83
95
83
79
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
108
93
81
69
107
92
80
68
106
91
79
67
105
90
78
66
104
89
77
65
103
88
76
64
102
87
75
63
101
86
74
62
100
85
73
61
99
84
72
60
98
83
71
59
97
96
95
94
93
92
91
90
89
88
87
86
85
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
57
58
98
84
95
57
45
59
97
83
95
56
44
60
96
82
94
55
43
61
95
81
93
54
42
62
94
80
92
53
41
63
93
79
91
52
40
64
92
78
90
51
39
65
79
80
81
82
83
84
85
86
87
88
89
90
91
77
89
50
38
66
67
68
69
70
71
72
73
74
75
76
77
78
76
88
49
37
75
87
48
36
74
86
47
35
73
85
46
34
72
84
45
33
71
72
73
74
75
76
77
78
79
80
81
82
83
44
43
42
41
40
39
38
37
36
35
34
33
32
70
84
45
31
69
85
46
30
68
86
47
29
67
87
48
28
66
88
49
27
65
89
50
26
26
27
28
29
30
31
32
33
34
35
36
37
38
64
89
51
25
13
14
15
16
17
18
19
20
21
22
23
24
25
39
63
88
52
24
12
40
62
87
53
23
11
41
61
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
63
62
61
60
59
58
57
56
55
54
22
10
42
60
75
61
21
9
43
59
76
60
20
8
44
58
77
59
19
7
45
46
47
48
49
50
51
52
53
54
55
56
57
78
58
18
17
16
15
14
13
12
11
10
9
8
7
6
46
58
79
57
19
5
47
59
80
56
20
4
48
60
81
55
21
3
49
61
82
54
22
2
50
62
83
53
23
1
51
63
84
52
24
0
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
156
155
154
153
152
151
150
149
148
147
146
106
118
122
134
154
145
105
117
121
133
153
144
104
116
120
132
152
143
103
115
119
131
151
142
102
114
118
130
150
141
101
113
117
129
149
140
100
112
116
128
148
139
99
111
115
127
147
138
98
110
114
126
146
137
97
109
113
125
145
136
96
108
112
124
144
135
95
107
111
99
100
101
102
103
104
105
106
107
108
109
110
111
123
143
134
94
106
110
98
110
122
142
133
93
105
109
97
109
121
141
132
92
104
108
96
108
120
140
131
91
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
95
107
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
130
90
94
106
94
106
118
132
129
89
93
105
93
105
117
132
128
88
92
104
92
104
116
131
127
87
91
103
91
103
115
130
126
86
90
102
90
102
114
129
125
85
89
101
89
101
113
128
124
84
88
100
88
100
112
127
123
83
87
99
87
99
111
126
122
82
86
98
86
98
110
125
121
81
85
97
85
97
109
124
120
80
84
96
84
96
108
123
119
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
70
82
94
109
69
81
93
108
68
80
92
107
67
79
91
106
66
78
90
105
65
77
89
104
64
76
88
103
63
75
87
102
62
74
86
101
61
73
85
100
60
72
84
99
59
58
57
56
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
86
87
88
89
90
91
92
93
94
95
96
97
98
60
46
58
96
85
99
61
45
57
96
84
98
62
44
56
95
83
97
63
43
55
94
82
96
64
42
54
93
81
95
65
41
53
92
80
94
66
40
52
91
79
93
79
78
77
76
75
74
73
72
71
70
69
68
67
39
51
90
78
92
91
90
89
88
87
86
85
84
83
82
81
80
38
50
89
77
37
49
88
76
36
48
87
75
35
47
86
74
34
46
85
73
33
34
35
36
37
38
39
40
41
42
43
44
45
84
83
82
81
80
79
78
77
76
75
74
73
72
32
46
85
71
31
47
86
70
30
48
87
69
29
49
88
68
28
50
89
67
27
51
90
66
26
25
24
23
22
21
20
19
18
17
16
15
14
26
52
90
65
39
38
37
36
35
34
33
32
31
30
29
28
27
13
25
53
89
64
40
12
24
54
88
63
41
11
23
55
56
57
58
59
60
61
62
63
64
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
62
42
10
22
62
76
61
43
9
21
61
77
60
44
8
20
60
78
59
45
7
8
9
10
11
12
13
14
15
16
17
18
19
59
79
58
57
56
55
54
53
52
51
50
49
48
47
46
6
20
58
80
59
47
5
21
57
81
60
48
4
22
56
82
61
49
3
23
55
83
62
50
2
24
54
84
63
51
1
25
53
85
64
52
0
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
145
144
143
142
141
140
139
138
137
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
112
132
125
83
95
99
87
88
89
90
91
92
93
94
95
96
97
98
99
111
131
124
82
94
98
86
98
110
130
123
81
93
97
85
97
109
129
122
80
92
96
84
96
108
128
121
79
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
83
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
120
78
82
94
82
94
106
120
119
77
81
93
81
93
105
121
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
72
84
72
84
96
113
109
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
60
72
89
47
46
45
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
97
98
98
97
96
95
94
93
92
91
90
89
88
48
34
46
84
96
87
49
33
45
83
95
86
50
32
44
82
94
85
51
31
43
81
93
84
52
30
42
80
92
83
53
29
41
79
91
82
54
28
40
78
90
81
67
66
65
64
63
62
61
60
59
58
57
56
55
27
39
77
89
80
79
78
77
76
75
74
73
72
71
70
69
68
26
38
76
88
25
37
75
87
24
36
74
86
23
35
73
85
22
34
72
84
21
22
23
24
25
26
27
28
29
30
31
32
33
71
72
73
74
75
76
77
78
79
80
81
82
83
20
34
70
83
19
35
69
82
18
36
68
81
17
37
67
80
16
38
66
79
15
39
65
78
38
37
36
35
34
33
32
31
30
29
28
27
26
14
40
64
77
51
50
49
48
47
46
45
44
43
42
41
40
39
25
13
41
63
76
52
24
12
42
62
75
53
23
11
43
44
45
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
74
54
22
10
36
50
73
55
21
9
35
51
72
56
20
8
34
52
71
57
19
18
17
16
15
14
13
12
11
10
9
8
7
33
53
70
69
68
67
66
65
64
63
62
61
60
59
58
20
6
32
54
71
59
21
5
31
55
72
60
22
4
30
56
73
61
23
3
29
57
74
62
24
2
28
58
75
63
25
1
27
59
76
64
26
0
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
118
130
110
122
142
130
117
129
109
121
141
129
116
128
108
120
140
128
115
127
107
119
139
127
114
126
106
118
138
126
113
125
105
117
137
125
112
124
104
116
136
124
111
123
103
115
135
123
110
122
102
114
134
122
109
121
101
113
133
121
108
120
100
112
132
120
107
119
99
87
88
89
90
91
92
93
94
95
96
97
98
99
111
131
119
106
118
98
86
98
110
130
118
105
117
97
85
97
109
129
117
104
116
96
84
96
108
128
116
103
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
115
102
106
94
82
94
106
118
114
101
105
93
81
93
105
117
113
100
104
92
80
92
104
116
112
99
103
91
79
91
103
115
111
98
102
90
78
90
102
114
110
97
101
89
77
89
101
113
109
96
100
88
76
88
100
112
108
95
99
87
75
87
99
111
107
94
98
86
74
86
98
110
106
93
97
85
73
85
97
109
105
92
96
84
72
84
96
108
104
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
82
70
82
94
81
69
81
93
80
68
80
92
79
67
79
91
78
66
78
90
77
65
77
89
76
64
76
88
75
63
75
87
74
62
74
86
73
61
73
85
72
60
72
84
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
72
58
46
58
70
84
73
57
45
57
69
85
74
56
44
56
68
86
75
55
43
55
67
87
76
54
42
54
66
88
77
53
41
53
65
89
78
52
40
52
64
90
91
90
89
88
87
86
85
84
83
82
81
80
79
51
39
51
63
91
92
93
94
95
96
97
97
96
95
94
93
92
50
38
50
62
49
37
49
61
48
36
48
60
47
35
47
59
46
34
46
58
45
44
43
42
41
40
39
38
37
36
35
34
33
45
46
47
48
49
50
51
52
53
54
55
56
57
46
32
44
58
45
31
43
59
44
30
42
60
43
29
41
61
42
28
40
62
41
27
39
63
64
63
62
61
60
59
58
57
56
55
54
53
52
40
26
38
64
77
76
75
74
73
72
71
70
69
68
67
66
65
51
39
25
37
65
78
50
38
24
36
66
79
49
37
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
67
80
48
36
10
24
68
81
47
35
9
25
69
81
46
34
8
26
68
80
45
44
43
42
41
40
39
38
37
36
35
34
33
7
27
67
68
69
70
71
72
73
74
75
76
77
78
79
46
32
6
28
66
80
47
31
5
29
65
81
48
30
4
30
64
82
49
29
3
31
63
83
50
28
2
32
62
84
51
27
1
33
61
85
52
26
0
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
130
142
122
110
130
118
129
141
121
109
129
117
128
140
120
108
128
116
127
139
119
107
127
115
126
138
118
106
126
114
125
137
117
105
125
113
124
136
116
104
124
112
123
135
115
103
123
111
122
134
114
102
122
110
121
133
113
101
121
109
120
132
112
100
120
108
119
131
111
99
98
97
96
95
94
93
92
91
90
89
88
87
99
119
107
118
130
110
98
86
98
118
106
117
129
109
97
85
97
117
105
116
128
108
96
84
96
116
104
115
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
103
114
118
106
94
82
94
106
102
113
117
105
93
81
93
105
101
112
116
104
92
80
92
104
100
111
115
103
91
79
91
103
99
110
114
102
90
78
90
102
98
109
113
101
89
77
89
101
97
108
112
100
88
76
88
100
96
107
111
99
87
75
87
99
95
106
110
98
86
74
86
98
94
105
109
97
85
73
85
97
93
104
108
96
84
72
84
96
92
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
94
82
70
82
93
81
69
81
92
80
68
80
91
79
67
79
90
78
66
78
89
77
65
77
88
76
64
76
87
75
63
75
86
74
62
74
85
73
61
73
84
72
60
72
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
84
70
58
46
58
72
85
69
57
45
57
73
86
68
56
44
56
74
87
67
55
43
55
75
88
66
54
42
54
76
89
65
53
41
53
77
90
64
52
40
52
78
92
93
94
95
96
97
97
96
95
94
93
92
91
63
51
39
51
79
80
81
82
83
84
85
86
87
88
89
90
91
62
50
38
50
61
49
37
49
60
48
36
48
59
47
35
47
58
46
34
46
57
56
55
54
53
52
51
50
49
48
47
46
45
33
34
35
36
37
38
39
40
41
42
43
44
45
58
44
32
46
59
43
31
45
60
42
30
44
61
41
29
43
62
40
28
42
63
39
27
41
65
66
67
68
69
70
71
72
73
74
75
76
77
64
38
26
40
52
53
54
55
56
57
58
59
60
61
62
63
64
78
65
37
25
39
51
79
66
36
24
38
50
80
67
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
37
49
81
68
24
10
36
48
81
69
25
9
35
47
80
68
26
8
34
46
79
78
77
76
75
74
73
72
71
70
69
68
67
27
7
33
34
35
36
37
38
39
40
41
42
43
44
45
80
66
28
6
32
46
81
65
29
5
31
47
82
64
30
4
30
48
83
63
31
3
29
49
84
62
32
2
28
50
85
61
33
1
27
51
86
60
34
0
136
137
138
139
140
141
142
143
144
145
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
96
84
124
131
111
99
98
97
96
95
94
93
92
91
90
89
88
87
99
95
83
123
130
110
98
86
98
94
82
122
129
109
97
85
97
93
81
121
128
108
96
84
96
92
80
120
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
83
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
79
119
120
106
94
82
94
82
78
118
121
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
113
96
84
72
84
72
68
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
72
60
48
88
89
90
91
92
93
94
95
96
97
98
98
97
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
45
46
47
87
96
84
46
34
48
86
95
83
45
33
49
85
94
82
44
32
50
84
93
81
43
31
51
83
92
80
42
30
52
82
91
79
41
29
53
81
90
78
40
28
54
68
69
70
71
72
73
74
75
76
77
78
79
80
89
77
39
27
55
56
57
58
59
60
61
62
63
64
65
66
67
88
76
38
26
87
75
37
25
86
74
36
24
85
73
35
23
84
72
34
22
83
82
81
80
79
78
77
76
75
74
73
72
71
33
32
31
30
29
28
27
26
25
24
23
22
21
83
70
34
20
82
69
35
19
81
68
36
18
80
67
37
17
79
66
38
16
78
65
39
15
39
40
41
42
43
44
45
46
47
48
49
50
51
77
64
40
14
26
27
28
29
30
31
32
33
34
35
36
37
38
52
76
63
41
13
25
53
75
62
42
12
24
54
74
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
45
44
43
11
23
55
73
50
36
10
22
56
72
51
35
9
21
57
71
52
34
8
20
58
59
60
61
62
63
64
65
66
67
68
69
70
53
33
7
8
9
10
11
12
13
14
15
16
17
18
19
59
71
54
32
6
20
60
72
55
31
5
21
61
73
56
30
4
22
62
74
57
29
3
23
63
75
58
28
2
24
64
76
59
27
1
25
65
77
60
26
0
146
147
148
149
150
151
152
153
154
155
156
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
145
154
134
122
118
106
144
153
133
121
117
105
143
152
132
120
116
104
142
151
131
119
115
103
141
150
130
118
114
102
140
149
129
117
113
101
139
148
128
116
112
100
138
147
127
115
111
99
137
146
126
114
110
98
136
145
125
113
109
97
135
144
124
112
108
96
134
143
123
111
110
109
108
107
106
105
104
103
102
101
100
99
111
107
95
133
142
122
110
98
110
106
94
132
141
121
109
97
109
105
93
131
140
120
108
96
108
104
92
130
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
107
95
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
91
129
132
118
106
94
106
94
90
128
132
117
105
93
105
93
89
127
131
116
104
92
104
92
88
126
130
115
103
91
103
91
87
125
129
114
102
90
102
90
86
124
128
113
101
89
101
89
85
123
127
112
100
88
100
88
84
122
126
111
99
87
99
87
83
121
125
110
98
86
98
86
82
120
124
109
97
85
97
85
81
119
123
108
96
84
96
84
80
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
109
94
82
70
108
93
81
69
107
92
80
68
106
91
79
67
105
90
78
66
104
89
77
65
103
88
76
64
102
87
75
63
101
86
74
62
100
85
73
61
99
84
72
60
98
97
96
95
94
93
92
91
90
89
88
87
86
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
56
57
58
59
99
85
96
58
46
60
98
84
96
57
45
61
97
83
95
56
44
62
96
82
94
55
43
63
95
81
93
54
42
64
94
80
92
53
41
65
93
79
91
52
40
66
80
81
82
83
84
85
86
87
88
89
90
91
92
78
90
51
39
67
68
69
70
71
72
73
74
75
76
77
78
79
77
89
50
38
76
88
49
37
75
87
48
36
74
86
47
35
73
85
46
34
72
73
74
75
76
77
78
79
80
81
82
83
84
45
44
43
42
41
40
39
38
37
36
35
34
33
71
85
46
32
70
86
47
31
69
87
48
30
68
88
49
29
67
89
50
28
66
90
51
27
27
28
29
30
31
32
33
34
35
36
37
38
39
65
90
52
26
14
15
16
17
18
19
20
21
22
23
24
25
26
40
64
89
53
25
13
41
63
88
54
24
12
42
62
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
64
63
62
61
60
59
58
57
56
55
23
11
43
61
76
62
22
10
44
60
77
61
21
9
45
59
78
60
20
8
46
47
48
49
50
51
52
53
54
55
56
57
58
79
59
19
18
17
16
15
14
13
12
11
10
9
8
7
47
59
80
58
20
6
48
60
81
57
21
5
49
61
82
56
22
4
50
62
83
55
23
3
51
63
84
54
24
2
52
64
85
53
25
1
53
65
86
52
26
0
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
157
156
155
154
153
152
151
150
149
148
147
107
119
123
135
155
146
106
118
122
134
154
145
105
117
121
133
153
144
104
116
120
132
152
143
103
115
119
131
151
142
102
114
118
130
150
141
101
113
117
129
149
140
100
112
116
128
148
139
99
111
115
127
147
138
98
110
114
126
146
137
97
109
113
125
145
136
96
108
112
100
101
102
103
104
105
106
107
108
109
110
111
112
124
144
135
95
107
111
99
111
123
143
134
94
106
110
98
110
122
142
133
93
105
109
97
109
121
141
132
92
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
96
108
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
131
91
95
107
95
107
119
133
130
90
94
106
94
106
118
133
129
89
93
105
93
105
117
132
128
88
92
104
92
104
116
131
127
87
91
103
91
103
115
130
126
86
90
102
90
102
114
129
125
85
89
101
89
101
113
128
124
84
88
100
88
100
112
127
123
83
87
99
87
99
111
126
122
82
86
98
86
98
110
125
121
81
85
97
85
97
109
124
120
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
107
108
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
71
83
95
110
70
82
94
109
69
81
93
108
68
80
92
107
67
79
91
106
66
78
90
105
65
77
89
104
64
76
88
103
63
75
87
102
62
74
86
101
61
73
85
100
60
59
58
57
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
87
88
89
90
91
92
93
94
95
96
97
98
99
61
47
59
97
86
100
62
46
58
97
85
99
63
45
57
96
84
98
64
44
56
95
83
97
65
43
55
94
82
96
66
42
54
93
81
95
67
41
53
92
80
94
80
79
78
77
76
75
74
73
72
71
70
69
68
40
52
91
79
93
92
91
90
89
88
87
86
85
84
83
82
81
39
51
90
78
38
50
89
77
37
49
88
76
36
48
87
75
35
47
86
74
34
35
36
37
38
39
40
41
42
43
44
45
46
85
84
83
82
81
80
79
78
77
76
75
74
73
33
47
86
72
32
48
87
71
31
49
88
70
30
50
89
69
29
51
90
68
28
52
91
67
27
26
25
24
23
22
21
20
19
18
17
16
15
27
53
91
66
40
39
38
37
36
35
34
33
32
31
30
29
28
14
26
54
90
65
41
13
25
55
89
64
42
12
24
56
57
58
59
60
61
62
63
64
65
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
63
43
11
23
63
77
62
44
10
22
62
78
61
45
9
21
61
79
60
46
8
9
10
11
12
13
14
15
16
17
18
19
20
60
80
59
58
57
56
55
54
53
52
51
50
49
48
47
7
21
59
81
60
48
6
22
58
82
61
49
5
23
57
83
62
50
4
24
56
84
63
51
3
25
55
85
64
52
2
26
54
86
65
53
1
27
53
87
66
54
0
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
146
145
144
143
142
141
140
139
138
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
113
133
126
84
96
100
88
89
90
91
92
93
94
95
96
97
98
99
100
112
132
125
83
95
99
87
99
111
131
124
82
94
98
86
98
110
130
123
81
93
97
85
97
109
129
122
80
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
84
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
121
79
83
95
83
95
107
121
120
78
82
94
82
94
106
122
119
77
81
93
81
93
105
122
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
73
85
73
85
97
114
110
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
59
71
83
100
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
61
73
90
48
47
46
45
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
96
97
98
98
97
96
95
94
93
92
91
90
89
49
35
47
83
95
88
50
34
46
82
94
87
51
33
45
81
93
86
52
32
44
80
92
85
53
31
43
79
91
84
54
30
42
78
90
83
55
29
41
77
89
82
68
67
66
65
64
63
62
61
60
59
58
57
56
28
40
76
88
81
80
79
78
77
76
75
74
73
72
71
70
69
27
39
75
87
26
38
74
86
25
37
73
85
24
36
72
84
23
35
71
83
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
75
76
77
78
79
80
81
82
21
35
69
83
20
36
68
83
19
37
67
82
18
38
66
81
17
39
65
80
16
40
64
79
39
38
37
36
35
34
33
32
31
30
29
28
27
15
41
63
78
52
51
50
49
48
47
46
45
44
43
42
41
40
26
14
42
62
77
53
25
13
43
61
76
54
24
12
44
45
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
75
55
23
11
35
49
74
56
22
10
34
50
73
57
21
9
33
51
72
58
20
19
18
17
16
15
14
13
12
11
10
9
8
32
52
71
70
69
68
67
66
65
64
63
62
61
60
59
21
7
31
53
72
60
22
6
30
54
73
61
23
5
29
55
74
62
24
4
28
56
75
63
25
3
27
57
76
64
26
2
26
58
77
65
27
1
25
59
78
66
28
0
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
147
146
145
144
143
142
141
140
139
138
96
108
112
124
144
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
114
134
127
85
97
101
89
90
91
92
93
94
95
96
97
98
99
100
101
113
133
126
84
96
100
88
100
112
132
125
83
95
99
87
99
111
131
124
82
94
98
86
98
110
130
123
81
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
85
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
122
80
84
96
84
96
108
122
121
79
83
95
83
95
107
123
120
78
82
94
82
94
106
123
119
77
81
93
81
93
105
122
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
74
86
74
86
98
115
111
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
60
72
84
101
59
71
83
100
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
62
74
91
49
48
47
46
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
95
96
97
98
98
97
96
95
94
93
92
91
90
50
36
48
82
94
89
51
35
47
81
93
88
52
34
46
80
92
87
53
33
45
79
91
86
54
32
44
78
90
85
55
31
43
77
89
84
56
30
42
76
88
83
69
68
67
66
65
64
63
62
61
60
59
58
57
29
41
75
87
82
81
80
79
78
77
76
75
74
73
72
71
70
28
40
74
86
27
39
73
85
26
38
72
84
25
37
71
83
24
36
70
82
23
24
25
26
27
28
29
30
31
32
33
34
35
69
70
71
72
73
74
75
76
77
78
79
80
81
22
36
68
82
21
37
67
83
20
38
66
83
19
39
65
82
18
40
64
81
17
41
63
80
40
39
38
37
36
35
34
33
32
31
30
29
28
16
42
62
79
53
52
51
50
49
48
47
46
45
44
43
42
41
27
15
43
61
78
54
26
14
44
60
77
55
25
13
45
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
76
56
24
12
34
48
75
57
23
11
33
49
74
58
22
10
32
50
73
59
21
20
19
18
17
16
15
14
13
12
11
10
9
31
51
72
71
70
69
68
67
66
65
64
63
62
61
60
22
8
30
52
73
61
23
7
29
53
74
62
24
6
28
54
75
63
25
5
27
55
76
64
26
4
26
56
77
65
27
3
25
57
78
66
28
2
24
58
79
67
29
1
0
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
148
147
146
145
144
143
142
141
140
139
97
109
113
125
145
138
96
108
112
124
144
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
115
135
128
86
98
102
90
91
92
93
94
95
96
97
98
99
100
101
102
114
134
127
85
97
101
89
101
113
133
126
84
96
100
88
100
112
132
125
83
95
99
87
99
111
131
124
82
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
86
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
123
81
85
97
85
97
109
123
122
80
84
96
84
96
108
124
121
79
83
95
83
95
107
124
120
78
82
94
82
94
106
123
119
77
81
93
81
93
105
122
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
75
87
75
87
99
116
112
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
61
73
85
102
60
72
84
101
59
71
83
100
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
50
49
48
47
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
94
95
96
97
98
98
97
96
95
94
93
92
91
51
37
49
81
93
90
52
36
48
80
92
89
53
35
47
79
91
88
54
34
46
78
90
87
55
33
45
77
89
86
56
32
44
76
88
85
57
31
43
75
87
84
70
69
68
67
66
65
64
63
62
61
60
59
58
30
42
74
86
83
82
81
80
79
78
77
76
75
74
73
72
71
29
41
73
85
28
40
72
84
27
39
71
83
26
38
70
82
25
37
69
81
24
25
26
27
28
29
30
31
32
33
34
35
36
68
69
70
71
72
73
74
75
76
77
78
79
80
23
37
67
81
22
38
66
82
21
39
65
83
20
40
64
83
19
41
63
82
18
42
62
81
41
40
39
38
37
36
35
34
33
32
31
30
29
17
43
61
80
54
53
52
51
50
49
48
47
46
45
44
43
42
28
16
44
60
79
55
27
15
45
59
78
56
26
14
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
77
57
25
13
33
47
76
58
24
12
32
48
75
59
23
11
31
49
74
60
22
21
20
19
18
17
16
15
14
13
12
11
10
30
50
73
72
71
70
69
68
67
66
65
64
63
62
61
23
9
29
51
74
62
24
8
28
52
75
63
25
7
27
53
76
64
26
6
26
54
77
65
27
5
25
55
78
66
28
4
24
56
79
67
29
3
23
57
80
68
30
2
1
0
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
98
110
114
126
146
139
97
109
113
125
145
138
96
108
112
124
144
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
116
136
129
87
99
103
91
92
93
94
95
96
97
98
99
100
101
102
103
115
135
128
86
98
102
90
102
114
134
127
85
97
101
89
101
113
133
126
84
96
100
88
100
112
132
125
83
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
87
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
124
82
86
98
86
98
110
124
123
81
85
97
85
97
109
125
122
80
84
96
84
96
108
125
121
79
83
95
83
95
107
124
120
78
82
94
82
94
106
123
119
77
81
93
81
93
105
122
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
76
88
76
88
100
117
113
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
62
74
86
103
61
73
85
102
60
72
84
101
59
71
83
100
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
64
76
93
51
50
49
48
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
93
94
95
96
97
98
98
97
96
95
94
93
92
52
38
50
80
92
91
53
37
49
79
91
90
54
36
48
78
90
89
55
35
47
77
89
88
56
34
46
76
88
87
57
33
45
75
87
86
58
32
44
74
86
85
71
70
69
68
67
66
65
64
63
62
61
60
59
31
43
73
85
84
83
82
81
80
79
78
77
76
75
74
73
72
30
42
72
84
29
41
71
83
28
40
70
82
27
39
69
81
26
38
68
80
25
26
27
28
29
30
31
32
33
34
35
36
37
67
68
69
70
71
72
73
74
75
76
77
78
79
24
38
66
80
23
39
65
81
22
40
64
82
21
41
63
83
20
42
62
83
19
43
61
82
42
41
40
39
38
37
36
35
34
33
32
31
30
18
44
60
81
55
54
53
52
51
50
49
48
47
46
45
44
43
29
17
45
59
80
56
28
16
46
58
79
57
27
15
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
78
58
26
14
32
46
77
59
25
13
31
47
76
60
24
12
30
48
75
61
23
22
21
20
19
18
17
16
15
14
13
12
11
29
49
74
73
72
71
70
69
68
67
66
65
64
63
62
24
10
28
50
75
63
25
9
27
51
76
64
26
8
26
52
77
65
27
7
25
53
78
66
28
6
24
54
79
67
29
5
23
55
80
68
30
4
22
56
81
69
31
3
2
1
0
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
99
111
115
127
147
140
98
110
114
126
146
139
97
109
113
125
145
138
96
108
112
124
144
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
117
137
130
88
100
104
92
93
94
95
96
97
98
99
100
101
102
103
104
116
136
129
87
99
103
91
103
115
135
128
86
98
102
90
102
114
134
127
85
97
101
89
101
113
133
126
84
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
88
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
125
83
87
99
87
99
111
125
124
82
86
98
86
98
110
126
123
81
85
97
85
97
109
126
122
80
84
96
84
96
108
125
121
79
83
95
83
95
107
124
120
78
82
94
82
94
106
123
119
77
81
93
81
93
105
122
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
77
89
77
89
101
118
114
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
63
75
87
104
62
74
86
103
61
73
85
102
60
72
84
101
59
71
83
100
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
65
77
94
52
51
50
49
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
92
93
94
95
96
97
98
98
97
96
95
94
93
53
39
51
79
91
92
54
38
50
78
90
91
55
37
49
77
89
90
56
36
48
76
88
89
57
35
47
75
87
88
58
34
46
74
86
87
59
33
45
73
85
86
72
71
70
69
68
67
66
65
64
63
62
61
60
32
44
72
84
85
84
83
82
81
80
79
78
77
76
75
74
73
31
43
71
83
30
42
70
82
29
41
69
81
28
40
68
80
27
39
67
79
26
27
28
29
30
31
32
33
34
35
36
37
38
66
67
68
69
70
71
72
73
74
75
76
77
78
25
39
65
79
24
40
64
80
23
41
63
81
22
42
62
82
21
43
61
83
20
44
60
83
43
42
41
40
39
38
37
36
35
34
33
32
31
19
45
59
82
56
55
54
53
52
51
50
49
48
47
46
45
44
30
18
46
58
81
57
29
17
45
57
80
58
28
16
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
79
59
27
15
31
45
78
60
26
14
30
46
77
61
25
13
29
47
76
62
24
23
22
21
20
19
18
17
16
15
14
13
12
28
48
75
74
73
72
71
70
69
68
67
66
65
64
63
25
11
27
49
76
64
26
10
26
50
77
65
27
9
25
51
78
66
28
8
24
52
79
67
29
7
23
53
80
68
30
6
22
54
81
69
31
5
21
55
81
70
32
4
3
2
1
0
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
151
150
149
148
147
146
145
144
143
142
100
112
116
128
148
141
99
111
115
127
147
140
98
110
114
126
146
139
97
109
113
125
145
138
96
108
112
124
144
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
118
138
131
89
101
105
93
94
95
96
97
98
99
100
101
102
103
104
105
117
137
130
88
100
104
92
104
116
136
129
87
99
103
91
103
115
135
128
86
98
102
90
102
114
134
127
85
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
89
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
126
84
88
100
88
100
112
126
125
83
87
99
87
99
111
127
124
82
86
98
86
98
110
127
123
81
85
97
85
97
109
126
122
80
84
96
84
96
108
125
121
79
83
95
83
95
107
124
120
78
82
94
82
94
106
123
119
77
81
93
81
93
105
122
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
78
90
78
90
102
119
115
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
64
76
88
105
63
75
87
104
62
74
86
103
61
73
85
102
60
72
84
101
59
71
83
100
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
66
78
95
53
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
91
92
93
94
95
96
97
98
98
97
96
95
94
54
40
52
78
90
93
55
39
51
77
89
92
56
38
50
76
88
91
57
37
49
75
87
90
58
36
48
74
86
89
59
35
47
73
85
88
60
34
46
72
84
87
73
72
71
70
69
68
67
66
65
64
63
62
61
33
45
71
83
86
85
84
83
82
81
80
79
78
77
76
75
74
32
44
70
82
31
43
69
81
30
42
68
80
29
41
67
79
28
40
66
78
27
28
29
30
31
32
33
34
35
36
37
38
39
65
66
67
68
69
70
71
72
73
74
75
76
77
26
40
64
78
25
41
63
79
24
42
62
80
23
43
61
81
22
44
60
82
21
45
59
83
44
43
42
41
40
39
38
37
36
35
34
33
32
20
46
58
83
57
56
55
54
53
52
51
50
49
48
47
46
45
31
19
45
57
82
58
30
18
44
56
81
59
29
17
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
80
60
28
16
30
44
79
61
27
15
29
45
78
62
26
14
28
46
77
63
25
24
23
22
21
20
19
18
17
16
15
14
13
27
47
76
75
74
73
72
71
70
69
68
67
66
65
64
26
12
26
48
77
65
27
11
25
49
78
66
28
10
24
50
79
67
29
9
23
51
80
68
30
8
22
52
81
69
31
7
21
53
81
70
32
6
20
54
80
71
33
5
4
3
2
1
0
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
152
151
150
149
148
147
146
145
144
143
101
113
117
129
149
142
100
112
116
128
148
141
99
111
115
127
147
140
98
110
114
126
146
139
97
109
113
125
145
138
96
108
112
124
144
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
119
139
132
90
102
106
94
95
96
97
98
99
100
101
102
103
104
105
106
118
138
131
89
101
105
93
105
117
137
130
88
100
104
92
104
116
136
129
87
99
103
91
103
115
135
128
86
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
90
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
127
85
89
101
89
101
113
127
126
84
88
100
88
100
112
128
125
83
87
99
87
99
111
128
124
82
86
98
86
98
110
127
123
81
85
97
85
97
109
126
122
80
84
96
84
96
108
125
121
79
83
95
83
95
107
124
120
78
82
94
82
94
106
123
119
77
81
93
81
93
105
122
118
76
80
92
80
92
104
121
117
75
79
91
79
91
103
120
116
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
65
77
89
106
64
76
88
105
63
75
87
104
62
74
86
103
61
73
85
102
60
72
84
101
59
71
83
100
58
70
82
99
57
69
81
98
56
68
80
97
55
67
79
96
54
53
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
98
97
96
95
55
41
53
77
89
94
56
40
52
76
88
93
57
39
51
75
87
92
58
38
50
74
86
91
59
37
49
73
85
90
60
36
48
72
84
89
61
35
47
71
83
88
74
73
72
71
70
69
68
67
66
65
64
63
62
34
46
70
82
87
86
85
84
83
82
81
80
79
78
77
76
75
33
45
69
81
32
44
68
80
31
43
67
79
30
42
66
78
29
41
65
77
28
29
30
31
32
33
34
35
36
37
38
39
40
64
65
66
67
68
69
70
71
72
73
74
75
76
27
41
63
77
26
42
62
78
25
43
61
79
24
44
60
80
23
45
59
81
22
46
58
82
45
44
43
42
41
40
39
38
37
36
35
34
33
21
45
57
83
58
57
56
55
54
53
52
51
50
49
48
47
46
32
20
44
56
83
59
31
19
43
55
82
60
30
18
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
81
61
29
17
29
43
80
62
28
16
28
44
79
63
27
15
27
45
78
64
26
25
24
23
22
21
20
19
18
17
16
15
14
26
46
77
76
75
74
73
72
71
70
69
68
67
66
65
27
13
25
47
78
66
28
12
24
48
79
67
29
11
23
49
80
68
30
10
22
50
81
69
31
9
21
51
81
70
32
8
20
52
80
71
33
7
19
53
79
72
34
6
5
4
3
2
1
0
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
102
114
118
130
150
143
101
113
117
129
149
142
100
112
116
128
148
141
99
111
115
127
147
140
98
110
114
126
146
139
97
109
113
125
145
138
96
108
112
124
144
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
120
140
133
91
103
107
95
96
97
98
99
100
101
102
103
104
105
106
107
119
139
132
90
102
106
94
106
118
138
131
89
101
105
93
105
117
137
130
88
100
104
92
104
116
136
129
87
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
91
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
128
86
90
102
90
102
114
128
127
85
89
101
89
101
113
129
126
84
88
100
88
100
112
129
125
83
87
99
87
99
111
128
124
82
86
98
86
98
110
127
123
81
85
97
85
97
109
126
122
80
84
96
84
96
108
125
121
79
83
95
83
95
107
124
120
78
82
94
82
94
106
123
119
77
81
93
81
93
105
122
118
76
80
92
80
92
104
121
117
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
66
78
90
107
65
77
89
106
64
76
88
105
63
75
87
104
62
74
86
103
61
73
85
102
60
72
84
101
59
71
83
100
58
70
82
99
57
69
81
98
56
68
80
97
55
54
53
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
98
97
96
56
42
54
76
88
95
57
41
53
75
87
94
58
40
52
74
86
93
59
39
51
73
85
92
60
38
50
72
84
91
61
37
49
71
83
90
62
36
48
70
82
89
75
74
73
72
71
70
69
68
67
66
65
64
63
35
47
69
81
88
87
86
85
84
83
82
81
80
79
78
77
76
34
46
68
80
33
45
67
79
32
44
66
78
31
43
65
77
30
42
64
76
29
30
31
32
33
34
35
36
37
38
39
40
41
63
64
65
66
67
68
69
70
71
72
73
74
75
28
42
62
76
27
43
61
77
26
44
60
78
25
45
59
79
24
46
58
80
23
45
57
81
46
45
44
43
42
41
40
39
38
37
36
35
34
22
44
56
82
59
58
57
56
55
54
53
52
51
50
49
48
47
33
21
43
55
83
60
32
20
42
54
83
61
31
19
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
82
62
30
18
28
42
81
63
29
17
27
43
80
64
28
16
26
44
79
65
27
26
25
24
23
22
21
20
19
18
17
16
15
25
45
78
77
76
75
74
73
72
71
70
69
68
67
66
28
14
24
46
79
67
29
13
23
47
80
68
30
12
22
48
81
69
31
11
21
49
81
70
32
10
20
50
80
71
33
9
19
51
79
72
34
8
18
52
78
73
35
7
6
5
4
3
2
1
0
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
154
153
152
151
150
149
148
147
146
145
103
115
119
131
151
144
102
114
118
130
150
143
101
113
117
129
149
142
100
112
116
128
148
141
99
111
115
127
147
140
98
110
114
126
146
139
97
109
113
125
145
138
96
108
112
124
144
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
121
141
134
92
104
108
96
97
98
99
100
101
102
103
104
105
106
107
108
120
140
133
91
103
107
95
107
119
139
132
90
102
106
94
106
118
138
131
89
101
105
93
105
117
137
130
88
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
92
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
129
87
91
103
91
103
115
129
128
86
90
102
90
102
114
130
127
85
89
101
89
101
113
130
126
84
88
100
88
100
112
129
125
83
87
99
87
99
111
128
124
82
86
98
86
98
110
127
123
81
85
97
85
97
109
126
122
80
84
96
84
96
108
125
121
79
83
95
83
95
107
124
120
78
82
94
82
94
106
123
119
77
81
93
81
93
105
122
118
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
67
79
91
108
66
78
90
107
65
77
89
106
64
76
88
105
63
75
87
104
62
74
86
103
61
73
85
102
60
72
84
101
59
71
83
100
58
70
82
99
57
69
81
98
56
55
54
53
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
98
97
57
43
55
75
87
96
58
42
54
74
86
95
59
41
53
73
85
94
60
40
52
72
84
93
61
39
51
71
83
92
62
38
50
70
82
91
63
37
49
69
81
90
76
75
74
73
72
71
70
69
68
67
66
65
64
36
48
68
80
89
88
87
86
85
84
83
82
81
80
79
78
77
35
47
67
79
34
46
66
78
33
45
65
77
32
44
64
76
31
43
63
75
30
31
32
33
34
35
36
37
38
39
40
41
42
62
63
64
65
66
67
68
69
70
71
72
73
74
29
43
61
75
28
44
60
76
27
45
59
77
26
46
58
78
25
45
57
79
24
44
56
80
47
46
45
44
43
42
41
40
39
38
37
36
35
23
43
55
81
60
59
58
57
56
55
54
53
52
51
50
49
48
34
22
42
54
82
61
33
21
41
53
83
62
32
20
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
83
63
31
19
27
41
82
64
30
18
26
42
81
65
29
17
25
43
80
66
28
27
26
25
24
23
22
21
20
19
18
17
16
24
44
79
78
77
76
75
74
73
72
71
70
69
68
67
29
15
23
45
80
68
30
14
22
46
81
69
31
13
21
47
81
70
32
12
20
48
80
71
33
11
19
49
79
72
34
10
18
50
78
73
35
9
17
51
77
74
36
8
7
6
5
4
3
2
1
0
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
155
154
153
152
151
150
149
148
147
146
104
116
120
132
152
145
103
115
119
131
151
144
102
114
118
130
150
143
101
113
117
129
149
142
100
112
116
128
148
141
99
111
115
127
147
140
98
110
114
126
146
139
97
109
113
125
145
138
96
108
112
124
144
137
95
107
111
123
143
136
94
106
110
122
142
135
93
105
109
97
98
99
100
101
102
103
104
105
106
107
108
109
121
141
134
92
104
108
96
108
120
140
133
91
103
107
95
107
119
139
132
90
102
106
94
106
118
138
131
89
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
93
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
130
88
92
104
92
104
116
130
129
87
91
103
91
103
115
131
128
86
90
102
90
102
114
131
127
85
89
101
89
101
113
130
126
84
88
100
88
100
112
129
125
83
87
99
87
99
111
128
124
82
86
98
86
98
110
127
123
81
85
97
85
97
109
126
122
80
84
96
84
96
108
125
121
79
83
95
83
95
107
124
120
78
82
94
82
94
106
123
119
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
68
80
92
109
67
79
91
108
66
78
90
107
65
77
89
106
64
76
88
105
63
75
87
104
62
74
86
103
61
73
85
102
60
72
84
101
59
71
83
100
58
70
82
99
57
56
55
54
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
98
58
44
56
74
86
97
59
43
55
73
85
96
60
42
54
72
84
95
61
41
53
71
83
94
62
40
52
70
82
93
63
39
51
69
81
92
64
38
50
68
80
91
77
76
75
74
73
72
71
70
69
68
67
66
65
37
49
67
79
90
89
88
87
86
85
84
83
82
81
80
79
78
36
48
66
78
35
47
65
77
34
46
64
76
33
45
63
75
32
44
62
74
31
32
33
34
35
36
37
38
39
40
41
42
43
61
62
63
64
65
66
67
68
69
70
71
72
73
30
44
60
74
29
45
59
75
28
46
58
76
27
45
57
77
26
44
56
78
25
43
55
79
48
47
46
45
44
43
42
41
40
39
38
37
36
24
42
54
80
61
60
59
58
57
56
55
54
53
52
51
50
49
35
23
41
53
81
62
34
22
40
52
82
63
33
21
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
83
64
32
20
26
40
83
65
31
19
25
41
82
66
30
18
24
42
81
67
29
28
27
26
25
24
23
22
21
20
19
18
17
23
43
80
79
78
77
76
75
74
73
72
71
70
69
68
30
16
22
44
81
69
31
15
21
45
81
70
32
14
20
46
80
71
33
13
19
47
79
72
34
12
18
48
78
73
35
11
17
49
77
74
36
10
16
50
76
75
37
9
8
7
6
5
4
3
2
1
0
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
105
117
121
133
153
145
104
116
120
132
152
144
103
115
119
131
151
143
102
114
118
130
150
142
101
113
117
129
149
141
100
112
116
128
148
140
99
111
115
127
147
139
98
110
114
126
146
138
97
109
113
125
145
137
96
108
112
124
144
136
95
107
111
123
143
135
94
106
110
98
99
100
101
102
103
104
105
106
107
108
109
110
122
142
134
93
105
109
97
109
121
141
133
92
104
108
96
108
120
140
132
91
103
107
95
107
119
139
131
90
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
94
106
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
130
89
93
105
93
105
117
131
129
88
92
104
92
104
116
132
128
87
91
103
91
103
115
131
127
86
90
102
90
102
114
130
126
85
89
101
89
101
113
129
125
84
88
100
88
100
112
128
124
83
87
99
87
99
111
127
123
82
86
98
86
98
110
126
122
81
85
97
85
97
109
125
121
80
84
96
84
96
108
124
120
79
83
95
83
95
107
123
119
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
69
81
93
109
68
80
92
108
67
79
91
107
66
78
90
106
65
77
89
105
64
76
88
104
63
75
87
103
62
74
86
102
61
73
85
101
60
72
84
100
59
71
83
99
58
57
56
55
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
59
45
57
73
85
98
60
44
56
72
84
97
61
43
55
71
83
96
62
42
54
70
82
95
63
41
53
69
81
94
64
40
52
68
80
93
65
39
51
67
79
92
78
77
76
75
74
73
72
71
70
69
68
67
66
38
50
66
78
91
90
89
88
87
86
85
84
83
82
81
80
79
37
49
65
77
36
48
64
76
35
47
63
75
34
46
62
74
33
45
61
73
32
33
34
35
36
37
38
39
40
41
42
43
44
60
61
62
63
64
65
66
67
68
69
70
71
72
31
45
59
73
30
46
58
74
29
45
57
75
28
44
56
76
27
43
55
77
26
42
54
78
49
48
47
46
45
44
43
42
41
40
39
38
37
25
41
53
79
62
61
60
59
58
57
56
55
54
53
52
51
50
36
24
40
52
80
63
35
23
39
51
81
64
34
22
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
82
65
33
21
25
39
83
66
32
20
24
40
83
67
31
19
23
41
82
68
30
29
28
27
26
25
24
23
22
21
20
19
18
22
42
81
80
79
78
77
76
75
74
73
72
71
70
69
31
17
21
43
81
70
32
16
20
44
80
71
33
15
19
45
79
72
34
14
18
46
78
73
35
13
17
47
77
74
36
12
16
48
76
75
37
11
15
49
75
76
38
10
9
8
7
6
5
4
3
2
1
0
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
106
118
122
134
154
144
105
117
121
133
153
143
104
116
120
132
152
142
103
115
119
131
151
141
102
114
118
130
150
140
101
113
117
129
149
139
100
112
116
128
148
138
99
111
115
127
147
137
98
110
114
126
146
136
97
109
113
125
145
135
96
108
112
124
144
134
95
107
111
99
100
101
102
103
104
105
106
107
108
109
110
111
123
143
133
94
106
110
98
110
122
142
132
93
105
109
97
109
121
141
131
92
104
108
96
108
120
140
130
91
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
95
107
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
129
90
94
106
94
106
118
132
128
89
93
105
93
105
117
131
127
88
92
104
92
104
116
130
126
87
91
103
91
103
115
129
125
86
90
102
90
102
114
128
124
85
89
101
89
101
113
127
123
84
88
100
88
100
112
126
122
83
87
99
87
99
111
125
121
82
86
98
86
98
110
124
120
81
85
97
85
97
109
123
119
80
84
96
84
96
108
122
118
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
70
82
94
108
69
81
93
107
68
80
92
106
67
79
91
105
66
78
90
104
65
77
89
103
64
76
88
102
63
75
87
101
62
74
86
100
61
73
85
99
60
72
84
98
59
58
57
56
55
54
53
52
51
50
49
48
47
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
60
46
58
72
84
98
61
45
57
71
83
98
62
44
56
70
82
97
63
43
55
69
81
96
64
42
54
68
80
95
65
41
53
67
79
94
66
40
52
66
78
93
79
78
77
76
75
74
73
72
71
70
69
68
67
39
51
65
77
92
91
90
89
88
87
86
85
84
83
82
81
80
38
50
64
76
37
49
63
75
36
48
62
74
35
47
61
73
34
46
60
72
33
34
35
36
37
38
39
40
41
42
43
44
45
59
60
61
62
63
64
65
66
67
68
69
70
71
32
46
58
72
31
45
57
73
30
44
56
74
29
43
55
75
28
42
54
76
27
41
53
77
50
49
48
47
46
45
44
43
42
41
40
39
38
26
40
52
78
63
62
61
60
59
58
57
56
55
54
53
52
51
37
25
39
51
79
64
36
24
38
50
80
65
35
23
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
81
66
34
22
24
38
82
67
33
21
23
39
83
68
32
20
22
40
82
69
31
30
29
28
27
26
25
24
23
22
21
20
19
21
41
81
81
80
79
78
77
76
75
74
73
72
71
70
32
18
20
42
80
71
33
17
19
43
79
72
34
16
18
44
78
73
35
15
17
45
77
74
36
14
16
46
76
75
37
13
15
47
75
76
38
12
14
48
74
77
39
11
10
9
8
7
6
5
4
3
2
1
0
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
107
119
123
135
155
143
106
118
122
134
154
142
105
117
121
133
153
141
104
116
120
132
152
140
103
115
119
131
151
139
102
114
118
130
150
138
101
113
117
129
149
137
100
112
116
128
148
136
99
111
115
127
147
135
98
110
114
126
146
134
97
109
113
125
145
133
96
108
112
100
101
102
103
104
105
106
107
108
109
110
111
112
124
144
132
95
107
111
99
111
123
143
131
94
106
110
98
110
122
142
130
93
105
109
97
109
121
141
129
92
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
96
108
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
128
91
95
107
95
107
119
131
127
90
94
106
94
106
118
130
126
89
93
105
93
105
117
129
125
88
92
104
92
104
116
128
124
87
91
103
91
103
115
127
123
86
90
102
90
102
114
126
122
85
89
101
89
101
113
125
121
84
88
100
88
100
112
124
120
83
87
99
87
99
111
123
119
82
86
98
86
98
110
122
118
81
85
97
85
97
109
121
117
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
107
108
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
71
83
95
107
70
82
94
106
69
81
93
105
68
80
92
104
67
79
91
103
66
78
90
102
65
77
89
101
64
76
88
100
63
75
87
99
62
74
86
98
61
73
85
97
60
59
58
57
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
61
47
59
71
83
97
62
46
58
70
82
98
63
45
57
69
81
98
64
44
56
68
80
97
65
43
55
67
79
96
66
42
54
66
78
95
67
41
53
65
77
94
80
79
78
77
76
75
74
73
72
71
70
69
68
40
52
64
76
93
92
91
90
89
88
87
86
85
84
83
82
81
39
51
63
75
38
50
62
74
37
49
61
73
36
48
60
72
35
47
59
71
34
35
36
37
38
39
40
41
42
43
44
45
46
58
59
60
61
62
63
64
65
66
67
68
69
70
33
45
57
71
32
44
56
72
31
43
55
73
30
42
54
74
29
41
53
75
28
40
52
76
51
50
49
48
47
46
45
44
43
42
41
40
39
27
39
51
77
64
63
62
61
60
59
58
57
56
55
54
53
52
38
26
38
50
78
65
37
25
37
49
79
66
36
24
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
80
67
35
23
23
37
81
68
34
22
22
38
82
69
33
21
21
39
81
70
32
31
30
29
28
27
26
25
24
23
22
21
20
20
40
80
81
81
80
79
78
77
76
75
74
73
72
71
33
19
19
41
79
72
34
18
18
42
78
73
35
17
17
43
77
74
36
16
16
44
76
75
37
15
15
45
75
76
38
14
14
46
74
77
39
13
13
47
73
78
40
12
11
10
9
8
7
6
5
4
3
2
1
0
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
108
120
122
134
154
142
107
119
121
133
153
141
106
118
120
132
152
140
105
117
119
131
151
139
104
116
118
130
150
138
103
115
117
129
149
137
102
114
116
128
148
136
101
113
115
127
147
135
100
112
114
126
146
134
99
111
113
125
145
133
98
110
112
124
144
132
97
109
111
99
100
101
102
103
104
105
106
107
108
109
110
111
123
143
131
96
108
110
98
110
122
142
130
95
107
109
97
109
121
141
129
94
106
108
96
108
120
140
128
93
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
107
95
107
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
127
92
96
106
94
106
118
130
126
91
95
105
93
105
117
129
125
90
94
104
92
104
116
128
124
89
93
103
91
103
115
127
123
88
92
102
90
102
114
126
122
87
91
101
89
101
113
125
121
86
90
100
88
100
112
124
120
85
89
99
87
99
111
123
119
84
88
98
86
98
110
122
118
83
87
97
85
97
109
121
117
82
86
96
84
96
108
120
116
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
72
82
94
106
71
81
93
105
70
80
92
104
69
79
91
103
68
78
90
102
67
77
89
101
66
76
88
100
65
75
87
99
64
74
86
98
63
73
85
97
62
72
84
96
61
60
59
58
57
56
55
54
53
52
51
50
49
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
62
48
58
70
82
96
63
47
57
69
81
97
64
46
56
68
80
98
65
45
55
67
79
98
66
44
54
66
78
97
67
43
53
65
77
96
68
42
52
64
76
95
81
80
79
78
77
76
75
74
73
72
71
70
69
41
51
63
75
94
93
92
91
90
89
88
87
86
85
84
83
82
40
50
62
74
39
49
61
73
38
48
60
72
37
47
59
71
36
46
58
70
35
36
37
38
39
40
41
42
43
44
45
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
34
44
56
70
33
43
55
71
32
42
54
72
31
41
53
73
30
40
52
74
29
39
51
75
52
51
50
49
48
47
46
45
44
43
42
41
40
28
38
50
76
65
64
63
62
61
60
59
58
57
56
55
54
53
39
27
37
49
77
66
38
26
36
48
78
67
37
25
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
79
68
36
24
22
36
80
69
35
23
21
37
81
70
34
22
20
38
80
71
33
32
31
30
29
28
27
26
25
24
23
22
21
19
39
79
80
81
81
80
79
78
77
76
75
74
73
72
34
20
18
40
78
73
35
19
17
41
77
74
36
18
16
42
76
75
37
17
15
43
75
76
38
16
14
44
74
77
39
15
13
45
73
78
40
14
12
46
72
79
41
13
12
11
10
9
8
7
6
5
4
3
2
1
0
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
109
121
121
133
153
141
108
120
120
132
152
140
107
119
119
131
151
139
106
118
118
130
150
138
105
117
117
129
149
137
104
116
116
128
148
136
103
115
115
127
147
135
102
114
114
126
146
134
101
113
113
125
145
133
100
112
112
124
144
132
99
111
111
123
143
131
98
110
110
98
99
100
101
102
103
104
105
106
107
108
109
110
122
142
130
97
109
109
97
109
121
141
129
96
108
108
96
108
120
140
128
95
107
107
95
107
119
139
127
94
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
107
106
94
106
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
126
93
97
105
93
105
117
129
125
92
96
104
92
104
116
128
124
91
95
103
91
103
115
127
123
90
94
102
90
102
114
126
122
89
93
101
89
101
113
125
121
88
92
100
88
100
112
124
120
87
91
99
87
99
111
123
119
86
90
98
86
98
110
122
118
85
89
97
85
97
109
121
117
84
88
96
84
96
108
120
116
83
87
95
83
95
107
119
115
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
73
81
93
105
72
80
92
104
71
79
91
103
70
78
90
102
69
77
89
101
68
76
88
100
67
75
87
99
66
74
86
98
65
73
85
97
64
72
84
96
63
71
83
95
62
61
60
59
58
57
56
55
54
53
52
51
50
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
63
49
57
69
81
95
64
48
56
68
80
96
65
47
55
67
79
97
66
46
54
66
78
98
67
45
53
65
77
98
68
44
52
64
76
97
69
43
51
63
75
96
82
81
80
79
78
77
76
75
74
73
72
71
70
42
50
62
74
95
94
93
92
91
90
89
88
87
86
85
84
83
41
49
61
73
40
48
60
72
39
47
59
71
38
46
58
70
37
45
57
69
36
37
38
39
40
41
42
43
44
45
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
35
43
55
69
34
42
54
70
33
41
53
71
32
40
52
72
31
39
51
73
30
38
50
74
53
52
51
50
49
48
47
46
45
44
43
42
41
29
37
49
75
66
65
64
63
62
61
60
59
58
57
56
55
54
40
28
36
48
76
67
39
27
35
47
77
68
38
26
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
78
69
37
25
21
35
79
70
36
24
20
36
80
71
35
23
19
37
79
72
34
33
32
31
30
29
28
27
26
25
24
23
22
18
38
78
79
80
81
81
80
79
78
77
76
75
74
73
35
21
17
39
77
74
36
20
16
40
76
75
37
19
15
41
75
76
38
18
14
42
74
77
39
17
13
43
73
78
40
16
12
44
72
79
41
15
11
45
71
80
42
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
110
122
120
132
152
140
109
121
119
131
151
139
108
120
118
130
150
138
107
119
117
129
149
137
106
118
116
128
148
136
105
117
115
127
147
135
104
116
114
126
146
134
103
115
113
125
145
133
102
114
112
124
144
132
101
113
111
123
143
131
100
112
110
122
142
130
99
111
109
97
98
99
100
101
102
103
104
105
106
107
108
109
121
141
129
98
110
108
96
108
120
140
128
97
109
107
95
107
119
139
127
96
108
106
94
106
118
138
126
95
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
107
106
105
93
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
125
94
98
104
92
104
116
128
124
93
97
103
91
103
115
127
123
92
96
102
90
102
114
126
122
91
95
101
89
101
113
125
121
90
94
100
88
100
112
124
120
89
93
99
87
99
111
123
119
88
92
98
86
98
110
122
118
87
91
97
85
97
109
121
117
86
90
96
84
96
108
120
116
85
89
95
83
95
107
119
115
84
88
94
82
94
106
118
114
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
74
80
92
104
73
79
91
103
72
78
90
102
71
77
89
101
70
76
88
100
69
75
87
99
68
74
86
98
67
73
85
97
66
72
84
96
65
71
83
95
64
70
82
94
63
62
61
60
59
58
57
56
55
54
53
52
51
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
64
50
56
68
80
94
65
49
55
67
79
95
66
48
54
66
78
96
67
47
53
65
77
97
68
46
52
64
76
98
69
45
51
63
75
98
70
44
50
62
74
97
83
82
81
80
79
78
77
76
75
74
73
72
71
43
49
61
73
96
95
94
93
92
91
90
89
88
87
86
85
84
42
48
60
72
41
47
59
71
40
46
58
70
39
45
57
69
38
44
56
68
37
38
39
40
41
42
43
44
45
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
36
42
54
68
35
41
53
69
34
40
52
70
33
39
51
71
32
38
50
72
31
37
49
73
54
53
52
51
50
49
48
47
46
45
44
43
42
30
36
48
74
67
66
65
64
63
62
61
60
59
58
57
56
55
41
29
35
47
75
68
40
28
34
46
76
69
39
27
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
77
70
38
26
20
34
78
71
37
25
19
35
79
72
36
24
18
36
78
73
35
34
33
32
31
30
29
28
27
26
25
24
23
17
37
77
78
79
80
81
81
80
79
78
77
76
75
74
36
22
16
38
76
75
37
21
15
39
75
76
38
20
14
40
74
77
39
19
13
41
73
78
40
18
12
42
72
79
41
17
11
43
71
80
42
16
10
44
70
81
43
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
111
123
119
131
151
139
110
122
118
130
150
138
109
121
117
129
149
137
108
120
116
128
148
136
107
119
115
127
147
135
106
118
114
126
146
134
105
117
113
125
145
133
104
116
112
124
144
132
103
115
111
123
143
131
102
114
110
122
142
130
101
113
109
121
141
129
100
112
108
96
97
98
99
100
101
102
103
104
105
106
107
108
120
140
128
99
111
107
95
107
119
139
127
98
110
106
94
106
118
138
126
97
109
105
93
105
117
137
125
96
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
107
106
105
104
92
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
124
95
99
103
91
103
115
127
123
94
98
102
90
102
114
126
122
93
97
101
89
101
113
125
121
92
96
100
88
100
112
124
120
91
95
99
87
99
111
123
119
90
94
98
86
98
110
122
118
89
93
97
85
97
109
121
117
88
92
96
84
96
108
120
116
87
91
95
83
95
107
119
115
86
90
94
82
94
106
118
114
85
89
93
81
93
105
117
113
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
75
79
91
103
74
78
90
102
73
77
89
101
72
76
88
100
71
75
87
99
70
74
86
98
69
73
85
97
68
72
84
96
67
71
83
95
66
70
82
94
65
69
81
93
64
63
62
61
60
59
58
57
56
55
54
53
52
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
65
51
55
67
79
93
66
50
54
66
78
94
67
49
53
65
77
95
68
48
52
64
76
96
69
47
51
63
75
97
70
46
50
62
74
98
71
45
49
61
73
98
84
83
82
81
80
79
78
77
76
75
74
73
72
44
48
60
72
97
96
95
94
93
92
91
90
89
88
87
86
85
43
47
59
71
42
46
58
70
41
45
57
69
40
44
56
68
39
43
55
67
38
39
40
41
42
43
44
45
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
37
41
53
67
36
40
52
68
35
39
51
69
34
38
50
70
33
37
49
71
32
36
48
72
55
54
53
52
51
50
49
48
47
46
45
44
43
31
35
47
73
68
67
66
65
64
63
62
61
60
59
58
57
56
42
30
34
46
74
69
41
29
33
45
75
70
40
28
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
76
71
39
27
19
33
77
72
38
26
18
34
78
73
37
25
17
35
77
74
36
35
34
33
32
31
30
29
28
27
26
25
24
16
36
76
77
78
79
80
81
81
80
79
78
77
76
75
37
23
15
37
75
76
38
22
14
38
74
77
39
21
13
39
73
78
40
20
12
40
72
79
41
19
11
41
71
80
42
18
10
42
70
81
43
17
9
43
69
82
44
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
112
124
118
130
150
138
111
123
117
129
149
137
110
122
116
128
148
136
109
121
115
127
147
135
108
120
114
126
146
134
107
119
113
125
145
133
106
118
112
124
144
132
105
117
111
123
143
131
104
116
110
122
142
130
103
115
109
121
141
129
102
114
108
120
140
128
101
113
107
95
96
97
98
99
100
101
102
103
104
105
106
107
119
139
127
100
112
106
94
106
118
138
126
99
111
105
93
105
117
137
125
98
110
104
92
104
116
136
124
97
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
107
106
105
104
103
91
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
123
96
100
102
90
102
114
126
122
95
99
101
89
101
113
125
121
94
98
100
88
100
112
124
120
93
97
99
87
99
111
123
119
92
96
98
86
98
110
122
118
91
95
97
85
97
109
121
117
90
94
96
84
96
108
120
116
89
93
95
83
95
107
119
115
88
92
94
82
94
106
118
114
87
91
93
81
93
105
117
113
86
90
92
80
92
104
116
112
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
76
78
90
102
75
77
89
101
74
76
88
100
73
75
87
99
72
74
86
98
71
73
85
97
70
72
84
96
69
71
83
95
68
70
82
94
67
69
81
93
66
68
80
92
65
64
63
62
61
60
59
58
57
56
55
54
53
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
66
52
54
66
78
92
67
51
53
65
77
93
68
50
52
64
76
94
69
49
51
63
75
95
70
48
50
62
74
96
71
47
49
61
73
97
72
46
48
60
72
98
85
84
83
82
81
80
79
78
77
76
75
74
73
45
47
59
71
98
97
96
95
94
93
92
91
90
89
88
87
86
44
46
58
70
43
45
57
69
42
44
56
68
41
43
55
67
40
42
54
66
39
40
41
42
43
44
45
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
38
40
52
66
37
39
51
67
36
38
50
68
35
37
49
69
34
36
48
70
33
35
47
71
56
55
54
53
52
51
50
49
48
47
46
45
44
32
34
46
72
69
68
67
66
65
64
63
62
61
60
59
58
57
43
31
33
45
73
70
42
30
32
44
74
71
41
29
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
75
72
40
28
18
32
76
73
39
27
17
33
77
74
38
26
16
34
76
75
37
36
35
34
33
32
31
30
29
28
27
26
25
15
35
75
76
77
78
79
80
81
81
80
79
78
77
76
38
24
14
36
74
77
39
23
13
37
73
78
40
22
12
38
72
79
41
21
11
39
71
80
42
20
10
40
70
81
43
19
9
41
69
82
44
18
8
42
68
83
45
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
113
125
117
129
149
137
112
124
116
128
148
136
111
123
115
127
147
135
110
122
114
126
146
134
109
121
113
125
145
133
108
120
112
124
144
132
107
119
111
123
143
131
106
118
110
122
142
130
105
117
109
121
141
129
104
116
108
120
140
128
103
115
107
119
139
127
102
114
106
94
95
96
97
98
99
100
101
102
103
104
105
106
118
138
126
101
113
105
93
105
117
137
125
100
112
104
92
104
116
136
124
99
111
103
91
103
115
135
123
98
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
107
106
105
104
103
102
90
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
122
97
101
101
89
101
113
125
121
96
100
100
88
100
112
124
120
95
99
99
87
99
111
123
119
94
98
98
86
98
110
122
118
93
97
97
85
97
109
121
117
92
96
96
84
96
108
120
116
91
95
95
83
95
107
119
115
90
94
94
82
94
106
118
114
89
93
93
81
93
105
117
113
88
92
92
80
92
104
116
112
87
91
91
79
91
103
115
111
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
77
77
89
101
76
76
88
100
75
75
87
99
74
74
86
98
73
73
85
97
72
72
84
96
71
71
83
95
70
70
82
94
69
69
81
93
68
68
80
92
67
67
79
91
66
65
64
63
62
61
60
59
58
57
56
55
54
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
67
53
53
65
77
91
68
52
52
64
76
92
69
51
51
63
75
93
70
50
50
62
74
94
71
49
49
61
73
95
72
48
48
60
72
96
73
47
47
59
71
97
86
85
84
83
82
81
80
79
78
77
76
75
74
46
46
58
70
98
98
97
96
95
94
93
92
91
90
89
88
87
45
45
57
69
44
44
56
68
43
43
55
67
42
42
54
66
41
41
53
65
40
41
42
43
44
45
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
39
39
51
65
38
38
50
66
37
37
49
67
36
36
48
68
35
35
47
69
34
34
46
70
57
56
55
54
53
52
51
50
49
48
47
46
45
33
33
45
71
70
69
68
67
66
65
64
63
62
61
60
59
58
44
32
32
44
72
71
43
31
31
43
73
72
42
30
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
74
73
41
29
17
31
75
74
40
28
16
32
76
75
39
27
15
33
75
76
38
37
36
35
34
33
32
31
30
29
28
27
26
14
34
74
75
76
77
78
79
80
81
81
80
79
78
77
39
25
13
35
73
78
40
24
12
36
72
79
41
23
11
37
71
80
42
22
10
38
70
81
43
21
9
39
69
82
44
20
8
40
68
83
45
19
7
41
67
84
46
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
114
126
116
128
148
136
113
125
115
127
147
135
112
124
114
126
146
134
111
123
113
125
145
133
110
122
112
124
144
132
109
121
111
123
143
131
108
120
110
122
142
130
107
119
109
121
141
129
106
118
108
120
140
128
105
117
107
119
139
127
104
116
106
118
138
126
103
115
105
93
94
95
96
97
98
99
100
101
102
103
104
105
117
137
125
102
114
104
92
104
116
136
124
101
113
103
91
103
115
135
123
100
112
102
90
102
114
134
122
99
111
110
109
108
107
106
105
104
103
104
105
106
107
108
107
106
105
104
103
102
101
89
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
121
98
102
100
88
100
112
124
120
97
101
99
87
99
111
123
119
96
100
98
86
98
110
122
118
95
99
97
85
97
109
121
117
94
98
96
84
96
108
120
116
93
97
95
83
95
107
119
115
92
96
94
82
94
106
118
114
91
95
93
81
93
105
117
113
90
94
92
80
92
104
116
112
89
93
91
79
91
103
115
111
88
92
90
78
90
102
114
110
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
78
76
88
100
77
75
87
99
76
74
86
98
75
73
85
97
74
72
84
96
73
71
83
95
72
70
82
94
71
69
81
93
70
68
80
92
69
67
79
91
68
66
78
90
67
66
65
64
63
62
61
60
59
58
57
56
55
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
68
54
52
64
76
90
69
53
51
63
75
91
70
52
50
62
74
92
71
51
49
61
73
93
72
50
48
60
72
94
73
49
47
59
71
95
74
48
46
58
70
96
87
86
85
84
83
82
81
80
79
78
77
76
75
47
45
57
69
97
98
98
97
96
95
94
93
92
91
90
89
88
46
44
56
68
45
43
55
67
44
42
54
66
43
41
53
65
42
40
52
64
41
42
43
44
45
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
40
38
50
64
39
37
49
65
38
36
48
66
37
35
47
67
36
34
46
68
35
33
45
69
58
57
56
55
54
53
52
51
50
49
48
47
46
34
32
44
70
71
70
69
68
67
66
65
64
63
62
61
60
59
45
33
31
43
71
72
44
32
30
42
72
73
43
31
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
73
74
42
30
16
30
74
75
41
29
15
31
75
76
40
28
14
32
74
77
39
38
37
36
35
34
33
32
31
30
29
28
27
13
33
73
74
75
76
77
78
79
80
81
81
80
79
78
40
26
12
34
72
79
41
25
11
35
71
80
42
24
10
36
70
81
43
23
9
37
69
82
44
22
8
38
68
83
45
21
7
39
67
84
46
20
6
40
66
85
47
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
115
127
115
127
147
135
114
126
114
126
146
134
113
125
113
125
145
133
112
124
112
124
144
132
111
123
111
123
143
131
110
122
110
122
142
130
109
121
109
121
141
129
108
120
108
120
140
128
107
119
107
119
139
127
106
118
106
118
138
126
105
117
105
117
137
125
104
116
104
92
93
94
95
96
97
98
99
100
101
102
103
104
116
136
124
103
115
103
91
103
115
135
123
102
114
102
90
102
114
134
122
101
113
101
89
101
113
133
121
100
112
111
110
109
108
107
106
105
104
105
106
107
108
107
106
105
104
103
102
101
100
88
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
120
99
103
99
87
99
111
123
119
98
102
98
86
98
110
122
118
97
101
97
85
97
109
121
117
96
100
96
84
96
108
120
116
95
99
95
83
95
107
119
115
94
98
94
82
94
106
118
114
93
97
93
81
93
105
117
113
92
96
92
80
92
104
116
112
91
95
91
79
91
103
115
111
90
94
90
78
90
102
114
110
89
93
89
77
89
101
113
109
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
79
75
87
99
78
74
86
98
77
73
85
97
76
72
84
96
75
71
83
95
74
70
82
94
73
69
81
93
72
68
80
92
71
67
79
91
70
66
78
90
69
65
77
89
68
67
66
65
64
63
62
61
60
59
58
57
56
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
69
55
51
63
75
89
70
54
50
62
74
90
71
53
49
61
73
91
72
52
48
60
72
92
73
51
47
59
71
93
74
50
46
58
70
94
75
49
45
57
69
95
88
87
86
85
84
83
82
81
80
79
78
77
76
48
44
56
68
96
97
98
98
97
96
95
94
93
92
91
90
89
47
43
55
67
46
42
54
66
45
41
53
65
44
40
52
64
43
39
51
63
42
43
44
45
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
41
37
49
63
40
36
48
64
39
35
47
65
38
34
46
66
37
33
45
67
36
32
44
68
59
58
57
56
55
54
53
52
51
50
49
48
47
35
31
43
69
72
71
70
69
68
67
66
65
64
63
62
61
60
46
34
30
42
70
73
45
33
29
41
71
74
44
32
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
72
75
43
31
15
29
73
76
42
30
14
30
74
77
41
29
13
31
73
78
40
39
38
37
36
35
34
33
32
31
30
29
28
12
32
72
73
74
75
76
77
78
79
80
81
81
80
79
41
27
11
33
71
80
42
26
10
34
70
81
43
25
9
35
69
82
44
24
8
36
68
83
45
23
7
37
67
84
46
22
6
38
66
85
47
21
5
39
65
86
48
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
116
128
114
126
146
134
115
127
113
125
145
133
114
126
112
124
144
132
113
125
111
123
143
131
112
124
110
122
142
130
111
123
109
121
141
129
110
122
108
120
140
128
109
121
107
119
139
127
108
120
106
118
138
126
107
119
105
117
137
125
106
118
104
116
136
124
105
117
103
91
92
93
94
95
96
97
98
99
100
101
102
103
115
135
123
104
116
102
90
102
114
134
122
103
115
101
89
101
113
133
121
102
114
100
88
100
112
132
120
101
113
112
111
110
109
108
107
106
105
106
107
108
107
106
105
104
103
102
101
100
99
87
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
119
100
104
98
86
98
110
122
118
99
103
97
85
97
109
121
117
98
102
96
84
96
108
120
116
97
101
95
83
95
107
119
115
96
100
94
82
94
106
118
114
95
99
93
81
93
105
117
113
94
98
92
80
92
104
116
112
93
97
91
79
91
103
115
111
92
96
90
78
90
102
114
110
91
95
89
77
89
101
113
109
90
94
88
76
88
100
112
108
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
80
74
86
98
79
73
85
97
78
72
84
96
77
71
83
95
76
70
82
94
75
69
81
93
74
68
80
92
73
67
79
91
72
66
78
90
71
65
77
89
70
64
76
88
69
68
67
66
65
64
63
62
61
60
59
58
57
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
70
56
50
62
74
88
71
55
49
61
73
89
72
54
48
60
72
90
73
53
47
59
71
91
74
52
46
58
70
92
75
51
45
57
69
93
76
50
44
56
68
94
89
88
87
86
85
84
83
82
81
80
79
78
77
49
43
55
67
95
96
97
98
98
97
96
95
94
93
92
91
90
48
42
54
66
47
41
53
65
46
40
52
64
45
39
51
63
44
38
50
62
43
44
45
46
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
42
36
48
62
41
35
47
63
40
34
46
64
39
33
45
65
38
32
44
66
37
31
43
67
60
59
58
57
56
55
54
53
52
51
50
49
48
36
30
42
68
73
72
71
70
69
68
67
66
65
64
63
62
61
47
35
29
41
69
74
46
34
28
40
70
75
45
33
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
71
76
44
32
14
28
72
77
43
31
13
29
73
78
42
30
12
30
72
79
41
40
39
38
37
36
35
34
33
32
31
30
29
11
31
71
72
73
74
75
76
77
78
79
80
81
81
80
42
28
10
32
70
81
43
27
9
33
69
82
44
26
8
34
68
83
45
25
7
35
67
84
46
24
6
36
66
85
47
23
5
37
65
86
48
22
4
38
64
87
49
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
117
129
113
125
145
133
116
128
112
124
144
132
115
127
111
123
143
131
114
126
110
122
142
130
113
125
109
121
141
129
112
124
108
120
140
128
111
123
107
119
139
127
110
122
106
118
138
126
109
121
105
117
137
125
108
120
104
116
136
124
107
119
103
115
135
123
106
118
102
90
91
92
93
94
95
96
97
98
99
100
101
102
114
134
122
105
117
101
89
101
113
133
121
104
116
100
88
100
112
132
120
103
115
99
87
99
111
131
119
102
114
113
112
111
110
109
108
107
106
107
108
107
106
105
104
103
102
101
100
99
98
86
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
118
101
105
97
85
97
109
121
117
100
104
96
84
96
108
120
116
99
103
95
83
95
107
119
115
98
102
94
82
94
106
118
114
97
101
93
81
93
105
117
113
96
100
92
80
92
104
116
112
95
99
91
79
91
103
115
111
94
98
90
78
90
102
114
110
93
97
89
77
89
101
113
109
92
96
88
76
88
100
112
108
91
95
87
75
87
99
111
107
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
81
73
85
97
80
72
84
96
79
71
83
95
78
70
82
94
77
69
81
93
76
68
80
92
75
67
79
91
74
66
78
90
73
65
77
89
72
64
76
88
71
63
75
87
70
69
68
67
66
65
64
63
62
61
60
59
58
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
71
57
49
61
73
87
72
56
48
60
72
88
73
55
47
59
71
89
74
54
46
58
70
90
75
53
45
57
69
91
76
52
44
56
68
92
77
51
43
55
67
93
90
89
88
87
86
85
84
83
82
81
80
79
78
50
42
54
66
94
95
96
97
98
98
97
96
95
94
93
92
91
49
41
53
65
48
40
52
64
47
39
51
63
46
38
50
62
45
37
49
61
44
45
46
45
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
43
35
47
61
42
34
46
62
41
33
45
63
40
32
44
64
39
31
43
65
38
30
42
66
61
60
59
58
57
56
55
54
53
52
51
50
49
37
29
41
67
74
73
72
71
70
69
68
67
66
65
64
63
62
48
36
28
40
68
75
47
35
27
39
69
76
46
34
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
70
77
45
33
13
27
71
78
44
32
12
28
72
79
43
31
11
29
71
80
42
41
40
39
38
37
36
35
34
33
32
31
30
10
30
70
71
72
73
74
75
76
77
78
79
80
81
81
43
29
9
31
69
82
44
28
8
32
68
83
45
27
7
33
67
84
46
26
6
34
66
85
47
25
5
35
65
86
48
24
4
36
64
87
49
23
3
37
63
88
50
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
118
130
112
124
144
132
117
129
111
123
143
131
116
128
110
122
142
130
115
127
109
121
141
129
114
126
108
120
140
128
113
125
107
119
139
127
112
124
106
118
138
126
111
123
105
117
137
125
110
122
104
116
136
124
109
121
103
115
135
123
108
120
102
114
134
122
107
119
101
89
90
91
92
93
94
95
96
97
98
99
100
101
113
133
121
106
118
100
88
100
112
132
120
105
117
99
87
99
111
131
119
104
116
98
86
98
110
130
118
103
115
114
113
112
111
110
109
108
107
108
107
106
105
104
103
102
101
100
99
98
97
85
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
117
102
106
96
84
96
108
120
116
101
105
95
83
95
107
119
115
100
104
94
82
94
106
118
114
99
103
93
81
93
105
117
113
98
102
92
80
92
104
116
112
97
101
91
79
91
103
115
111
96
100
90
78
90
102
114
110
95
99
89
77
89
101
113
109
94
98
88
76
88
100
112
108
93
97
87
75
87
99
111
107
92
96
86
74
86
98
110
106
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
82
72
84
96
81
71
83
95
80
70
82
94
79
69
81
93
78
68
80
92
77
67
79
91
76
66
78
90
75
65
77
89
74
64
76
88
73
63
75
87
72
62
74
86
71
70
69
68
67
66
65
64
63
62
61
60
59
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
72
58
48
60
72
86
73
57
47
59
71
87
74
56
46
58
70
88
75
55
45
57
69
89
76
54
44
56
68
90
77
53
43
55
67
91
78
52
42
54
66
92
91
90
89
88
87
86
85
84
83
82
81
80
79
51
41
53
65
93
94
95
96
97
98
98
97
96
95
94
93
92
50
40
52
64
49
39
51
63
48
38
50
62
47
37
49
61
46
36
48
60
45
46
45
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
44
34
46
60
43
33
45
61
42
32
44
62
41
31
43
63
40
30
42
64
39
29
41
65
62
61
60
59
58
57
56
55
54
53
52
51
50
38
28
40
66
75
74
73
72
71
70
69
68
67
66
65
64
63
49
37
27
39
67
76
48
36
26
38
68
77
47
35
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
69
78
46
34
12
26
70
79
45
33
11
27
71
80
44
32
10
28
70
81
43
42
41
40
39
38
37
36
35
34
33
32
31
9
29
69
70
71
72
73
74
75
76
77
78
79
80
81
44
30
8
30
68
82
45
29
7
31
67
83
46
28
6
32
66
84
47
27
5
33
65
85
48
26
4
34
64
86
49
25
3
35
63
87
50
24
2
36
62
88
51
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
119
131
111
123
143
131
118
130
110
122
142
130
117
129
109
121
141
129
116
128
108
120
140
128
115
127
107
119
139
127
114
126
106
118
138
126
113
125
105
117
137
125
112
124
104
116
136
124
111
123
103
115
135
123
110
122
102
114
134
122
109
121
101
113
133
121
108
120
100
88
89
90
91
92
93
94
95
96
97
98
99
100
112
132
120
107
119
99
87
99
111
131
119
106
118
98
86
98
110
130
118
105
117
97
85
97
109
129
117
104
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
116
103
107
95
83
95
107
119
115
102
106
94
82
94
106
118
114
101
105
93
81
93
105
117
113
100
104
92
80
92
104
116
112
99
103
91
79
91
103
115
111
98
102
90
78
90
102
114
110
97
101
89
77
89
101
113
109
96
100
88
76
88
100
112
108
95
99
87
75
87
99
111
107
94
98
86
74
86
98
110
106
93
97
85
73
85
97
109
105
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
83
71
83
95
82
70
82
94
81
69
81
93
80
68
80
92
79
67
79
91
78
66
78
90
77
65
77
89
76
64
76
88
75
63
75
87
74
62
74
86
73
61
73
85
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
73
59
47
59
71
85
74
58
46
58
70
86
75
57
45
57
69
87
76
56
44
56
68
88
77
55
43
55
67
89
78
54
42
54
66
90
79
53
41
53
65
91
92
91
90
89
88
87
86
85
84
83
82
81
80
52
40
52
64
92
93
94
95
96
97
98
98
97
96
95
94
93
51
39
51
63
50
38
50
62
49
37
49
61
48
36
48
60
47
35
47
59
46
45
44
43
42
41
40
39
38
37
36
35
34
46
47
48
49
50
51
52
53
54
55
56
57
58
45
33
45
59
44
32
44
60
43
31
43
61
42
30
42
62
41
29
41
63
40
28
40
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
27
39
65
76
75
74
73
72
71
70
69
68
67
66
65
64
50
38
26
38
66
77
49
37
25
37
67
78
48
36
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
68
79
47
35
11
25
69
80
46
34
10
26
70
81
45
33
9
27
69
81
44
43
42
41
40
39
38
37
36
35
34
33
32
8
28
68
69
70
71
72
73
74
75
76
77
78
79
80
45
31
7
29
67
81
46
30
6
30
66
82
47
29
5
31
65
83
48
28
4
32
64
84
49
27
3
33
63
85
50
26
2
34
62
86
51
25
1
35
61
87
52
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
131
143
123
111
131
119
130
142
122
110
130
118
129
141
121
109
129
117
128
140
120
108
128
116
127
139
119
107
127
115
126
138
118
106
126
114
125
137
117
105
125
113
124
136
116
104
124
112
123
135
115
103
123
111
122
134
114
102
122
110
121
133
113
101
121
109
120
132
112
100
99
98
97
96
95
94
93
92
91
90
89
88
100
120
108
119
131
111
99
87
99
119
107
118
130
110
98
86
98
118
106
117
129
109
97
85
97
117
105
116
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
104
115
119
107
95
83
95
107
103
114
118
106
94
82
94
106
102
113
117
105
93
81
93
105
101
112
116
104
92
80
92
104
100
111
115
103
91
79
91
103
99
110
114
102
90
78
90
102
98
109
113
101
89
77
89
101
97
108
112
100
88
76
88
100
96
107
111
99
87
75
87
99
95
106
110
98
86
74
86
98
94
105
109
97
85
73
85
97
93
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
95
83
71
83
94
82
70
82
93
81
69
81
92
80
68
80
91
79
67
79
90
78
66
78
89
77
65
77
88
76
64
76
87
75
63
75
86
74
62
74
85
73
61
73
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
60
61
62
63
64
65
66
67
68
69
70
71
72
85
71
59
47
59
73
86
70
58
46
58
74
87
69
57
45
57
75
88
68
56
44
56
76
89
67
55
43
55
77
90
66
54
42
54
78
91
65
53
41
53
79
93
94
95
96
97
98
98
97
96
95
94
93
92
64
52
40
52
80
81
82
83
84
85
86
87
88
89
90
91
92
63
51
39
51
62
50
38
50
61
49
37
49
60
48
36
48
59
47
35
47
58
57
56
55
54
53
52
51
50
49
48
47
46
34
35
36
37
38
39
40
41
42
43
44
45
46
59
45
33
45
60
44
32
44
61
43
31
43
62
42
30
42
63
41
29
41
64
40
28
40
64
65
66
67
68
69
70
71
72
73
74
75
76
65
39
27
39
51
52
53
54
55
56
57
58
59
60
61
62
63
77
66
38
26
38
50
78
67
37
25
37
49
79
68
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
36
48
80
69
25
11
35
47
81
70
26
10
34
46
81
69
27
9
33
45
80
79
78
77
76
75
74
73
72
71
70
69
68
28
8
32
33
34
35
36
37
38
39
40
41
42
43
44
81
67
29
7
31
45
82
66
30
6
30
46
83
65
31
5
29
47
84
64
32
4
28
48
85
63
33
3
27
49
86
62
34
2
26
50
87
61
35
1
25
51
88
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
0
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
132
144
124
112
130
118
131
143
123
111
129
117
130
142
122
110
128
116
129
141
121
109
127
115
128
140
120
108
126
114
127
139
119
107
125
113
126
138
118
106
124
112
125
137
117
105
123
111
124
136
116
104
122
110
123
135
115
103
121
109
122
134
114
102
120
108
121
133
113
101
100
99
98
97
96
95
94
93
92
91
90
89
101
119
107
120
132
112
100
88
100
118
106
119
131
111
99
87
99
117
105
118
130
110
98
86
98
116
104
117
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
85
97
98
99
100
101
102
103
104
105
106
107
108
107
108
109
110
111
112
113
114
115
103
116
120
108
96
84
96
106
102
115
119
107
95
83
95
105
101
114
118
106
94
82
94
104
100
113
117
105
93
81
93
103
99
112
116
104
92
80
92
102
98
111
115
103
91
79
91
101
97
110
114
102
90
78
90
100
96
109
113
101
89
77
89
99
95
108
112
100
88
76
88
98
94
107
111
99
87
75
87
97
93
106
110
98
86
74
86
96
92
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
96
84
72
82
95
83
71
81
94
82
70
80
93
81
69
79
92
80
68
78
91
79
67
77
90
78
66
76
89
77
65
75
88
76
64
74
87
75
63
73
86
74
62
72
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
59
60
61
62
63
64
65
66
67
68
69
70
71
86
72
60
48
58
72
87
71
59
47
57
73
88
70
58
46
56
74
89
69
57
45
55
75
90
68
56
44
54
76
91
67
55
43
53
77
92
66
54
42
52
78
92
93
94
95
96
97
98
98
97
96
95
94
93
65
53
41
51
79
80
81
82
83
84
85
86
87
88
89
90
91
64
52
40
50
63
51
39
49
62
50
38
48
61
49
37
47
60
48
36
46
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
45
46
45
60
46
34
44
61
45
33
43
62
44
32
42
63
43
31
41
64
42
30
40
65
41
29
39
63
64
65
66
67
68
69
70
71
72
73
74
75
66
40
28
38
50
51
52
53
54
55
56
57
58
59
60
61
62
76
67
39
27
37
49
77
68
38
26
36
48
78
69
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
35
47
79
70
26
12
34
46
80
71
27
11
33
45
81
70
28
10
32
44
81
80
79
78
77
76
75
74
73
72
71
70
69
29
9
31
32
33
34
35
36
37
38
39
40
41
42
43
82
68
30
8
30
44
83
67
31
7
29
45
84
66
32
6
28
46
85
65
33
5
27
47
86
64
34
4
26
48
87
63
35
3
25
49
88
62
36
2
24
50
89
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
133
145
125
113
129
117
132
144
124
112
128
116
131
143
123
111
127
115
130
142
122
110
126
114
129
141
121
109
125
113
128
140
120
108
124
112
127
139
119
107
123
111
126
138
118
106
122
110
125
137
117
105
121
109
124
136
116
104
120
108
123
135
115
103
119
107
122
134
114
102
101
100
99
98
97
96
95
94
93
92
91
90
102
118
106
121
133
113
101
89
101
117
105
120
132
112
100
88
100
116
104
119
131
111
99
87
99
115
103
118
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
86
98
99
100
101
102
103
104
105
106
107
108
107
106
107
108
109
110
111
112
113
114
102
117
121
109
97
85
97
105
101
116
120
108
96
84
96
104
100
115
119
107
95
83
95
103
99
114
118
106
94
82
94
102
98
113
117
105
93
81
93
101
97
112
116
104
92
80
92
100
96
111
115
103
91
79
91
99
95
110
114
102
90
78
90
98
94
109
113
101
89
77
89
97
93
108
112
100
88
76
88
96
92
107
111
99
87
75
87
95
91
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
97
85
73
81
96
84
72
80
95
83
71
79
94
82
70
78
93
81
69
77
92
80
68
76
91
79
67
75
90
78
66
74
89
77
65
73
88
76
64
72
87
75
63
71
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
58
59
60
61
62
63
64
65
66
67
68
69
70
87
73
61
49
57
71
88
72
60
48
56
72
89
71
59
47
55
73
90
70
58
46
54
74
91
69
57
45
53
75
92
68
56
44
52
76
93
67
55
43
51
77
91
92
93
94
95
96
97
98
98
97
96
95
94
66
54
42
50
78
79
80
81
82
83
84
85
86
87
88
89
90
65
53
41
49
64
52
40
48
63
51
39
47
62
50
38
46
61
49
37
45
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
45
46
45
44
61
47
35
43
62
46
34
42
63
45
33
41
64
44
32
40
65
43
31
39
66
42
30
38
62
63
64
65
66
67
68
69
70
71
72
73
74
67
41
29
37
49
50
51
52
53
54
55
56
57
58
59
60
61
75
68
40
28
36
48
76
69
39
27
35
47
77
70
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
34
46
78
71
27
13
33
45
79
72
28
12
32
44
80
71
29
11
31
43
81
81
80
79
78
77
76
75
74
73
72
71
70
30
10
30
31
32
33
34
35
36
37
38
39
40
41
42
82
69
31
9
29
43
83
68
32
8
28
44
84
67
33
7
27
45
85
66
34
6
26
46
86
65
35
5
25
47
87
64
36
4
24
48
88
63
37
3
23
49
89
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
134
146
126
114
128
116
133
145
125
113
127
115
132
144
124
112
126
114
131
143
123
111
125
113
130
142
122
110
124
112
129
141
121
109
123
111
128
140
120
108
122
110
127
139
119
107
121
109
126
138
118
106
120
108
125
137
117
105
119
107
124
136
116
104
118
106
123
135
115
103
102
101
100
99
98
97
96
95
94
93
92
91
103
117
105
122
134
114
102
90
102
116
104
121
133
113
101
89
101
115
103
120
132
112
100
88
100
114
102
119
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
87
99
100
101
102
103
104
105
106
107
108
107
106
105
106
107
108
109
110
111
112
113
101
118
122
110
98
86
98
104
100
117
121
109
97
85
97
103
99
116
120
108
96
84
96
102
98
115
119
107
95
83
95
101
97
114
118
106
94
82
94
100
96
113
117
105
93
81
93
99
95
112
116
104
92
80
92
98
94
111
115
103
91
79
91
97
93
110
114
102
90
78
90
96
92
109
113
101
89
77
89
95
91
108
112
100
88
76
88
94
90
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
98
86
74
80
97
85
73
79
96
84
72
78
95
83
71
77
94
82
70
76
93
81
69
75
92
80
68
74
91
79
67
73
90
78
66
72
89
77
65
71
88
76
64
70
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
57
58
59
60
61
62
63
64
65
66
67
68
69
88
74
62
50
56
70
89
73
61
49
55
71
90
72
60
48
54
72
91
71
59
47
53
73
92
70
58
46
52
74
93
69
57
45
51
75
94
68
56
44
50
76
90
91
92
93
94
95
96
97
98
98
97
96
95
67
55
43
49
77
78
79
80
81
82
83
84
85
86
87
88
89
66
54
42
48
65
53
41
47
64
52
40
46
63
51
39
45
62
50
38
44
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
46
45
44
43
62
48
36
42
63
47
35
41
64
46
34
40
65
45
33
39
66
44
32
38
67
43
31
37
61
62
63
64
65
66
67
68
69
70
71
72
73
68
42
30
36
48
49
50
51
52
53
54
55
56
57
58
59
60
74
69
41
29
35
47
75
70
40
28
34
46
76
71
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
33
45
77
72
28
14
32
44
78
73
29
13
31
43
79
72
30
12
30
42
80
81
81
80
79
78
77
76
75
74
73
72
71
31
11
29
30
31
32
33
34
35
36
37
38
39
40
41
81
70
32
10
28
42
82
69
33
9
27
43
83
68
34
8
26
44
84
67
35
7
25
45
85
66
36
6
24
46
86
65
37
5
23
47
87
64
38
4
22
48
88
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
135
147
127
115
127
115
134
146
126
114
126
114
133
145
125
113
125
113
132
144
124
112
124
112
131
143
123
111
123
111
130
142
122
110
122
110
129
141
121
109
121
109
128
140
120
108
120
108
127
139
119
107
119
107
126
138
118
106
118
106
125
137
117
105
117
105
124
136
116
104
103
102
101
100
99
98
97
96
95
94
93
92
104
116
104
123
135
115
103
91
103
115
103
122
134
114
102
90
102
114
102
121
133
113
101
89
101
113
101
120
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
88
100
101
102
103
104
105
106
107
108
107
106
105
104
105
106
107
108
109
110
111
112
100
119
123
111
99
87
99
103
99
118
122
110
98
86
98
102
98
117
121
109
97
85
97
101
97
116
120
108
96
84
96
100
96
115
119
107
95
83
95
99
95
114
118
106
94
82
94
98
94
113
117
105
93
81
93
97
93
112
116
104
92
80
92
96
92
111
115
103
91
79
91
95
91
110
114
102
90
78
90
94
90
109
113
101
89
77
89
93
89
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
99
87
75
79
98
86
74
78
97
85
73
77
96
84
72
76
95
83
71
75
94
82
70
74
93
81
69
73
92
80
68
72
91
79
67
71
90
78
66
70
89
77
65
69
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
56
57
58
59
60
61
62
63
64
65
66
67
68
89
75
63
51
55
69
90
74
62
50
54
70
91
73
61
49
53
71
92
72
60
48
52
72
93
71
59
47
51
73
94
70
58
46
50
74
95
69
57
45
49
75
89
90
91
92
93
94
95
96
97
98
98
97
96
68
56
44
48
76
77
78
79
80
81
82
83
84
85
86
87
88
67
55
43
47
66
54
42
46
65
53
41
45
64
52
40
44
63
51
39
43
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
45
44
43
42
63
49
37
41
64
48
36
40
65
47
35
39
66
46
34
38
67
45
33
37
68
44
32
36
60
61
62
63
64
65
66
67
68
69
70
71
72
69
43
31
35
47
48
49
50
51
52
53
54
55
56
57
58
59
73
70
42
30
34
46
74
71
41
29
33
45
75
72
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
32
44
76
73
29
15
31
43
77
74
30
14
30
42
78
73
31
13
29
41
79
80
81
81
80
79
78
77
76
75
74
73
72
32
12
28
29
30
31
32
33
34
35
36
37
38
39
40
80
71
33
11
27
41
81
70
34
10
26
42
82
69
35
9
25
43
83
68
36
8
24
44
84
67
37
7
23
45
85
66
38
6
22
46
86
65
39
5
21
47
87
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
136
148
128
116
126
114
135
147
127
115
125
113
134
146
126
114
124
112
133
145
125
113
123
111
132
144
124
112
122
110
131
143
123
111
121
109
130
142
122
110
120
108
129
141
121
109
119
107
128
140
120
108
118
106
127
139
119
107
117
105
126
138
118
106
116
104
125
137
117
105
104
103
102
101
100
99
98
97
96
95
94
93
105
115
103
124
136
116
104
92
104
114
102
123
135
115
103
91
103
113
101
122
134
114
102
90
102
112
100
121
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
89
101
102
103
104
105
106
107
108
107
106
105
104
103
104
105
106
107
108
109
110
111
99
120
124
112
100
88
100
102
98
119
123
111
99
87
99
101
97
118
122
110
98
86
98
100
96
117
121
109
97
85
97
99
95
116
120
108
96
84
96
98
94
115
119
107
95
83
95
97
93
114
118
106
94
82
94
96
92
113
117
105
93
81
93
95
91
112
116
104
92
80
92
94
90
111
115
103
91
79
91
93
89
110
114
102
90
78
90
92
88
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
100
88
76
78
99
87
75
77
98
86
74
76
97
85
73
75
96
84
72
74
95
83
71
73
94
82
70
72
93
81
69
71
92
80
68
70
91
79
67
69
90
78
66
68
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
55
56
57
58
59
60
61
62
63
64
65
66
67
90
76
64
52
54
68
91
75
63
51
53
69
92
74
62
50
52
70
93
73
61
49
51
71
94
72
60
48
50
72
95
71
59
47
49
73
96
70
58
46
48
74
88
89
90
91
92
93
94
95
96
97
98
98
97
69
57
45
47
75
76
77
78
79
80
81
82
83
84
85
86
87
68
56
44
46
67
55
43
45
66
54
42
44
65
53
41
43
64
52
40
42
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
45
44
43
42
41
64
50
38
40
65
49
37
39
66
48
36
38
67
47
35
37
68
46
34
36
69
45
33
35
59
60
61
62
63
64
65
66
67
68
69
70
71
70
44
32
34
46
47
48
49
50
51
52
53
54
55
56
57
58
72
71
43
31
33
45
73
72
42
30
32
44
74
73
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
31
43
75
74
30
16
30
42
76
75
31
15
29
41
77
74
32
14
28
40
78
79
80
81
81
80
79
78
77
76
75
74
73
33
13
27
28
29
30
31
32
33
34
35
36
37
38
39
79
72
34
12
26
40
80
71
35
11
25
41
81
70
36
10
24
42
82
69
37
9
23
43
83
68
38
8
22
44
84
67
39
7
21
45
85
66
40
6
20
46
86
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
5
4
3
2
1
0
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
137
149
129
117
125
113
136
148
128
116
124
112
135
147
127
115
123
111
134
146
126
114
122
110
133
145
125
113
121
109
132
144
124
112
120
108
131
143
123
111
119
107
130
142
122
110
118
106
129
141
121
109
117
105
128
140
120
108
116
104
127
139
119
107
115
103
126
138
118
106
105
104
103
102
101
100
99
98
97
96
95
94
106
114
102
125
137
117
105
93
105
113
101
124
136
116
104
92
104
112
100
123
135
115
103
91
103
111
99
122
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
90
102
103
104
105
106
107
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
98
121
125
113
101
89
101
101
97
120
124
112
100
88
100
100
96
119
123
111
99
87
99
99
95
118
122
110
98
86
98
98
94
117
121
109
97
85
97
97
93
116
120
108
96
84
96
96
92
115
119
107
95
83
95
95
91
114
118
106
94
82
94
94
90
113
117
105
93
81
93
93
89
112
116
104
92
80
92
92
88
111
115
103
91
79
91
91
87
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
101
89
77
77
100
88
76
76
99
87
75
75
98
86
74
74
97
85
73
73
96
84
72
72
95
83
71
71
94
82
70
70
93
81
69
69
92
80
68
68
91
79
67
67
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
54
55
56
57
58
59
60
61
62
63
64
65
66
91
77
65
53
53
67
92
76
64
52
52
68
93
75
63
51
51
69
94
74
62
50
50
70
95
73
61
49
49
71
96
72
60
48
48
72
97
71
59
47
47
73
87
88
89
90
91
92
93
94
95
96
97
98
98
70
58
46
46
74
75
76
77
78
79
80
81
82
83
84
85
86
69
57
45
45
68
56
44
44
67
55
43
43
66
54
42
42
65
53
41
41
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
45
44
43
42
41
40
65
51
39
39
66
50
38
38
67
49
37
37
68
48
36
36
69
47
35
35
70
46
34
34
58
59
60
61
62
63
64
65
66
67
68
69
70
71
45
33
33
45
46
47
48
49
50
51
52
53
54
55
56
57
71
72
44
32
32
44
72
73
43
31
31
43
73
74
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
30
42
74
75
31
17
29
41
75
76
32
16
28
40
76
75
33
15
27
39
77
78
79
80
81
81
80
79
78
77
76
75
74
34
14
26
27
28
29
30
31
32
33
34
35
36
37
38
78
73
35
13
25
39
79
72
36
12
24
40
80
71
37
11
23
41
81
70
38
10
22
42
82
69
39
9
21
43
83
68
40
8
20
44
84
67
41
7
19
45
85
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
6
5
4
3
2
1
0
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
138
150
130
118
124
112
137
149
129
117
123
111
136
148
128
116
122
110
135
147
127
115
121
109
134
146
126
114
120
108
133
145
125
113
119
107
132
144
124
112
118
106
131
143
123
111
117
105
130
142
122
110
116
104
129
141
121
109
115
103
128
140
120
108
114
102
127
139
119
107
106
105
104
103
102
101
100
99
98
97
96
95
107
113
101
126
138
118
106
94
106
112
100
125
137
117
105
93
105
111
99
124
136
116
104
92
104
110
98
123
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
91
103
104
105
106
107
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
97
122
126
114
102
90
102
100
96
121
125
113
101
89
101
99
95
120
124
112
100
88
100
98
94
119
123
111
99
87
99
97
93
118
122
110
98
86
98
96
92
117
121
109
97
85
97
95
91
116
120
108
96
84
96
94
90
115
119
107
95
83
95
93
89
114
118
106
94
82
94
92
88
113
117
105
93
81
93
91
87
112
116
104
92
80
92
90
86
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
102
90
78
76
101
89
77
75
100
88
76
74
99
87
75
73
98
86
74
72
97
85
73
71
96
84
72
70
95
83
71
69
94
82
70
68
93
81
69
67
92
80
68
66
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
53
54
55
56
57
58
59
60
61
62
63
64
65
92
78
66
54
52
66
93
77
65
53
51
67
94
76
64
52
50
68
95
75
63
51
49
69
96
74
62
50
48
70
97
73
61
49
47
71
98
72
60
48
46
72
86
87
88
89
90
91
92
93
94
95
96
97
98
71
59
47
45
73
74
75
76
77
78
79
80
81
82
83
84
85
70
58
46
44
69
57
45
43
68
56
44
42
67
55
43
41
66
54
42
40
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
45
44
43
42
41
40
39
66
52
40
38
67
51
39
37
68
50
38
36
69
49
37
35
70
48
36
34
71
47
35
33
57
58
59
60
61
62
63
64
65
66
67
68
69
72
46
34
32
44
45
46
47
48
49
50
51
52
53
54
55
56
70
73
45
33
31
43
71
74
44
32
30
42
72
75
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
29
41
73
76
32
18
28
40
74
77
33
17
27
39
75
76
34
16
26
38
76
77
78
79
80
81
81
80
79
78
77
76
75
35
15
25
26
27
28
29
30
31
32
33
34
35
36
37
77
74
36
14
24
38
78
73
37
13
23
39
79
72
38
12
22
40
80
71
39
11
21
41
81
70
40
10
20
42
82
69
41
9
19
43
83
68
42
8
18
44
84
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
7
6
5
4
3
2
1
0
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
139
151
131
119
123
111
138
150
130
118
122
110
137
149
129
117
121
109
136
148
128
116
120
108
135
147
127
115
119
107
134
146
126
114
118
106
133
145
125
113
117
105
132
144
124
112
116
104
131
143
123
111
115
103
130
142
122
110
114
102
129
141
121
109
113
101
128
140
120
108
107
106
105
104
103
102
101
100
99
98
97
96
108
112
100
127
139
119
107
95
107
111
99
126
138
118
106
94
106
110
98
125
137
117
105
93
105
109
97
124
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
92
104
105
106
107
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
96
123
127
115
103
91
103
99
95
122
126
114
102
90
102
98
94
121
125
113
101
89
101
97
93
120
124
112
100
88
100
96
92
119
123
111
99
87
99
95
91
118
122
110
98
86
98
94
90
117
121
109
97
85
97
93
89
116
120
108
96
84
96
92
88
115
119
107
95
83
95
91
87
114
118
106
94
82
94
90
86
113
117
105
93
81
93
89
85
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
103
91
79
75
102
90
78
74
101
89
77
73
100
88
76
72
99
87
75
71
98
86
74
70
97
85
73
69
96
84
72
68
95
83
71
67
94
82
70
66
93
81
69
65
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
52
53
54
55
56
57
58
59
60
61
62
63
64
93
79
67
55
51
65
94
78
66
54
50
66
95
77
65
53
49
67
96
76
64
52
48
68
97
75
63
51
47
69
98
74
62
50
46
70
98
73
61
49
45
71
85
86
87
88
89
90
91
92
93
94
95
96
97
72
60
48
44
72
73
74
75
76
77
78
79
80
81
82
83
84
71
59
47
43
70
58
46
42
69
57
45
41
68
56
44
40
67
55
43
39
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
45
44
43
42
41
40
39
38
67
53
41
37
68
52
40
36
69
51
39
35
70
50
38
34
71
49
37
33
72
48
36
32
56
57
58
59
60
61
62
63
64
65
66
67
68
73
47
35
31
43
44
45
46
47
48
49
50
51
52
53
54
55
69
74
46
34
30
42
70
75
45
33
29
41
71
76
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
28
40
72
77
33
19
27
39
73
78
34
18
26
38
74
77
35
17
25
37
75
76
77
78
79
80
81
81
80
79
78
77
76
36
16
24
25
26
27
28
29
30
31
32
33
34
35
36
76
75
37
15
23
37
77
74
38
14
22
38
78
73
39
13
21
39
79
72
40
12
20
40
80
71
41
11
19
41
81
70
42
10
18
42
82
69
43
9
17
43
83
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
8
7
6
5
4
3
2
1
0
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
140
152
132
120
122
110
139
151
131
119
121
109
138
150
130
118
120
108
137
149
129
117
119
107
136
148
128
116
118
106
135
147
127
115
117
105
134
146
126
114
116
104
133
145
125
113
115
103
132
144
124
112
114
102
131
143
123
111
113
101
130
142
122
110
112
100
129
141
121
109
108
107
106
105
104
103
102
101
100
99
98
97
109
111
99
128
140
120
108
96
108
110
98
127
139
119
107
95
107
109
97
126
138
118
106
94
106
108
96
125
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
93
105
106
107
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
95
124
128
116
104
92
104
98
94
123
127
115
103
91
103
97
93
122
126
114
102
90
102
96
92
121
125
113
101
89
101
95
91
120
124
112
100
88
100
94
90
119
123
111
99
87
99
93
89
118
122
110
98
86
98
92
88
117
121
109
97
85
97
91
87
116
120
108
96
84
96
90
86
115
119
107
95
83
95
89
85
114
118
106
94
82
94
88
84
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
104
92
80
74
103
91
79
73
102
90
78
72
101
89
77
71
100
88
76
70
99
87
75
69
98
86
74
68
97
85
73
67
96
84
72
66
95
83
71
65
94
82
70
64
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
51
52
53
54
55
56
57
58
59
60
61
62
63
94
80
68
56
50
64
95
79
67
55
49
65
96
78
66
54
48
66
97
77
65
53
47
67
98
76
64
52
46
68
98
75
63
51
45
69
97
74
62
50
44
70
84
85
86
87
88
89
90
91
92
93
94
95
96
73
61
49
43
71
72
73
74
75
76
77
78
79
80
81
82
83
72
60
48
42
71
59
47
41
70
58
46
40
69
57
45
39
68
56
44
38
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
45
44
43
42
41
40
39
38
37
68
54
42
36
69
53
41
35
70
52
40
34
71
51
39
33
72
50
38
32
73
49
37
31
55
56
57
58
59
60
61
62
63
64
65
66
67
74
48
36
30
42
43
44
45
46
47
48
49
50
51
52
53
54
68
75
47
35
29
41
69
76
46
34
28
40
70
77
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
27
39
71
78
34
20
26
38
72
79
35
19
25
37
73
78
36
18
24
36
74
75
76
77
78
79
80
81
81
80
79
78
77
37
17
23
24
25
26
27
28
29
30
31
32
33
34
35
75
76
38
16
22
36
76
75
39
15
21
37
77
74
40
14
20
38
78
73
41
13
19
39
79
72
42
12
18
40
80
71
43
11
17
41
81
70
44
10
16
42
82
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
9
8
7
6
5
4
3
2
1
0
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
141
153
133
121
121
109
140
152
132
120
120
108
139
151
131
119
119
107
138
150
130
118
118
106
137
149
129
117
117
105
136
148
128
116
116
104
135
147
127
115
115
103
134
146
126
114
114
102
133
145
125
113
113
101
132
144
124
112
112
100
131
143
123
111
111
99
130
142
122
110
109
108
107
106
105
104
103
102
101
100
99
98
110
110
98
129
141
121
109
97
109
109
97
128
140
120
108
96
108
108
96
127
139
119
107
95
107
107
95
126
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
106
94
106
107
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
94
125
129
117
105
93
105
97
93
124
128
116
104
92
104
96
92
123
127
115
103
91
103
95
91
122
126
114
102
90
102
94
90
121
125
113
101
89
101
93
89
120
124
112
100
88
100
92
88
119
123
111
99
87
99
91
87
118
122
110
98
86
98
90
86
117
121
109
97
85
97
89
85
116
120
108
96
84
96
88
84
115
119
107
95
83
95
87
83
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
105
93
81
73
104
92
80
72
103
91
79
71
102
90
78
70
101
89
77
69
100
88
76
68
99
87
75
67
98
86
74
66
97
85
73
65
96
84
72
64
95
83
71
63
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
50
51
52
53
54
55
56
57
58
59
60
61
62
95
81
69
57
49
63
96
80
68
56
48
64
97
79
67
55
47
65
98
78
66
54
46
66
98
77
65
53
45
67
97
76
64
52
44
68
96
75
63
51
43
69
83
84
85
86
87
88
89
90
91
92
93
94
95
74
62
50
42
70
71
72
73
74
75
76
77
78
79
80
81
82
73
61
49
41
72
60
48
40
71
59
47
39
70
58
46
38
69
57
45
37
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
45
44
43
42
41
40
39
38
37
36
69
55
43
35
70
54
42
34
71
53
41
33
72
52
40
32
73
51
39
31
74
50
38
30
54
55
56
57
58
59
60
61
62
63
64
65
66
75
49
37
29
41
42
43
44
45
46
47
48
49
50
51
52
53
67
76
48
36
28
40
68
77
47
35
27
39
69
78
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
26
38
70
79
35
21
25
37
71
80
36
20
24
36
72
79
37
19
23
35
73
74
75
76
77
78
79
80
81
81
80
79
78
38
18
22
23
24
25
26
27
28
29
30
31
32
33
34
74
77
39
17
21
35
75
76
40
16
20
36
76
75
41
15
19
37
77
74
42
14
18
38
78
73
43
13
17
39
79
72
44
12
16
40
80
71
45
11
15
41
81
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
10
9
8
7
6
5
4
3
2
1
0
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
142
154
134
122
120
108
141
153
133
121
119
107
140
152
132
120
118
106
139
151
131
119
117
105
138
150
130
118
116
104
137
149
129
117
115
103
136
148
128
116
114
102
135
147
127
115
113
101
134
146
126
114
112
100
133
145
125
113
111
99
132
144
124
112
110
98
131
143
123
111
110
109
108
107
106
105
104
103
102
101
100
99
111
109
97
130
142
122
110
98
110
108
96
129
141
121
109
97
109
107
95
128
140
120
108
96
108
106
94
127
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
107
95
107
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
93
126
130
118
106
94
106
96
92
125
129
117
105
93
105
95
91
124
128
116
104
92
104
94
90
123
127
115
103
91
103
93
89
122
126
114
102
90
102
92
88
121
125
113
101
89
101
91
87
120
124
112
100
88
100
90
86
119
123
111
99
87
99
89
85
118
122
110
98
86
98
88
84
117
121
109
97
85
97
87
83
116
120
108
96
84
96
86
82
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
106
94
82
72
105
93
81
71
104
92
80
70
103
91
79
69
102
90
78
68
101
89
77
67
100
88
76
66
99
87
75
65
98
86
74
64
97
85
73
63
96
84
72
62
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
49
50
51
52
53
54
55
56
57
58
59
60
61
96
82
70
58
48
62
97
81
69
57
47
63
98
80
68
56
46
64
98
79
67
55
45
65
97
78
66
54
44
66
96
77
65
53
43
67
95
76
64
52
42
68
82
83
84
85
86
87
88
89
90
91
92
93
94
75
63
51
41
69
70
71
72
73
74
75
76
77
78
79
80
81
74
62
50
40
73
61
49
39
72
60
48
38
71
59
47
37
70
58
46
36
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
45
44
43
42
41
40
39
38
37
36
35
70
56
44
34
71
55
43
33
72
54
42
32
73
53
41
31
74
52
40
30
75
51
39
29
53
54
55
56
57
58
59
60
61
62
63
64
65
76
50
38
28
40
41
42
43
44
45
46
47
48
49
50
51
52
66
77
49
37
27
39
67
78
48
36
26
38
68
79
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
25
37
69
80
36
22
24
36
70
81
37
21
23
35
71
80
38
20
22
34
72
73
74
75
76
77
78
79
80
81
81
80
79
39
19
21
22
23
24
25
26
27
28
29
30
31
32
33
73
78
40
18
20
34
74
77
41
17
19
35
75
76
42
16
18
36
76
75
43
15
17
37
77
74
44
14
16
38
78
73
45
13
15
39
79
72
46
12
14
40
80
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
143
155
135
123
119
107
142
154
134
122
118
106
141
153
133
121
117
105
140
152
132
120
116
104
139
151
131
119
115
103
138
150
130
118
114
102
137
149
129
117
113
101
136
148
128
116
112
100
135
147
127
115
111
99
134
146
126
114
110
98
133
145
125
113
109
97
132
144
124
112
111
110
109
108
107
106
105
104
103
102
101
100
112
108
96
131
143
123
111
99
111
107
95
130
142
122
110
98
110
106
94
129
141
121
109
97
109
105
93
128
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
108
96
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
92
127
131
119
107
95
107
95
91
126
130
118
106
94
106
94
90
125
129
117
105
93
105
93
89
124
128
116
104
92
104
92
88
123
127
115
103
91
103
91
87
122
126
114
102
90
102
90
86
121
125
113
101
89
101
89
85
120
124
112
100
88
100
88
84
119
123
111
99
87
99
87
83
118
122
110
98
86
98
86
82
117
121
109
97
85
97
85
81
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
108
107
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
107
95
83
71
106
94
82
70
105
93
81
69
104
92
80
68
103
91
79
67
102
90
78
66
101
89
77
65
100
88
76
64
99
87
75
63
98
86
74
62
97
85
73
61
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
57
58
59
60
97
83
71
59
47
61
98
82
70
58
46
62
98
81
69
57
45
63
97
80
68
56
44
64
96
79
67
55
43
65
95
78
66
54
42
66
94
77
65
53
41
67
81
82
83
84
85
86
87
88
89
90
91
92
93
76
64
52
40
68
69
70
71
72
73
74
75
76
77
78
79
80
75
63
51
39
74
62
50
38
73
61
49
37
72
60
48
36
71
59
47
35
70
69
68
67
66
65
64
63
62
61
60
59
58
46
45
44
43
42
41
40
39
38
37
36
35
34
71
57
45
33
72
56
44
32
73
55
43
31
74
54
42
30
75
53
41
29
76
52
40
28
52
53
54
55
56
57
58
59
60
61
62
63
64
77
51
39
27
39
40
41
42
43
44
45
46
47
48
49
50
51
65
78
50
38
26
38
66
79
49
37
25
37
67
80
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
24
36
68
81
37
23
23
35
69
82
38
22
22
34
70
81
39
21
21
33
71
72
73
74
75
76
77
78
79
80
81
81
80
40
20
20
21
22
23
24
25
26
27
28
29
30
31
32
72
79
41
19
19
33
73
78
42
18
18
34
74
77
43
17
17
35
75
76
44
16
16
36
76
75
45
15
15
37
77
74
46
14
14
38
78
73
47
13
13
39
79
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
144
154
134
122
118
106
143
153
133
121
117
105
142
152
132
120
116
104
141
151
131
119
115
103
140
150
130
118
114
102
139
149
129
117
113
101
138
148
128
116
112
100
137
147
127
115
111
99
136
146
126
114
110
98
135
145
125
113
109
97
134
144
124
112
108
96
133
143
123
111
110
109
108
107
106
105
104
103
102
101
100
99
111
107
95
132
142
122
110
98
110
106
94
131
141
121
109
97
109
105
93
130
140
120
108
96
108
104
92
129
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
107
95
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
91
128
132
118
106
94
106
94
90
127
131
117
105
93
105
93
89
126
130
116
104
92
104
92
88
125
129
115
103
91
103
91
87
124
128
114
102
90
102
90
86
123
127
113
101
89
101
89
85
122
126
112
100
88
100
88
84
121
125
111
99
87
99
87
83
120
124
110
98
86
98
86
82
119
123
109
97
85
97
85
81
118
122
108
96
84
96
84
80
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
108
94
82
70
107
93
81
69
106
92
80
68
105
91
79
67
104
90
78
66
103
89
77
65
102
88
76
64
101
87
75
63
100
86
74
62
99
85
73
61
98
84
72
60
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
47
48
49
50
51
52
53
54
55
56
57
58
59
98
84
72
58
46
60
98
83
71
57
45
61
97
82
70
56
44
62
96
81
69
55
43
63
95
80
68
54
42
64
94
79
67
53
41
65
93
78
66
52
40
66
80
81
82
83
84
85
86
87
88
89
90
91
92
77
65
51
39
67
68
69
70
71
72
73
74
75
76
77
78
79
76
64
50
38
75
63
49
37
74
62
48
36
73
61
47
35
72
60
46
34
71
70
69
68
67
66
65
64
63
62
61
60
59
45
44
43
42
41
40
39
38
37
36
35
34
33
72
58
46
32
73
57
45
31
74
56
44
30
75
55
43
29
76
54
42
28
77
53
41
27
51
52
53
54
55
56
57
58
59
60
61
62
63
78
52
40
26
38
39
40
41
42
43
44
45
46
47
48
49
50
64
79
51
39
25
37
65
80
50
38
24
36
66
81
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
23
35
67
82
38
24
22
34
68
83
39
23
21
33
69
82
40
22
20
32
70
71
72
73
74
75
76
77
78
79
80
81
81
41
21
19
20
21
22
23
24
25
26
27
28
29
30
31
71
80
42
20
18
32
72
79
43
19
17
33
73
78
44
18
16
34
74
77
45
17
15
35
75
76
46
16
14
36
76
75
47
15
13
37
77
74
48
14
12
38
78
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
145
153
133
121
117
105
144
152
132
120
116
104
143
151
131
119
115
103
142
150
130
118
114
102
141
149
129
117
113
101
140
148
128
116
112
100
139
147
127
115
111
99
138
146
126
114
110
98
137
145
125
113
109
97
136
144
124
112
108
96
135
143
123
111
107
95
134
142
122
110
109
108
107
106
105
104
103
102
101
100
99
98
110
106
94
133
141
121
109
97
109
105
93
132
140
120
108
96
108
104
92
131
139
119
107
95
107
103
91
130
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
106
94
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
90
129
131
117
105
93
105
93
89
128
132
116
104
92
104
92
88
127
131
115
103
91
103
91
87
126
130
114
102
90
102
90
86
125
129
113
101
89
101
89
85
124
128
112
100
88
100
88
84
123
127
111
99
87
99
87
83
122
126
110
98
86
98
86
82
121
125
109
97
85
97
85
81
120
124
108
96
84
96
84
80
119
123
107
95
83
95
83
79
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
109
93
81
69
108
92
80
68
107
91
79
67
106
90
78
66
105
89
77
65
104
88
76
64
103
87
75
63
102
86
74
62
101
85
73
61
100
84
72
60
99
83
71
59
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
57
58
98
85
73
57
45
59
97
84
72
56
44
60
96
83
71
55
43
61
95
82
70
54
42
62
94
81
69
53
41
63
93
80
68
52
40
64
92
79
67
51
39
65
79
80
81
82
83
84
85
86
87
88
89
90
91
78
66
50
38
66
67
68
69
70
71
72
73
74
75
76
77
78
77
65
49
37
76
64
48
36
75
63
47
35
74
62
46
34
73
61
45
33
72
71
70
69
68
67
66
65
64
63
62
61
60
44
43
42
41
40
39
38
37
36
35
34
33
32
73
59
45
31
74
58
46
30
75
57
45
29
76
56
44
28
77
55
43
27
78
54
42
26
50
51
52
53
54
55
56
57
58
59
60
61
62
79
53
41
25
37
38
39
40
41
42
43
44
45
46
47
48
49
63
80
52
40
24
36
64
81
51
39
23
35
65
82
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
22
34
66
83
39
25
21
33
67
83
40
24
20
32
68
82
41
23
19
31
69
70
71
72
73
74
75
76
77
78
79
80
81
42
22
18
19
20
21
22
23
24
25
26
27
28
29
30
70
81
43
21
17
31
71
80
44
20
16
32
72
79
45
19
15
33
73
78
46
18
14
34
74
77
47
17
13
35
75
76
48
16
12
36
76
75
49
15
11
37
77
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
146
147
148
149
150
151
152
153
154
155
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
145
152
132
120
116
104
144
151
131
119
115
103
143
150
130
118
114
102
142
149
129
117
113
101
141
148
128
116
112
100
140
147
127
115
111
99
139
146
126
114
110
98
138
145
125
113
109
97
137
144
124
112
108
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
108
107
106
105
104
103
102
101
100
99
98
97
109
105
93
133
140
120
108
96
108
104
92
132
139
119
107
95
107
103
91
131
138
118
106
94
106
102
90
130
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
93
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
89
129
130
116
104
92
104
92
88
128
131
115
103
91
103
91
87
127
131
114
102
90
102
90
86
126
130
113
101
89
101
89
85
125
129
112
100
88
100
88
84
124
128
111
99
87
99
87
83
123
127
110
98
86
98
86
82
122
126
109
97
85
97
85
81
121
125
108
96
84
96
84
80
120
124
107
95
83
95
83
79
119
123
106
94
82
94
82
78
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
109
92
80
68
108
91
79
67
107
90
78
66
106
89
77
65
105
88
76
64
104
87
75
63
103
86
74
62
102
85
73
61
101
84
72
60
100
83
71
59
99
82
70
58
98
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
57
97
86
74
56
44
58
96
85
73
55
43
59
95
84
72
54
42
60
94
83
71
53
41
61
93
82
70
52
40
62
92
81
69
51
39
63
91
80
68
50
38
64
78
79
80
81
82
83
84
85
86
87
88
89
90
79
67
49
37
65
66
67
68
69
70
71
72
73
74
75
76
77
78
66
48
36
77
65
47
35
76
64
46
34
75
63
45
33
74
62
44
32
73
72
71
70
69
68
67
66
65
64
63
62
61
43
42
41
40
39
38
37
36
35
34
33
32
31
74
60
44
30
75
59
45
29
76
58
46
28
77
57
45
27
78
56
44
26
79
55
43
25
49
50
51
52
53
54
55
56
57
58
59
60
61
80
54
42
24
36
37
38
39
40
41
42
43
44
45
46
47
48
62
81
53
41
23
35
63
82
52
40
22
34
64
83
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
21
33
65
83
40
26
20
32
66
82
41
25
19
31
67
81
42
24
18
30
68
69
70
71
72
73
74
75
76
77
78
79
80
43
23
17
18
19
20
21
22
23
24
25
26
27
28
29
69
81
44
22
16
30
70
81
45
21
15
31
71
80
46
20
14
32
72
79
47
19
13
33
73
78
48
18
12
34
74
77
49
17
11
35
75
76
50
16
10
36
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
145
146
147
148
149
150
151
152
153
154
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
144
151
131
119
115
103
143
150
130
118
114
102
142
149
129
117
113
101
141
148
128
116
112
100
140
147
127
115
111
99
139
146
126
114
110
98
138
145
125
113
109
97
137
144
124
112
108
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
107
106
105
104
103
102
101
100
99
98
97
96
108
104
92
132
139
119
107
95
107
103
91
131
138
118
106
94
106
102
90
130
137
117
105
93
105
101
89
129
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
92
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
88
128
129
115
103
91
103
91
87
127
130
114
102
90
102
90
86
126
130
113
101
89
101
89
85
125
129
112
100
88
100
88
84
124
128
111
99
87
99
87
83
123
127
110
98
86
98
86
82
122
126
109
97
85
97
85
81
121
125
108
96
84
96
84
80
120
124
107
95
83
95
83
79
119
123
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
108
91
79
67
107
90
78
66
106
89
77
65
105
88
76
64
104
87
75
63
103
86
74
62
102
85
73
61
101
84
72
60
100
83
71
59
99
82
70
58
98
81
69
57
97
98
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
96
87
75
55
43
57
95
86
74
54
42
58
94
85
73
53
41
59
93
84
72
52
40
60
92
83
71
51
39
61
91
82
70
50
38
62
90
81
69
49
37
63
77
78
79
80
81
82
83
84
85
86
87
88
89
80
68
48
36
64
65
66
67
68
69
70
71
72
73
74
75
76
79
67
47
35
78
66
46
34
77
65
45
33
76
64
44
32
75
63
43
31
74
73
72
71
70
69
68
67
66
65
64
63
62
42
41
40
39
38
37
36
35
34
33
32
31
30
75
61
43
29
76
60
44
28
77
59
45
27
78
58
46
26
79
57
45
25
80
56
44
24
48
49
50
51
52
53
54
55
56
57
58
59
60
81
55
43
23
35
36
37
38
39
40
41
42
43
44
45
46
47
61
82
54
42
22
34
62
83
53
41
21
33
63
83
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
20
32
64
82
41
27
19
31
65
81
42
26
18
30
66
80
43
25
17
29
67
68
69
70
71
72
73
74
75
76
77
78
79
44
24
16
17
18
19
20
21
22
23
24
25
26
27
28
68
80
45
23
15
29
69
81
46
22
14
30
70
81
47
21
13
31
71
80
48
20
12
32
72
79
49
19
11
33
73
78
50
18
10
34
74
77
51
17
9
35
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
144
145
146
147
148
149
150
151
152
153
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
143
150
130
118
114
102
142
149
129
117
113
101
141
148
128
116
112
100
140
147
127
115
111
99
139
146
126
114
110
98
138
145
125
113
109
97
137
144
124
112
108
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
106
105
104
103
102
101
100
99
98
97
96
95
107
103
91
131
138
118
106
94
106
102
90
130
137
117
105
93
105
101
89
129
136
116
104
92
104
100
88
128
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
91
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
87
127
128
114
102
90
102
90
86
126
129
113
101
89
101
89
85
125
129
112
100
88
100
88
84
124
128
111
99
87
99
87
83
123
127
110
98
86
98
86
82
122
126
109
97
85
97
85
81
121
125
108
96
84
96
84
80
120
124
107
95
83
95
83
79
119
123
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
107
90
78
66
106
89
77
65
105
88
76
64
104
87
75
63
103
86
74
62
102
85
73
61
101
84
72
60
100
83
71
59
99
82
70
58
98
81
69
57
97
80
68
56
96
97
98
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
95
88
76
54
42
56
94
87
75
53
41
57
93
86
74
52
40
58
92
85
73
51
39
59
91
84
72
50
38
60
90
83
71
49
37
61
89
82
70
48
36
62
76
77
78
79
80
81
82
83
84
85
86
87
88
81
69
47
35
63
64
65
66
67
68
69
70
71
72
73
74
75
80
68
46
34
79
67
45
33
78
66
44
32
77
65
43
31
76
64
42
30
75
74
73
72
71
70
69
68
67
66
65
64
63
41
40
39
38
37
36
35
34
33
32
31
30
29
76
62
42
28
77
61
43
27
78
60
44
26
79
59
45
25
80
58
46
24
81
57
45
23
47
48
49
50
51
52
53
54
55
56
57
58
59
82
56
44
22
34
35
36
37
38
39
40
41
42
43
44
45
46
60
83
55
43
21
33
61
83
54
42
20
32
62
82
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
19
31
63
81
42
28
18
30
64
80
43
27
17
29
65
79
44
26
16
28
66
67
68
69
70
71
72
73
74
75
76
77
78
45
25
15
16
17
18
19
20
21
22
23
24
25
26
27
67
79
46
24
14
28
68
80
47
23
13
29
69
81
48
22
12
30
70
81
49
21
11
31
71
80
50
20
10
32
72
79
51
19
9
33
73
78
52
18
8
34
74
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
143
144
145
146
147
148
149
150
151
152
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
142
149
129
117
113
101
141
148
128
116
112
100
140
147
127
115
111
99
139
146
126
114
110
98
138
145
125
113
109
97
137
144
124
112
108
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
105
104
103
102
101
100
99
98
97
96
95
94
106
102
90
130
137
117
105
93
105
101
89
129
136
116
104
92
104
100
88
128
135
115
103
91
103
99
87
127
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
90
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
86
126
127
113
101
89
101
89
85
125
128
112
100
88
100
88
84
124
128
111
99
87
99
87
83
123
127
110
98
86
98
86
82
122
126
109
97
85
97
85
81
121
125
108
96
84
96
84
80
120
124
107
95
83
95
83
79
119
123
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
106
89
77
65
105
88
76
64
104
87
75
63
103
86
74
62
102
85
73
61
101
84
72
60
100
83
71
59
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
96
97
98
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
94
89
77
53
41
55
93
88
76
52
40
56
92
87
75
51
39
57
91
86
74
50
38
58
90
85
73
49
37
59
89
84
72
48
36
60
88
83
71
47
35
61
75
76
77
78
79
80
81
82
83
84
85
86
87
82
70
46
34
62
63
64
65
66
67
68
69
70
71
72
73
74
81
69
45
33
80
68
44
32
79
67
43
31
78
66
42
30
77
65
41
29
76
75
74
73
72
71
70
69
68
67
66
65
64
40
39
38
37
36
35
34
33
32
31
30
29
28
77
63
41
27
78
62
42
26
79
61
43
25
80
60
44
24
81
59
45
23
82
58
46
22
46
47
48
49
50
51
52
53
54
55
56
57
58
83
57
45
21
33
34
35
36
37
38
39
40
41
42
43
44
45
59
83
56
44
20
32
60
82
55
43
19
31
61
81
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
18
30
62
80
43
29
17
29
63
79
44
28
16
28
64
78
45
27
15
27
65
66
67
68
69
70
71
72
73
74
75
76
77
46
26
14
15
16
17
18
19
20
21
22
23
24
25
26
66
78
47
25
13
27
67
79
48
24
12
28
68
80
49
23
11
29
69
81
50
22
10
30
70
81
51
21
9
31
71
80
52
20
8
32
72
79
53
19
7
33
73
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
142
143
144
145
146
147
148
149
150
151
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
141
148
128
116
112
100
140
147
127
115
111
99
139
146
126
114
110
98
138
145
125
113
109
97
137
144
124
112
108
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
104
103
102
101
100
99
98
97
96
95
94
93
105
101
89
129
136
116
104
92
104
100
88
128
135
115
103
91
103
99
87
127
134
114
102
90
102
98
86
126
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
89
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
85
125
126
112
100
88
100
88
84
124
127
111
99
87
99
87
83
123
127
110
98
86
98
86
82
122
126
109
97
85
97
85
81
121
125
108
96
84
96
84
80
120
124
107
95
83
95
83
79
119
123
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
105
88
76
64
104
87
75
63
103
86
74
62
102
85
73
61
101
84
72
60
100
83
71
59
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
95
96
97
98
98
97
96
95
94
93
92
91
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
93
90
78
52
40
54
92
89
77
51
39
55
91
88
76
50
38
56
90
87
75
49
37
57
89
86
74
48
36
58
88
85
73
47
35
59
87
84
72
46
34
60
74
75
76
77
78
79
80
81
82
83
84
85
86
83
71
45
33
61
62
63
64
65
66
67
68
69
70
71
72
73
82
70
44
32
81
69
43
31
80
68
42
30
79
67
41
29
78
66
40
28
77
76
75
74
73
72
71
70
69
68
67
66
65
39
38
37
36
35
34
33
32
31
30
29
28
27
78
64
40
26
79
63
41
25
80
62
42
24
81
61
43
23
82
60
44
22
83
59
45
21
45
46
47
48
49
50
51
52
53
54
55
56
57
83
58
46
20
32
33
34
35
36
37
38
39
40
41
42
43
44
58
82
57
45
19
31
59
81
56
44
18
30
60
80
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
17
29
61
79
44
30
16
28
62
78
45
29
15
27
63
77
46
28
14
26
64
65
66
67
68
69
70
71
72
73
74
75
76
47
27
13
14
15
16
17
18
19
20
21
22
23
24
25
65
77
48
26
12
26
66
78
49
25
11
27
67
79
50
24
10
28
68
80
51
23
9
29
69
81
52
22
8
30
70
81
53
21
7
31
71
80
54
20
6
32
72
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
141
142
143
144
145
146
147
148
149
150
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
140
147
127
115
111
99
139
146
126
114
110
98
138
145
125
113
109
97
137
144
124
112
108
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
103
102
101
100
99
98
97
96
95
94
93
92
104
100
88
128
135
115
103
91
103
99
87
127
134
114
102
90
102
98
86
126
133
113
101
89
101
97
85
125
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
88
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
84
124
125
111
99
87
99
87
83
123
126
110
98
86
98
86
82
122
126
109
97
85
97
85
81
121
125
108
96
84
96
84
80
120
124
107
95
83
95
83
79
119
123
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
104
87
75
63
103
86
74
62
102
85
73
61
101
84
72
60
100
83
71
59
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
94
95
96
97
98
98
97
96
95
94
93
92
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
49
50
51
52
92
91
79
51
39
53
91
90
78
50
38
54
90
89
77
49
37
55
89
88
76
48
36
56
88
87
75
47
35
57
87
86
74
46
34
58
86
85
73
45
33
59
73
74
75
76
77
78
79
80
81
82
83
84
85
84
72
44
32
60
61
62
63
64
65
66
67
68
69
70
71
72
83
71
43
31
82
70
42
30
81
69
41
29
80
68
40
28
79
67
39
27
78
77
76
75
74
73
72
71
70
69
68
67
66
38
37
36
35
34
33
32
31
30
29
28
27
26
79
65
39
25
80
64
40
24
81
63
41
23
82
62
42
22
83
61
43
21
83
60
44
20
44
45
46
47
48
49
50
51
52
53
54
55
56
82
59
45
19
31
32
33
34
35
36
37
38
39
40
41
42
43
57
81
58
46
18
30
58
80
57
45
17
29
59
79
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
16
28
60
78
45
31
15
27
61
77
46
30
14
26
62
76
47
29
13
25
63
64
65
66
67
68
69
70
71
72
73
74
75
48
28
12
13
14
15
16
17
18
19
20
21
22
23
24
64
76
49
27
11
25
65
77
50
26
10
26
66
78
51
25
9
27
67
79
52
24
8
28
68
80
53
23
7
29
69
81
54
22
6
30
70
81
55
21
5
31
71
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
140
141
142
143
144
145
146
147
148
149
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
139
146
126
114
110
98
138
145
125
113
109
97
137
144
124
112
108
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
102
101
100
99
98
97
96
95
94
93
92
91
103
99
87
127
134
114
102
90
102
98
86
126
133
113
101
89
101
97
85
125
132
112
100
88
100
96
84
124
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
87
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
83
123
124
110
98
86
98
86
82
122
125
109
97
85
97
85
81
121
125
108
96
84
96
84
80
120
124
107
95
83
95
83
79
119
123
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
103
86
74
62
102
85
73
61
101
84
72
60
100
83
71
59
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
93
94
95
96
97
98
98
97
96
95
94
93
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
48
49
50
51
91
92
80
50
38
52
90
91
79
49
37
53
89
90
78
48
36
54
88
89
77
47
35
55
87
88
76
46
34
56
86
87
75
45
33
57
85
86
74
44
32
58
72
73
74
75
76
77
78
79
80
81
82
83
84
85
73
43
31
59
60
61
62
63
64
65
66
67
68
69
70
71
84
72
42
30
83
71
41
29
82
70
40
28
81
69
39
27
80
68
38
26
79
78
77
76
75
74
73
72
71
70
69
68
67
37
36
35
34
33
32
31
30
29
28
27
26
25
80
66
38
24
81
65
39
23
82
64
40
22
83
63
41
21
83
62
42
20
82
61
43
19
43
44
45
46
47
48
49
50
51
52
53
54
55
81
60
44
18
30
31
32
33
34
35
36
37
38
39
40
41
42
56
80
59
45
17
29
57
79
58
46
16
28
58
78
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
15
27
59
77
46
32
14
26
60
76
47
31
13
25
61
75
48
30
12
24
62
63
64
65
66
67
68
69
70
71
72
73
74
49
29
11
12
13
14
15
16
17
18
19
20
21
22
23
63
75
50
28
10
24
64
76
51
27
9
25
65
77
52
26
8
26
66
78
53
25
7
27
67
79
54
24
6
28
68
80
55
23
5
29
69
81
56
22
4
30
70
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
139
140
141
142
143
144
145
146
147
148
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
138
145
125
113
109
97
137
144
124
112
108
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
101
100
99
98
97
96
95
94
93
92
91
90
102
98
86
126
133
113
101
89
101
97
85
125
132
112
100
88
100
96
84
124
131
111
99
87
99
95
83
123
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
86
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
82
122
123
109
97
85
97
85
81
121
124
108
96
84
96
84
80
120
124
107
95
83
95
83
79
119
123
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
102
85
73
61
101
84
72
60
100
83
71
59
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
92
93
94
95
96
97
98
98
97
96
95
94
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
47
48
49
50
90
93
81
49
37
51
89
92
80
48
36
52
88
91
79
47
35
53
87
90
78
46
34
54
86
89
77
45
33
55
85
88
76
44
32
56
84
87
75
43
31
57
71
72
73
74
75
76
77
78
79
80
81
82
83
86
74
42
30
58
59
60
61
62
63
64
65
66
67
68
69
70
85
73
41
29
84
72
40
28
83
71
39
27
82
70
38
26
81
69
37
25
80
79
78
77
76
75
74
73
72
71
70
69
68
36
35
34
33
32
31
30
29
28
27
26
25
24
81
67
37
23
82
66
38
22
83
65
39
21
83
64
40
20
82
63
41
19
81
62
42
18
42
43
44
45
46
47
48
49
50
51
52
53
54
80
61
43
17
29
30
31
32
33
34
35
36
37
38
39
40
41
55
79
60
44
16
28
56
78
59
45
15
27
57
77
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
14
26
58
76
47
33
13
25
59
75
48
32
12
24
60
74
49
31
11
23
61
62
63
64
65
66
67
68
69
70
71
72
73
50
30
10
11
12
13
14
15
16
17
18
19
20
21
22
62
74
51
29
9
23
63
75
52
28
8
24
64
76
53
27
7
25
65
77
54
26
6
26
66
78
55
25
5
27
67
79
56
24
4
28
68
80
57
23
3
29
69
81
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
138
139
140
141
142
143
144
145
146
147
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
137
144
124
112
108
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
100
99
98
97
96
95
94
93
92
91
90
89
101
97
85
125
132
112
100
88
100
96
84
124
131
111
99
87
99
95
83
123
130
110
98
86
98
94
82
122
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
85
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
81
121
122
108
96
84
96
84
80
120
123
107
95
83
95
83
79
119
123
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
101
84
72
60
100
83
71
59
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
91
92
93
94
95
96
97
98
98
97
96
95
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
46
47
48
49
89
94
82
48
36
50
88
93
81
47
35
51
87
92
80
46
34
52
86
91
79
45
33
53
85
90
78
44
32
54
84
89
77
43
31
55
83
88
76
42
30
56
70
71
72
73
74
75
76
77
78
79
80
81
82
87
75
41
29
57
58
59
60
61
62
63
64
65
66
67
68
69
86
74
40
28
85
73
39
27
84
72
38
26
83
71
37
25
82
70
36
24
81
80
79
78
77
76
75
74
73
72
71
70
69
35
34
33
32
31
30
29
28
27
26
25
24
23
82
68
36
22
83
67
37
21
83
66
38
20
82
65
39
19
81
64
40
18
80
63
41
17
41
42
43
44
45
46
47
48
49
50
51
52
53
79
62
42
16
28
29
30
31
32
33
34
35
36
37
38
39
40
54
78
61
43
15
27
55
77
60
44
14
26
56
76
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
45
13
25
57
75
48
34
12
24
58
74
49
33
11
23
59
73
50
32
10
22
60
61
62
63
64
65
66
67
68
69
70
71
72
51
31
9
10
11
12
13
14
15
16
17
18
19
20
21
61
73
52
30
8
22
62
74
53
29
7
23
63
75
54
28
6
24
64
76
55
27
5
25
65
77
56
26
4
26
66
78
57
25
3
27
67
79
58
24
2
28
68
80
81
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
137
138
139
140
141
142
143
144
145
146
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
136
143
123
111
107
95
135
142
122
110
106
94
134
141
121
109
105
93
133
140
120
108
104
92
132
139
119
107
103
91
131
138
118
106
102
90
130
137
117
105
101
89
129
136
116
104
100
88
128
135
115
103
99
87
127
134
114
102
98
86
126
133
113
101
97
85
125
132
112
100
99
98
97
96
95
94
93
92
91
90
89
88
100
96
84
124
131
111
99
87
99
95
83
123
130
110
98
86
98
94
82
122
129
109
97
85
97
93
81
121
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
84
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
80
120
121
107
95
83
95
83
79
119
122
106
94
82
94
82
78
118
122
105
93
81
93
81
77
117
121
104
92
80
92
80
76
116
120
103
91
79
91
79
75
115
119
102
90
78
90
78
74
114
118
101
89
77
89
77
73
113
117
100
88
76
88
76
72
112
116
99
87
75
87
75
71
111
115
98
86
74
86
74
70
110
114
97
85
73
85
73
69
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
100
83
71
59
99
82
70
58
98
81
69
57
97
80
68
56
96
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
91
74
62
50
90
73
61
49
89
90
91
92
93
94
95
96
97
98
98
97
96
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
45
46
47
48
88
95
83
47
35
49
87
94
82
46
34
50
86
93
81
45
33
51
85
92
80
44
32
52
84
91
79
43
31
53
83
90
78
42
30
54
82
89
77
41
29
55
69
70
71
72
73
74
75
76
77
78
79
80
81
88
76
40
28
56
57
58
59
60
61
62
63
64
65
66
67
68
87
75
39
27
86
74
38
26
85
73
37
25
84
72
36
24
83
71
35
23
82
81
80
79
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
83
69
35
21
83
68
36
20
82
67
37
19
81
66
38
18
80
65
39
17
79
64
40
16
40
41
42
43
44
45
46
47
48
49
50
51
52
78
63
41
15
27
28
29
30
31
32
33
34
35
36
37
38
39
53
77
62
42
14
26
54
76
61
43
13
25
55
75
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
45
44
12
24
56
74
49
35
11
23
57
73
50
34
10
22
58
72
51
33
9
21
59
60
61
62
63
64
65
66
67
68
69
70
71
52
32
8
9
10
11
12
13
14
15
16
17
18
19
20
60
72
53
31
7
21
61
73
54
30
6
22
62
74
55
29
5
23
63
75
56
28
4
24
64
76
57
27
3
25
65
77
58
26
2
26
66
78
59
25
1
27
67
79
80
81
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
147
148
149
150
151
152
153
154
155
156
157
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
146
155
135
123
119
107
145
154
134
122
118
106
144
153
133
121
117
105
143
152
132
120
116
104
142
151
131
119
115
103
141
150
130
118
114
102
140
149
129
117
113
101
139
148
128
116
112
100
138
147
127
115
111
99
137
146
126
114
110
98
136
145
125
113
109
97
135
144
124
112
111
110
109
108
107
106
105
104
103
102
101
100
112
108
96
134
143
123
111
99
111
107
95
133
142
122
110
98
110
106
94
132
141
121
109
97
109
105
93
131
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
108
96
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
92
130
133
119
107
95
107
95
91
129
133
118
106
94
106
94
90
128
132
117
105
93
105
93
89
127
131
116
104
92
104
92
88
126
130
115
103
91
103
91
87
125
129
114
102
90
102
90
86
124
128
113
101
89
101
89
85
123
127
112
100
88
100
88
84
122
126
111
99
87
99
87
83
121
125
110
98
86
98
86
82
120
124
109
97
85
97
85
81
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
108
107
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
110
95
83
71
109
94
82
70
108
93
81
69
107
92
80
68
106
91
79
67
105
90
78
66
104
89
77
65
103
88
76
64
102
87
75
63
101
86
74
62
100
85
73
61
99
98
97
96
95
94
93
92
91
90
89
88
87
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
49
50
51
52
53
54
55
56
57
58
59
60
100
86
97
59
47
61
99
85
97
58
46
62
98
84
96
57
45
63
97
83
95
56
44
64
96
82
94
55
43
65
95
81
93
54
42
66
94
80
92
53
41
67
81
82
83
84
85
86
87
88
89
90
91
92
93
79
91
52
40
68
69
70
71
72
73
74
75
76
77
78
79
80
78
90
51
39
77
89
50
38
76
88
49
37
75
87
48
36
74
86
47
35
73
74
75
76
77
78
79
80
81
82
83
84
85
46
45
44
43
42
41
40
39
38
37
36
35
34
72
86
47
33
71
87
48
32
70
88
49
31
69
89
50
30
68
90
51
29
67
91
52
28
28
29
30
31
32
33
34
35
36
37
38
39
40
66
91
53
27
15
16
17
18
19
20
21
22
23
24
25
26
27
41
65
90
54
26
14
42
64
89
55
25
13
43
63
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
65
64
63
62
61
60
59
58
57
56
24
12
44
62
77
63
23
11
45
61
78
62
22
10
46
60
79
61
21
9
47
48
49
50
51
52
53
54
55
56
57
58
59
80
60
20
19
18
17
16
15
14
13
12
11
10
9
8
48
60
81
59
21
7
49
61
82
58
22
6
50
62
83
57
23
5
51
63
84
56
24
4
52
64
85
55
25
3
53
65
86
54
26
2
54
66
87
53
27
1
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
0
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
158
157
156
155
154
153
152
151
150
149
148
108
120
124
136
156
147
107
119
123
135
155
146
106
118
122
134
154
145
105
117
121
133
153
144
104
116
120
132
152
143
103
115
119
131
151
142
102
114
118
130
150
141
101
113
117
129
149
140
100
112
116
128
148
139
99
111
115
127
147
138
98
110
114
126
146
137
97
109
113
101
102
103
104
105
106
107
108
109
110
111
112
113
125
145
136
96
108
112
100
112
124
144
135
95
107
111
99
111
123
143
134
94
106
110
98
110
122
142
133
93
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
97
109
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
132
92
96
108
96
108
120
134
131
91
95
107
95
107
119
134
130
90
94
106
94
106
118
133
129
89
93
105
93
105
117
132
128
88
92
104
92
104
116
131
127
87
91
103
91
103
115
130
126
86
90
102
90
102
114
129
125
85
89
101
89
101
113
128
124
84
88
100
88
100
112
127
123
83
87
99
87
99
111
126
122
82
86
98
86
98
110
125
121
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
108
109
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
72
84
96
111
71
83
95
110
70
82
94
109
69
81
93
108
68
80
92
107
67
79
91
106
66
78
90
105
65
77
89
104
64
76
88
103
63
75
87
102
62
74
86
101
61
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
88
89
90
91
92
93
94
95
96
97
98
99
100
62
48
60
98
87
101
63
47
59
98
86
100
64
46
58
97
85
99
65
45
57
96
84
98
66
44
56
95
83
97
67
43
55
94
82
96
68
42
54
93
81
95
81
80
79
78
77
76
75
74
73
72
71
70
69
41
53
92
80
94
93
92
91
90
89
88
87
86
85
84
83
82
40
52
91
79
39
51
90
78
38
50
89
77
37
49
88
76
36
48
87
75
35
36
37
38
39
40
41
42
43
44
45
46
47
86
85
84
83
82
81
80
79
78
77
76
75
74
34
48
87
73
33
49
88
72
32
50
89
71
31
51
90
70
30
52
91
69
29
53
92
68
28
27
26
25
24
23
22
21
20
19
18
17
16
28
54
92
67
41
40
39
38
37
36
35
34
33
32
31
30
29
15
27
55
91
66
42
14
26
56
90
65
43
13
25
57
58
59
60
61
62
63
64
65
66
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
64
44
12
24
64
78
63
45
11
23
63
79
62
46
10
22
62
80
61
47
9
10
11
12
13
14
15
16
17
18
19
20
21
61
81
60
59
58
57
56
55
54
53
52
51
50
49
48
8
22
60
82
61
49
7
23
59
83
62
50
6
24
58
84
63
51
5
25
57
85
64
52
4
26
56
86
65
53
3
27
55
87
66
54
2
28
54
88
67
55
1
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
0
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
108
120
124
136
156
144
107
119
123
135
155
143
106
118
122
134
154
142
105
117
121
133
153
141
104
116
120
132
152
140
103
115
119
131
151
139
102
114
118
130
150
138
101
113
117
129
149
137
100
112
116
128
148
136
99
111
115
127
147
135
98
110
114
126
146
134
97
109
113
101
102
103
104
105
106
107
108
109
110
111
112
113
125
145
133
96
108
112
100
112
124
144
132
95
107
111
99
111
123
143
131
94
106
110
98
110
122
142
130
93
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
97
109
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
129
92
96
108
96
108
120
132
128
91
95
107
95
107
119
131
127
90
94
106
94
106
118
130
126
89
93
105
93
105
117
129
125
88
92
104
92
104
116
128
124
87
91
103
91
103
115
127
123
86
90
102
90
102
114
126
122
85
89
101
89
101
113
125
121
84
88
100
88
100
112
124
120
83
87
99
87
99
111
123
119
82
86
98
86
98
110
122
118
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
108
109
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
72
84
96
108
71
83
95
107
70
82
94
106
69
81
93
105
68
80
92
104
67
79
91
103
66
78
90
102
65
77
89
101
64
76
88
100
63
75
87
99
62
74
86
98
61
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
62
48
60
72
84
98
63
47
59
71
83
99
64
46
58
70
82
99
65
45
57
69
81
98
66
44
56
68
80
97
67
43
55
67
79
96
68
42
54
66
78
95
81
80
79
78
77
76
75
74
73
72
71
70
69
41
53
65
77
94
93
92
91
90
89
88
87
86
85
84
83
82
40
52
64
76
39
51
63
75
38
50
62
74
37
49
61
73
36
48
60
72
35
36
37
38
39
40
41
42
43
44
45
46
47
59
60
61
62
63
64
65
66
67
68
69
70
71
34
46
58
72
33
45
57
73
32
44
56
74
31
43
55
75
30
42
54
76
29
41
53
77
52
51
50
49
48
47
46
45
44
43
42
41
40
28
40
52
78
65
64
63
62
61
60
59
58
57
56
55
54
53
39
27
39
51
79
66
38
26
38
50
80
67
37
25
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
81
68
36
24
24
38
82
69
35
23
23
39
83
70
34
22
22
40
82
71
33
32
31
30
29
28
27
26
25
24
23
22
21
21
41
81
82
82
81
80
79
78
77
76
75
74
73
72
34
20
20
42
80
73
35
19
19
43
79
74
36
18
18
44
78
75
37
17
17
45
77
76
38
16
16
46
76
77
39
15
15
47
75
78
40
14
14
48
74
79
41
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
80
42
0
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
120
132
112
124
144
132
119
131
111
123
143
131
118
130
110
122
142
130
117
129
109
121
141
129
116
128
108
120
140
128
115
127
107
119
139
127
114
126
106
118
138
126
113
125
105
117
137
125
112
124
104
116
136
124
111
123
103
115
135
123
110
122
102
114
134
122
109
121
101
89
90
91
92
93
94
95
96
97
98
99
100
101
113
133
121
108
120
100
88
100
112
132
120
107
119
99
87
99
111
131
119
106
118
98
86
98
110
130
118
105
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
117
104
108
96
84
96
108
120
116
103
107
95
83
95
107
119
115
102
106
94
82
94
106
118
114
101
105
93
81
93
105
117
113
100
104
92
80
92
104
116
112
99
103
91
79
91
103
115
111
98
102
90
78
90
102
114
110
97
101
89
77
89
101
113
109
96
100
88
76
88
100
112
108
95
99
87
75
87
99
111
107
94
98
86
74
86
98
110
106
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
84
72
84
96
83
71
83
95
82
70
82
94
81
69
81
93
80
68
80
92
79
67
79
91
78
66
78
90
77
65
77
89
76
64
76
88
75
63
75
87
74
62
74
86
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
74
60
48
60
72
86
75
59
47
59
71
87
76
58
46
58
70
88
77
57
45
57
69
89
78
56
44
56
68
90
79
55
43
55
67
91
80
54
42
54
66
92
93
92
91
90
89
88
87
86
85
84
83
82
81
53
41
53
65
93
94
95
96
97
98
99
99
98
97
96
95
94
52
40
52
64
51
39
51
63
50
38
50
62
49
37
49
61
48
36
48
60
47
46
45
44
43
42
41
40
39
38
37
36
35
47
48
49
50
51
52
53
54
55
56
57
58
59
46
34
46
60
45
33
45
61
44
32
44
62
43
31
43
63
42
30
42
64
41
29
41
65
64
63
62
61
60
59
58
57
56
55
54
53
52
40
28
40
66
77
76
75
74
73
72
71
70
69
68
67
66
65
51
39
27
39
67
78
50
38
26
38
68
79
49
37
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
69
80
48
36
12
26
70
81
47
35
11
27
69
81
46
34
10
28
68
80
45
44
43
42
41
40
39
38
37
36
35
34
33
9
29
67
68
69
70
71
72
73
74
75
76
77
78
79
46
32
8
30
66
80
47
31
7
31
65
81
48
30
6
32
64
82
49
29
5
33
63
83
50
28
4
34
62
84
51
27
3
35
61
85
52
26
2
36
60
86
53
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
87
54
14
0
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
132
144
124
112
132
120
131
143
123
111
131
119
130
142
122
110
130
118
129
141
121
109
129
117
128
140
120
108
128
116
127
139
119
107
127
115
126
138
118
106
126
114
125
137
117
105
125
113
124
136
116
104
124
112
123
135
115
103
123
111
122
134
114
102
122
110
121
133
113
101
100
99
98
97
96
95
94
93
92
91
90
89
101
121
109
120
132
112
100
88
100
120
108
119
131
111
99
87
99
119
107
118
130
110
98
86
98
118
106
117
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
105
116
120
108
96
84
96
108
104
115
119
107
95
83
95
107
103
114
118
106
94
82
94
106
102
113
117
105
93
81
93
105
101
112
116
104
92
80
92
104
100
111
115
103
91
79
91
103
99
110
114
102
90
78
90
102
98
109
113
101
89
77
89
101
97
108
112
100
88
76
88
100
96
107
111
99
87
75
87
99
95
106
110
98
86
74
86
98
94
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
96
84
72
84
95
83
71
83
94
82
70
82
93
81
69
81
92
80
68
80
91
79
67
79
90
78
66
78
89
77
65
77
88
76
64
76
87
75
63
75
86
74
62
74
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
61
62
63
64
65
66
67
68
69
70
71
72
73
86
72
60
48
60
74
87
71
59
47
59
75
88
70
58
46
58
76
89
69
57
45
57
77
90
68
56
44
56
78
91
67
55
43
55
79
92
66
54
42
54
80
94
95
96
97
98
99
99
98
97
96
95
94
93
65
53
41
53
81
82
83
84
85
86
87
88
89
90
91
92
93
64
52
40
52
63
51
39
51
62
50
38
50
61
49
37
49
60
48
36
48
59
58
57
56
55
54
53
52
51
50
49
48
47
35
36
37
38
39
40
41
42
43
44
45
46
47
60
46
34
46
61
45
33
45
62
44
32
44
63
43
31
43
64
42
30
42
65
41
29
41
65
66
67
68
69
70
71
72
73
74
75
76
77
66
40
28
40
52
53
54
55
56
57
58
59
60
61
62
63
64
78
67
39
27
39
51
79
68
38
26
38
50
80
69
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
37
49
81
70
26
12
36
48
81
69
27
11
35
47
80
68
28
10
34
46
79
78
77
76
75
74
73
72
71
70
69
68
67
29
9
33
34
35
36
37
38
39
40
41
42
43
44
45
80
66
30
8
32
46
81
65
31
7
31
47
82
64
32
6
30
48
83
63
33
5
29
49
84
62
34
4
28
50
85
61
35
3
27
51
86
60
36
2
26
52
87
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
53
88
48
34
0
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
144
156
136
124
120
108
143
155
135
123
119
107
142
154
134
122
118
106
141
153
133
121
117
105
140
152
132
120
116
104
139
151
131
119
115
103
138
150
130
118
114
102
137
149
129
117
113
101
136
148
128
116
112
100
135
147
127
115
111
99
134
146
126
114
110
98
133
145
125
113
112
111
110
109
108
107
106
105
104
103
102
101
113
109
97
132
144
124
112
100
112
108
96
131
143
123
111
99
111
107
95
130
142
122
110
98
110
106
94
129
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
109
97
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
93
128
132
120
108
96
108
96
92
127
131
119
107
95
107
95
91
126
130
118
106
94
106
94
90
125
129
117
105
93
105
93
89
124
128
116
104
92
104
92
88
123
127
115
103
91
103
91
87
122
126
114
102
90
102
90
86
121
125
113
101
89
101
89
85
120
124
112
100
88
100
88
84
119
123
111
99
87
99
87
83
118
122
110
98
86
98
86
82
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
109
108
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
108
96
84
72
107
95
83
71
106
94
82
70
105
93
81
69
104
92
80
68
103
91
79
67
102
90
78
66
101
89
77
65
100
88
76
64
99
87
75
63
98
86
74
62
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
98
84
72
60
48
62
99
83
71
59
47
63
99
82
70
58
46
64
98
81
69
57
45
65
97
80
68
56
44
66
96
79
67
55
43
67
95
78
66
54
42
68
82
83
84
85
86
87
88
89
90
91
92
93
94
77
65
53
41
69
70
71
72
73
74
75
76
77
78
79
80
81
76
64
52
40
75
63
51
39
74
62
50
38
73
61
49
37
72
60
48
36
71
70
69
68
67
66
65
64
63
62
61
60
59
47
46
45
44
43
42
41
40
39
38
37
36
35
72
58
46
34
73
57
45
33
74
56
44
32
75
55
43
31
76
54
42
30
77
53
41
29
53
54
55
56
57
58
59
60
61
62
63
64
65
78
52
40
28
40
41
42
43
44
45
46
47
48
49
50
51
52
66
79
51
39
27
39
67
80
50
38
26
38
68
81
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
25
37
69
82
38
24
24
36
70
83
39
23
23
35
71
82
40
22
22
34
72
73
74
75
76
77
78
79
80
81
82
82
81
41
21
21
22
23
24
25
26
27
28
29
30
31
32
33
73
80
42
20
20
34
74
79
43
19
19
35
75
78
44
18
18
36
76
77
45
17
17
37
77
76
46
16
16
38
78
75
47
15
15
39
79
74
48
14
14
40
80
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
41
81
62
48
14
0
148
149
150
151
152
153
154
155
156
157
158
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
147
156
136
124
120
108
146
155
135
123
119
107
145
154
134
122
118
106
144
153
133
121
117
105
143
152
132
120
116
104
142
151
131
119
115
103
141
150
130
118
114
102
140
149
129
117
113
101
139
148
128
116
112
100
138
147
127
115
111
99
137
146
126
114
110
98
136
145
125
113
112
111
110
109
108
107
106
105
104
103
102
101
113
109
97
135
144
124
112
100
112
108
96
134
143
123
111
99
111
107
95
133
142
122
110
98
110
106
94
132
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
109
97
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
93
131
134
120
108
96
108
96
92
130
134
119
107
95
107
95
91
129
133
118
106
94
106
94
90
128
132
117
105
93
105
93
89
127
131
116
104
92
104
92
88
126
130
115
103
91
103
91
87
125
129
114
102
90
102
90
86
124
128
113
101
89
101
89
85
123
127
112
100
88
100
88
84
122
126
111
99
87
99
87
83
121
125
110
98
86
98
86
82
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
109
108
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
111
96
84
72
110
95
83
71
109
94
82
70
108
93
81
69
107
92
80
68
106
91
79
67
105
90
78
66
104
89
77
65
103
88
76
64
102
87
75
63
101
86
74
62
100
99
98
97
96
95
94
93
92
91
90
89
88
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
50
51
52
53
54
55
56
57
58
59
60
61
101
87
98
60
48
62
100
86
98
59
47
63
99
85
97
58
46
64
98
84
96
57
45
65
97
83
95
56
44
66
96
82
94
55
43
67
95
81
93
54
42
68
82
83
84
85
86
87
88
89
90
91
92
93
94
80
92
53
41
69
70
71
72
73
74
75
76
77
78
79
80
81
79
91
52
40
78
90
51
39
77
89
50
38
76
88
49
37
75
87
48
36
74
75
76
77
78
79
80
81
82
83
84
85
86
47
46
45
44
43
42
41
40
39
38
37
36
35
73
87
48
34
72
88
49
33
71
89
50
32
70
90
51
31
69
91
52
30
68
92
53
29
29
30
31
32
33
34
35
36
37
38
39
40
41
67
92
54
28
16
17
18
19
20
21
22
23
24
25
26
27
28
42
66
91
55
27
15
43
65
90
56
26
14
44
64
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
66
65
64
63
62
61
60
59
58
57
25
13
45
63
78
64
24
12
46
62
79
63
23
11
47
61
80
62
22
10
48
49
50
51
52
53
54
55
56
57
58
59
60
81
61
21
20
19
18
17
16
15
14
13
12
11
10
9
49
61
82
60
22
8
50
62
83
59
23
7
51
63
84
58
24
6
52
64
85
57
25
5
53
65
86
56
26
4
54
66
87
55
27
3
55
67
88
54
28
2
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
1
57
81
88
54
42
0
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
159
158
157
156
155
154
153
152
151
150
149
109
121
125
137
157
148
108
120
124
136
156
147
107
119
123
135
155
146
106
118
122
134
154
145
105
117
121
133
153
144
104
116
120
132
152
143
103
115
119
131
151
142
102
114
118
130
150
141
101
113
117
129
149
140
100
112
116
128
148
139
99
111
115
127
147
138
98
110
114
102
103
104
105
106
107
108
109
110
111
112
113
114
126
146
137
97
109
113
101
113
125
145
136
96
108
112
100
112
124
144
135
95
107
111
99
111
123
143
134
94
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
98
110
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
133
93
97
109
97
109
121
135
132
92
96
108
96
108
120
135
131
91
95
107
95
107
119
134
130
90
94
106
94
106
118
133
129
89
93
105
93
105
117
132
128
88
92
104
92
104
116
131
127
87
91
103
91
103
115
130
126
86
90
102
90
102
114
129
125
85
89
101
89
101
113
128
124
84
88
100
88
100
112
127
123
83
87
99
87
99
111
126
122
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
109
110
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
73
85
97
112
72
84
96
111
71
83
95
110
70
82
94
109
69
81
93
108
68
80
92
107
67
79
91
106
66
78
90
105
65
77
89
104
64
76
88
103
63
75
87
102
62
61
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
89
90
91
92
93
94
95
96
97
98
99
100
101
63
49
61
99
88
102
64
48
60
99
87
101
65
47
59
98
86
100
66
46
58
97
85
99
67
45
57
96
84
98
68
44
56
95
83
97
69
43
55
94
82
96
82
81
80
79
78
77
76
75
74
73
72
71
70
42
54
93
81
95
94
93
92
91
90
89
88
87
86
85
84
83
41
53
92
80
40
52
91
79
39
51
90
78
38
50
89
77
37
49
88
76
36
37
38
39
40
41
42
43
44
45
46
47
48
87
86
85
84
83
82
81
80
79
78
77
76
75
35
49
88
74
34
50
89
73
33
51
90
72
32
52
91
71
31
53
92
70
30
54
93
69
29
28
27
26
25
24
23
22
21
20
19
18
17
29
55
93
68
42
41
40
39
38
37
36
35
34
33
32
31
30
16
28
56
92
67
43
15
27
57
91
66
44
14
26
58
59
60
61
62
63
64
65
66
67
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
65
45
13
25
65
79
64
46
12
24
64
80
63
47
11
23
63
81
62
48
10
11
12
13
14
15
16
17
18
19
20
21
22
62
82
61
60
59
58
57
56
55
54
53
52
51
50
49
9
23
61
83
62
50
8
24
60
84
63
51
7
25
59
85
64
52
6
26
58
86
65
53
5
27
57
87
66
54
4
28
56
88
67
55
3
29
55
89
68
56
2
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
1
43
55
89
82
58
0
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
109
121
125
137
157
145
108
120
124
136
156
144
107
119
123
135
155
143
106
118
122
134
154
142
105
117
121
133
153
141
104
116
120
132
152
140
103
115
119
131
151
139
102
114
118
130
150
138
101
113
117
129
149
137
100
112
116
128
148
136
99
111
115
127
147
135
98
110
114
102
103
104
105
106
107
108
109
110
111
112
113
114
126
146
134
97
109
113
101
113
125
145
133
96
108
112
100
112
124
144
132
95
107
111
99
111
123
143
131
94
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
98
110
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
130
93
97
109
97
109
121
133
129
92
96
108
96
108
120
132
128
91
95
107
95
107
119
131
127
90
94
106
94
106
118
130
126
89
93
105
93
105
117
129
125
88
92
104
92
104
116
128
124
87
91
103
91
103
115
127
123
86
90
102
90
102
114
126
122
85
89
101
89
101
113
125
121
84
88
100
88
100
112
124
120
83
87
99
87
99
111
123
119
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
109
110
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
73
85
97
109
72
84
96
108
71
83
95
107
70
82
94
106
69
81
93
105
68
80
92
104
67
79
91
103
66
78
90
102
65
77
89
101
64
76
88
100
63
75
87
99
62
61
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
63
49
61
73
85
99
64
48
60
72
84
100
65
47
59
71
83
100
66
46
58
70
82
99
67
45
57
69
81
98
68
44
56
68
80
97
69
43
55
67
79
96
82
81
80
79
78
77
76
75
74
73
72
71
70
42
54
66
78
95
94
93
92
91
90
89
88
87
86
85
84
83
41
53
65
77
40
52
64
76
39
51
63
75
38
50
62
74
37
49
61
73
36
37
38
39
40
41
42
43
44
45
46
47
48
60
61
62
63
64
65
66
67
68
69
70
71
72
35
47
59
73
34
46
58
74
33
45
57
75
32
44
56
76
31
43
55
77
30
42
54
78
53
52
51
50
49
48
47
46
45
44
43
42
41
29
41
53
79
66
65
64
63
62
61
60
59
58
57
56
55
54
40
28
40
52
80
67
39
27
39
51
81
68
38
26
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
82
69
37
25
25
39
83
70
36
24
24
40
84
71
35
23
23
41
83
72
34
33
32
31
30
29
28
27
26
25
24
23
22
22
42
82
83
83
82
81
80
79
78
77
76
75
74
73
35
21
21
43
81
74
36
20
20
44
80
75
37
19
19
45
79
76
38
18
18
46
78
77
39
17
17
47
77
78
40
16
16
48
76
79
41
15
15
49
75
80
42
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
81
43
1
15
49
63
82
44
0
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
121
133
113
125
145
133
120
132
112
124
144
132
119
131
111
123
143
131
118
130
110
122
142
130
117
129
109
121
141
129
116
128
108
120
140
128
115
127
107
119
139
127
114
126
106
118
138
126
113
125
105
117
137
125
112
124
104
116
136
124
111
123
103
115
135
123
110
122
102
90
91
92
93
94
95
96
97
98
99
100
101
102
114
134
122
109
121
101
89
101
113
133
121
108
120
100
88
100
112
132
120
107
119
99
87
99
111
131
119
106
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
118
105
109
97
85
97
109
121
117
104
108
96
84
96
108
120
116
103
107
95
83
95
107
119
115
102
106
94
82
94
106
118
114
101
105
93
81
93
105
117
113
100
104
92
80
92
104
116
112
99
103
91
79
91
103
115
111
98
102
90
78
90
102
114
110
97
101
89
77
89
101
113
109
96
100
88
76
88
100
112
108
95
99
87
75
87
99
111
107
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
85
73
85
97
84
72
84
96
83
71
83
95
82
70
82
94
81
69
81
93
80
68
80
92
79
67
79
91
78
66
78
90
77
65
77
89
76
64
76
88
75
63
75
87
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
75
61
49
61
73
87
76
60
48
60
72
88
77
59
47
59
71
89
78
58
46
58
70
90
79
57
45
57
69
91
80
56
44
56
68
92
81
55
43
55
67
93
94
93
92
91
90
89
88
87
86
85
84
83
82
54
42
54
66
94
95
96
97
98
99
100
100
99
98
97
96
95
53
41
53
65
52
40
52
64
51
39
51
63
50
38
50
62
49
37
49
61
48
47
46
45
44
43
42
41
40
39
38
37
36
48
49
50
51
52
53
54
55
56
57
58
59
60
47
35
47
61
46
34
46
62
45
33
45
63
44
32
44
64
43
31
43
65
42
30
42
66
65
64
63
62
61
60
59
58
57
56
55
54
53
41
29
41
67
78
77
76
75
74
73
72
71
70
69
68
67
66
52
40
28
40
68
79
51
39
27
39
69
80
50
38
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
70
81
49
37
13
27
69
81
48
36
12
28
68
80
47
35
11
29
67
79
46
45
44
43
42
41
40
39
38
37
36
35
34
10
30
66
67
68
69
70
71
72
73
74
75
76
77
78
47
33
9
31
65
79
48
32
8
32
64
80
49
31
7
33
63
81
50
30
6
34
62
82
51
29
5
35
61
83
52
28
4
36
60
84
53
27
3
35
59
85
54
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
86
55
15
1
33
47
87
56
16
0
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
133
145
125
113
133
121
132
144
124
112
132
120
131
143
123
111
131
119
130
142
122
110
130
118
129
141
121
109
129
117
128
140
120
108
128
116
127
139
119
107
127
115
126
138
118
106
126
114
125
137
117
105
125
113
124
136
116
104
124
112
123
135
115
103
123
111
122
134
114
102
101
100
99
98
97
96
95
94
93
92
91
90
102
122
110
121
133
113
101
89
101
121
109
120
132
112
100
88
100
120
108
119
131
111
99
87
99
119
107
118
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
106
117
121
109
97
85
97
109
105
116
120
108
96
84
96
108
104
115
119
107
95
83
95
107
103
114
118
106
94
82
94
106
102
113
117
105
93
81
93
105
101
112
116
104
92
80
92
104
100
111
115
103
91
79
91
103
99
110
114
102
90
78
90
102
98
109
113
101
89
77
89
101
97
108
112
100
88
76
88
100
96
107
111
99
87
75
87
99
95
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
97
85
73
85
96
84
72
84
95
83
71
83
94
82
70
82
93
81
69
81
92
80
68
80
91
79
67
79
90
78
66
78
89
77
65
77
88
76
64
76
87
75
63
75
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
62
63
64
65
66
67
68
69
70
71
72
73
74
87
73
61
49
61
75
88
72
60
48
60
76
89
71
59
47
59
77
90
70
58
46
58
78
91
69
57
45
57
79
92
68
56
44
56
80
93
67
55
43
55
81
95
96
97
98
99
100
100
99
98
97
96
95
94
66
54
42
54
82
83
84
85
86
87
88
89
90
91
92
93
94
65
53
41
53
64
52
40
52
63
51
39
51
62
50
38
50
61
49
37
49
60
59
58
57
56
55
54
53
52
51
50
49
48
36
37
38
39
40
41
42
43
44
45
46
47
48
61
47
35
47
62
46
34
46
63
45
33
45
64
44
32
44
65
43
31
43
66
42
30
42
66
67
68
69
70
71
72
73
74
75
76
77
78
67
41
29
41
53
54
55
56
57
58
59
60
61
62
63
64
65
79
68
40
28
40
52
80
69
39
27
39
51
81
70
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
38
50
81
69
27
13
37
49
80
68
28
12
36
48
79
67
29
11
35
47
78
77
76
75
74
73
72
71
70
69
68
67
66
30
10
34
35
36
37
38
39
40
41
42
43
44
45
46
79
65
31
9
33
47
80
64
32
8
32
48
81
63
33
7
31
49
82
62
34
6
30
50
83
61
35
5
29
51
84
60
36
4
28
52
85
59
35
3
27
53
86
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
54
87
47
33
1
15
55
88
48
32
0
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
145
157
137
125
121
109
144
156
136
124
120
108
143
155
135
123
119
107
142
154
134
122
118
106
141
153
133
121
117
105
140
152
132
120
116
104
139
151
131
119
115
103
138
150
130
118
114
102
137
149
129
117
113
101
136
148
128
116
112
100
135
147
127
115
111
99
134
146
126
114
113
112
111
110
109
108
107
106
105
104
103
102
114
110
98
133
145
125
113
101
113
109
97
132
144
124
112
100
112
108
96
131
143
123
111
99
111
107
95
130
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
110
98
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
94
129
133
121
109
97
109
97
93
128
132
120
108
96
108
96
92
127
131
119
107
95
107
95
91
126
130
118
106
94
106
94
90
125
129
117
105
93
105
93
89
124
128
116
104
92
104
92
88
123
127
115
103
91
103
91
87
122
126
114
102
90
102
90
86
121
125
113
101
89
101
89
85
120
124
112
100
88
100
88
84
119
123
111
99
87
99
87
83
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
110
109
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
109
97
85
73
108
96
84
72
107
95
83
71
106
94
82
70
105
93
81
69
104
92
80
68
103
91
79
67
102
90
78
66
101
89
77
65
100
88
76
64
99
87
75
63
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
99
85
73
61
49
63
100
84
72
60
48
64
100
83
71
59
47
65
99
82
70
58
46
66
98
81
69
57
45
67
97
80
68
56
44
68
96
79
67
55
43
69
83
84
85
86
87
88
89
90
91
92
93
94
95
78
66
54
42
70
71
72
73
74
75
76
77
78
79
80
81
82
77
65
53
41
76
64
52
40
75
63
51
39
74
62
50
38
73
61
49
37
72
71
70
69
68
67
66
65
64
63
62
61
60
48
47
46
45
44
43
42
41
40
39
38
37
36
73
59
47
35
74
58
46
34
75
57
45
33
76
56
44
32
77
55
43
31
78
54
42
30
54
55
56
57
58
59
60
61
62
63
64
65
66
79
53
41
29
41
42
43
44
45
46
47
48
49
50
51
52
53
67
80
52
40
28
40
68
81
51
39
27
39
69
82
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
26
38
70
83
39
25
25
37
71
84
40
24
24
36
72
83
41
23
23
35
73
74
75
76
77
78
79
80
81
82
83
83
82
42
22
22
23
24
25
26
27
28
29
30
31
32
33
34
74
81
43
21
21
35
75
80
44
20
20
36
76
79
45
19
19
37
77
78
46
18
18
38
78
77
47
17
17
39
79
76
48
16
16
40
80
75
49
15
15
41
81
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
42
82
63
49
15
1
43
83
64
48
16
0
149
150
151
152
153
154
155
156
157
158
159
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
148
157
137
125
121
109
147
156
136
124
120
108
146
155
135
123
119
107
145
154
134
122
118
106
144
153
133
121
117
105
143
152
132
120
116
104
142
151
131
119
115
103
141
150
130
118
114
102
140
149
129
117
113
101
139
148
128
116
112
100
138
147
127
115
111
99
137
146
126
114
113
112
111
110
109
108
107
106
105
104
103
102
114
110
98
136
145
125
113
101
113
109
97
135
144
124
112
100
112
108
96
134
143
123
111
99
111
107
95
133
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
110
98
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
94
132
135
121
109
97
109
97
93
131
135
120
108
96
108
96
92
130
134
119
107
95
107
95
91
129
133
118
106
94
106
94
90
128
132
117
105
93
105
93
89
127
131
116
104
92
104
92
88
126
130
115
103
91
103
91
87
125
129
114
102
90
102
90
86
124
128
113
101
89
101
89
85
123
127
112
100
88
100
88
84
122
126
111
99
87
99
87
83
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
110
109
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
112
97
85
73
111
96
84
72
110
95
83
71
109
94
82
70
108
93
81
69
107
92
80
68
106
91
79
67
105
90
78
66
104
89
77
65
103
88
76
64
102
87
75
63
101
100
99
98
97
96
95
94
93
92
91
90
89
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
51
52
53
54
55
56
57
58
59
60
61
62
102
88
99
61
49
63
101
87
99
60
48
64
100
86
98
59
47
65
99
85
97
58
46
66
98
84
96
57
45
67
97
83
95
56
44
68
96
82
94
55
43
69
83
84
85
86
87
88
89
90
91
92
93
94
95
81
93
54
42
70
71
72
73
74
75
76
77
78
79
80
81
82
80
92
53
41
79
91
52
40
78
90
51
39
77
89
50
38
76
88
49
37
75
76
77
78
79
80
81
82
83
84
85
86
87
48
47
46
45
44
43
42
41
40
39
38
37
36
74
88
49
35
73
89
50
34
72
90
51
33
71
91
52
32
70
92
53
31
69
93
54
30
30
31
32
33
34
35
36
37
38
39
40
41
42
68
93
55
29
17
18
19
20
21
22
23
24
25
26
27
28
29
43
67
92
56
28
16
44
66
91
57
27
15
45
65
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
67
66
65
64
63
62
61
60
59
58
26
14
46
64
79
65
25
13
47
63
80
64
24
12
48
62
81
63
23
11
49
50
51
52
53
54
55
56
57
58
59
60
61
82
62
22
21
20
19
18
17
16
15
14
13
12
11
10
50
62
83
61
23
9
51
63
84
60
24
8
52
64
85
59
25
7
53
65
86
58
26
6
54
66
87
57
27
5
55
67
88
56
28
4
56
68
89
55
29
3
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
2
58
82
89
55
43
1
59
83
88
56
44
0
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
160
159
158
157
156
155
154
153
152
151
150
110
122
126
138
158
149
109
121
125
137
157
148
108
120
124
136
156
147
107
119
123
135
155
146
106
118
122
134
154
145
105
117
121
133
153
144
104
116
120
132
152
143
103
115
119
131
151
142
102
114
118
130
150
141
101
113
117
129
149
140
100
112
116
128
148
139
99
111
115
103
104
105
106
107
108
109
110
111
112
113
114
115
127
147
138
98
110
114
102
114
126
146
137
97
109
113
101
113
125
145
136
96
108
112
100
112
124
144
135
95
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
99
111
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
134
94
98
110
98
110
122
136
133
93
97
109
97
109
121
136
132
92
96
108
96
108
120
135
131
91
95
107
95
107
119
134
130
90
94
106
94
106
118
133
129
89
93
105
93
105
117
132
128
88
92
104
92
104
116
131
127
87
91
103
91
103
115
130
126
86
90
102
90
102
114
129
125
85
89
101
89
101
113
128
124
84
88
100
88
100
112
127
123
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
110
111
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
74
86
98
113
73
85
97
112
72
84
96
111
71
83
95
110
70
82
94
109
69
81
93
108
68
80
92
107
67
79
91
106
66
78
90
105
65
77
89
104
64
76
88
103
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
90
91
92
93
94
95
96
97
98
99
100
101
102
64
50
62
100
89
103
65
49
61
100
88
102
66
48
60
99
87
101
67
47
59
98
86
100
68
46
58
97
85
99
69
45
57
96
84
98
70
44
56
95
83
97
83
82
81
80
79
78
77
76
75
74
73
72
71
43
55
94
82
96
95
94
93
92
91
90
89
88
87
86
85
84
42
54
93
81
41
53
92
80
40
52
91
79
39
51
90
78
38
50
89
77
37
38
39
40
41
42
43
44
45
46
47
48
49
88
87
86
85
84
83
82
81
80
79
78
77
76
36
50
89
75
35
51
90
74
34
52
91
73
33
53
92
72
32
54
93
71
31
55
94
70
30
29
28
27
26
25
24
23
22
21
20
19
18
30
56
94
69
43
42
41
40
39
38
37
36
35
34
33
32
31
17
29
57
93
68
44
16
28
58
92
67
45
15
27
59
60
61
62
63
64
65
66
67
68
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
66
46
14
26
66
80
65
47
13
25
65
81
64
48
12
24
64
82
63
49
11
12
13
14
15
16
17
18
19
20
21
22
23
63
83
62
61
60
59
58
57
56
55
54
53
52
51
50
10
24
62
84
63
51
9
25
61
85
64
52
8
26
60
86
65
53
7
27
59
87
66
54
6
28
58
88
67
55
5
29
57
89
68
56
4
30
56
90
69
57
3
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
2
44
56
90
83
59
1
43
57
89
84
60
0
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
110
122
126
138
158
146
109
121
125
137
157
145
108
120
124
136
156
144
107
119
123
135
155
143
106
118
122
134
154
142
105
117
121
133
153
141
104
116
120
132
152
140
103
115
119
131
151
139
102
114
118
130
150
138
101
113
117
129
149
137
100
112
116
128
148
136
99
111
115
103
104
105
106
107
108
109
110
111
112
113
114
115
127
147
135
98
110
114
102
114
126
146
134
97
109
113
101
113
125
145
133
96
108
112
100
112
124
144
132
95
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
99
111
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
131
94
98
110
98
110
122
134
130
93
97
109
97
109
121
133
129
92
96
108
96
108
120
132
128
91
95
107
95
107
119
131
127
90
94
106
94
106
118
130
126
89
93
105
93
105
117
129
125
88
92
104
92
104
116
128
124
87
91
103
91
103
115
127
123
86
90
102
90
102
114
126
122
85
89
101
89
101
113
125
121
84
88
100
88
100
112
124
120
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
110
111
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
74
86
98
110
73
85
97
109
72
84
96
108
71
83
95
107
70
82
94
106
69
81
93
105
68
80
92
104
67
79
91
103
66
78
90
102
65
77
89
101
64
76
88
100
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
64
50
62
74
86
100
65
49
61
73
85
101
66
48
60
72
84
101
67
47
59
71
83
100
68
46
58
70
82
99
69
45
57
69
81
98
70
44
56
68
80
97
83
82
81
80
79
78
77
76
75
74
73
72
71
43
55
67
79
96
95
94
93
92
91
90
89
88
87
86
85
84
42
54
66
78
41
53
65
77
40
52
64
76
39
51
63
75
38
50
62
74
37
38
39
40
41
42
43
44
45
46
47
48
49
61
62
63
64
65
66
67
68
69
70
71
72
73
36
48
60
74
35
47
59
75
34
46
58
76
33
45
57
77
32
44
56
78
31
43
55
79
54
53
52
51
50
49
48
47
46
45
44
43
42
30
42
54
80
67
66
65
64
63
62
61
60
59
58
57
56
55
41
29
41
53
81
68
40
28
40
52
82
69
39
27
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
83
70
38
26
26
40
84
71
37
25
25
41
85
72
36
24
24
42
84
73
35
34
33
32
31
30
29
28
27
26
25
24
23
23
43
83
84
84
83
82
81
80
79
78
77
76
75
74
36
22
22
44
82
75
37
21
21
45
81
76
38
20
20
46
80
77
39
19
19
47
79
78
40
18
18
48
78
79
41
17
17
49
77
80
42
16
16
50
76
81
43
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
82
44
2
16
50
64
83
43
1
17
49
65
84
42
0
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
122
134
114
126
146
134
121
133
113
125
145
133
120
132
112
124
144
132
119
131
111
123
143
131
118
130
110
122
142
130
117
129
109
121
141
129
116
128
108
120
140
128
115
127
107
119
139
127
114
126
106
118
138
126
113
125
105
117
137
125
112
124
104
116
136
124
111
123
103
91
92
93
94
95
96
97
98
99
100
101
102
103
115
135
123
110
122
102
90
102
114
134
122
109
121
101
89
101
113
133
121
108
120
100
88
100
112
132
120
107
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
119
106
110
98
86
98
110
122
118
105
109
97
85
97
109
121
117
104
108
96
84
96
108
120
116
103
107
95
83
95
107
119
115
102
106
94
82
94
106
118
114
101
105
93
81
93
105
117
113
100
104
92
80
92
104
116
112
99
103
91
79
91
103
115
111
98
102
90
78
90
102
114
110
97
101
89
77
89
101
113
109
96
100
88
76
88
100
112
108
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
86
74
86
98
85
73
85
97
84
72
84
96
83
71
83
95
82
70
82
94
81
69
81
93
80
68
80
92
79
67
79
91
78
66
78
90
77
65
77
89
76
64
76
88
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
76
62
50
62
74
88
77
61
49
61
73
89
78
60
48
60
72
90
79
59
47
59
71
91
80
58
46
58
70
92
81
57
45
57
69
93
82
56
44
56
68
94
95
94
93
92
91
90
89
88
87
86
85
84
83
55
43
55
67
95
96
97
98
99
100
101
101
100
99
98
97
96
54
42
54
66
53
41
53
65
52
40
52
64
51
39
51
63
50
38
50
62
49
48
47
46
45
44
43
42
41
40
39
38
37
49
50
51
52
53
54
55
56
57
58
59
60
61
48
36
48
62
47
35
47
63
46
34
46
64
45
33
45
65
44
32
44
66
43
31
43
67
66
65
64
63
62
61
60
59
58
57
56
55
54
42
30
42
68
79
78
77
76
75
74
73
72
71
70
69
68
67
53
41
29
41
69
80
52
40
28
40
70
81
51
39
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
69
81
50
38
14
28
68
80
49
37
13
29
67
79
48
36
12
30
66
78
47
46
45
44
43
42
41
40
39
38
37
36
35
11
31
65
66
67
68
69
70
71
72
73
74
75
76
77
48
34
10
32
64
78
49
33
9
33
63
79
50
32
8
34
62
80
51
31
7
35
61
81
52
30
6
36
60
82
53
29
5
35
59
83
54
28
4
34
58
84
55
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
85
56
16
2
32
46
86
57
17
1
31
47
87
58
18
0
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
134
146
126
114
134
122
133
145
125
113
133
121
132
144
124
112
132
120
131
143
123
111
131
119
130
142
122
110
130
118
129
141
121
109
129
117
128
140
120
108
128
116
127
139
119
107
127
115
126
138
118
106
126
114
125
137
117
105
125
113
124
136
116
104
124
112
123
135
115
103
102
101
100
99
98
97
96
95
94
93
92
91
103
123
111
122
134
114
102
90
102
122
110
121
133
113
101
89
101
121
109
120
132
112
100
88
100
120
108
119
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
107
118
122
110
98
86
98
110
106
117
121
109
97
85
97
109
105
116
120
108
96
84
96
108
104
115
119
107
95
83
95
107
103
114
118
106
94
82
94
106
102
113
117
105
93
81
93
105
101
112
116
104
92
80
92
104
100
111
115
103
91
79
91
103
99
110
114
102
90
78
90
102
98
109
113
101
89
77
89
101
97
108
112
100
88
76
88
100
96
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
98
86
74
86
97
85
73
85
96
84
72
84
95
83
71
83
94
82
70
82
93
81
69
81
92
80
68
80
91
79
67
79
90
78
66
78
89
77
65
77
88
76
64
76
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
63
64
65
66
67
68
69
70
71
72
73
74
75
88
74
62
50
62
76
89
73
61
49
61
77
90
72
60
48
60
78
91
71
59
47
59
79
92
70
58
46
58
80
93
69
57
45
57
81
94
68
56
44
56
82
96
97
98
99
100
101
101
100
99
98
97
96
95
67
55
43
55
83
84
85
86
87
88
89
90
91
92
93
94
95
66
54
42
54
65
53
41
53
64
52
40
52
63
51
39
51
62
50
38
50
61
60
59
58
57
56
55
54
53
52
51
50
49
37
38
39
40
41
42
43
44
45
46
47
48
49
62
48
36
48
63
47
35
47
64
46
34
46
65
45
33
45
66
44
32
44
67
43
31
43
67
68
69
70
71
72
73
74
75
76
77
78
79
68
42
30
42
54
55
56
57
58
59
60
61
62
63
64
65
66
80
69
41
29
41
53
81
70
40
28
40
52
81
69
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
39
51
80
68
28
14
38
50
79
67
29
13
37
49
78
66
30
12
36
48
77
76
75
74
73
72
71
70
69
68
67
66
65
31
11
35
36
37
38
39
40
41
42
43
44
45
46
47
78
64
32
10
34
48
79
63
33
9
33
49
80
62
34
8
32
50
81
61
35
7
31
51
82
60
36
6
30
52
83
59
35
5
29
53
84
58
34
4
28
54
85
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
55
86
46
32
2
16
56
87
47
31
1
17
57
88
48
30
0
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
146
158
138
126
122
110
145
157
137
125
121
109
144
156
136
124
120
108
143
155
135
123
119
107
142
154
134
122
118
106
141
153
133
121
117
105
140
152
132
120
116
104
139
151
131
119
115
103
138
150
130
118
114
102
137
149
129
117
113
101
136
148
128
116
112
100
135
147
127
115
114
113
112
111
110
109
108
107
106
105
104
103
115
111
99
134
146
126
114
102
114
110
98
133
145
125
113
101
113
109
97
132
144
124
112
100
112
108
96
131
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
111
99
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
95
130
134
122
110
98
110
98
94
129
133
121
109
97
109
97
93
128
132
120
108
96
108
96
92
127
131
119
107
95
107
95
91
126
130
118
106
94
106
94
90
125
129
117
105
93
105
93
89
124
128
116
104
92
104
92
88
123
127
115
103
91
103
91
87
122
126
114
102
90
102
90
86
121
125
113
101
89
101
89
85
120
124
112
100
88
100
88
84
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
111
110
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
110
98
86
74
109
97
85
73
108
96
84
72
107
95
83
71
106
94
82
70
105
93
81
69
104
92
80
68
103
91
79
67
102
90
78
66
101
89
77
65
100
88
76
64
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
100
86
74
62
50
64
101
85
73
61
49
65
101
84
72
60
48
66
100
83
71
59
47
67
99
82
70
58
46
68
98
81
69
57
45
69
97
80
68
56
44
70
84
85
86
87
88
89
90
91
92
93
94
95
96
79
67
55
43
71
72
73
74
75
76
77
78
79
80
81
82
83
78
66
54
42
77
65
53
41
76
64
52
40
75
63
51
39
74
62
50
38
73
72
71
70
69
68
67
66
65
64
63
62
61
49
48
47
46
45
44
43
42
41
40
39
38
37
74
60
48
36
75
59
47
35
76
58
46
34
77
57
45
33
78
56
44
32
79
55
43
31
55
56
57
58
59
60
61
62
63
64
65
66
67
80
54
42
30
42
43
44
45
46
47
48
49
50
51
52
53
54
68
81
53
41
29
41
69
82
52
40
28
40
70
83
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
27
39
71
84
40
26
26
38
72
85
41
25
25
37
73
84
42
24
24
36
74
75
76
77
78
79
80
81
82
83
84
84
83
43
23
23
24
25
26
27
28
29
30
31
32
33
34
35
75
82
44
22
22
36
76
81
45
21
21
37
77
80
46
20
20
38
78
79
47
19
19
39
79
78
48
18
18
40
80
77
49
17
17
41
81
76
50
16
16
42
82
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
43
83
64
50
16
2
44
84
65
49
17
1
43
85
66
48
18
0
150
151
152
153
154
155
156
157
158
159
160
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
149
158
138
126
122
110
148
157
137
125
121
109
147
156
136
124
120
108
146
155
135
123
119
107
145
154
134
122
118
106
144
153
133
121
117
105
143
152
132
120
116
104
142
151
131
119
115
103
141
150
130
118
114
102
140
149
129
117
113
101
139
148
128
116
112
100
138
147
127
115
114
113
112
111
110
109
108
107
106
105
104
103
115
111
99
137
146
126
114
102
114
110
98
136
145
125
113
101
113
109
97
135
144
124
112
100
112
108
96
134
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
111
99
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
95
133
136
122
110
98
110
98
94
132
136
121
109
97
109
97
93
131
135
120
108
96
108
96
92
130
134
119
107
95
107
95
91
129
133
118
106
94
106
94
90
128
132
117
105
93
105
93
89
127
131
116
104
92
104
92
88
126
130
115
103
91
103
91
87
125
129
114
102
90
102
90
86
124
128
113
101
89
101
89
85
123
127
112
100
88
100
88
84
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
111
110
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
113
98
86
74
112
97
85
73
111
96
84
72
110
95
83
71
109
94
82
70
108
93
81
69
107
92
80
68
106
91
79
67
105
90
78
66
104
89
77
65
103
88
76
64
102
101
100
99
98
97
96
95
94
93
92
91
90
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
52
53
54
55
56
57
58
59
60
61
62
63
103
89
100
62
50
64
102
88
100
61
49
65
101
87
99
60
48
66
100
86
98
59
47
67
99
85
97
58
46
68
98
84
96
57
45
69
97
83
95
56
44
70
84
85
86
87
88
89
90
91
92
93
94
95
96
82
94
55
43
71
72
73
74
75
76
77
78
79
80
81
82
83
81
93
54
42
80
92
53
41
79
91
52
40
78
90
51
39
77
89
50
38
76
77
78
79
80
81
82
83
84
85
86
87
88
49
48
47
46
45
44
43
42
41
40
39
38
37
75
89
50
36
74
90
51
35
73
91
52
34
72
92
53
33
71
93
54
32
70
94
55
31
31
32
33
34
35
36
37
38
39
40
41
42
43
69
94
56
30
18
19
20
21
22
23
24
25
26
27
28
29
30
44
68
93
57
29
17
45
67
92
58
28
16
46
66
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
68
67
66
65
64
63
62
61
60
59
27
15
47
65
80
66
26
14
48
64
81
65
25
13
49
63
82
64
24
12
50
51
52
53
54
55
56
57
58
59
60
61
62
83
63
23
22
21
20
19
18
17
16
15
14
13
12
11
51
63
84
62
24
10
52
64
85
61
25
9
53
65
86
60
26
8
54
66
87
59
27
7
55
67
88
58
28
6
56
68
89
57
29
5
57
69
90
56
30
4
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
3
59
83
90
56
44
2
60
84
89
57
43
1
61
85
88
58
42
0
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
161
160
159
158
157
156
155
154
153
152
151
111
123
127
139
159
150
110
122
126
138
158
149
109
121
125
137
157
148
108
120
124
136
156
147
107
119
123
135
155
146
106
118
122
134
154
145
105
117
121
133
153
144
104
116
120
132
152
143
103
115
119
131
151
142
102
114
118
130
150
141
101
113
117
129
149
140
100
112
116
104
105
106
107
108
109
110
111
112
113
114
115
116
128
148
139
99
111
115
103
115
127
147
138
98
110
114
102
114
126
146
137
97
109
113
101
113
125
145
136
96
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
100
112
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
135
95
99
111
99
111
123
137
134
94
98
110
98
110
122
137
133
93
97
109
97
109
121
136
132
92
96
108
96
108
120
135
131
91
95
107
95
107
119
134
130
90
94
106
94
106
118
133
129
89
93
105
93
105
117
132
128
88
92
104
92
104
116
131
127
87
91
103
91
103
115
130
126
86
90
102
90
102
114
129
125
85
89
101
89
101
113
128
124
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
111
112
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
75
87
99
114
74
86
98
113
73
85
97
112
72
84
96
111
71
83
95
110
70
82
94
109
69
81
93
108
68
80
92
107
67
79
91
106
66
78
90
105
65
77
89
104
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
91
92
93
94
95
96
97
98
99
100
101
102
103
65
51
63
101
90
104
66
50
62
101
89
103
67
49
61
100
88
102
68
48
60
99
87
101
69
47
59
98
86
100
70
46
58
97
85
99
71
45
57
96
84
98
84
83
82
81
80
79
78
77
76
75
74
73
72
44
56
95
83
97
96
95
94
93
92
91
90
89
88
87
86
85
43
55
94
82
42
54
93
81
41
53
92
80
40
52
91
79
39
51
90
78
38
39
40
41
42
43
44
45
46
47
48
49
50
89
88
87
86
85
84
83
82
81
80
79
78
77
37
51
90
76
36
52
91
75
35
53
92
74
34
54
93
73
33
55
94
72
32
56
95
71
31
30
29
28
27
26
25
24
23
22
21
20
19
31
57
95
70
44
43
42
41
40
39
38
37
36
35
34
33
32
18
30
58
94
69
45
17
29
59
93
68
46
16
28
60
61
62
63
64
65
66
67
68
69
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
67
47
15
27
67
81
66
48
14
26
66
82
65
49
13
25
65
83
64
50
12
13
14
15
16
17
18
19
20
21
22
23
24
64
84
63
62
61
60
59
58
57
56
55
54
53
52
51
11
25
63
85
64
52
10
26
62
86
65
53
9
27
61
87
66
54
8
28
60
88
67
55
7
29
59
89
68
56
6
30
58
90
69
57
5
31
57
91
70
58
4
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
3
43
57
91
84
60
2
42
58
90
85
61
1
41
59
89
86
62
0
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
111
123
127
139
159
147
110
122
126
138
158
146
109
121
125
137
157
145
108
120
124
136
156
144
107
119
123
135
155
143
106
118
122
134
154
142
105
117
121
133
153
141
104
116
120
132
152
140
103
115
119
131
151
139
102
114
118
130
150
138
101
113
117
129
149
137
100
112
116
104
105
106
107
108
109
110
111
112
113
114
115
116
128
148
136
99
111
115
103
115
127
147
135
98
110
114
102
114
126
146
134
97
109
113
101
113
125
145
133
96
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
100
112
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
132
95
99
111
99
111
123
135
131
94
98
110
98
110
122
134
130
93
97
109
97
109
121
133
129
92
96
108
96
108
120
132
128
91
95
107
95
107
119
131
127
90
94
106
94
106
118
130
126
89
93
105
93
105
117
129
125
88
92
104
92
104
116
128
124
87
91
103
91
103
115
127
123
86
90
102
90
102
114
126
122
85
89
101
89
101
113
125
121
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
111
112
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
75
87
99
111
74
86
98
110
73
85
97
109
72
84
96
108
71
83
95
107
70
82
94
106
69
81
93
105
68
80
92
104
67
79
91
103
66
78
90
102
65
77
89
101
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
65
51
63
75
87
101
66
50
62
74
86
102
67
49
61
73
85
102
68
48
60
72
84
101
69
47
59
71
83
100
70
46
58
70
82
99
71
45
57
69
81
98
84
83
82
81
80
79
78
77
76
75
74
73
72
44
56
68
80
97
96
95
94
93
92
91
90
89
88
87
86
85
43
55
67
79
42
54
66
78
41
53
65
77
40
52
64
76
39
51
63
75
38
39
40
41
42
43
44
45
46
47
48
49
50
62
63
64
65
66
67
68
69
70
71
72
73
74
37
49
61
75
36
48
60
76
35
47
59
77
34
46
58
78
33
45
57
79
32
44
56
80
55
54
53
52
51
50
49
48
47
46
45
44
43
31
43
55
81
68
67
66
65
64
63
62
61
60
59
58
57
56
42
30
42
54
82
69
41
29
41
53
83
70
40
28
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
84
71
39
27
27
41
85
72
38
26
26
42
86
73
37
25
25
43
85
74
36
35
34
33
32
31
30
29
28
27
26
25
24
24
44
84
85
85
84
83
82
81
80
79
78
77
76
75
37
23
23
45
83
76
38
22
22
46
82
77
39
21
21
47
81
78
40
20
20
48
80
79
41
19
19
49
79
80
42
18
18
50
78
81
43
17
17
51
77
82
44
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
83
43
3
17
51
65
84
42
2
18
50
66
85
41
1
19
49
67
86
40
0
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
123
135
115
127
147
135
122
134
114
126
146
134
121
133
113
125
145
133
120
132
112
124
144
132
119
131
111
123
143
131
118
130
110
122
142
130
117
129
109
121
141
129
116
128
108
120
140
128
115
127
107
119
139
127
114
126
106
118
138
126
113
125
105
117
137
125
112
124
104
92
93
94
95
96
97
98
99
100
101
102
103
104
116
136
124
111
123
103
91
103
115
135
123
110
122
102
90
102
114
134
122
109
121
101
89
101
113
133
121
108
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
120
107
111
99
87
99
111
123
119
106
110
98
86
98
110
122
118
105
109
97
85
97
109
121
117
104
108
96
84
96
108
120
116
103
107
95
83
95
107
119
115
102
106
94
82
94
106
118
114
101
105
93
81
93
105
117
113
100
104
92
80
92
104
116
112
99
103
91
79
91
103
115
111
98
102
90
78
90
102
114
110
97
101
89
77
89
101
113
109
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
87
75
87
99
86
74
86
98
85
73
85
97
84
72
84
96
83
71
83
95
82
70
82
94
81
69
81
93
80
68
80
92
79
67
79
91
78
66
78
90
77
65
77
89
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
77
63
51
63
75
89
78
62
50
62
74
90
79
61
49
61
73
91
80
60
48
60
72
92
81
59
47
59
71
93
82
58
46
58
70
94
83
57
45
57
69
95
96
95
94
93
92
91
90
89
88
87
86
85
84
56
44
56
68
96
97
98
99
100
101
102
102
101
100
99
98
97
55
43
55
67
54
42
54
66
53
41
53
65
52
40
52
64
51
39
51
63
50
49
48
47
46
45
44
43
42
41
40
39
38
50
51
52
53
54
55
56
57
58
59
60
61
62
49
37
49
63
48
36
48
64
47
35
47
65
46
34
46
66
45
33
45
67
44
32
44
68
67
66
65
64
63
62
61
60
59
58
57
56
55
43
31
43
69
80
79
78
77
76
75
74
73
72
71
70
69
68
54
42
30
42
70
81
53
41
29
41
69
81
52
40
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
68
80
51
39
15
29
67
79
50
38
14
30
66
78
49
37
13
31
65
77
48
47
46
45
44
43
42
41
40
39
38
37
36
12
32
64
65
66
67
68
69
70
71
72
73
74
75
76
49
35
11
33
63
77
50
34
10
34
62
78
51
33
9
35
61
79
52
32
8
36
60
80
53
31
7
35
59
81
54
30
6
34
58
82
55
29
5
33
57
83
56
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
84
57
17
3
31
45
85
58
18
2
30
46
86
59
19
1
29
47
87
60
20
0
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
135
147
127
115
135
123
134
146
126
114
134
122
133
145
125
113
133
121
132
144
124
112
132
120
131
143
123
111
131
119
130
142
122
110
130
118
129
141
121
109
129
117
128
140
120
108
128
116
127
139
119
107
127
115
126
138
118
106
126
114
125
137
117
105
125
113
124
136
116
104
103
102
101
100
99
98
97
96
95
94
93
92
104
124
112
123
135
115
103
91
103
123
111
122
134
114
102
90
102
122
110
121
133
113
101
89
101
121
109
120
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
108
119
123
111
99
87
99
111
107
118
122
110
98
86
98
110
106
117
121
109
97
85
97
109
105
116
120
108
96
84
96
108
104
115
119
107
95
83
95
107
103
114
118
106
94
82
94
106
102
113
117
105
93
81
93
105
101
112
116
104
92
80
92
104
100
111
115
103
91
79
91
103
99
110
114
102
90
78
90
102
98
109
113
101
89
77
89
101
97
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
99
87
75
87
98
86
74
86
97
85
73
85
96
84
72
84
95
83
71
83
94
82
70
82
93
81
69
81
92
80
68
80
91
79
67
79
90
78
66
78
89
77
65
77
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
64
65
66
67
68
69
70
71
72
73
74
75
76
89
75
63
51
63
77
90
74
62
50
62
78
91
73
61
49
61
79
92
72
60
48
60
80
93
71
59
47
59
81
94
70
58
46
58
82
95
69
57
45
57
83
97
98
99
100
101
102
102
101
100
99
98
97
96
68
56
44
56
84
85
86
87
88
89
90
91
92
93
94
95
96
67
55
43
55
66
54
42
54
65
53
41
53
64
52
40
52
63
51
39
51
62
61
60
59
58
57
56
55
54
53
52
51
50
38
39
40
41
42
43
44
45
46
47
48
49
50
63
49
37
49
64
48
36
48
65
47
35
47
66
46
34
46
67
45
33
45
68
44
32
44
68
69
70
71
72
73
74
75
76
77
78
79
80
69
43
31
43
55
56
57
58
59
60
61
62
63
64
65
66
67
81
70
42
30
42
54
81
69
41
29
41
53
80
68
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
40
52
79
67
29
15
39
51
78
66
30
14
38
50
77
65
31
13
37
49
76
75
74
73
72
71
70
69
68
67
66
65
64
32
12
36
37
38
39
40
41
42
43
44
45
46
47
48
77
63
33
11
35
49
78
62
34
10
34
50
79
61
35
9
33
51
80
60
36
8
32
52
81
59
35
7
31
53
82
58
34
6
30
54
83
57
33
5
29
55
84
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
56
85
45
31
3
17
57
86
46
30
2
18
58
87
47
29
1
19
59
88
48
28
0
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
147
159
139
127
123
111
146
158
138
126
122
110
145
157
137
125
121
109
144
156
136
124
120
108
143
155
135
123
119
107
142
154
134
122
118
106
141
153
133
121
117
105
140
152
132
120
116
104
139
151
131
119
115
103
138
150
130
118
114
102
137
149
129
117
113
101
136
148
128
116
115
114
113
112
111
110
109
108
107
106
105
104
116
112
100
135
147
127
115
103
115
111
99
134
146
126
114
102
114
110
98
133
145
125
113
101
113
109
97
132
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
112
100
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
96
131
135
123
111
99
111
99
95
130
134
122
110
98
110
98
94
129
133
121
109
97
109
97
93
128
132
120
108
96
108
96
92
127
131
119
107
95
107
95
91
126
130
118
106
94
106
94
90
125
129
117
105
93
105
93
89
124
128
116
104
92
104
92
88
123
127
115
103
91
103
91
87
122
126
114
102
90
102
90
86
121
125
113
101
89
101
89
85
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
112
111
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
111
99
87
75
110
98
86
74
109
97
85
73
108
96
84
72
107
95
83
71
106
94
82
70
105
93
81
69
104
92
80
68
103
91
79
67
102
90
78
66
101
89
77
65
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
101
87
75
63
51
65
102
86
74
62
50
66
102
85
73
61
49
67
101
84
72
60
48
68
100
83
71
59
47
69
99
82
70
58
46
70
98
81
69
57
45
71
85
86
87
88
89
90
91
92
93
94
95
96
97
80
68
56
44
72
73
74
75
76
77
78
79
80
81
82
83
84
79
67
55
43
78
66
54
42
77
65
53
41
76
64
52
40
75
63
51
39
74
73
72
71
70
69
68
67
66
65
64
63
62
50
49
48
47
46
45
44
43
42
41
40
39
38
75
61
49
37
76
60
48
36
77
59
47
35
78
58
46
34
79
57
45
33
80
56
44
32
56
57
58
59
60
61
62
63
64
65
66
67
68
81
55
43
31
43
44
45
46
47
48
49
50
51
52
53
54
55
69
82
54
42
30
42
70
83
53
41
29
41
71
84
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
28
40
72
85
41
27
27
39
73
86
42
26
26
38
74
85
43
25
25
37
75
76
77
78
79
80
81
82
83
84
85
85
84
44
24
24
25
26
27
28
29
30
31
32
33
34
35
36
76
83
45
23
23
37
77
82
46
22
22
38
78
81
47
21
21
39
79
80
48
20
20
40
80
79
49
19
19
41
81
78
50
18
18
42
82
77
51
17
17
43
83
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
44
84
65
51
17
3
43
85
66
50
18
2
42
86
67
49
19
1
41
87
68
48
20
0
151
152
153
154
155
156
157
158
159
160
161
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
150
159
139
127
123
111
149
158
138
126
122
110
148
157
137
125
121
109
147
156
136
124
120
108
146
155
135
123
119
107
145
154
134
122
118
106
144
153
133
121
117
105
143
152
132
120
116
104
142
151
131
119
115
103
141
150
130
118
114
102
140
149
129
117
113
101
139
148
128
116
115
114
113
112
111
110
109
108
107
106
105
104
116
112
100
138
147
127
115
103
115
111
99
137
146
126
114
102
114
110
98
136
145
125
113
101
113
109
97
135
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
112
100
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
96
134
137
123
111
99
111
99
95
133
137
122
110
98
110
98
94
132
136
121
109
97
109
97
93
131
135
120
108
96
108
96
92
130
134
119
107
95
107
95
91
129
133
118
106
94
106
94
90
128
132
117
105
93
105
93
89
127
131
116
104
92
104
92
88
126
130
115
103
91
103
91
87
125
129
114
102
90
102
90
86
124
128
113
101
89
101
89
85
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
112
111
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
114
99
87
75
113
98
86
74
112
97
85
73
111
96
84
72
110
95
83
71
109
94
82
70
108
93
81
69
107
92
80
68
106
91
79
67
105
90
78
66
104
89
77
65
103
102
101
100
99
98
97
96
95
94
93
92
91
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
53
54
55
56
57
58
59
60
61
62
63
64
104
90
101
63
51
65
103
89
101
62
50
66
102
88
100
61
49
67
101
87
99
60
48
68
100
86
98
59
47
69
99
85
97
58
46
70
98
84
96
57
45
71
85
86
87
88
89
90
91
92
93
94
95
96
97
83
95
56
44
72
73
74
75
76
77
78
79
80
81
82
83
84
82
94
55
43
81
93
54
42
80
92
53
41
79
91
52
40
78
90
51
39
77
78
79
80
81
82
83
84
85
86
87
88
89
50
49
48
47
46
45
44
43
42
41
40
39
38
76
90
51
37
75
91
52
36
74
92
53
35
73
93
54
34
72
94
55
33
71
95
56
32
32
33
34
35
36
37
38
39
40
41
42
43
44
70
95
57
31
19
20
21
22
23
24
25
26
27
28
29
30
31
45
69
94
58
30
18
46
68
93
59
29
17
47
67
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
69
68
67
66
65
64
63
62
61
60
28
16
48
66
81
67
27
15
49
65
82
66
26
14
50
64
83
65
25
13
51
52
53
54
55
56
57
58
59
60
61
62
63
84
64
24
23
22
21
20
19
18
17
16
15
14
13
12
52
64
85
63
25
11
53
65
86
62
26
10
54
66
87
61
27
9
55
67
88
60
28
8
56
68
89
59
29
7
57
69
90
58
30
6
58
70
91
57
31
5
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
4
60
84
91
57
43
3
61
85
90
58
42
2
62
86
89
59
41
1
63
87
88
60
40
0
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
112
124
128
140
160
151
111
123
127
139
159
150
110
122
126
138
158
149
109
121
125
137
157
148
108
120
124
136
156
147
107
119
123
135
155
146
106
118
122
134
154
145
105
117
121
133
153
144
104
116
120
132
152
143
103
115
119
131
151
142
102
114
118
130
150
141
101
113
117
105
106
107
108
109
110
111
112
113
114
115
116
117
129
149
140
100
112
116
104
116
128
148
139
99
111
115
103
115
127
147
138
98
110
114
102
114
126
146
137
97
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
101
113
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
136
96
100
112
100
112
124
138
135
95
99
111
99
111
123
138
134
94
98
110
98
110
122
137
133
93
97
109
97
109
121
136
132
92
96
108
96
108
120
135
131
91
95
107
95
107
119
134
130
90
94
106
94
106
118
133
129
89
93
105
93
105
117
132
128
88
92
104
92
104
116
131
127
87
91
103
91
103
115
130
126
86
90
102
90
102
114
129
125
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
76
88
100
115
75
87
99
114
74
86
98
113
73
85
97
112
72
84
96
111
71
83
95
110
70
82
94
109
69
81
93
108
68
80
92
107
67
79
91
106
66
78
90
105
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
92
93
94
95
96
97
98
99
100
101
102
103
104
66
52
64
102
91
105
67
51
63
102
90
104
68
50
62
101
89
103
69
49
61
100
88
102
70
48
60
99
87
101
71
47
59
98
86
100
72
46
58
97
85
99
85
84
83
82
81
80
79
78
77
76
75
74
73
45
57
96
84
98
97
96
95
94
93
92
91
90
89
88
87
86
44
56
95
83
43
55
94
82
42
54
93
81
41
53
92
80
40
52
91
79
39
40
41
42
43
44
45
46
47
48
49
50
51
90
89
88
87
86
85
84
83
82
81
80
79
78
38
52
91
77
37
53
92
76
36
54
93
75
35
55
94
74
34
56
95
73
33
57
95
72
32
31
30
29
28
27
26
25
24
23
22
21
20
32
58
94
71
45
44
43
42
41
40
39
38
37
36
35
34
33
19
31
59
93
70
46
18
30
60
92
69
47
17
29
61
62
63
64
65
66
67
68
69
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
68
48
16
28
66
80
67
49
15
27
65
81
66
50
14
26
64
82
65
51
13
14
15
16
17
18
19
20
21
22
23
24
25
63
83
64
63
62
61
60
59
58
57
56
55
54
53
52
12
26
62
84
65
53
11
27
61
85
66
54
10
28
60
86
67
55
9
29
59
87
68
56
8
30
58
88
69
57
7
31
57
89
70
58
6
32
56
90
71
59
5
33
34
35
36
37
38
39
40
41
42
43
44
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
4
42
56
90
85
61
3
41
57
89
86
62
2
40
58
88
87
63
1
39
59
87
88
64
0
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
112
124
128
140
160
148
111
123
127
139
159
147
110
122
126
138
158
146
109
121
125
137
157
145
108
120
124
136
156
144
107
119
123
135
155
143
106
118
122
134
154
142
105
117
121
133
153
141
104
116
120
132
152
140
103
115
119
131
151
139
102
114
118
130
150
138
101
113
117
105
106
107
108
109
110
111
112
113
114
115
116
117
129
149
137
100
112
116
104
116
128
148
136
99
111
115
103
115
127
147
135
98
110
114
102
114
126
146
134
97
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
101
113
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
133
96
100
112
100
112
124
136
132
95
99
111
99
111
123
135
131
94
98
110
98
110
122
134
130
93
97
109
97
109
121
133
129
92
96
108
96
108
120
132
128
91
95
107
95
107
119
131
127
90
94
106
94
106
118
130
126
89
93
105
93
105
117
129
125
88
92
104
92
104
116
128
124
87
91
103
91
103
115
127
123
86
90
102
90
102
114
126
122
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
76
88
100
112
75
87
99
111
74
86
98
110
73
85
97
109
72
84
96
108
71
83
95
107
70
82
94
106
69
81
93
105
68
80
92
104
67
79
91
103
66
78
90
102
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
66
52
64
76
88
102
67
51
63
75
87
103
68
50
62
74
86
103
69
49
61
73
85
102
70
48
60
72
84
101
71
47
59
71
83
100
72
46
58
70
82
99
85
84
83
82
81
80
79
78
77
76
75
74
73
45
57
69
81
98
97
96
95
94
93
92
91
90
89
88
87
86
44
56
68
80
43
55
67
79
42
54
66
78
41
53
65
77
40
52
64
76
39
40
41
42
43
44
45
46
47
48
49
50
51
63
64
65
66
67
68
69
70
71
72
73
74
75
38
50
62
76
37
49
61
77
36
48
60
78
35
47
59
79
34
46
58
80
33
45
57
81
56
55
54
53
52
51
50
49
48
47
46
45
44
32
44
56
82
69
68
67
66
65
64
63
62
61
60
59
58
57
43
31
43
55
83
70
42
30
42
54
84
71
41
29
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
85
72
40
28
28
42
86
73
39
27
27
43
87
74
38
26
26
44
86
75
37
36
35
34
33
32
31
30
29
28
27
26
25
25
45
85
86
86
85
84
83
82
81
80
79
78
77
76
38
24
24
46
84
77
39
23
23
47
83
78
40
22
22
48
82
79
41
21
21
49
81
80
42
20
20
50
80
81
43
19
19
51
79
82
44
18
18
52
78
83
43
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
84
42
4
18
52
66
85
41
3
19
51
67
86
40
2
20
50
68
87
39
1
21
49
69
88
38
0
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
124
136
116
128
148
136
123
135
115
127
147
135
122
134
114
126
146
134
121
133
113
125
145
133
120
132
112
124
144
132
119
131
111
123
143
131
118
130
110
122
142
130
117
129
109
121
141
129
116
128
108
120
140
128
115
127
107
119
139
127
114
126
106
118
138
126
113
125
105
93
94
95
96
97
98
99
100
101
102
103
104
105
117
137
125
112
124
104
92
104
116
136
124
111
123
103
91
103
115
135
123
110
122
102
90
102
114
134
122
109
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
121
108
112
100
88
100
112
124
120
107
111
99
87
99
111
123
119
106
110
98
86
98
110
122
118
105
109
97
85
97
109
121
117
104
108
96
84
96
108
120
116
103
107
95
83
95
107
119
115
102
106
94
82
94
106
118
114
101
105
93
81
93
105
117
113
100
104
92
80
92
104
116
112
99
103
91
79
91
103
115
111
98
102
90
78
90
102
114
110
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
88
76
88
100
87
75
87
99
86
74
86
98
85
73
85
97
84
72
84
96
83
71
83
95
82
70
82
94
81
69
81
93
80
68
80
92
79
67
79
91
78
66
78
90
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
78
64
52
64
76
90
79
63
51
63
75
91
80
62
50
62
74
92
81
61
49
61
73
93
82
60
48
60
72
94
83
59
47
59
71
95
84
58
46
58
70
96
97
96
95
94
93
92
91
90
89
88
87
86
85
57
45
57
69
97
98
99
100
101
102
103
103
102
101
100
99
98
56
44
56
68
55
43
55
67
54
42
54
66
53
41
53
65
52
40
52
64
51
50
49
48
47
46
45
44
43
42
41
40
39
51
52
53
54
55
56
57
58
59
60
61
62
63
50
38
50
64
49
37
49
65
48
36
48
66
47
35
47
67
46
34
46
68
45
33
45
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
32
44
70
81
80
79
78
77
76
75
74
73
72
71
70
69
55
43
31
43
69
81
54
42
30
42
68
80
53
41
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
67
79
52
40
16
30
66
78
51
39
15
31
65
77
50
38
14
32
64
76
49
48
47
46
45
44
43
42
41
40
39
38
37
13
33
63
64
65
66
67
68
69
70
71
72
73
74
75
50
36
12
34
62
76
51
35
11
35
61
77
52
34
10
36
60
78
53
33
9
35
59
79
54
32
8
34
58
80
55
31
7
33
57
81
56
30
6
32
56
82
57
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
83
58
18
4
30
44
84
59
19
3
29
45
85
60
20
2
28
46
86
61
21
1
27
47
87
60
22
0
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
136
148
128
116
136
124
135
147
127
115
135
123
134
146
126
114
134
122
133
145
125
113
133
121
132
144
124
112
132
120
131
143
123
111
131
119
130
142
122
110
130
118
129
141
121
109
129
117
128
140
120
108
128
116
127
139
119
107
127
115
126
138
118
106
126
114
125
137
117
105
104
103
102
101
100
99
98
97
96
95
94
93
105
125
113
124
136
116
104
92
104
124
112
123
135
115
103
91
103
123
111
122
134
114
102
90
102
122
110
121
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
109
120
124
112
100
88
100
112
108
119
123
111
99
87
99
111
107
118
122
110
98
86
98
110
106
117
121
109
97
85
97
109
105
116
120
108
96
84
96
108
104
115
119
107
95
83
95
107
103
114
118
106
94
82
94
106
102
113
117
105
93
81
93
105
101
112
116
104
92
80
92
104
100
111
115
103
91
79
91
103
99
110
114
102
90
78
90
102
98
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
100
88
76
88
99
87
75
87
98
86
74
86
97
85
73
85
96
84
72
84
95
83
71
83
94
82
70
82
93
81
69
81
92
80
68
80
91
79
67
79
90
78
66
78
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
65
66
67
68
69
70
71
72
73
74
75
76
77
90
76
64
52
64
78
91
75
63
51
63
79
92
74
62
50
62
80
93
73
61
49
61
81
94
72
60
48
60
82
95
71
59
47
59
83
96
70
58
46
58
84
98
99
100
101
102
103
103
102
101
100
99
98
97
69
57
45
57
85
86
87
88
89
90
91
92
93
94
95
96
97
68
56
44
56
67
55
43
55
66
54
42
54
65
53
41
53
64
52
40
52
63
62
61
60
59
58
57
56
55
54
53
52
51
39
40
41
42
43
44
45
46
47
48
49
50
51
64
50
38
50
65
49
37
49
66
48
36
48
67
47
35
47
68
46
34
46
69
45
33
45
69
70
71
72
73
74
75
76
77
78
79
80
81
70
44
32
44
56
57
58
59
60
61
62
63
64
65
66
67
68
81
69
43
31
43
55
80
68
42
30
42
54
79
67
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
41
53
78
66
30
16
40
52
77
65
31
15
39
51
76
64
32
14
38
50
75
74
73
72
71
70
69
68
67
66
65
64
63
33
13
37
38
39
40
41
42
43
44
45
46
47
48
49
76
62
34
12
36
50
77
61
35
11
35
51
78
60
36
10
34
52
79
59
35
9
33
53
80
58
34
8
32
54
81
57
33
7
31
55
82
56
32
6
30
56
83
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
57
84
44
30
4
18
58
85
45
29
3
19
59
86
46
28
2
20
60
87
47
27
1
21
61
86
48
26
0
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
148
160
140
128
124
112
147
159
139
127
123
111
146
158
138
126
122
110
145
157
137
125
121
109
144
156
136
124
120
108
143
155
135
123
119
107
142
154
134
122
118
106
141
153
133
121
117
105
140
152
132
120
116
104
139
151
131
119
115
103
138
150
130
118
114
102
137
149
129
117
116
115
114
113
112
111
110
109
108
107
106
105
117
113
101
136
148
128
116
104
116
112
100
135
147
127
115
103
115
111
99
134
146
126
114
102
114
110
98
133
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
113
101
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
97
132
136
124
112
100
112
100
96
131
135
123
111
99
111
99
95
130
134
122
110
98
110
98
94
129
133
121
109
97
109
97
93
128
132
120
108
96
108
96
92
127
131
119
107
95
107
95
91
126
130
118
106
94
106
94
90
125
129
117
105
93
105
93
89
124
128
116
104
92
104
92
88
123
127
115
103
91
103
91
87
122
126
114
102
90
102
90
86
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
112
100
88
76
111
99
87
75
110
98
86
74
109
97
85
73
108
96
84
72
107
95
83
71
106
94
82
70
105
93
81
69
104
92
80
68
103
91
79
67
102
90
78
66
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
102
88
76
64
52
66
103
87
75
63
51
67
103
86
74
62
50
68
102
85
73
61
49
69
101
84
72
60
48
70
100
83
71
59
47
71
99
82
70
58
46
72
86
87
88
89
90
91
92
93
94
95
96
97
98
81
69
57
45
73
74
75
76
77
78
79
80
81
82
83
84
85
80
68
56
44
79
67
55
43
78
66
54
42
77
65
53
41
76
64
52
40
75
74
73
72
71
70
69
68
67
66
65
64
63
51
50
49
48
47
46
45
44
43
42
41
40
39
76
62
50
38
77
61
49
37
78
60
48
36
79
59
47
35
80
58
46
34
81
57
45
33
57
58
59
60
61
62
63
64
65
66
67
68
69
82
56
44
32
44
45
46
47
48
49
50
51
52
53
54
55
56
70
83
55
43
31
43
71
84
54
42
30
42
72
85
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
29
41
73
86
42
28
28
40
74
87
43
27
27
39
75
86
44
26
26
38
76
77
78
79
80
81
82
83
84
85
86
86
85
45
25
25
26
27
28
29
30
31
32
33
34
35
36
37
77
84
46
24
24
38
78
83
47
23
23
39
79
82
48
22
22
40
80
81
49
21
21
41
81
80
50
20
20
42
82
79
51
19
19
43
83
78
52
18
18
44
84
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
43
85
66
52
18
4
42
86
67
51
19
3
41
87
68
50
20
2
40
88
69
49
21
1
39
89
70
48
22
0
152
153
154
155
156
157
158
159
160
161
162
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
151
160
140
128
124
112
150
159
139
127
123
111
149
158
138
126
122
110
148
157
137
125
121
109
147
156
136
124
120
108
146
155
135
123
119
107
145
154
134
122
118
106
144
153
133
121
117
105
143
152
132
120
116
104
142
151
131
119
115
103
141
150
130
118
114
102
140
149
129
117
116
115
114
113
112
111
110
109
108
107
106
105
117
113
101
139
148
128
116
104
116
112
100
138
147
127
115
103
115
111
99
137
146
126
114
102
114
110
98
136
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
113
101
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
97
135
138
124
112
100
112
100
96
134
138
123
111
99
111
99
95
133
137
122
110
98
110
98
94
132
136
121
109
97
109
97
93
131
135
120
108
96
108
96
92
130
134
119
107
95
107
95
91
129
133
118
106
94
106
94
90
128
132
117
105
93
105
93
89
127
131
116
104
92
104
92
88
126
130
115
103
91
103
91
87
125
129
114
102
90
102
90
86
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
115
100
88
76
114
99
87
75
113
98
86
74
112
97
85
73
111
96
84
72
110
95
83
71
109
94
82
70
108
93
81
69
107
92
80
68
106
91
79
67
105
90
78
66
104
103
102
101
100
99
98
97
96
95
94
93
92
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
54
55
56
57
58
59
60
61
62
63
64
65
105
91
102
64
52
66
104
90
102
63
51
67
103
89
101
62
50
68
102
88
100
61
49
69
101
87
99
60
48
70
100
86
98
59
47
71
99
85
97
58
46
72
86
87
88
89
90
91
92
93
94
95
96
97
98
84
96
57
45
73
74
75
76
77
78
79
80
81
82
83
84
85
83
95
56
44
82
94
55
43
81
93
54
42
80
92
53
41
79
91
52
40
78
79
80
81
82
83
84
85
86
87
88
89
90
51
50
49
48
47
46
45
44
43
42
41
40
39
77
91
52
38
76
92
53
37
75
93
54
36
74
94
55
35
73
95
56
34
72
95
57
33
33
34
35
36
37
38
39
40
41
42
43
44
45
71
94
58
32
20
21
22
23
24
25
26
27
28
29
30
31
32
46
70
93
59
31
19
47
69
92
60
30
18
48
68
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
69
68
67
66
65
64
63
62
61
29
17
49
67
80
66
28
16
50
66
81
65
27
15
51
65
82
64
26
14
52
53
54
55
56
57
58
59
60
61
62
63
64
83
63
25
24
23
22
21
20
19
18
17
16
15
14
13
53
65
84
62
26
12
54
66
85
61
27
11
55
67
86
60
28
10
56
68
87
59
29
9
57
69
88
58
30
8
58
70
89
57
31
7
59
71
90
56
32
6
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
44
43
42
41
40
39
38
37
36
35
34
33
5
61
85
90
56
42
4
62
86
89
57
41
3
63
87
88
58
40
2
64
88
87
59
39
1
65
89
86
60
38
0
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
163
162
161
160
159
158
157
156
155
154
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
139
159
150
110
122
126
138
158
149
109
121
125
137
157
148
108
120
124
136
156
147
107
119
123
135
155
146
106
118
122
134
154
145
105
117
121
133
153
144
104
116
120
132
152
143
103
115
119
131
151
142
102
114
118
106
107
108
109
110
111
112
113
114
115
116
117
118
130
150
141
101
113
117
105
117
129
149
140
100
112
116
104
116
128
148
139
99
111
115
103
115
127
147
138
98
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
102
114
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
137
97
101
113
101
113
125
139
136
96
100
112
100
112
124
139
135
95
99
111
99
111
123
138
134
94
98
110
98
110
122
137
133
93
97
109
97
109
121
136
132
92
96
108
96
108
120
135
131
91
95
107
95
107
119
134
130
90
94
106
94
106
118
133
129
89
93
105
93
105
117
132
128
88
92
104
92
104
116
131
127
87
91
103
91
103
115
130
126
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
102
101
100
99
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
113
114
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
77
89
101
116
76
88
100
115
75
87
99
114
74
86
98
113
73
85
97
112
72
84
96
111
71
83
95
110
70
82
94
109
69
81
93
108
68
80
92
107
67
79
91
106
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
93
94
95
96
97
98
99
100
101
102
103
104
105
67
53
65
103
92
106
68
52
64
103
91
105
69
51
63
102
90
104
70
50
62
101
89
103
71
49
61
100
88
102
72
48
60
99
87
101
73
47
59
98
86
100
86
85
84
83
82
81
80
79
78
77
76
75
74
46
58
97
85
99
98
97
96
95
94
93
92
91
90
89
88
87
45
57
96
84
44
56
95
83
43
55
94
82
42
54
93
81
41
53
92
80
40
41
42
43
44
45
46
47
48
49
50
51
52
91
90
89
88
87
86
85
84
83
82
81
80
79
39
53
92
78
38
54
93
77
37
55
94
76
36
56
95
75
35
57
95
74
34
58
94
73
33
32
31
30
29
28
27
26
25
24
23
22
21
33
59
93
72
46
45
44
43
42
41
40
39
38
37
36
35
34
20
32
60
92
71
47
19
31
61
91
70
48
18
30
62
63
64
65
66
67
68
69
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
69
49
17
29
65
79
68
50
16
28
64
80
67
51
15
27
63
81
66
52
14
15
16
17
18
19
20
21
22
23
24
25
26
62
82
65
64
63
62
61
60
59
58
57
56
55
54
53
13
27
61
83
66
54
12
28
60
84
67
55
11
29
59
85
68
56
10
30
58
86
69
57
9
31
57
87
70
58
8
32
56
88
71
59
7
33
55
89
72
60
6
34
35
36
37
38
39
40
41
42
43
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
5
41
55
89
86
62
4
40
56
88
87
63
3
39
57
87
88
64
2
38
58
86
89
65
1
37
59
85
90
66
0
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
139
159
147
110
122
126
138
158
146
109
121
125
137
157
145
108
120
124
136
156
144
107
119
123
135
155
143
106
118
122
134
154
142
105
117
121
133
153
141
104
116
120
132
152
140
103
115
119
131
151
139
102
114
118
106
107
108
109
110
111
112
113
114
115
116
117
118
130
150
138
101
113
117
105
117
129
149
137
100
112
116
104
116
128
148
136
99
111
115
103
115
127
147
135
98
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
102
114
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
99
111
99
111
123
135
131
94
98
110
98
110
122
134
130
93
97
109
97
109
121
133
129
92
96
108
96
108
120
132
128
91
95
107
95
107
119
131
127
90
94
106
94
106
118
130
126
89
93
105
93
105
117
129
125
88
92
104
92
104
116
128
124
87
91
103
91
103
115
127
123
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
102
101
100
99
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
113
114
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
77
89
101
113
76
88
100
112
75
87
99
111
74
86
98
110
73
85
97
109
72
84
96
108
71
83
95
107
70
82
94
106
69
81
93
105
68
80
92
104
67
79
91
103
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
67
53
65
77
89
103
68
52
64
76
88
104
69
51
63
75
87
104
70
50
62
74
86
103
71
49
61
73
85
102
72
48
60
72
84
101
73
47
59
71
83
100
86
85
84
83
82
81
80
79
78
77
76
75
74
46
58
70
82
99
98
97
96
95
94
93
92
91
90
89
88
87
45
57
69
81
44
56
68
80
43
55
67
79
42
54
66
78
41
53
65
77
40
41
42
43
44
45
46
47
48
49
50
51
52
64
65
66
67
68
69
70
71
72
73
74
75
76
39
51
63
77
38
50
62
78
37
49
61
79
36
48
60
80
35
47
59
81
34
46
58
82
57
56
55
54
53
52
51
50
49
48
47
46
45
33
45
57
83
70
69
68
67
66
65
64
63
62
61
60
59
58
44
32
44
56
84
71
43
31
43
55
85
72
42
30
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
86
73
41
29
29
43
87
74
40
28
28
44
88
75
39
27
27
45
87
76
38
37
36
35
34
33
32
31
30
29
28
27
26
26
46
86
87
87
86
85
84
83
82
81
80
79
78
77
39
25
25
47
85
78
40
24
24
48
84
79
41
23
23
49
83
80
42
22
22
50
82
81
43
21
21
51
81
82
44
20
20
52
80
83
43
19
19
53
79
84
42
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
85
41
5
19
53
67
86
40
4
20
52
68
87
39
3
21
51
69
88
38
2
22
50
70
89
37
1
23
49
71
90
36
0
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
125
137
117
129
149
137
124
136
116
128
148
136
123
135
115
127
147
135
122
134
114
126
146
134
121
133
113
125
145
133
120
132
112
124
144
132
119
131
111
123
143
131
118
130
110
122
142
130
117
129
109
121
141
129
116
128
108
120
140
128
115
127
107
119
139
127
114
126
106
94
95
96
97
98
99
100
101
102
103
104
105
106
118
138
126
113
125
105
93
105
117
137
125
112
124
104
92
104
116
136
124
111
123
103
91
103
115
135
123
110
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
122
109
113
101
89
101
113
125
121
108
112
100
88
100
112
124
120
107
111
99
87
99
111
123
119
106
110
98
86
98
110
122
118
105
109
97
85
97
109
121
117
104
108
96
84
96
108
120
116
103
107
95
83
95
107
119
115
102
106
94
82
94
106
118
114
101
105
93
81
93
105
117
113
100
104
92
80
92
104
116
112
99
103
91
79
91
103
115
111
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
89
77
89
101
88
76
88
100
87
75
87
99
86
74
86
98
85
73
85
97
84
72
84
96
83
71
83
95
82
70
82
94
81
69
81
93
80
68
80
92
79
67
79
91
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
79
65
53
65
77
91
80
64
52
64
76
92
81
63
51
63
75
93
82
62
50
62
74
94
83
61
49
61
73
95
84
60
48
60
72
96
85
59
47
59
71
97
98
97
96
95
94
93
92
91
90
89
88
87
86
58
46
58
70
98
99
100
101
102
103
104
104
103
102
101
100
99
57
45
57
69
56
44
56
68
55
43
55
67
54
42
54
66
53
41
53
65
52
51
50
49
48
47
46
45
44
43
42
41
40
52
53
54
55
56
57
58
59
60
61
62
63
64
51
39
51
65
50
38
50
66
49
37
49
67
48
36
48
68
47
35
47
69
46
34
46
70
69
68
67
66
65
64
63
62
61
60
59
58
57
45
33
45
69
81
81
80
79
78
77
76
75
74
73
72
71
70
56
44
32
44
68
80
55
43
31
43
67
79
54
42
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
66
78
53
41
17
31
65
77
52
40
16
32
64
76
51
39
15
33
63
75
50
49
48
47
46
45
44
43
42
41
40
39
38
14
34
62
63
64
65
66
67
68
69
70
71
72
73
74
51
37
13
35
61
75
52
36
12
36
60
76
53
35
11
35
59
77
54
34
10
34
58
78
55
33
9
33
57
79
56
32
8
32
56
80
57
31
7
31
55
81
58
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
82
59
19
5
29
43
83
60
20
4
28
44
84
61
21
3
27
45
85
62
22
2
26
46
86
61
23
1
25
47
85
60
24
0
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
137
149
129
117
137
125
136
148
128
116
136
124
135
147
127
115
135
123
134
146
126
114
134
122
133
145
125
113
133
121
132
144
124
112
132
120
131
143
123
111
131
119
130
142
122
110
130
118
129
141
121
109
129
117
128
140
120
108
128
116
127
139
119
107
127
115
126
138
118
106
105
104
103
102
101
100
99
98
97
96
95
94
106
126
114
125
137
117
105
93
105
125
113
124
136
116
104
92
104
124
112
123
135
115
103
91
103
123
111
122
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
110
121
125
113
101
89
101
113
109
120
124
112
100
88
100
112
108
119
123
111
99
87
99
111
107
118
122
110
98
86
98
110
106
117
121
109
97
85
97
109
105
116
120
108
96
84
96
108
104
115
119
107
95
83
95
107
103
114
118
106
94
82
94
106
102
113
117
105
93
81
93
105
101
112
116
104
92
80
92
104
100
111
115
103
91
79
91
103
99
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
101
89
77
89
100
88
76
88
99
87
75
87
98
86
74
86
97
85
73
85
96
84
72
84
95
83
71
83
94
82
70
82
93
81
69
81
92
80
68
80
91
79
67
79
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
66
67
68
69
70
71
72
73
74
75
76
77
78
91
77
65
53
65
79
92
76
64
52
64
80
93
75
63
51
63
81
94
74
62
50
62
82
95
73
61
49
61
83
96
72
60
48
60
84
97
71
59
47
59
85
99
100
101
102
103
104
104
103
102
101
100
99
98
70
58
46
58
86
87
88
89
90
91
92
93
94
95
96
97
98
69
57
45
57
68
56
44
56
67
55
43
55
66
54
42
54
65
53
41
53
64
63
62
61
60
59
58
57
56
55
54
53
52
40
41
42
43
44
45
46
47
48
49
50
51
52
65
51
39
51
66
50
38
50
67
49
37
49
68
48
36
48
69
47
35
47
70
46
34
46
70
71
72
73
74
75
76
77
78
79
80
81
81
69
45
33
45
57
58
59
60
61
62
63
64
65
66
67
68
69
80
68
44
32
44
56
79
67
43
31
43
55
78
66
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
42
54
77
65
31
17
41
53
76
64
32
16
40
52
75
63
33
15
39
51
74
73
72
71
70
69
68
67
66
65
64
63
62
34
14
38
39
40
41
42
43
44
45
46
47
48
49
50
75
61
35
13
37
51
76
60
36
12
36
52
77
59
35
11
35
53
78
58
34
10
34
54
79
57
33
9
33
55
80
56
32
8
32
56
81
55
31
7
31
57
82
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
58
83
43
29
5
19
59
84
44
28
4
20
60
85
45
27
3
21
61
86
46
26
2
22
62
85
47
25
1
23
61
84
48
24
0
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
123
111
146
158
138
126
122
110
145
157
137
125
121
109
144
156
136
124
120
108
143
155
135
123
119
107
142
154
134
122
118
106
141
153
133
121
117
105
140
152
132
120
116
104
139
151
131
119
115
103
138
150
130
118
117
116
115
114
113
112
111
110
109
108
107
106
118
114
102
137
149
129
117
105
117
113
101
136
148
128
116
104
116
112
100
135
147
127
115
103
115
111
99
134
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
114
102
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
135
123
111
99
111
99
95
130
134
122
110
98
110
98
94
129
133
121
109
97
109
97
93
128
132
120
108
96
108
96
92
127
131
119
107
95
107
95
91
126
130
118
106
94
106
94
90
125
129
117
105
93
105
93
89
124
128
116
104
92
104
92
88
123
127
115
103
91
103
91
87
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
114
113
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
99
100
101
102
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
113
101
89
77
112
100
88
76
111
99
87
75
110
98
86
74
109
97
85
73
108
96
84
72
107
95
83
71
106
94
82
70
105
93
81
69
104
92
80
68
103
91
79
67
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
103
89
77
65
53
67
104
88
76
64
52
68
104
87
75
63
51
69
103
86
74
62
50
70
102
85
73
61
49
71
101
84
72
60
48
72
100
83
71
59
47
73
87
88
89
90
91
92
93
94
95
96
97
98
99
82
70
58
46
74
75
76
77
78
79
80
81
82
83
84
85
86
81
69
57
45
80
68
56
44
79
67
55
43
78
66
54
42
77
65
53
41
76
75
74
73
72
71
70
69
68
67
66
65
64
52
51
50
49
48
47
46
45
44
43
42
41
40
77
63
51
39
78
62
50
38
79
61
49
37
80
60
48
36
81
59
47
35
82
58
46
34
58
59
60
61
62
63
64
65
66
67
68
69
70
83
57
45
33
45
46
47
48
49
50
51
52
53
54
55
56
57
71
84
56
44
32
44
72
85
55
43
31
43
73
86
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
30
42
74
87
43
29
29
41
75
88
44
28
28
40
76
87
45
27
27
39
77
78
79
80
81
82
83
84
85
86
87
87
86
46
26
26
27
28
29
30
31
32
33
34
35
36
37
38
78
85
47
25
25
39
79
84
48
24
24
40
80
83
49
23
23
41
81
82
50
22
22
42
82
81
51
21
21
43
83
80
52
20
20
44
84
79
53
19
19
43
85
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
42
86
67
53
19
5
41
87
68
52
20
4
40
88
69
51
21
3
39
89
70
50
22
2
38
90
71
49
23
1
37
91
72
48
24
0
153
154
155
156
157
158
159
160
161
162
163
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
123
111
149
158
138
126
122
110
148
157
137
125
121
109
147
156
136
124
120
108
146
155
135
123
119
107
145
154
134
122
118
106
144
153
133
121
117
105
143
152
132
120
116
104
142
151
131
119
115
103
141
150
130
118
117
116
115
114
113
112
111
110
109
108
107
106
118
114
102
140
149
129
117
105
117
113
101
139
148
128
116
104
116
112
100
138
147
127
115
103
115
111
99
137
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
114
102
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
98
136
139
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
138
123
111
99
111
99
95
133
137
122
110
98
110
98
94
132
136
121
109
97
109
97
93
131
135
120
108
96
108
96
92
130
134
119
107
95
107
95
91
129
133
118
106
94
106
94
90
128
132
117
105
93
105
93
89
127
131
116
104
92
104
92
88
126
130
115
103
91
103
91
87
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
114
113
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
99
100
101
102
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
116
101
89
77
115
100
88
76
114
99
87
75
113
98
86
74
112
97
85
73
111
96
84
72
110
95
83
71
109
94
82
70
108
93
81
69
107
92
80
68
106
91
79
67
105
104
103
102
101
100
99
98
97
96
95
94
93
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
55
56
57
58
59
60
61
62
63
64
65
66
106
92
103
65
53
67
105
91
103
64
52
68
104
90
102
63
51
69
103
89
101
62
50
70
102
88
100
61
49
71
101
87
99
60
48
72
100
86
98
59
47
73
87
88
89
90
91
92
93
94
95
96
97
98
99
85
97
58
46
74
75
76
77
78
79
80
81
82
83
84
85
86
84
96
57
45
83
95
56
44
82
94
55
43
81
93
54
42
80
92
53
41
79
80
81
82
83
84
85
86
87
88
89
90
91
52
51
50
49
48
47
46
45
44
43
42
41
40
78
92
53
39
77
93
54
38
76
94
55
37
75
95
56
36
74
95
57
35
73
94
58
34
34
35
36
37
38
39
40
41
42
43
44
45
46
72
93
59
33
21
22
23
24
25
26
27
28
29
30
31
32
33
47
71
92
60
32
20
48
70
91
61
31
19
49
69
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
69
68
67
66
65
64
63
62
30
18
50
68
79
65
29
17
51
67
80
64
28
16
52
66
81
63
27
15
53
54
55
56
57
58
59
60
61
62
63
64
65
82
62
26
25
24
23
22
21
20
19
18
17
16
15
14
54
66
83
61
27
13
55
67
84
60
28
12
56
68
85
59
29
11
57
69
86
58
30
10
58
70
87
57
31
9
59
71
88
56
32
8
60
72
89
55
33
7
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
43
42
41
40
39
38
37
36
35
34
6
62
86
89
55
41
5
63
87
88
56
40
4
64
88
87
57
39
3
65
89
86
58
38
2
66
90
85
59
37
1
67
91
84
60
36
0
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
164
163
162
161
160
159
158
157
156
155
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
139
159
150
110
122
126
138
158
149
109
121
125
137
157
148
108
120
124
136
156
147
107
119
123
135
155
146
106
118
122
134
154
145
105
117
121
133
153
144
104
116
120
132
152
143
103
115
119
107
108
109
110
111
112
113
114
115
116
117
118
119
131
151
142
102
114
118
106
118
130
150
141
101
113
117
105
117
129
149
140
100
112
116
104
116
128
148
139
99
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
103
115
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
138
98
102
114
102
114
126
140
137
97
101
113
101
113
125
140
136
96
100
112
100
112
124
139
135
95
99
111
99
111
123
138
134
94
98
110
98
110
122
137
133
93
97
109
97
109
121
136
132
92
96
108
96
108
120
135
131
91
95
107
95
107
119
134
130
90
94
106
94
106
118
133
129
89
93
105
93
105
117
132
128
88
92
104
92
104
116
131
127
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
103
102
101
100
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
114
115
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
78
90
102
117
77
89
101
116
76
88
100
115
75
87
99
114
74
86
98
113
73
85
97
112
72
84
96
111
71
83
95
110
70
82
94
109
69
81
93
108
68
80
92
107
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
94
95
96
97
98
99
100
101
102
103
104
105
106
68
54
66
104
93
107
69
53
65
104
92
106
70
52
64
103
91
105
71
51
63
102
90
104
72
50
62
101
89
103
73
49
61
100
88
102
74
48
60
99
87
101
87
86
85
84
83
82
81
80
79
78
77
76
75
47
59
98
86
100
99
98
97
96
95
94
93
92
91
90
89
88
46
58
97
85
45
57
96
84
44
56
95
83
43
55
94
82
42
54
93
81
41
42
43
44
45
46
47
48
49
50
51
52
53
92
91
90
89
88
87
86
85
84
83
82
81
80
40
54
93
79
39
55
94
78
38
56
95
77
37
57
95
76
36
58
94
75
35
59
93
74
34
33
32
31
30
29
28
27
26
25
24
23
22
34
60
92
73
47
46
45
44
43
42
41
40
39
38
37
36
35
21
33
61
91
72
48
20
32
62
90
71
49
19
31
63
64
65
66
67
68
69
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
70
50
18
30
64
78
69
51
17
29
63
79
68
52
16
28
62
80
67
53
15
16
17
18
19
20
21
22
23
24
25
26
27
61
81
66
65
64
63
62
61
60
59
58
57
56
55
54
14
28
60
82
67
55
13
29
59
83
68
56
12
30
58
84
69
57
11
31
57
85
70
58
10
32
56
86
71
59
9
33
55
87
72
60
8
34
54
88
73
61
7
35
36
37
38
39
40
41
42
43
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
6
40
54
88
87
63
5
39
55
87
88
64
4
38
56
86
89
65
3
37
57
85
90
66
2
36
58
84
91
67
1
35
59
83
92
68
0
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
139
159
147
110
122
126
138
158
146
109
121
125
137
157
145
108
120
124
136
156
144
107
119
123
135
155
143
106
118
122
134
154
142
105
117
121
133
153
141
104
116
120
132
152
140
103
115
119
107
108
109
110
111
112
113
114
115
116
117
118
119
131
151
139
102
114
118
106
118
130
150
138
101
113
117
105
117
129
149
137
100
112
116
104
116
128
148
136
99
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
103
115
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
99
111
99
111
123
135
131
94
98
110
98
110
122
134
130
93
97
109
97
109
121
133
129
92
96
108
96
108
120
132
128
91
95
107
95
107
119
131
127
90
94
106
94
106
118
130
126
89
93
105
93
105
117
129
125
88
92
104
92
104
116
128
124
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
103
102
101
100
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
114
115
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
78
90
102
114
77
89
101
113
76
88
100
112
75
87
99
111
74
86
98
110
73
85
97
109
72
84
96
108
71
83
95
107
70
82
94
106
69
81
93
105
68
80
92
104
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
68
54
66
78
90
104
69
53
65
77
89
105
70
52
64
76
88
105
71
51
63
75
87
104
72
50
62
74
86
103
73
49
61
73
85
102
74
48
60
72
84
101
87
86
85
84
83
82
81
80
79
78
77
76
75
47
59
71
83
100
99
98
97
96
95
94
93
92
91
90
89
88
46
58
70
82
45
57
69
81
44
56
68
80
43
55
67
79
42
54
66
78
41
42
43
44
45
46
47
48
49
50
51
52
53
65
66
67
68
69
70
71
72
73
74
75
76
77
40
52
64
78
39
51
63
79
38
50
62
80
37
49
61
81
36
48
60
82
35
47
59
83
58
57
56
55
54
53
52
51
50
49
48
47
46
34
46
58
84
71
70
69
68
67
66
65
64
63
62
61
60
59
45
33
45
57
85
72
44
32
44
56
86
73
43
31
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
87
74
42
30
30
44
88
75
41
29
29
45
89
76
40
28
28
46
88
77
39
38
37
36
35
34
33
32
31
30
29
28
27
27
47
87
88
88
87
86
85
84
83
82
81
80
79
78
40
26
26
48
86
79
41
25
25
49
85
80
42
24
24
50
84
81
43
23
23
51
83
82
44
22
22
52
82
83
43
21
21
53
81
84
42
20
20
54
80
85
41
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
86
40
6
20
54
68
87
39
5
21
53
69
88
38
4
22
52
70
89
37
3
23
51
71
90
36
2
24
50
72
91
35
1
25
49
71
92
34
0
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
126
138
118
130
150
138
125
137
117
129
149
137
124
136
116
128
148
136
123
135
115
127
147
135
122
134
114
126
146
134
121
133
113
125
145
133
120
132
112
124
144
132
119
131
111
123
143
131
118
130
110
122
142
130
117
129
109
121
141
129
116
128
108
120
140
128
115
127
107
95
96
97
98
99
100
101
102
103
104
105
106
107
119
139
127
114
126
106
94
106
118
138
126
113
125
105
93
105
117
137
125
112
124
104
92
104
116
136
124
111
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
123
110
114
102
90
102
114
126
122
109
113
101
89
101
113
125
121
108
112
100
88
100
112
124
120
107
111
99
87
99
111
123
119
106
110
98
86
98
110
122
118
105
109
97
85
97
109
121
117
104
108
96
84
96
108
120
116
103
107
95
83
95
107
119
115
102
106
94
82
94
106
118
114
101
105
93
81
93
105
117
113
100
104
92
80
92
104
116
112
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
90
78
90
102
89
77
89
101
88
76
88
100
87
75
87
99
86
74
86
98
85
73
85
97
84
72
84
96
83
71
83
95
82
70
82
94
81
69
81
93
80
68
80
92
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
80
66
54
66
78
92
81
65
53
65
77
93
82
64
52
64
76
94
83
63
51
63
75
95
84
62
50
62
74
96
85
61
49
61
73
97
86
60
48
60
72
98
99
98
97
96
95
94
93
92
91
90
89
88
87
59
47
59
71
99
100
101
102
103
104
105
105
104
103
102
101
100
58
46
58
70
57
45
57
69
56
44
56
68
55
43
55
67
54
42
54
66
53
52
51
50
49
48
47
46
45
44
43
42
41
53
54
55
56
57
58
59
60
61
62
63
64
65
52
40
52
66
51
39
51
67
50
38
50
68
49
37
49
69
48
36
48
70
47
35
47
69
70
69
68
67
66
65
64
63
62
61
60
59
58
46
34
46
68
80
81
81
80
79
78
77
76
75
74
73
72
71
57
45
33
45
67
79
56
44
32
44
66
78
55
43
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
65
77
54
42
18
32
64
76
53
41
17
33
63
75
52
40
16
34
62
74
51
50
49
48
47
46
45
44
43
42
41
40
39
15
35
61
62
63
64
65
66
67
68
69
70
71
72
73
52
38
14
36
60
74
53
37
13
35
59
75
54
36
12
34
58
76
55
35
11
33
57
77
56
34
10
32
56
78
57
33
9
31
55
79
58
32
8
30
54
80
59
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
81
60
20
6
28
42
82
61
21
5
27
43
83
62
22
4
26
44
84
63
23
3
25
45
85
62
24
2
24
46
84
61
25
1
23
47
83
60
26
0
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
138
150
130
118
138
126
137
149
129
117
137
125
136
148
128
116
136
124
135
147
127
115
135
123
134
146
126
114
134
122
133
145
125
113
133
121
132
144
124
112
132
120
131
143
123
111
131
119
130
142
122
110
130
118
129
141
121
109
129
117
128
140
120
108
128
116
127
139
119
107
106
105
104
103
102
101
100
99
98
97
96
95
107
127
115
126
138
118
106
94
106
126
114
125
137
117
105
93
105
125
113
124
136
116
104
92
104
124
112
123
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
111
122
126
114
102
90
102
114
110
121
125
113
101
89
101
113
109
120
124
112
100
88
100
112
108
119
123
111
99
87
99
111
107
118
122
110
98
86
98
110
106
117
121
109
97
85
97
109
105
116
120
108
96
84
96
108
104
115
119
107
95
83
95
107
103
114
118
106
94
82
94
106
102
113
117
105
93
81
93
105
101
112
116
104
92
80
92
104
100
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
102
90
78
90
101
89
77
89
100
88
76
88
99
87
75
87
98
86
74
86
97
85
73
85
96
84
72
84
95
83
71
83
94
82
70
82
93
81
69
81
92
80
68
80
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
67
68
69
70
71
72
73
74
75
76
77
78
79
92
78
66
54
66
80
93
77
65
53
65
81
94
76
64
52
64
82
95
75
63
51
63
83
96
74
62
50
62
84
97
73
61
49
61
85
98
72
60
48
60
86
100
101
102
103
104
105
105
104
103
102
101
100
99
71
59
47
59
87
88
89
90
91
92
93
94
95
96
97
98
99
70
58
46
58
69
57
45
57
68
56
44
56
67
55
43
55
66
54
42
54
65
64
63
62
61
60
59
58
57
56
55
54
53
41
42
43
44
45
46
47
48
49
50
51
52
53
66
52
40
52
67
51
39
51
68
50
38
50
69
49
37
49
70
48
36
48
69
47
35
47
71
72
73
74
75
76
77
78
79
80
81
81
80
68
46
34
46
58
59
60
61
62
63
64
65
66
67
68
69
70
79
67
45
33
45
57
78
66
44
32
44
56
77
65
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
43
55
76
64
32
18
42
54
75
63
33
17
41
53
74
62
34
16
40
52
73
72
71
70
69
68
67
66
65
64
63
62
61
35
15
39
40
41
42
43
44
45
46
47
48
49
50
51
74
60
36
14
38
52
75
59
35
13
37
53
76
58
34
12
36
54
77
57
33
11
35
55
78
56
32
10
34
56
79
55
31
9
33
57
80
54
30
8
32
58
81
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
59
82
42
28
6
20
60
83
43
27
5
21
61
84
44
26
4
22
62
85
45
25
3
23
63
84
46
24
2
24
62
83
47
23
1
25
61
82
48
22
0
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
123
111
146
158
138
126
122
110
145
157
137
125
121
109
144
156
136
124
120
108
143
155
135
123
119
107
142
154
134
122
118
106
141
153
133
121
117
105
140
152
132
120
116
104
139
151
131
119
118
117
116
115
114
113
112
111
110
109
108
107
119
115
103
138
150
130
118
106
118
114
102
137
149
129
117
105
117
113
101
136
148
128
116
104
116
112
100
135
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
115
103
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
135
123
111
99
111
99
95
130
134
122
110
98
110
98
94
129
133
121
109
97
109
97
93
128
132
120
108
96
108
96
92
127
131
119
107
95
107
95
91
126
130
118
106
94
106
94
90
125
129
117
105
93
105
93
89
124
128
116
104
92
104
92
88
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
115
114
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
100
101
102
103
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
114
102
90
78
113
101
89
77
112
100
88
76
111
99
87
75
110
98
86
74
109
97
85
73
108
96
84
72
107
95
83
71
106
94
82
70
105
93
81
69
104
92
80
68
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
104
90
78
66
54
68
105
89
77
65
53
69
105
88
76
64
52
70
104
87
75
63
51
71
103
86
74
62
50
72
102
85
73
61
49
73
101
84
72
60
48
74
88
89
90
91
92
93
94
95
96
97
98
99
100
83
71
59
47
75
76
77
78
79
80
81
82
83
84
85
86
87
82
70
58
46
81
69
57
45
80
68
56
44
79
67
55
43
78
66
54
42
77
76
75
74
73
72
71
70
69
68
67
66
65
53
52
51
50
49
48
47
46
45
44
43
42
41
78
64
52
40
79
63
51
39
80
62
50
38
81
61
49
37
82
60
48
36
83
59
47
35
59
60
61
62
63
64
65
66
67
68
69
70
71
84
58
46
34
46
47
48
49
50
51
52
53
54
55
56
57
58
72
85
57
45
33
45
73
86
56
44
32
44
74
87
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
31
43
75
88
44
30
30
42
76
89
45
29
29
41
77
88
46
28
28
40
78
79
80
81
82
83
84
85
86
87
88
88
87
47
27
27
28
29
30
31
32
33
34
35
36
37
38
39
79
86
48
26
26
40
80
85
49
25
25
41
81
84
50
24
24
42
82
83
51
23
23
43
83
82
52
22
22
44
84
81
53
21
21
43
85
80
54
20
20
42
86
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
41
87
68
54
20
6
40
88
69
53
21
5
39
89
70
52
22
4
38
90
71
51
23
3
37
91
72
50
24
2
36
92
71
49
25
1
35
93
70
48
26
0
154
155
156
157
158
159
160
161
162
163
164
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
123
111
149
158
138
126
122
110
148
157
137
125
121
109
147
156
136
124
120
108
146
155
135
123
119
107
145
154
134
122
118
106
144
153
133
121
117
105
143
152
132
120
116
104
142
151
131
119
118
117
116
115
114
113
112
111
110
109
108
107
119
115
103
141
150
130
118
106
118
114
102
140
149
129
117
105
117
113
101
139
148
128
116
104
116
112
100
138
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
115
103
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
99
137
140
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
138
123
111
99
111
99
95
133
137
122
110
98
110
98
94
132
136
121
109
97
109
97
93
131
135
120
108
96
108
96
92
130
134
119
107
95
107
95
91
129
133
118
106
94
106
94
90
128
132
117
105
93
105
93
89
127
131
116
104
92
104
92
88
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
115
114
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
100
101
102
103
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
117
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
113
98
86
74
112
97
85
73
111
96
84
72
110
95
83
71
109
94
82
70
108
93
81
69
107
92
80
68
106
105
104
103
102
101
100
99
98
97
96
95
94
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
56
57
58
59
60
61
62
63
64
65
66
67
107
93
104
66
54
68
106
92
104
65
53
69
105
91
103
64
52
70
104
90
102
63
51
71
103
89
101
62
50
72
102
88
100
61
49
73
101
87
99
60
48
74
88
89
90
91
92
93
94
95
96
97
98
99
100
86
98
59
47
75
76
77
78
79
80
81
82
83
84
85
86
87
85
97
58
46
84
96
57
45
83
95
56
44
82
94
55
43
81
93
54
42
80
81
82
83
84
85
86
87
88
89
90
91
92
53
52
51
50
49
48
47
46
45
44
43
42
41
79
93
54
40
78
94
55
39
77
95
56
38
76
95
57
37
75
94
58
36
74
93
59
35
35
36
37
38
39
40
41
42
43
44
45
46
47
73
92
60
34
22
23
24
25
26
27
28
29
30
31
32
33
34
48
72
91
61
33
21
49
71
90
62
32
20
50
70
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
69
68
67
66
65
64
63
31
19
51
69
78
64
30
18
52
68
79
63
29
17
53
67
80
62
28
16
54
55
56
57
58
59
60
61
62
63
64
65
66
81
61
27
26
25
24
23
22
21
20
19
18
17
16
15
55
67
82
60
28
14
56
68
83
59
29
13
57
69
84
58
30
12
58
70
85
57
31
11
59
71
86
56
32
10
60
72
87
55
33
9
61
73
88
54
34
8
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
43
42
41
40
39
38
37
36
35
7
63
87
88
54
40
6
64
88
87
55
39
5
65
89
86
56
38
4
66
90
85
57
37
3
67
91
84
58
36
2
68
92
83
59
35
1
69
93
82
60
34
0
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
165
164
163
162
161
160
159
158
157
156
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
139
159
150
110
122
126
138
158
149
109
121
125
137
157
148
108
120
124
136
156
147
107
119
123
135
155
146
106
118
122
134
154
145
105
117
121
133
153
144
104
116
120
108
109
110
111
112
113
114
115
116
117
118
119
120
132
152
143
103
115
119
107
119
131
151
142
102
114
118
106
118
130
150
141
101
113
117
105
117
129
149
140
100
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
104
116
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
139
99
103
115
103
115
127
141
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
100
112
100
112
124
139
135
95
99
111
99
111
123
138
134
94
98
110
98
110
122
137
133
93
97
109
97
109
121
136
132
92
96
108
96
108
120
135
131
91
95
107
95
107
119
134
130
90
94
106
94
106
118
133
129
89
93
105
93
105
117
132
128
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
104
103
102
101
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
115
116
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
87
99
114
74
86
98
113
73
85
97
112
72
84
96
111
71
83
95
110
70
82
94
109
69
81
93
108
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
95
96
97
98
99
100
101
102
103
104
105
106
107
69
55
67
105
94
108
70
54
66
105
93
107
71
53
65
104
92
106
72
52
64
103
91
105
73
51
63
102
90
104
74
50
62
101
89
103
75
49
61
100
88
102
88
87
86
85
84
83
82
81
80
79
78
77
76
48
60
99
87
101
100
99
98
97
96
95
94
93
92
91
90
89
47
59
98
86
46
58
97
85
45
57
96
84
44
56
95
83
43
55
94
82
42
43
44
45
46
47
48
49
50
51
52
53
54
93
92
91
90
89
88
87
86
85
84
83
82
81
41
55
94
80
40
56
95
79
39
57
95
78
38
58
94
77
37
59
93
76
36
60
92
75
35
34
33
32
31
30
29
28
27
26
25
24
23
35
61
91
74
48
47
46
45
44
43
42
41
40
39
38
37
36
22
34
62
90
73
49
21
33
63
89
72
50
20
32
64
65
66
67
68
69
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
71
51
19
31
63
77
70
52
18
30
62
78
69
53
17
29
61
79
68
54
16
17
18
19
20
21
22
23
24
25
26
27
28
60
80
67
66
65
64
63
62
61
60
59
58
57
56
55
15
29
59
81
68
56
14
30
58
82
69
57
13
31
57
83
70
58
12
32
56
84
71
59
11
33
55
85
72
60
10
34
54
86
73
61
9
35
53
87
74
62
8
36
37
38
39
40
41
42
43
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
7
39
53
87
88
64
6
38
54
86
89
65
5
37
55
85
90
66
4
36
56
84
91
67
3
35
57
83
92
68
2
34
58
82
93
69
1
33
59
81
93
70
0
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
139
159
147
110
122
126
138
158
146
109
121
125
137
157
145
108
120
124
136
156
144
107
119
123
135
155
143
106
118
122
134
154
142
105
117
121
133
153
141
104
116
120
108
109
110
111
112
113
114
115
116
117
118
119
120
132
152
140
103
115
119
107
119
131
151
139
102
114
118
106
118
130
150
138
101
113
117
105
117
129
149
137
100
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
104
116
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
99
111
99
111
123
135
131
94
98
110
98
110
122
134
130
93
97
109
97
109
121
133
129
92
96
108
96
108
120
132
128
91
95
107
95
107
119
131
127
90
94
106
94
106
118
130
126
89
93
105
93
105
117
129
125
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
104
103
102
101
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
115
116
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
87
99
111
74
86
98
110
73
85
97
109
72
84
96
108
71
83
95
107
70
82
94
106
69
81
93
105
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
69
55
67
79
91
105
70
54
66
78
90
106
71
53
65
77
89
106
72
52
64
76
88
105
73
51
63
75
87
104
74
50
62
74
86
103
75
49
61
73
85
102
88
87
86
85
84
83
82
81
80
79
78
77
76
48
60
72
84
101
100
99
98
97
96
95
94
93
92
91
90
89
47
59
71
83
46
58
70
82
45
57
69
81
44
56
68
80
43
55
67
79
42
43
44
45
46
47
48
49
50
51
52
53
54
66
67
68
69
70
71
72
73
74
75
76
77
78
41
53
65
79
40
52
64
80
39
51
63
81
38
50
62
82
37
49
61
83
36
48
60
84
59
58
57
56
55
54
53
52
51
50
49
48
47
35
47
59
85
72
71
70
69
68
67
66
65
64
63
62
61
60
46
34
46
58
86
73
45
33
45
57
87
74
44
32
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
88
75
43
31
31
45
89
76
42
30
30
46
90
77
41
29
29
47
89
78
40
39
38
37
36
35
34
33
32
31
30
29
28
28
48
88
89
89
88
87
86
85
84
83
82
81
80
79
41
27
27
49
87
80
42
26
26
50
86
81
43
25
25
51
85
82
44
24
24
52
84
83
43
23
23
53
83
84
42
22
22
54
82
85
41
21
21
55
81
86
40
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
87
39
7
21
55
69
88
38
6
22
54
70
89
37
5
23
53
71
90
36
4
24
52
72
91
35
3
25
51
71
92
34
2
26
50
70
93
33
1
27
49
69
93
32
0
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
127
139
119
131
151
139
126
138
118
130
150
138
125
137
117
129
149
137
124
136
116
128
148
136
123
135
115
127
147
135
122
134
114
126
146
134
121
133
113
125
145
133
120
132
112
124
144
132
119
131
111
123
143
131
118
130
110
122
142
130
117
129
109
121
141
129
116
128
108
96
97
98
99
100
101
102
103
104
105
106
107
108
120
140
128
115
127
107
95
107
119
139
127
114
126
106
94
106
118
138
126
113
125
105
93
105
117
137
125
112
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
124
111
115
103
91
103
115
127
123
110
114
102
90
102
114
126
122
109
113
101
89
101
113
125
121
108
112
100
88
100
112
124
120
107
111
99
87
99
111
123
119
106
110
98
86
98
110
122
118
105
109
97
85
97
109
121
117
104
108
96
84
96
108
120
116
103
107
95
83
95
107
119
115
102
106
94
82
94
106
118
114
101
105
93
81
93
105
117
113
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
91
79
91
103
90
78
90
102
89
77
89
101
88
76
88
100
87
75
87
99
86
74
86
98
85
73
85
97
84
72
84
96
83
71
83
95
82
70
82
94
81
69
81
93
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
81
67
55
67
79
93
82
66
54
66
78
94
83
65
53
65
77
95
84
64
52
64
76
96
85
63
51
63
75
97
86
62
50
62
74
98
87
61
49
61
73
99
100
99
98
97
96
95
94
93
92
91
90
89
88
60
48
60
72
100
101
102
103
104
105
106
106
105
104
103
102
101
59
47
59
71
58
46
58
70
57
45
57
69
56
44
56
68
55
43
55
67
54
53
52
51
50
49
48
47
46
45
44
43
42
54
55
56
57
58
59
60
61
62
63
64
65
66
53
41
53
67
52
40
52
68
51
39
51
69
50
38
50
70
49
37
49
69
48
36
48
68
71
70
69
68
67
66
65
64
63
62
61
60
59
47
35
47
67
79
80
81
81
80
79
78
77
76
75
74
73
72
58
46
34
46
66
78
57
45
33
45
65
77
56
44
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
64
76
55
43
19
33
63
75
54
42
18
34
62
74
53
41
17
35
61
73
52
51
50
49
48
47
46
45
44
43
42
41
40
16
36
60
61
62
63
64
65
66
67
68
69
70
71
72
53
39
15
35
59
73
54
38
14
34
58
74
55
37
13
33
57
75
56
36
12
32
56
76
57
35
11
31
55
77
58
34
10
30
54
78
59
33
9
29
53
79
60
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
80
61
21
7
27
41
81
62
22
6
26
42
82
63
23
5
25
43
83
64
24
4
24
44
84
63
25
3
23
45
83
62
26
2
22
46
82
61
27
1
21
47
81
60
28
0
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
139
151
131
119
139
127
138
150
130
118
138
126
137
149
129
117
137
125
136
148
128
116
136
124
135
147
127
115
135
123
134
146
126
114
134
122
133
145
125
113
133
121
132
144
124
112
132
120
131
143
123
111
131
119
130
142
122
110
130
118
129
141
121
109
129
117
128
140
120
108
107
106
105
104
103
102
101
100
99
98
97
96
108
128
116
127
139
119
107
95
107
127
115
126
138
118
106
94
106
126
114
125
137
117
105
93
105
125
113
124
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
112
123
127
115
103
91
103
115
111
122
126
114
102
90
102
114
110
121
125
113
101
89
101
113
109
120
124
112
100
88
100
112
108
119
123
111
99
87
99
111
107
118
122
110
98
86
98
110
106
117
121
109
97
85
97
109
105
116
120
108
96
84
96
108
104
115
119
107
95
83
95
107
103
114
118
106
94
82
94
106
102
113
117
105
93
81
93
105
101
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
103
91
79
91
102
90
78
90
101
89
77
89
100
88
76
88
99
87
75
87
98
86
74
86
97
85
73
85
96
84
72
84
95
83
71
83
94
82
70
82
93
81
69
81
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
68
69
70
71
72
73
74
75
76
77
78
79
80
93
79
67
55
67
81
94
78
66
54
66
82
95
77
65
53
65
83
96
76
64
52
64
84
97
75
63
51
63
85
98
74
62
50
62
86
99
73
61
49
61
87
101
102
103
104
105
106
106
105
104
103
102
101
100
72
60
48
60
88
89
90
91
92
93
94
95
96
97
98
99
100
71
59
47
59
70
58
46
58
69
57
45
57
68
56
44
56
67
55
43
55
66
65
64
63
62
61
60
59
58
57
56
55
54
42
43
44
45
46
47
48
49
50
51
52
53
54
67
53
41
53
68
52
40
52
69
51
39
51
70
50
38
50
69
49
37
49
68
48
36
48
72
73
74
75
76
77
78
79
80
81
81
80
79
67
47
35
47
59
60
61
62
63
64
65
66
67
68
69
70
71
78
66
46
34
46
58
77
65
45
33
45
57
76
64
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
44
56
75
63
33
19
43
55
74
62
34
18
42
54
73
61
35
17
41
53
72
71
70
69
68
67
66
65
64
63
62
61
60
36
16
40
41
42
43
44
45
46
47
48
49
50
51
52
73
59
35
15
39
53
74
58
34
14
38
54
75
57
33
13
37
55
76
56
32
12
36
56
77
55
31
11
35
57
78
54
30
10
34
58
79
53
29
9
33
59
80
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
60
81
41
27
7
21
61
82
42
26
6
22
62
83
43
25
5
23
63
84
44
24
4
24
64
83
45
23
3
25
63
82
46
22
2
26
62
81
47
21
1
27
61
80
48
20
0
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
123
111
146
158
138
126
122
110
145
157
137
125
121
109
144
156
136
124
120
108
143
155
135
123
119
107
142
154
134
122
118
106
141
153
133
121
117
105
140
152
132
120
119
118
117
116
115
114
113
112
111
110
109
108
120
116
104
139
151
131
119
107
119
115
103
138
150
130
118
106
118
114
102
137
149
129
117
105
117
113
101
136
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
116
104
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
135
123
111
99
111
99
95
130
134
122
110
98
110
98
94
129
133
121
109
97
109
97
93
128
132
120
108
96
108
96
92
127
131
119
107
95
107
95
91
126
130
118
106
94
106
94
90
125
129
117
105
93
105
93
89
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
116
115
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
101
102
103
104
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
99
87
75
110
98
86
74
109
97
85
73
108
96
84
72
107
95
83
71
106
94
82
70
105
93
81
69
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
105
91
79
67
55
69
106
90
78
66
54
70
106
89
77
65
53
71
105
88
76
64
52
72
104
87
75
63
51
73
103
86
74
62
50
74
102
85
73
61
49
75
89
90
91
92
93
94
95
96
97
98
99
100
101
84
72
60
48
76
77
78
79
80
81
82
83
84
85
86
87
88
83
71
59
47
82
70
58
46
81
69
57
45
80
68
56
44
79
67
55
43
78
77
76
75
74
73
72
71
70
69
68
67
66
54
53
52
51
50
49
48
47
46
45
44
43
42
79
65
53
41
80
64
52
40
81
63
51
39
82
62
50
38
83
61
49
37
84
60
48
36
60
61
62
63
64
65
66
67
68
69
70
71
72
85
59
47
35
47
48
49
50
51
52
53
54
55
56
57
58
59
73
86
58
46
34
46
74
87
57
45
33
45
75
88
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
32
44
76
89
45
31
31
43
77
90
46
30
30
42
78
89
47
29
29
41
79
80
81
82
83
84
85
86
87
88
89
89
88
48
28
28
29
30
31
32
33
34
35
36
37
38
39
40
80
87
49
27
27
41
81
86
50
26
26
42
82
85
51
25
25
43
83
84
52
24
24
44
84
83
53
23
23
43
85
82
54
22
22
42
86
81
55
21
21
41
87
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
40
88
69
55
21
7
39
89
70
54
22
6
38
90
71
53
23
5
37
91
72
52
24
4
36
92
71
51
25
3
35
93
70
50
26
2
34
93
69
49
27
1
33
92
68
48
28
0
155
156
157
158
159
160
161
162
163
164
165
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
123
111
149
158
138
126
122
110
148
157
137
125
121
109
147
156
136
124
120
108
146
155
135
123
119
107
145
154
134
122
118
106
144
153
133
121
117
105
143
152
132
120
119
118
117
116
115
114
113
112
111
110
109
108
120
116
104
142
151
131
119
107
119
115
103
141
150
130
118
106
118
114
102
140
149
129
117
105
117
113
101
139
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
116
104
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
100
138
141
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
138
123
111
99
111
99
95
133
137
122
110
98
110
98
94
132
136
121
109
97
109
97
93
131
135
120
108
96
108
96
92
130
134
119
107
95
107
95
91
129
133
118
106
94
106
94
90
128
132
117
105
93
105
93
89
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
116
115
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
101
102
103
104
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
113
98
86
74
112
97
85
73
111
96
84
72
110
95
83
71
109
94
82
70
108
93
81
69
107
106
105
104
103
102
101
100
99
98
97
96
95
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
57
58
59
60
61
62
63
64
65
66
67
68
108
94
105
67
55
69
107
93
105
66
54
70
106
92
104
65
53
71
105
91
103
64
52
72
104
90
102
63
51
73
103
89
101
62
50
74
102
88
100
61
49
75
89
90
91
92
93
94
95
96
97
98
99
100
101
87
99
60
48
76
77
78
79
80
81
82
83
84
85
86
87
88
86
98
59
47
85
97
58
46
84
96
57
45
83
95
56
44
82
94
55
43
81
82
83
84
85
86
87
88
89
90
91
92
93
54
53
52
51
50
49
48
47
46
45
44
43
42
80
94
55
41
79
95
56
40
78
95
57
39
77
94
58
38
76
93
59
37
75
92
60
36
36
37
38
39
40
41
42
43
44
45
46
47
48
74
91
61
35
23
24
25
26
27
28
29
30
31
32
33
34
35
49
73
90
62
34
22
50
72
89
63
33
21
51
71
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
69
68
67
66
65
64
32
20
52
70
77
63
31
19
53
69
78
62
30
18
54
68
79
61
29
17
55
56
57
58
59
60
61
62
63
64
65
66
67
80
60
28
27
26
25
24
23
22
21
20
19
18
17
16
56
68
81
59
29
15
57
69
82
58
30
14
58
70
83
57
31
13
59
71
84
56
32
12
60
72
85
55
33
11
61
73
86
54
34
10
62
74
87
53
35
9
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
43
42
41
40
39
38
37
36
8
64
88
87
53
39
7
65
89
86
54
38
6
66
90
85
55
37
5
67
91
84
56
36
4
68
92
83
57
35
3
69
93
82
58
34
2
70
93
81
59
33
1
71
92
80
60
32
0
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
166
165
164
163
162
161
160
159
158
157
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
139
159
150
110
122
126
138
158
149
109
121
125
137
157
148
108
120
124
136
156
147
107
119
123
135
155
146
106
118
122
134
154
145
105
117
121
109
110
111
112
113
114
115
116
117
118
119
120
121
133
153
144
104
116
120
108
120
132
152
143
103
115
119
107
119
131
151
142
102
114
118
106
118
130
150
141
101
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
105
117
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
140
100
104
116
104
116
128
142
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
100
112
100
112
124
139
135
95
99
111
99
111
123
138
134
94
98
110
98
110
122
137
133
93
97
109
97
109
121
136
132
92
96
108
96
108
120
135
131
91
95
107
95
107
119
134
130
90
94
106
94
106
118
133
129
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
105
104
103
102
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
87
99
114
74
86
98
113
73
85
97
112
72
84
96
111
71
83
95
110
70
82
94
109
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
96
97
98
99
100
101
102
103
104
105
106
107
108
70
56
68
106
95
109
71
55
67
106
94
108
72
54
66
105
93
107
73
53
65
104
92
106
74
52
64
103
91
105
75
51
63
102
90
104
76
50
62
101
89
103
89
88
87
86
85
84
83
82
81
80
79
78
77
49
61
100
88
102
101
100
99
98
97
96
95
94
93
92
91
90
48
60
99
87
47
59
98
86
46
58
97
85
45
57
96
84
44
56
95
83
43
44
45
46
47
48
49
50
51
52
53
54
55
94
93
92
91
90
89
88
87
86
85
84
83
82
42
56
95
81
41
57
95
80
40
58
94
79
39
59
93
78
38
60
92
77
37
61
91
76
36
35
34
33
32
31
30
29
28
27
26
25
24
36
62
90
75
49
48
47
46
45
44
43
42
41
40
39
38
37
23
35
63
89
74
50
22
34
64
88
73
51
21
33
65
66
67
68
69
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
72
52
20
32
62
76
71
53
19
31
61
77
70
54
18
30
60
78
69
55
17
18
19
20
21
22
23
24
25
26
27
28
29
59
79
68
67
66
65
64
63
62
61
60
59
58
57
56
16
30
58
80
69
57
15
31
57
81
70
58
14
32
56
82
71
59
13
33
55
83
72
60
12
34
54
84
73
61
11
35
53
85
74
62
10
36
52
86
75
63
9
37
38
39
40
41
42
43
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
8
38
52
86
89
65
7
37
53
85
90
66
6
36
54
84
91
67
5
35
55
83
92
68
4
34
56
82
93
69
3
33
57
81
93
70
2
32
58
80
92
71
1
31
59
79
91
72
0
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
139
159
147
110
122
126
138
158
146
109
121
125
137
157
145
108
120
124
136
156
144
107
119
123
135
155
143
106
118
122
134
154
142
105
117
121
109
110
111
112
113
114
115
116
117
118
119
120
121
133
153
141
104
116
120
108
120
132
152
140
103
115
119
107
119
131
151
139
102
114
118
106
118
130
150
138
101
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
105
117
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
99
111
99
111
123
135
131
94
98
110
98
110
122
134
130
93
97
109
97
109
121
133
129
92
96
108
96
108
120
132
128
91
95
107
95
107
119
131
127
90
94
106
94
106
118
130
126
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
105
104
103
102
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
87
99
111
74
86
98
110
73
85
97
109
72
84
96
108
71
83
95
107
70
82
94
106
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
70
56
68
80
92
106
71
55
67
79
91
107
72
54
66
78
90
107
73
53
65
77
89
106
74
52
64
76
88
105
75
51
63
75
87
104
76
50
62
74
86
103
89
88
87
86
85
84
83
82
81
80
79
78
77
49
61
73
85
102
101
100
99
98
97
96
95
94
93
92
91
90
48
60
72
84
47
59
71
83
46
58
70
82
45
57
69
81
44
56
68
80
43
44
45
46
47
48
49
50
51
52
53
54
55
67
68
69
70
71
72
73
74
75
76
77
78
79
42
54
66
80
41
53
65
81
40
52
64
82
39
51
63
83
38
50
62
84
37
49
61
85
60
59
58
57
56
55
54
53
52
51
50
49
48
36
48
60
86
73
72
71
70
69
68
67
66
65
64
63
62
61
47
35
47
59
87
74
46
34
46
58
88
75
45
33
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
89
76
44
32
32
46
90
77
43
31
31
47
91
78
42
30
30
48
90
79
41
40
39
38
37
36
35
34
33
32
31
30
29
29
49
89
90
90
89
88
87
86
85
84
83
82
81
80
42
28
28
50
88
81
43
27
27
51
87
82
44
26
26
52
86
83
43
25
25
53
85
84
42
24
24
54
84
85
41
23
23
55
83
86
40
22
22
56
82
87
39
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
88
38
8
22
56
70
89
37
7
23
55
71
90
36
6
24
54
72
91
35
5
25
53
71
92
34
4
26
52
70
93
33
3
27
51
69
93
32
2
28
50
68
92
31
1
29
49
67
91
30
0
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
128
140
120
132
152
140
127
139
119
131
151
139
126
138
118
130
150
138
125
137
117
129
149
137
124
136
116
128
148
136
123
135
115
127
147
135
122
134
114
126
146
134
121
133
113
125
145
133
120
132
112
124
144
132
119
131
111
123
143
131
118
130
110
122
142
130
117
129
109
97
98
99
100
101
102
103
104
105
106
107
108
109
121
141
129
116
128
108
96
108
120
140
128
115
127
107
95
107
119
139
127
114
126
106
94
106
118
138
126
113
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
125
112
116
104
92
104
116
128
124
111
115
103
91
103
115
127
123
110
114
102
90
102
114
126
122
109
113
101
89
101
113
125
121
108
112
100
88
100
112
124
120
107
111
99
87
99
111
123
119
106
110
98
86
98
110
122
118
105
109
97
85
97
109
121
117
104
108
96
84
96
108
120
116
103
107
95
83
95
107
119
115
102
106
94
82
94
106
118
114
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
92
80
92
104
91
79
91
103
90
78
90
102
89
77
89
101
88
76
88
100
87
75
87
99
86
74
86
98
85
73
85
97
84
72
84
96
83
71
83
95
82
70
82
94
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
82
68
56
68
80
94
83
67
55
67
79
95
84
66
54
66
78
96
85
65
53
65
77
97
86
64
52
64
76
98
87
63
51
63
75
99
88
62
50
62
74
100
101
100
99
98
97
96
95
94
93
92
91
90
89
61
49
61
73
101
102
103
104
105
106
107
107
106
105
104
103
102
60
48
60
72
59
47
59
71
58
46
58
70
57
45
57
69
56
44
56
68
55
54
53
52
51
50
49
48
47
46
45
44
43
55
56
57
58
59
60
61
62
63
64
65
66
67
54
42
54
68
53
41
53
69
52
40
52
70
51
39
51
69
50
38
50
68
49
37
49
67
72
71
70
69
68
67
66
65
64
63
62
61
60
48
36
48
66
78
79
80
81
81
80
79
78
77
76
75
74
73
59
47
35
47
65
77
58
46
34
46
64
76
57
45
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
63
75
56
44
20
34
62
74
55
43
19
35
61
73
54
42
18
36
60
72
53
52
51
50
49
48
47
46
45
44
43
42
41
17
35
59
60
61
62
63
64
65
66
67
68
69
70
71
54
40
16
34
58
72
55
39
15
33
57
73
56
38
14
32
56
74
57
37
13
31
55
75
58
36
12
30
54
76
59
35
11
29
53
77
60
34
10
28
52
78
61
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
79
62
22
8
26
40
80
63
23
7
25
41
81
64
24
6
24
42
82
65
25
5
23
43
83
64
26
4
22
44
82
63
27
3
21
45
81
62
28
2
20
46
80
61
29
1
19
47
79
60
30
0
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
140
152
132
120
140
128
139
151
131
119
139
127
138
150
130
118
138
126
137
149
129
117
137
125
136
148
128
116
136
124
135
147
127
115
135
123
134
146
126
114
134
122
133
145
125
113
133
121
132
144
124
112
132
120
131
143
123
111
131
119
130
142
122
110
130
118
129
141
121
109
108
107
106
105
104
103
102
101
100
99
98
97
109
129
117
128
140
120
108
96
108
128
116
127
139
119
107
95
107
127
115
126
138
118
106
94
106
126
114
125
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
113
124
128
116
104
92
104
116
112
123
127
115
103
91
103
115
111
122
126
114
102
90
102
114
110
121
125
113
101
89
101
113
109
120
124
112
100
88
100
112
108
119
123
111
99
87
99
111
107
118
122
110
98
86
98
110
106
117
121
109
97
85
97
109
105
116
120
108
96
84
96
108
104
115
119
107
95
83
95
107
103
114
118
106
94
82
94
106
102
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
104
92
80
92
103
91
79
91
102
90
78
90
101
89
77
89
100
88
76
88
99
87
75
87
98
86
74
86
97
85
73
85
96
84
72
84
95
83
71
83
94
82
70
82
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
69
70
71
72
73
74
75
76
77
78
79
80
81
94
80
68
56
68
82
95
79
67
55
67
83
96
78
66
54
66
84
97
77
65
53
65
85
98
76
64
52
64
86
99
75
63
51
63
87
100
74
62
50
62
88
102
103
104
105
106
107
107
106
105
104
103
102
101
73
61
49
61
89
90
91
92
93
94
95
96
97
98
99
100
101
72
60
48
60
71
59
47
59
70
58
46
58
69
57
45
57
68
56
44
56
67
66
65
64
63
62
61
60
59
58
57
56
55
43
44
45
46
47
48
49
50
51
52
53
54
55
68
54
42
54
69
53
41
53
70
52
40
52
69
51
39
51
68
50
38
50
67
49
37
49
73
74
75
76
77
78
79
80
81
81
80
79
78
66
48
36
48
60
61
62
63
64
65
66
67
68
69
70
71
72
77
65
47
35
47
59
76
64
46
34
46
58
75
63
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
45
57
74
62
34
20
44
56
73
61
35
19
43
55
72
60
36
18
42
54
71
70
69
68
67
66
65
64
63
62
61
60
59
35
17
41
42
43
44
45
46
47
48
49
50
51
52
53
72
58
34
16
40
54
73
57
33
15
39
55
74
56
32
14
38
56
75
55
31
13
37
57
76
54
30
12
36
58
77
53
29
11
35
59
78
52
28
10
34
60
79
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
61
80
40
26
8
22
62
81
41
25
7
23
63
82
42
24
6
24
64
83
43
23
5
25
65
82
44
22
4
26
64
81
45
21
3
27
63
80
46
20
2
28
62
79
47
19
1
29
61
78
48
18
0
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
123
111
146
158
138
126
122
110
145
157
137
125
121
109
144
156
136
124
120
108
143
155
135
123
119
107
142
154
134
122
118
106
141
153
133
121
120
119
118
117
116
115
114
113
112
111
110
109
121
117
105
140
152
132
120
108
120
116
104
139
151
131
119
107
119
115
103
138
150
130
118
106
118
114
102
137
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
117
105
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
135
123
111
99
111
99
95
130
134
122
110
98
110
98
94
129
133
121
109
97
109
97
93
128
132
120
108
96
108
96
92
127
131
119
107
95
107
95
91
126
130
118
106
94
106
94
90
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
102
103
104
105
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
99
87
75
110
98
86
74
109
97
85
73
108
96
84
72
107
95
83
71
106
94
82
70
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
106
92
80
68
56
70
107
91
79
67
55
71
107
90
78
66
54
72
106
89
77
65
53
73
105
88
76
64
52
74
104
87
75
63
51
75
103
86
74
62
50
76
90
91
92
93
94
95
96
97
98
99
100
101
102
85
73
61
49
77
78
79
80
81
82
83
84
85
86
87
88
89
84
72
60
48
83
71
59
47
82
70
58
46
81
69
57
45
80
68
56
44
79
78
77
76
75
74
73
72
71
70
69
68
67
55
54
53
52
51
50
49
48
47
46
45
44
43
80
66
54
42
81
65
53
41
82
64
52
40
83
63
51
39
84
62
50
38
85
61
49
37
61
62
63
64
65
66
67
68
69
70
71
72
73
86
60
48
36
48
49
50
51
52
53
54
55
56
57
58
59
60
74
87
59
47
35
47
75
88
58
46
34
46
76
89
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
33
45
77
90
46
32
32
44
78
91
47
31
31
43
79
90
48
30
30
42
80
81
82
83
84
85
86
87
88
89
90
90
89
49
29
29
30
31
32
33
34
35
36
37
38
39
40
41
81
88
50
28
28
42
82
87
51
27
27
43
83
86
52
26
26
44
84
85
53
25
25
43
85
84
54
24
24
42
86
83
55
23
23
41
87
82
56
22
22
40
88
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
39
89
70
56
22
8
38
90
71
55
23
7
37
91
72
54
24
6
36
92
71
53
25
5
35
93
70
52
26
4
34
93
69
51
27
3
33
92
68
50
28
2
32
91
67
49
29
1
31
90
66
48
30
0
156
157
158
159
160
161
162
163
164
165
166
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
123
111
149
158
138
126
122
110
148
157
137
125
121
109
147
156
136
124
120
108
146
155
135
123
119
107
145
154
134
122
118
106
144
153
133
121
120
119
118
117
116
115
114
113
112
111
110
109
121
117
105
143
152
132
120
108
120
116
104
142
151
131
119
107
119
115
103
141
150
130
118
106
118
114
102
140
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
117
105
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
101
139
142
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
138
123
111
99
111
99
95
133
137
122
110
98
110
98
94
132
136
121
109
97
109
97
93
131
135
120
108
96
108
96
92
130
134
119
107
95
107
95
91
129
133
118
106
94
106
94
90
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
102
103
104
105
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
113
98
86
74
112
97
85
73
111
96
84
72
110
95
83
71
109
94
82
70
108
107
106
105
104
103
102
101
100
99
98
97
96
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
58
59
60
61
62
63
64
65
66
67
68
69
109
95
106
68
56
70
108
94
106
67
55
71
107
93
105
66
54
72
106
92
104
65
53
73
105
91
103
64
52
74
104
90
102
63
51
75
103
89
101
62
50
76
90
91
92
93
94
95
96
97
98
99
100
101
102
88
100
61
49
77
78
79
80
81
82
83
84
85
86
87
88
89
87
99
60
48
86
98
59
47
85
97
58
46
84
96
57
45
83
95
56
44
82
83
84
85
86
87
88
89
90
91
92
93
94
55
54
53
52
51
50
49
48
47
46
45
44
43
81
95
56
42
80
95
57
41
79
94
58
40
78
93
59
39
77
92
60
38
76
91
61
37
37
38
39
40
41
42
43
44
45
46
47
48
49
75
90
62
36
24
25
26
27
28
29
30
31
32
33
34
35
36
50
74
89
63
35
23
51
73
88
64
34
22
52
72
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
69
68
67
66
65
33
21
53
71
76
62
32
20
54
70
77
61
31
19
55
69
78
60
30
18
56
57
58
59
60
61
62
63
64
65
66
67
68
79
59
29
28
27
26
25
24
23
22
21
20
19
18
17
57
69
80
58
30
16
58
70
81
57
31
15
59
71
82
56
32
14
60
72
83
55
33
13
61
73
84
54
34
12
62
74
85
53
35
11
63
75
86
52
36
10
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
43
42
41
40
39
38
37
9
65
89
86
52
38
8
66
90
85
53
37
7
67
91
84
54
36
6
68
92
83
55
35
5
69
93
82
56
34
4
70
93
81
57
33
3
71
92
80
58
32
2
72
91
79
59
31
1
73
90
78
60
30
0
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
167
166
165
164
163
162
161
160
159
158
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
139
159
150
110
122
126
138
158
149
109
121
125
137
157
148
108
120
124
136
156
147
107
119
123
135
155
146
106
118
122
110
111
112
113
114
115
116
117
118
119
120
121
122
134
154
145
105
117
121
109
121
133
153
144
104
116
120
108
120
132
152
143
103
115
119
107
119
131
151
142
102
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
106
118
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
141
101
105
117
105
117
129
143
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
100
112
100
112
124
139
135
95
99
111
99
111
123
138
134
94
98
110
98
110
122
137
133
93
97
109
97
109
121
136
132
92
96
108
96
108
120
135
131
91
95
107
95
107
119
134
130
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
106
105
104
103
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
87
99
114
74
86
98
113
73
85
97
112
72
84
96
111
71
83
95
110
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
97
98
99
100
101
102
103
104
105
106
107
108
109
71
57
69
107
96
110
72
56
68
107
95
109
73
55
67
106
94
108
74
54
66
105
93
107
75
53
65
104
92
106
76
52
64
103
91
105
77
51
63
102
90
104
90
89
88
87
86
85
84
83
82
81
80
79
78
50
62
101
89
103
102
101
100
99
98
97
96
95
94
93
92
91
49
61
100
88
48
60
99
87
47
59
98
86
46
58
97
85
45
57
96
84
44
45
46
47
48
49
50
51
52
53
54
55
56
95
94
93
92
91
90
89
88
87
86
85
84
83
43
57
95
82
42
58
94
81
41
59
93
80
40
60
92
79
39
61
91
78
38
62
90
77
37
36
35
34
33
32
31
30
29
28
27
26
25
37
63
89
76
50
49
48
47
46
45
44
43
42
41
40
39
38
24
36
64
88
75
51
23
35
65
87
74
52
22
34
66
67
68
69
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
73
53
21
33
61
75
72
54
20
32
60
76
71
55
19
31
59
77
70
56
18
19
20
21
22
23
24
25
26
27
28
29
30
58
78
69
68
67
66
65
64
63
62
61
60
59
58
57
17
31
57
79
70
58
16
32
56
80
71
59
15
33
55
81
72
60
14
34
54
82
73
61
13
35
53
83
74
62
12
36
52
84
75
63
11
37
51
85
76
64
10
38
39
40
41
42
43
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
9
37
51
85
90
66
8
36
52
84
91
67
7
35
53
83
92
68
6
34
54
82
93
69
5
33
55
81
93
70
4
32
56
80
92
71
3
31
57
79
91
72
2
30
58
78
90
73
1
29
59
77
89
74
0
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
139
159
147
110
122
126
138
158
146
109
121
125
137
157
145
108
120
124
136
156
144
107
119
123
135
155
143
106
118
122
110
111
112
113
114
115
116
117
118
119
120
121
122
134
154
142
105
117
121
109
121
133
153
141
104
116
120
108
120
132
152
140
103
115
119
107
119
131
151
139
102
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
106
118
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
99
111
99
111
123
135
131
94
98
110
98
110
122
134
130
93
97
109
97
109
121
133
129
92
96
108
96
108
120
132
128
91
95
107
95
107
119
131
127
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
106
105
104
103
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
87
99
111
74
86
98
110
73
85
97
109
72
84
96
108
71
83
95
107
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
71
57
69
81
93
107
72
56
68
80
92
108
73
55
67
79
91
108
74
54
66
78
90
107
75
53
65
77
89
106
76
52
64
76
88
105
77
51
63
75
87
104
90
89
88
87
86
85
84
83
82
81
80
79
78
50
62
74
86
103
102
101
100
99
98
97
96
95
94
93
92
91
49
61
73
85
48
60
72
84
47
59
71
83
46
58
70
82
45
57
69
81
44
45
46
47
48
49
50
51
52
53
54
55
56
68
69
70
71
72
73
74
75
76
77
78
79
80
43
55
67
81
42
54
66
82
41
53
65
83
40
52
64
84
39
51
63
85
38
50
62
86
61
60
59
58
57
56
55
54
53
52
51
50
49
37
49
61
87
74
73
72
71
70
69
68
67
66
65
64
63
62
48
36
48
60
88
75
47
35
47
59
89
76
46
34
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
90
77
45
33
33
47
91
78
44
32
32
48
92
79
43
31
31
49
91
80
42
41
40
39
38
37
36
35
34
33
32
31
30
30
50
90
91
91
90
89
88
87
86
85
84
83
82
81
43
29
29
51
89
82
44
28
28
52
88
83
43
27
27
53
87
84
42
26
26
54
86
85
41
25
25
55
85
86
40
24
24
56
84
87
39
23
23
57
83
88
38
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
89
37
9
23
57
71
90
36
8
24
56
72
91
35
7
25
55
71
92
34
6
26
54
70
93
33
5
27
53
69
93
32
4
28
52
68
92
31
3
29
51
67
91
30
2
30
50
66
90
29
1
31
49
65
89
28
0
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
129
141
121
133
153
141
128
140
120
132
152
140
127
139
119
131
151
139
126
138
118
130
150
138
125
137
117
129
149
137
124
136
116
128
148
136
123
135
115
127
147
135
122
134
114
126
146
134
121
133
113
125
145
133
120
132
112
124
144
132
119
131
111
123
143
131
118
130
110
98
99
100
101
102
103
104
105
106
107
108
109
110
122
142
130
117
129
109
97
109
121
141
129
116
128
108
96
108
120
140
128
115
127
107
95
107
119
139
127
114
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
106
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
126
113
117
105
93
105
117
129
125
112
116
104
92
104
116
128
124
111
115
103
91
103
115
127
123
110
114
102
90
102
114
126
122
109
113
101
89
101
113
125
121
108
112
100
88
100
112
124
120
107
111
99
87
99
111
123
119
106
110
98
86
98
110
122
118
105
109
97
85
97
109
121
117
104
108
96
84
96
108
120
116
103
107
95
83
95
107
119
115
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
93
81
93
105
92
80
92
104
91
79
91
103
90
78
90
102
89
77
89
101
88
76
88
100
87
75
87
99
86
74
86
98
85
73
85
97
84
72
84
96
83
71
83
95
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
83
69
57
69
81
95
84
68
56
68
80
96
85
67
55
67
79
97
86
66
54
66
78
98
87
65
53
65
77
99
88
64
52
64
76
100
89
63
51
63
75
101
102
101
100
99
98
97
96
95
94
93
92
91
90
62
50
62
74
102
103
104
105
106
107
108
108
107
106
105
104
103
61
49
61
73
60
48
60
72
59
47
59
71
58
46
58
70
57
45
57
69
56
55
54
53
52
51
50
49
48
47
46
45
44
56
57
58
59
60
61
62
63
64
65
66
67
68
55
43
55
69
54
42
54
70
53
41
53
69
52
40
52
68
51
39
51
67
50
38
50
66
73
72
71
70
69
68
67
66
65
64
63
62
61
49
37
49
65
77
78
79
80
81
81
80
79
78
77
76
75
74
60
48
36
48
64
76
59
47
35
47
63
75
58
46
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
62
74
57
45
21
35
61
73
56
44
20
36
60
72
55
43
19
35
59
71
54
53
52
51
50
49
48
47
46
45
44
43
42
18
34
58
59
60
61
62
63
64
65
66
67
68
69
70
55
41
17
33
57
71
56
40
16
32
56
72
57
39
15
31
55
73
58
38
14
30
54
74
59
37
13
29
53
75
60
36
12
28
52
76
61
35
11
27
51
77
62
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
78
63
23
9
25
39
79
64
24
8
24
40
80
65
25
7
23
41
81
66
26
6
22
42
82
65
27
5
21
43
81
64
28
4
20
44
80
63
29
3
19
45
79
62
30
2
18
46
78
61
31
1
17
47
77
60
32
0
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
141
153
133
121
141
129
140
152
132
120
140
128
139
151
131
119
139
127
138
150
130
118
138
126
137
149
129
117
137
125
136
148
128
116
136
124
135
147
127
115
135
123
134
146
126
114
134
122
133
145
125
113
133
121
132
144
124
112
132
120
131
143
123
111
131
119
130
142
122
110
109
108
107
106
105
104
103
102
101
100
99
98
110
130
118
129
141
121
109
97
109
129
117
128
140
120
108
96
108
128
116
127
139
119
107
95
107
127
115
126
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
106
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
114
125
129
117
105
93
105
117
113
124
128
116
104
92
104
116
112
123
127
115
103
91
103
115
111
122
126
114
102
90
102
114
110
121
125
113
101
89
101
113
109
120
124
112
100
88
100
112
108
119
123
111
99
87
99
111
107
118
122
110
98
86
98
110
106
117
121
109
97
85
97
109
105
116
120
108
96
84
96
108
104
115
119
107
95
83
95
107
103
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
105
93
81
93
104
92
80
92
103
91
79
91
102
90
78
90
101
89
77
89
100
88
76
88
99
87
75
87
98
86
74
86
97
85
73
85
96
84
72
84
95
83
71
83
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
70
71
72
73
74
75
76
77
78
79
80
81
82
95
81
69
57
69
83
96
80
68
56
68
84
97
79
67
55
67
85
98
78
66
54
66
86
99
77
65
53
65
87
100
76
64
52
64
88
101
75
63
51
63
89
103
104
105
106
107
108
108
107
106
105
104
103
102
74
62
50
62
90
91
92
93
94
95
96
97
98
99
100
101
102
73
61
49
61
72
60
48
60
71
59
47
59
70
58
46
58
69
57
45
57
68
67
66
65
64
63
62
61
60
59
58
57
56
44
45
46
47
48
49
50
51
52
53
54
55
56
69
55
43
55
70
54
42
54
69
53
41
53
68
52
40
52
67
51
39
51
66
50
38
50
74
75
76
77
78
79
80
81
81
80
79
78
77
65
49
37
49
61
62
63
64
65
66
67
68
69
70
71
72
73
76
64
48
36
48
60
75
63
47
35
47
59
74
62
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
46
58
73
61
35
21
45
57
72
60
36
20
44
56
71
59
35
19
43
55
70
69
68
67
66
65
64
63
62
61
60
59
58
34
18
42
43
44
45
46
47
48
49
50
51
52
53
54
71
57
33
17
41
55
72
56
32
16
40
56
73
55
31
15
39
57
74
54
30
14
38
58
75
53
29
13
37
59
76
52
28
12
36
60
77
51
27
11
35
61
78
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
62
79
39
25
9
23
63
80
40
24
8
24
64
81
41
23
7
25
65
82
42
22
6
26
66
81
43
21
5
27
65
80
44
20
4
28
64
79
45
19
3
29
63
78
46
18
2
30
62
77
47
17
1
31
61
76
48
16
0
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
123
111
146
158
138
126
122
110
145
157
137
125
121
109
144
156
136
124
120
108
143
155
135
123
119
107
142
154
134
122
121
120
119
118
117
116
115
114
113
112
111
110
122
118
106
141
153
133
121
109
121
117
105
140
152
132
120
108
120
116
104
139
151
131
119
107
119
115
103
138
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
118
106
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
135
123
111
99
111
99
95
130
134
122
110
98
110
98
94
129
133
121
109
97
109
97
93
128
132
120
108
96
108
96
92
127
131
119
107
95
107
95
91
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
103
104
105
106
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
99
87
75
110
98
86
74
109
97
85
73
108
96
84
72
107
95
83
71
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
107
93
81
69
57
71
108
92
80
68
56
72
108
91
79
67
55
73
107
90
78
66
54
74
106
89
77
65
53
75
105
88
76
64
52
76
104
87
75
63
51
77
91
92
93
94
95
96
97
98
99
100
101
102
103
86
74
62
50
78
79
80
81
82
83
84
85
86
87
88
89
90
85
73
61
49
84
72
60
48
83
71
59
47
82
70
58
46
81
69
57
45
80
79
78
77
76
75
74
73
72
71
70
69
68
56
55
54
53
52
51
50
49
48
47
46
45
44
81
67
55
43
82
66
54
42
83
65
53
41
84
64
52
40
85
63
51
39
86
62
50
38
62
63
64
65
66
67
68
69
70
71
72
73
74
87
61
49
37
49
50
51
52
53
54
55
56
57
58
59
60
61
75
88
60
48
36
48
76
89
59
47
35
47
77
90
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
34
46
78
91
47
33
33
45
79
92
48
32
32
44
80
91
49
31
31
43
81
82
83
84
85
86
87
88
89
90
91
91
90
50
30
30
31
32
33
34
35
36
37
38
39
40
41
42
82
89
51
29
29
43
83
88
52
28
28
44
84
87
53
27
27
43
85
86
54
26
26
42
86
85
55
25
25
41
87
84
56
24
24
40
88
83
57
23
23
39
89
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
38
90
71
57
23
9
37
91
72
56
24
8
36
92
71
55
25
7
35
93
70
54
26
6
34
93
69
53
27
5
33
92
68
52
28
4
32
91
67
51
29
3
31
90
66
50
30
2
30
89
65
49
31
1
29
88
64
48
32
0
157
158
159
160
161
162
163
164
165
166
167
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
123
111
149
158
138
126
122
110
148
157
137
125
121
109
147
156
136
124
120
108
146
155
135
123
119
107
145
154
134
122
121
120
119
118
117
116
115
114
113
112
111
110
122
118
106
144
153
133
121
109
121
117
105
143
152
132
120
108
120
116
104
142
151
131
119
107
119
115
103
141
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
118
106
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
102
140
143
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
138
123
111
99
111
99
95
133
137
122
110
98
110
98
94
132
136
121
109
97
109
97
93
131
135
120
108
96
108
96
92
130
134
119
107
95
107
95
91
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
103
104
105
106
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
113
98
86
74
112
97
85
73
111
96
84
72
110
95
83
71
109
108
107
106
105
104
103
102
101
100
99
98
97
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
59
60
61
62
63
64
65
66
67
68
69
70
110
96
107
69
57
71
109
95
107
68
56
72
108
94
106
67
55
73
107
93
105
66
54
74
106
92
104
65
53
75
105
91
103
64
52
76
104
90
102
63
51
77
91
92
93
94
95
96
97
98
99
100
101
102
103
89
101
62
50
78
79
80
81
82
83
84
85
86
87
88
89
90
88
100
61
49
87
99
60
48
86
98
59
47
85
97
58
46
84
96
57
45
83
84
85
86
87
88
89
90
91
92
93
94
95
56
55
54
53
52
51
50
49
48
47
46
45
44
82
95
57
43
81
94
58
42
80
93
59
41
79
92
60
40
78
91
61
39
77
90
62
38
38
39
40
41
42
43
44
45
46
47
48
49
50
76
89
63
37
25
26
27
28
29
30
31
32
33
34
35
36
37
51
75
88
64
36
24
52
74
87
65
35
23
53
73
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
69
68
67
66
34
22
54
72
75
61
33
21
55
71
76
60
32
20
56
70
77
59
31
19
57
58
59
60
61
62
63
64
65
66
67
68
69
78
58
30
29
28
27
26
25
24
23
22
21
20
19
18
58
70
79
57
31
17
59
71
80
56
32
16
60
72
81
55
33
15
61
73
82
54
34
14
62
74
83
53
35
13
63
75
84
52
36
12
64
76
85
51
37
11
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
43
42
41
40
39
38
10
66
90
85
51
37
9
67
91
84
52
36
8
68
92
83
53
35
7
69
93
82
54
34
6
70
93
81
55
33
5
71
92
80
56
32
4
72
91
79
57
31
3
73
90
78
58
30
2
74
89
77
59
29
1
75
88
76
60
28
0
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
168
167
166
165
164
163
162
161
160
159
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
139
159
150
110
122
126
138
158
149
109
121
125
137
157
148
108
120
124
136
156
147
107
119
123
111
112
113
114
115
116
117
118
119
120
121
122
123
135
155
146
106
118
122
110
122
134
154
145
105
117
121
109
121
133
153
144
104
116
120
108
120
132
152
143
103
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
107
119
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
142
102
106
118
106
118
130
144
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
100
112
100
112
124
139
135
95
99
111
99
111
123
138
134
94
98
110
98
110
122
137
133
93
97
109
97
109
121
136
132
92
96
108
96
108
120
135
131
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
107
106
105
104
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
119
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
87
99
114
74
86
98
113
73
85
97
112
72
84
96
111
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
98
99
100
101
102
103
104
105
106
107
108
109
110
72
58
70
108
97
111
73
57
69
107
96
110
74
56
68
106
95
109
75
55
67
105
94
108
76
54
66
104
93
107
77
53
65
103
92
106
78
52
64
102
91
105
91
90
89
88
87
86
85
84
83
82
81
80
79
51
63
101
90
104
103
102
101
100
99
98
97
96
95
94
93
92
50
62
100
89
49
61
99
88
48
60
98
87
47
59
97
86
46
58
96
85
45
46
47
48
49
50
51
52
53
54
55
56
57
95
95
94
93
92
91
90
89
88
87
86
85
84
44
58
94
83
43
59
93
82
42
60
92
81
41
61
91
80
40
62
90
79
39
63
89
78
38
37
36
35
34
33
32
31
30
29
28
27
26
38
64
88
77
51
50
49
48
47
46
45
44
43
42
41
40
39
25
37
65
87
76
52
24
36
66
86
75
53
23
35
67
68
69
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
74
54
22
34
60
74
73
55
21
33
59
75
72
56
20
32
58
76
71
57
19
20
21
22
23
24
25
26
27
28
29
30
31
57
77
70
69
68
67
66
65
64
63
62
61
60
59
58
18
32
56
78
71
59
17
33
55
79
72
60
16
34
54
80
73
61
15
35
53
81
74
62
14
36
52
82
75
63
13
37
51
83
76
64
12
38
50
84
77
65
11
39
40
41
42
43
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
10
36
50
84
91
67
9
35
51
83
92
68
8
34
52
82
93
69
7
33
53
81
93
70
6
32
54
80
92
71
5
31
55
79
91
72
4
30
56
78
90
73
3
29
57
77
89
74
2
28
58
76
88
75
1
27
59
75
87
76
0
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
139
159
147
110
122
126
138
158
146
109
121
125
137
157
145
108
120
124
136
156
144
107
119
123
111
112
113
114
115
116
117
118
119
120
121
122
123
135
155
143
106
118
122
110
122
134
154
142
105
117
121
109
121
133
153
141
104
116
120
108
120
132
152
140
103
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
107
119
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
99
111
99
111
123
135
131
94
98
110
98
110
122
134
130
93
97
109
97
109
121
133
129
92
96
108
96
108
120
132
128
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
107
106
105
104
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
119
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
87
99
111
74
86
98
110
73
85
97
109
72
84
96
108
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
72
58
70
82
94
108
73
57
69
81
93
109
74
56
68
80
92
109
75
55
67
79
91
108
76
54
66
78
90
107
77
53
65
77
89
106
78
52
64
76
88
105
91
90
89
88
87
86
85
84
83
82
81
80
79
51
63
75
87
104
103
102
101
100
99
98
97
96
95
94
93
92
50
62
74
86
49
61
73
85
48
60
72
84
47
59
71
83
46
58
70
82
45
46
47
48
49
50
51
52
53
54
55
56
57
69
70
71
72
73
74
75
76
77
78
79
80
81
44
56
68
82
43
55
67
83
42
54
66
84
41
53
65
85
40
52
64
86
39
51
63
87
62
61
60
59
58
57
56
55
54
53
52
51
50
38
50
62
88
75
74
73
72
71
70
69
68
67
66
65
64
63
49
37
49
61
89
76
48
36
48
60
90
77
47
35
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
91
78
46
34
34
48
92
79
45
33
33
49
93
80
44
32
32
50
92
81
43
42
41
40
39
38
37
36
35
34
33
32
31
31
51
91
92
92
91
90
89
88
87
86
85
84
83
82
44
30
30
52
90
83
43
29
29
53
89
84
42
28
28
54
88
85
41
27
27
55
87
86
40
26
26
56
86
87
39
25
25
57
85
88
38
24
24
58
84
89
37
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
90
36
10
24
58
72
91
35
9
25
57
71
92
34
8
26
56
70
93
33
7
27
55
69
93
32
6
28
54
68
92
31
5
29
53
67
91
30
4
30
52
66
90
29
3
31
51
65
89
28
2
32
50
64
88
27
1
33
49
63
87
26
0
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
130
142
122
134
154
142
129
141
121
133
153
141
128
140
120
132
152
140
127
139
119
131
151
139
126
138
118
130
150
138
125
137
117
129
149
137
124
136
116
128
148
136
123
135
115
127
147
135
122
134
114
126
146
134
121
133
113
125
145
133
120
132
112
124
144
132
119
131
111
99
100
101
102
103
104
105
106
107
108
109
110
111
123
143
131
118
130
110
98
110
122
142
130
117
129
109
97
109
121
141
129
116
128
108
96
108
120
140
128
115
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
107
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
127
114
118
106
94
106
118
130
126
113
117
105
93
105
117
129
125
112
116
104
92
104
116
128
124
111
115
103
91
103
115
127
123
110
114
102
90
102
114
126
122
109
113
101
89
101
113
125
121
108
112
100
88
100
112
124
120
107
111
99
87
99
111
123
119
106
110
98
86
98
110
122
118
105
109
97
85
97
109
121
117
104
108
96
84
96
108
120
116
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
94
82
94
106
93
81
93
105
92
80
92
104
91
79
91
103
90
78
90
102
89
77
89
101
88
76
88
100
87
75
87
99
86
74
86
98
85
73
85
97
84
72
84
96
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
84
70
58
70
82
96
85
69
57
69
81
97
86
68
56
68
80
98
87
67
55
67
79
99
88
66
54
66
78
100
89
65
53
65
77
101
90
64
52
64
76
102
103
102
101
100
99
98
97
96
95
94
93
92
91
63
51
63
75
103
104
105
106
107
108
109
109
108
107
106
105
104
62
50
62
74
61
49
61
73
60
48
60
72
59
47
59
71
58
46
58
70
57
56
55
54
53
52
51
50
49
48
47
46
45
57
58
59
60
61
62
63
64
65
66
67
68
69
56
44
56
70
55
43
55
69
54
42
54
68
53
41
53
67
52
40
52
66
51
39
51
65
74
73
72
71
70
69
68
67
66
65
64
63
62
50
38
50
64
76
77
78
79
80
81
81
80
79
78
77
76
75
61
49
37
49
63
75
60
48
36
48
62
74
59
47
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
61
73
58
46
22
36
60
72
57
45
21
35
59
71
56
44
20
34
58
70
55
54
53
52
51
50
49
48
47
46
45
44
43
19
33
57
58
59
60
61
62
63
64
65
66
67
68
69
56
42
18
32
56
70
57
41
17
31
55
71
58
40
16
30
54
72
59
39
15
29
53
73
60
38
14
28
52
74
61
37
13
27
51
75
62
36
12
26
50
76
63
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
77
64
24
10
24
38
78
65
25
9
23
39
79
66
26
8
22
40
80
67
27
7
21
41
81
66
28
6
20
42
80
65
29
5
19
43
79
64
30
4
18
44
78
63
31
3
17
45
77
62
32
2
16
46
76
61
33
1
15
47
75
60
34
0
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
142
154
134
122
142
130
141
153
133
121
141
129
140
152
132
120
140
128
139
151
131
119
139
127
138
150
130
118
138
126
137
149
129
117
137
125
136
148
128
116
136
124
135
147
127
115
135
123
134
146
126
114
134
122
133
145
125
113
133
121
132
144
124
112
132
120
131
143
123
111
110
109
108
107
106
105
104
103
102
101
100
99
111
131
119
130
142
122
110
98
110
130
118
129
141
121
109
97
109
129
117
128
140
120
108
96
108
128
116
127
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
107
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
115
126
130
118
106
94
106
118
114
125
129
117
105
93
105
117
113
124
128
116
104
92
104
116
112
123
127
115
103
91
103
115
111
122
126
114
102
90
102
114
110
121
125
113
101
89
101
113
109
120
124
112
100
88
100
112
108
119
123
111
99
87
99
111
107
118
122
110
98
86
98
110
106
117
121
109
97
85
97
109
105
116
120
108
96
84
96
108
104
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
106
94
82
94
105
93
81
93
104
92
80
92
103
91
79
91
102
90
78
90
101
89
77
89
100
88
76
88
99
87
75
87
98
86
74
86
97
85
73
85
96
84
72
84
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
71
72
73
74
75
76
77
78
79
80
81
82
83
96
82
70
58
70
84
97
81
69
57
69
85
98
80
68
56
68
86
99
79
67
55
67
87
100
78
66
54
66
88
101
77
65
53
65
89
102
76
64
52
64
90
104
105
106
107
108
109
109
108
107
106
105
104
103
75
63
51
63
91
92
93
94
95
96
97
98
99
100
101
102
103
74
62
50
62
73
61
49
61
72
60
48
60
71
59
47
59
70
58
46
58
69
68
67
66
65
64
63
62
61
60
59
58
57
45
46
47
48
49
50
51
52
53
54
55
56
57
70
56
44
56
69
55
43
55
68
54
42
54
67
53
41
53
66
52
40
52
65
51
39
51
75
76
77
78
79
80
81
81
80
79
78
77
76
64
50
38
50
62
63
64
65
66
67
68
69
70
71
72
73
74
75
63
49
37
49
61
74
62
48
36
48
60
73
61
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
47
59
72
60
36
22
46
58
71
59
35
21
45
57
70
58
34
20
44
56
69
68
67
66
65
64
63
62
61
60
59
58
57
33
19
43
44
45
46
47
48
49
50
51
52
53
54
55
70
56
32
18
42
56
71
55
31
17
41
57
72
54
30
16
40
58
73
53
29
15
39
59
74
52
28
14
38
60
75
51
27
13
37
61
76
50
26
12
36
62
77
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
63
78
38
24
10
24
64
79
39
23
9
25
65
80
40
22
8
26
66
81
41
21
7
27
67
80
42
20
6
28
66
79
43
19
5
29
65
78
44
18
4
30
64
77
45
17
3
31
63
76
46
16
2
32
62
75
47
15
1
33
61
74
48
14
0
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
123
111
146
158
138
126
122
110
145
157
137
125
121
109
144
156
136
124
120
108
143
155
135
123
122
121
120
119
118
117
116
115
114
113
112
111
123
119
107
142
154
134
122
110
122
118
106
141
153
133
121
109
121
117
105
140
152
132
120
108
120
116
104
139
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
119
107
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
135
123
111
99
111
99
95
130
134
122
110
98
110
98
94
129
133
121
109
97
109
97
93
128
132
120
108
96
108
96
92
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
119
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
104
105
106
107
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
99
87
75
110
98
86
74
109
97
85
73
108
96
84
72
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
108
94
82
70
58
72
109
93
81
69
57
73
109
92
80
68
56
74
108
91
79
67
55
75
107
90
78
66
54
76
106
89
77
65
53
77
105
88
76
64
52
78
92
93
94
95
96
97
98
99
100
101
102
103
104
87
75
63
51
79
80
81
82
83
84
85
86
87
88
89
90
91
86
74
62
50
85
73
61
49
84
72
60
48
83
71
59
47
82
70
58
46
81
80
79
78
77
76
75
74
73
72
71
70
69
57
56
55
54
53
52
51
50
49
48
47
46
45
82
68
56
44
83
67
55
43
84
66
54
42
85
65
53
41
86
64
52
40
87
63
51
39
63
64
65
66
67
68
69
70
71
72
73
74
75
88
62
50
38
50
51
52
53
54
55
56
57
58
59
60
61
62
76
89
61
49
37
49
77
90
60
48
36
48
78
91
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
35
47
79
92
48
34
34
46
80
93
49
33
33
45
81
92
50
32
32
44
82
83
84
85
86
87
88
89
90
91
92
92
91
51
31
31
32
33
34
35
36
37
38
39
40
41
42
43
83
90
52
30
30
44
84
89
53
29
29
43
85
88
54
28
28
42
86
87
55
27
27
41
87
86
56
26
26
40
88
85
57
25
25
39
89
84
58
24
24
38
90
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
37
91
72
58
24
10
36
92
71
57
25
9
35
93
70
56
26
8
34
93
69
55
27
7
33
92
68
54
28
6
32
91
67
53
29
5
31
90
66
52
30
4
30
89
65
51
31
3
29
88
64
50
32
2
28
87
63
49
33
1
27
86
62
48
34
0
158
159
160
161
162
163
164
165
166
167
168
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
123
111
149
158
138
126
122
110
148
157
137
125
121
109
147
156
136
124
120
108
146
155
135
123
122
121
120
119
118
117
116
115
114
113
112
111
123
119
107
145
154
134
122
110
122
118
106
144
153
133
121
109
121
117
105
143
152
132
120
108
120
116
104
142
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
119
107
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
103
141
144
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
138
123
111
99
111
99
95
133
137
122
110
98
110
98
94
132
136
121
109
97
109
97
93
131
135
120
108
96
108
96
92
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
119
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
104
105
106
107
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
113
98
86
74
112
97
85
73
111
96
84
72
110
109
108
107
106
105
104
103
102
101
100
99
98
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
60
61
62
63
64
65
66
67
68
69
70
71
111
97
108
70
58
72
110
96
107
69
57
73
109
95
106
68
56
74
108
94
105
67
55
75
107
93
104
66
54
76
106
92
103
65
53
77
105
91
102
64
52
78
92
93
94
95
96
97
98
99
100
101
102
103
104
90
101
63
51
79
80
81
82
83
84
85
86
87
88
89
90
91
89
100
62
50
88
99
61
49
87
98
60
48
86
97
59
47
85
96
58
46
84
85
86
87
88
89
90
91
92
93
94
95
95
57
56
55
54
53
52
51
50
49
48
47
46
45
83
94
58
44
82
93
59
43
81
92
60
42
80
91
61
41
79
90
62
40
78
89
63
39
39
40
41
42
43
44
45
46
47
48
49
50
51
77
88
64
38
26
27
28
29
30
31
32
33
34
35
36
37
38
52
76
87
65
37
25
53
75
86
66
36
24
54
74
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
69
68
67
35
23
55
73
74
60
34
22
56
72
75
59
33
21
57
71
76
58
32
20
58
59
60
61
62
63
64
65
66
67
68
69
70
77
57
31
30
29
28
27
26
25
24
23
22
21
20
19
59
71
78
56
32
18
60
72
79
55
33
17
61
73
80
54
34
16
62
74
81
53
35
15
63
75
82
52
36
14
64
76
83
51
37
13
65
77
84
50
38
12
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
43
42
41
40
39
11
67
91
84
50
36
10
68
92
83
51
35
9
69
93
82
52
34
8
70
93
81
53
33
7
71
92
80
54
32
6
72
91
79
55
31
5
73
90
78
56
30
4
74
89
77
57
29
3
75
88
76
58
28
2
76
87
75
59
27
1
77
86
74
60
26
0
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
177
176
175
174
173
172
171
170
169
168
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
120
121
122
123
124
125
126
127
128
129
130
131
132
144
164
155
115
127
131
119
131
143
163
154
114
126
130
118
130
142
162
153
113
125
129
117
129
141
161
152
112
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
116
128
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
151
111
115
127
115
127
139
153
150
110
114
126
114
126
138
153
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
116
115
114
113
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
125
126
127
128
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
91
103
115
130
90
102
114
129
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
107
108
109
110
111
112
113
114
115
116
117
118
119
81
67
79
115
106
120
82
66
78
114
105
119
83
65
77
113
104
118
84
64
76
112
103
117
85
63
75
111
102
116
86
62
74
110
101
115
87
61
73
109
100
114
100
99
98
97
96
95
94
93
92
91
90
89
88
60
72
108
99
113
112
111
110
109
108
107
106
105
104
103
102
101
59
71
107
98
58
70
106
97
57
69
105
96
56
68
104
95
55
67
103
94
54
55
56
57
58
59
60
61
62
63
64
65
66
102
103
103
102
101
100
99
98
97
96
95
94
93
53
67
101
92
52
68
100
91
51
69
99
90
50
70
98
89
49
71
97
88
48
72
96
87
47
46
45
44
43
42
41
40
39
38
37
36
35
47
73
95
86
60
59
58
57
56
55
54
53
52
51
50
49
48
34
46
74
94
85
61
33
45
75
93
84
62
32
44
76
77
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
83
63
31
43
67
81
82
64
30
42
66
82
81
65
29
41
65
83
80
66
28
29
30
31
32
33
34
35
36
37
38
39
40
64
84
79
78
77
76
75
74
73
72
71
70
69
68
67
27
41
63
85
80
68
26
42
62
86
81
69
25
43
61
87
82
70
24
44
60
88
83
71
23
45
59
89
84
72
22
46
58
90
85
73
21
47
57
91
86
74
20
48
49
50
51
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
92
93
94
95
96
97
98
99
100
101
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
19
43
57
91
100
76
18
42
58
90
101
77
17
41
59
89
101
78
16
40
60
88
100
79
15
39
61
87
99
80
14
38
62
86
98
81
13
37
63
85
97
82
12
36
64
84
96
83
11
35
65
83
95
84
10
34
66
82
94
85
9
33
67
81
93
86
0
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
176
175
174
173
172
171
170
169
168
167
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
119
120
121
122
123
124
125
126
127
128
129
130
131
143
163
154
114
126
130
118
130
142
162
153
113
125
129
117
129
141
161
152
112
124
128
116
128
140
160
151
111
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
115
127
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
150
110
114
126
114
126
138
152
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
90
102
114
129
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
106
107
108
109
110
111
112
113
114
115
116
117
118
80
66
78
114
105
119
81
65
77
113
104
118
82
64
76
112
103
117
83
63
75
111
102
116
84
62
74
110
101
115
85
61
73
109
100
114
86
60
72
108
99
113
99
98
97
96
95
94
93
92
91
90
89
88
87
59
71
107
98
112
111
110
109
108
107
106
105
104
103
102
101
100
58
70
106
97
57
69
105
96
56
68
104
95
55
67
103
94
54
66
102
93
53
54
55
56
57
58
59
60
61
62
63
64
65
101
102
102
101
100
99
98
97
96
95
94
93
92
52
66
100
91
51
67
99
90
50
68
98
89
49
69
97
88
48
70
96
87
47
71
95
86
46
45
44
43
42
41
40
39
38
37
36
35
34
46
72
94
85
59
58
57
56
55
54
53
52
51
50
49
48
47
33
45
73
93
84
60
32
44
74
92
83
61
31
43
75
76
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
82
62
30
42
66
80
81
63
29
41
65
81
80
64
28
40
64
82
79
65
27
28
29
30
31
32
33
34
35
36
37
38
39
63
83
78
77
76
75
74
73
72
71
70
69
68
67
66
26
40
62
84
79
67
25
41
61
85
80
68
24
42
60
86
81
69
23
43
59
87
82
70
22
44
58
88
83
71
21
45
57
89
84
72
20
46
56
90
85
73
19
47
48
49
50
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
94
95
96
97
98
99
100
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
18
42
56
90
99
75
17
41
57
89
100
76
16
40
58
88
100
77
15
39
59
87
99
78
14
38
60
86
98
79
13
37
61
85
97
80
12
36
62
84
96
81
11
35
63
83
95
82
10
34
64
82
94
83
9
33
65
81
93
84
8
32
66
80
92
85
1
0
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
175
174
173
172
171
170
169
168
167
166
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
118
119
120
121
122
123
124
125
126
127
128
129
130
142
162
153
113
125
129
117
129
141
161
152
112
124
128
116
128
140
160
151
111
123
127
115
127
139
159
150
110
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
114
126
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
149
109
113
125
113
125
137
151
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
105
106
107
108
109
110
111
112
113
114
115
116
117
79
65
77
113
104
118
80
64
76
112
103
117
81
63
75
111
102
116
82
62
74
110
101
115
83
61
73
109
100
114
84
60
72
108
99
113
85
59
71
107
98
112
98
97
96
95
94
93
92
91
90
89
88
87
86
58
70
106
97
111
110
109
108
107
106
105
104
103
102
101
100
99
57
69
105
96
56
68
104
95
55
67
103
94
54
66
102
93
53
65
101
92
52
53
54
55
56
57
58
59
60
61
62
63
64
100
101
101
100
99
98
97
96
95
94
93
92
91
51
65
99
90
50
66
98
89
49
67
97
88
48
68
96
87
47
69
95
86
46
70
94
85
45
44
43
42
41
40
39
38
37
36
35
34
33
45
71
93
84
58
57
56
55
54
53
52
51
50
49
48
47
46
32
44
72
92
83
59
31
43
73
91
82
60
30
42
74
75
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
81
61
29
41
65
79
80
62
28
40
64
80
79
63
27
39
63
81
78
64
26
27
28
29
30
31
32
33
34
35
36
37
38
62
82
77
76
75
74
73
72
71
70
69
68
67
66
65
25
39
61
83
78
66
24
40
60
84
79
67
23
41
59
85
80
68
22
42
58
86
81
69
21
43
57
87
82
70
20
44
56
88
83
71
19
45
55
89
84
72
18
46
47
48
49
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
94
95
96
97
98
99
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
17
41
55
89
98
74
16
40
56
88
99
75
15
39
57
87
99
76
14
38
58
86
98
77
13
37
59
85
97
78
12
36
60
84
96
79
11
35
61
83
95
80
10
34
62
82
94
81
9
33
63
81
93
82
8
32
64
80
92
83
7
31
65
79
91
84
2
1
0
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
117
118
119
120
121
122
123
124
125
126
127
128
129
141
161
152
112
124
128
116
128
140
160
151
111
123
127
115
127
139
159
150
110
122
126
114
126
138
158
149
109
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
113
125
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
148
108
112
124
112
124
136
150
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
104
105
106
107
108
109
110
111
112
113
114
115
116
78
64
76
112
103
117
79
63
75
111
102
116
80
62
74
110
101
115
81
61
73
109
100
114
82
60
72
108
99
113
83
59
71
107
98
112
84
58
70
106
97
111
97
96
95
94
93
92
91
90
89
88
87
86
85
57
69
105
96
110
109
108
107
106
105
104
103
102
101
100
99
98
56
68
104
95
55
67
103
94
54
66
102
93
53
65
101
92
52
64
100
91
51
52
53
54
55
56
57
58
59
60
61
62
63
99
100
100
99
98
97
96
95
94
93
92
91
90
50
64
98
89
49
65
97
88
48
66
96
87
47
67
95
86
46
68
94
85
45
69
93
84
44
43
42
41
40
39
38
37
36
35
34
33
32
44
70
92
83
57
56
55
54
53
52
51
50
49
48
47
46
45
31
43
71
91
82
58
30
42
72
90
81
59
29
41
73
74
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
80
60
28
40
64
78
79
61
27
39
63
79
78
62
26
38
62
80
77
63
25
26
27
28
29
30
31
32
33
34
35
36
37
61
81
76
75
74
73
72
71
70
69
68
67
66
65
64
24
38
60
82
77
65
23
39
59
83
78
66
22
40
58
84
79
67
21
41
57
85
80
68
20
42
56
86
81
69
19
43
55
87
82
70
18
44
54
88
83
71
17
45
46
47
48
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
16
40
54
88
97
73
15
39
55
87
98
74
14
38
56
86
98
75
13
37
57
85
97
76
12
36
58
84
96
77
11
35
59
83
95
78
10
34
60
82
94
79
9
33
61
81
93
80
8
32
62
80
92
81
7
31
63
79
91
82
6
30
64
78
90
83
3
2
1
0
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
173
172
171
170
169
168
167
166
165
164
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
116
117
118
119
120
121
122
123
124
125
126
127
128
140
160
151
111
123
127
115
127
139
159
150
110
122
126
114
126
138
158
149
109
121
125
113
125
137
157
148
108
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
112
124
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
147
107
111
123
111
123
135
149
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
103
104
105
106
107
108
109
110
111
112
113
114
115
77
63
75
111
102
116
78
62
74
110
101
115
79
61
73
109
100
114
80
60
72
108
99
113
81
59
71
107
98
112
82
58
70
106
97
111
83
57
69
105
96
110
96
95
94
93
92
91
90
89
88
87
86
85
84
56
68
104
95
109
108
107
106
105
104
103
102
101
100
99
98
97
55
67
103
94
54
66
102
93
53
65
101
92
52
64
100
91
51
63
99
90
50
51
52
53
54
55
56
57
58
59
60
61
62
98
99
99
98
97
96
95
94
93
92
91
90
89
49
63
97
88
48
64
96
87
47
65
95
86
46
66
94
85
45
67
93
84
44
68
92
83
43
42
41
40
39
38
37
36
35
34
33
32
31
43
69
91
82
56
55
54
53
52
51
50
49
48
47
46
45
44
30
42
70
90
81
57
29
41
71
89
80
58
28
40
72
73
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
79
59
27
39
63
77
78
60
26
38
62
78
77
61
25
37
61
79
76
62
24
25
26
27
28
29
30
31
32
33
34
35
36
60
80
75
74
73
72
71
70
69
68
67
66
65
64
63
23
37
59
81
76
64
22
38
58
82
77
65
21
39
57
83
78
66
20
40
56
84
79
67
19
41
55
85
80
68
18
42
54
86
81
69
17
43
53
87
82
70
16
44
45
46
47
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
94
95
96
97
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
15
39
53
87
96
72
14
38
54
86
97
73
13
37
55
85
97
74
12
36
56
84
96
75
11
35
57
83
95
76
10
34
58
82
94
77
9
33
59
81
93
78
8
32
60
80
92
79
7
31
61
79
91
80
6
30
62
78
90
81
5
29
63
77
89
82
4
3
2
1
0
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
172
171
170
169
168
167
166
165
164
163
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
115
116
117
118
119
120
121
122
123
124
125
126
127
139
159
150
110
122
126
114
126
138
158
149
109
121
125
113
125
137
157
148
108
120
124
112
124
136
156
147
107
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
111
123
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
146
106
110
122
110
122
134
148
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
100
112
100
112
124
139
135
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
102
103
104
105
106
107
108
109
110
111
112
113
114
76
62
74
110
101
115
77
61
73
109
100
114
78
60
72
108
99
113
79
59
71
107
98
112
80
58
70
106
97
111
81
57
69
105
96
110
82
56
68
104
95
109
95
94
93
92
91
90
89
88
87
86
85
84
83
55
67
103
94
108
107
106
105
104
103
102
101
100
99
98
97
96
54
66
102
93
53
65
101
92
52
64
100
91
51
63
99
90
50
62
98
89
49
50
51
52
53
54
55
56
57
58
59
60
61
97
98
98
97
96
95
94
93
92
91
90
89
88
48
62
96
87
47
63
95
86
46
64
94
85
45
65
93
84
44
66
92
83
43
67
91
82
42
41
40
39
38
37
36
35
34
33
32
31
30
42
68
90
81
55
54
53
52
51
50
49
48
47
46
45
44
43
29
41
69
89
80
56
28
40
70
88
79
57
27
39
71
72
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
78
58
26
38
62
76
77
59
25
37
61
77
76
60
24
36
60
78
75
61
23
24
25
26
27
28
29
30
31
32
33
34
35
59
79
74
73
72
71
70
69
68
67
66
65
64
63
62
22
36
58
80
75
63
21
37
57
81
76
64
20
38
56
82
77
65
19
39
55
83
78
66
18
40
54
84
79
67
17
41
53
85
80
68
16
42
52
86
81
69
15
43
44
45
46
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
94
95
96
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
14
38
52
86
95
71
13
37
53
85
96
72
12
36
54
84
96
73
11
35
55
83
95
74
10
34
56
82
94
75
9
33
57
81
93
76
8
32
58
80
92
77
7
31
59
79
91
78
6
30
60
78
90
79
5
29
61
77
89
80
4
28
62
76
88
81
5
4
3
2
1
0
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
171
170
169
168
167
166
165
164
163
162
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
139
159
150
110
122
126
114
115
116
117
118
119
120
121
122
123
124
125
126
138
158
149
109
121
125
113
125
137
157
148
108
120
124
112
124
136
156
147
107
119
123
111
123
135
155
146
106
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
110
122
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
145
105
109
121
109
121
133
147
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
100
112
100
112
124
139
135
95
99
111
99
111
123
138
134
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
87
99
114
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
101
102
103
104
105
106
107
108
109
110
111
112
113
75
61
73
109
100
114
76
60
72
108
99
113
77
59
71
107
98
112
78
58
70
106
97
111
79
57
69
105
96
110
80
56
68
104
95
109
81
55
67
103
94
108
94
93
92
91
90
89
88
87
86
85
84
83
82
54
66
102
93
107
106
105
104
103
102
101
100
99
98
97
96
95
53
65
101
92
52
64
100
91
51
63
99
90
50
62
98
89
49
61
97
88
48
49
50
51
52
53
54
55
56
57
58
59
60
96
97
97
96
95
94
93
92
91
90
89
88
87
47
61
95
86
46
62
94
85
45
63
93
84
44
64
92
83
43
65
91
82
42
66
90
81
41
40
39
38
37
36
35
34
33
32
31
30
29
41
67
89
80
54
53
52
51
50
49
48
47
46
45
44
43
42
28
40
68
88
79
55
27
39
69
87
78
56
26
38
70
71
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
77
57
25
37
61
75
76
58
24
36
60
76
75
59
23
35
59
77
74
60
22
23
24
25
26
27
28
29
30
31
32
33
34
58
78
73
72
71
70
69
68
67
66
65
64
63
62
61
21
35
57
79
74
62
20
36
56
80
75
63
19
37
55
81
76
64
18
38
54
82
77
65
17
39
53
83
78
66
16
40
52
84
79
67
15
41
51
85
80
68
14
42
43
44
45
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
94
95
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
13
37
51
85
94
70
12
36
52
84
95
71
11
35
53
83
95
72
10
34
54
82
94
73
9
33
55
81
93
74
8
32
56
80
92
75
7
31
57
79
91
76
6
30
58
78
90
77
5
29
59
77
89
78
4
28
60
76
88
79
3
27
61
75
87
80
6
5
4
3
2
1
0
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
170
169
168
167
166
165
164
163
162
161
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
139
159
150
110
122
126
138
158
149
109
121
125
113
114
115
116
117
118
119
120
121
122
123
124
125
137
157
148
108
120
124
112
124
136
156
147
107
119
123
111
123
135
155
146
106
118
122
110
122
134
154
145
105
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
109
121
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
144
104
108
120
108
120
132
146
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
100
112
100
112
124
139
135
95
99
111
99
111
123
138
134
94
98
110
98
110
122
137
133
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
87
99
114
74
86
98
113
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
100
101
102
103
104
105
106
107
108
109
110
111
112
74
60
72
108
99
113
75
59
71
107
98
112
76
58
70
106
97
111
77
57
69
105
96
110
78
56
68
104
95
109
79
55
67
103
94
108
80
54
66
102
93
107
93
92
91
90
89
88
87
86
85
84
83
82
81
53
65
101
92
106
105
104
103
102
101
100
99
98
97
96
95
94
52
64
100
91
51
63
99
90
50
62
98
89
49
61
97
88
48
60
96
87
47
48
49
50
51
52
53
54
55
56
57
58
59
95
96
96
95
94
93
92
91
90
89
88
87
86
46
60
94
85
45
61
93
84
44
62
92
83
43
63
91
82
42
64
90
81
41
65
89
80
40
39
38
37
36
35
34
33
32
31
30
29
28
40
66
88
79
53
52
51
50
49
48
47
46
45
44
43
42
41
27
39
67
87
78
54
26
38
68
86
77
55
25
37
69
70
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
76
56
24
36
60
74
75
57
23
35
59
75
74
58
22
34
58
76
73
59
21
22
23
24
25
26
27
28
29
30
31
32
33
57
77
72
71
70
69
68
67
66
65
64
63
62
61
60
20
34
56
78
73
61
19
35
55
79
74
62
18
36
54
80
75
63
17
37
53
81
76
64
16
38
52
82
77
65
15
39
51
83
78
66
14
40
50
84
79
67
13
41
42
43
44
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
12
36
50
84
93
69
11
35
51
83
94
70
10
34
52
82
94
71
9
33
53
81
93
72
8
32
54
80
92
73
7
31
55
79
91
74
6
30
56
78
90
75
5
29
57
77
89
76
4
28
58
76
88
77
3
27
59
75
87
78
2
26
60
74
86
79
7
6
5
4
3
2
1
0
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
169
168
167
166
165
164
163
162
161
160
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
139
159
150
110
122
126
138
158
149
109
121
125
137
157
148
108
120
124
112
113
114
115
116
117
118
119
120
121
122
123
124
136
156
147
107
119
123
111
123
135
155
146
106
118
122
110
122
134
154
145
105
117
121
109
121
133
153
144
104
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
108
120
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
143
103
107
119
107
119
131
145
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
100
112
100
112
124
139
135
95
99
111
99
111
123
138
134
94
98
110
98
110
122
137
133
93
97
109
97
109
121
136
132
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
108
107
106
105
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
119
120
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
87
99
114
74
86
98
113
73
85
97
112
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
99
100
101
102
103
104
105
106
107
108
109
110
111
73
59
71
107
98
112
74
58
70
106
97
111
75
57
69
105
96
110
76
56
68
104
95
109
77
55
67
103
94
108
78
54
66
102
93
107
79
53
65
101
92
106
92
91
90
89
88
87
86
85
84
83
82
81
80
52
64
100
91
105
104
103
102
101
100
99
98
97
96
95
94
93
51
63
99
90
50
62
98
89
49
61
97
88
48
60
96
87
47
59
95
86
46
47
48
49
50
51
52
53
54
55
56
57
58
94
95
95
94
93
92
91
90
89
88
87
86
85
45
59
93
84
44
60
92
83
43
61
91
82
42
62
90
81
41
63
89
80
40
64
88
79
39
38
37
36
35
34
33
32
31
30
29
28
27
39
65
87
78
52
51
50
49
48
47
46
45
44
43
42
41
40
26
38
66
86
77
53
25
37
67
85
76
54
24
36
68
69
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
75
55
23
35
59
73
74
56
22
34
58
74
73
57
21
33
57
75
72
58
20
21
22
23
24
25
26
27
28
29
30
31
32
56
76
71
70
69
68
67
66
65
64
63
62
61
60
59
19
33
55
77
72
60
18
34
54
78
73
61
17
35
53
79
74
62
16
36
52
80
75
63
15
37
51
81
76
64
14
38
50
82
77
65
13
39
49
83
78
66
12
40
41
42
43
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
11
35
49
83
92
68
10
34
50
82
93
69
9
33
51
81
93
70
8
32
52
80
92
71
7
31
53
79
91
72
6
30
54
78
90
73
5
29
55
77
89
74
4
28
56
76
88
75
3
27
57
75
87
76
2
26
58
74
86
77
1
25
59
73
85
78
8
7
6
5
4
3
2
1
0
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
170
169
168
167
166
165
164
163
162
161
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
139
159
150
110
122
126
138
158
149
109
121
125
113
114
115
116
117
118
119
120
121
122
123
124
125
137
157
148
108
120
124
112
124
136
156
147
107
119
123
111
123
135
155
146
106
118
122
110
122
134
154
145
105
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
109
121
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
144
104
108
120
108
120
132
146
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
100
112
100
112
124
139
135
95
99
111
99
111
123
138
134
94
98
110
98
110
122
137
133
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
87
99
114
74
86
98
113
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
100
101
102
103
104
105
106
107
108
109
110
111
112
74
60
72
106
99
113
75
59
71
105
98
112
76
58
70
104
97
111
77
57
69
103
96
110
78
56
68
102
95
109
79
55
67
101
94
108
80
54
66
100
93
107
93
92
91
90
89
88
87
86
85
84
83
82
81
53
65
99
92
106
105
104
103
102
101
100
99
98
97
96
95
94
52
64
98
91
51
63
97
90
50
62
96
89
49
61
95
88
48
60
94
87
47
48
49
50
51
52
53
54
55
56
57
58
59
93
94
95
95
94
93
92
91
90
89
88
87
86
46
60
92
85
45
61
91
84
44
62
90
83
43
63
89
82
42
64
88
81
41
65
87
80
40
39
38
37
36
35
34
33
32
31
30
29
28
40
66
86
79
53
52
51
50
49
48
47
46
45
44
43
42
41
27
39
67
85
78
54
26
38
68
84
77
55
25
37
69
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
76
56
24
36
58
72
75
57
23
35
57
73
74
58
22
34
56
74
73
59
21
22
23
24
25
26
27
28
29
30
31
32
33
55
75
72
71
70
69
68
67
66
65
64
63
62
61
60
20
34
54
76
73
61
19
35
53
77
74
62
18
36
52
78
75
63
17
37
51
79
76
64
16
38
50
80
77
65
15
39
49
81
78
66
14
40
48
82
79
67
13
41
42
43
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
12
34
48
82
93
69
11
33
49
81
93
70
10
32
50
80
92
71
9
31
51
79
91
72
8
30
52
78
90
73
7
29
53
77
89
74
6
28
54
76
88
75
5
27
55
75
87
76
4
26
56
74
86
77
3
25
57
73
85
78
2
24
58
72
84
79
9
8
7
6
5
4
3
2
1
0
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
171
170
169
168
167
166
165
164
163
162
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
139
159
150
110
122
126
114
115
116
117
118
119
120
121
122
123
124
125
126
138
158
149
109
121
125
113
125
137
157
148
108
120
124
112
124
136
156
147
107
119
123
111
123
135
155
146
106
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
110
122
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
145
105
109
121
109
121
133
147
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
100
112
100
112
124
139
135
95
99
111
99
111
123
138
134
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
87
99
114
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
101
102
103
104
105
106
107
108
109
110
111
112
113
75
61
73
105
100
114
76
60
72
104
99
113
77
59
71
103
98
112
78
58
70
102
97
111
79
57
69
101
96
110
80
56
68
100
95
109
81
55
67
99
94
108
94
93
92
91
90
89
88
87
86
85
84
83
82
54
66
98
93
107
106
105
104
103
102
101
100
99
98
97
96
95
53
65
97
92
52
64
96
91
51
63
95
90
50
62
94
89
49
61
93
88
48
49
50
51
52
53
54
55
56
57
58
59
60
92
93
94
95
95
94
93
92
91
90
89
88
87
47
61
91
86
46
62
90
85
45
63
89
84
44
64
88
83
43
65
87
82
42
66
86
81
41
40
39
38
37
36
35
34
33
32
31
30
29
41
67
85
80
54
53
52
51
50
49
48
47
46
45
44
43
42
28
40
68
84
79
55
27
39
69
83
78
56
26
38
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
77
57
25
37
57
71
76
58
24
36
56
72
75
59
23
35
55
73
74
60
22
23
24
25
26
27
28
29
30
31
32
33
34
54
74
73
72
71
70
69
68
67
66
65
64
63
62
61
21
35
53
75
74
62
20
36
52
76
75
63
19
37
51
77
76
64
18
38
50
78
77
65
17
39
49
79
78
66
16
40
48
80
79
67
15
41
47
81
80
68
14
42
43
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
69
13
33
47
81
93
70
12
32
48
80
92
71
11
31
49
79
91
72
10
30
50
78
90
73
9
29
51
77
89
74
8
28
52
76
88
75
7
27
53
75
87
76
6
26
54
74
86
77
5
25
55
73
85
78
4
24
56
72
84
79
3
23
57
71
83
80
10
9
8
7
6
5
4
3
2
1
0
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
172
171
170
169
168
167
166
165
164
163
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
140
160
151
111
123
127
115
116
117
118
119
120
121
122
123
124
125
126
127
139
159
150
110
122
126
114
126
138
158
149
109
121
125
113
125
137
157
148
108
120
124
112
124
136
156
147
107
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
111
123
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
146
106
110
122
110
122
134
148
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
100
112
100
112
124
139
135
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
102
103
104
105
106
107
108
109
110
111
112
113
114
76
62
74
104
101
115
77
61
73
103
100
114
78
60
72
102
99
113
79
59
71
101
98
112
80
58
70
100
97
111
81
57
69
99
96
110
82
56
68
98
95
109
95
94
93
92
91
90
89
88
87
86
85
84
83
55
67
97
94
108
107
106
105
104
103
102
101
100
99
98
97
96
54
66
96
93
53
65
95
92
52
64
94
91
51
63
93
90
50
62
92
89
49
50
51
52
53
54
55
56
57
58
59
60
61
91
92
93
94
95
95
94
93
92
91
90
89
88
48
62
90
87
47
63
89
86
46
64
88
85
45
65
87
84
44
66
86
83
43
67
85
82
42
41
40
39
38
37
36
35
34
33
32
31
30
42
68
84
81
55
54
53
52
51
50
49
48
47
46
45
44
43
29
41
69
83
80
56
28
40
70
82
79
57
27
39
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
78
58
26
38
56
70
77
59
25
37
55
71
76
60
24
36
54
72
75
61
23
24
25
26
27
28
29
30
31
32
33
34
35
53
73
74
73
72
71
70
69
68
67
66
65
64
63
62
22
36
52
74
75
63
21
37
51
75
76
64
20
38
50
76
77
65
19
39
49
77
78
66
18
40
48
78
79
67
17
41
47
79
80
68
16
42
46
80
81
69
15
43
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
70
14
32
46
80
92
71
13
31
47
79
91
72
12
30
48
78
90
73
11
29
49
77
89
74
10
28
50
76
88
75
9
27
51
75
87
76
8
26
52
74
86
77
7
25
53
73
85
78
6
24
54
72
84
79
5
23
55
71
83
80
4
22
56
70
82
81
11
10
9
8
7
6
5
4
3
2
1
0
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
173
172
171
170
169
168
167
166
165
164
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
141
161
152
112
124
128
116
117
118
119
120
121
122
123
124
125
126
127
128
140
160
151
111
123
127
115
127
139
159
150
110
122
126
114
126
138
158
149
109
121
125
113
125
137
157
148
108
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
112
124
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
147
107
111
123
111
123
135
149
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
101
113
101
113
125
140
136
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
77
63
75
103
102
116
78
62
74
102
101
115
79
61
73
101
100
114
80
60
72
100
99
113
81
59
71
99
98
112
82
58
70
98
97
111
83
57
69
97
96
110
96
95
94
93
92
91
90
89
88
87
86
85
84
56
68
96
95
109
108
107
106
105
104
103
102
101
100
99
98
97
55
67
95
94
54
66
94
93
53
65
93
92
52
64
92
91
51
63
91
90
50
51
52
53
54
55
56
57
58
59
60
61
62
90
91
92
93
94
95
95
94
93
92
91
90
89
49
63
89
88
48
64
88
87
47
65
87
86
46
66
86
85
45
67
85
84
44
68
84
83
43
42
41
40
39
38
37
36
35
34
33
32
31
43
69
83
82
56
55
54
53
52
51
50
49
48
47
46
45
44
30
42
70
82
81
57
29
41
69
81
80
58
28
40
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
79
59
27
39
55
69
78
60
26
38
54
70
77
61
25
37
53
71
76
62
24
25
26
27
28
29
30
31
32
33
34
35
36
52
72
75
74
73
72
71
70
69
68
67
66
65
64
63
23
37
51
73
76
64
22
38
50
74
77
65
21
39
49
75
78
66
20
40
48
76
79
67
19
41
47
77
80
68
18
42
46
78
81
69
17
43
45
79
82
70
16
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
71
15
31
45
79
91
72
14
30
46
78
90
73
13
29
47
77
89
74
12
28
48
76
88
75
11
27
49
75
87
76
10
26
50
74
86
77
9
25
51
73
85
78
8
24
52
72
84
79
7
23
53
71
83
80
6
22
54
70
82
81
5
21
55
69
81
82
12
11
10
9
8
7
6
5
4
3
2
1
0
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
142
162
153
113
125
129
117
118
119
120
121
122
123
124
125
126
127
128
129
141
161
152
112
124
128
116
128
140
160
151
111
123
127
115
127
139
159
150
110
122
126
114
126
138
158
149
109
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
113
125
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
148
108
112
124
112
124
136
150
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
102
114
102
114
126
141
137
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
116
78
64
76
102
103
117
79
63
75
101
102
116
80
62
74
100
101
115
81
61
73
99
100
114
82
60
72
98
99
113
83
59
71
97
98
112
84
58
70
96
97
111
97
96
95
94
93
92
91
90
89
88
87
86
85
57
69
95
96
110
109
108
107
106
105
104
103
102
101
100
99
98
56
68
94
95
55
67
93
94
54
66
92
93
53
65
91
92
52
64
90
91
51
52
53
54
55
56
57
58
59
60
61
62
63
89
90
91
92
93
94
95
95
94
93
92
91
90
50
64
88
89
49
65
87
88
48
66
86
87
47
67
85
86
46
68
84
85
45
69
83
84
44
43
42
41
40
39
38
37
36
35
34
33
32
44
70
82
83
57
56
55
54
53
52
51
50
49
48
47
46
45
31
43
69
81
82
58
30
42
68
80
81
59
29
41
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
60
28
40
54
68
79
61
27
39
53
69
78
62
26
38
52
70
77
63
25
26
27
28
29
30
31
32
33
34
35
36
37
51
71
76
75
74
73
72
71
70
69
68
67
66
65
64
24
38
50
72
77
65
23
39
49
73
78
66
22
40
48
74
79
67
21
41
47
75
80
68
20
42
46
76
81
69
19
43
45
77
82
70
18
44
44
78
83
71
17
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
72
16
30
44
78
90
73
15
29
45
77
89
74
14
28
46
76
88
75
13
27
47
75
87
76
12
26
48
74
86
77
11
25
49
73
85
78
10
24
50
72
84
79
9
23
51
71
83
80
8
22
52
70
82
81
7
21
53
69
81
82
6
20
54
68
80
83
13
12
11
10
9
8
7
6
5
4
3
2
1
0
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
175
174
173
172
171
170
169
168
167
166
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
143
163
154
114
126
130
118
119
120
121
122
123
124
125
126
127
128
129
130
142
162
153
113
125
129
117
129
141
161
152
112
124
128
116
128
140
160
151
111
123
127
115
127
139
159
150
110
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
114
126
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
149
109
113
125
113
125
137
151
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
103
115
103
115
127
142
138
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
105
106
107
108
109
110
111
112
113
114
115
116
117
79
65
77
101
104
118
80
64
76
100
103
117
81
63
75
99
102
116
82
62
74
98
101
115
83
61
73
97
100
114
84
60
72
96
99
113
85
59
71
95
98
112
98
97
96
95
94
93
92
91
90
89
88
87
86
58
70
94
97
111
110
109
108
107
106
105
104
103
102
101
100
99
57
69
93
96
56
68
92
95
55
67
91
94
54
66
90
93
53
65
89
92
52
53
54
55
56
57
58
59
60
61
62
63
64
88
89
90
91
92
93
94
95
95
94
93
92
91
51
65
87
90
50
66
86
89
49
67
85
88
48
68
84
87
47
69
83
86
46
70
82
85
45
44
43
42
41
40
39
38
37
36
35
34
33
45
69
81
84
58
57
56
55
54
53
52
51
50
49
48
47
46
32
44
68
80
83
59
31
43
67
79
82
60
30
42
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
81
61
29
41
53
67
80
62
28
40
52
68
79
63
27
39
51
69
78
64
26
27
28
29
30
31
32
33
34
35
36
37
38
50
70
77
76
75
74
73
72
71
70
69
68
67
66
65
25
39
49
71
78
66
24
40
48
72
79
67
23
41
47
73
80
68
22
42
46
74
81
69
21
43
45
75
82
70
20
44
44
76
83
71
19
43
43
77
84
72
18
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
73
17
29
43
77
89
74
16
28
44
76
88
75
15
27
45
75
87
76
14
26
46
74
86
77
13
25
47
73
85
78
12
24
48
72
84
79
11
23
49
71
83
80
10
22
50
70
82
81
9
21
51
69
81
82
8
20
52
68
80
83
7
19
53
67
79
84
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
176
175
174
173
172
171
170
169
168
167
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
144
164
155
115
127
131
119
120
121
122
123
124
125
126
127
128
129
130
131
143
163
154
114
126
130
118
130
142
162
153
113
125
129
117
129
141
161
152
112
124
128
116
128
140
160
151
111
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
115
127
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
150
110
114
126
114
126
138
152
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
104
116
104
116
128
143
139
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
90
102
114
129
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
106
107
108
109
110
111
112
113
114
115
116
117
118
80
66
78
100
105
119
81
65
77
99
104
118
82
64
76
98
103
117
83
63
75
97
102
116
84
62
74
96
101
115
85
61
73
95
100
114
86
60
72
94
99
113
99
98
97
96
95
94
93
92
91
90
89
88
87
59
71
93
98
112
111
110
109
108
107
106
105
104
103
102
101
100
58
70
92
97
57
69
91
96
56
68
90
95
55
67
89
94
54
66
88
93
53
54
55
56
57
58
59
60
61
62
63
64
65
87
88
89
90
91
92
93
94
95
95
94
93
92
52
66
86
91
51
67
85
90
50
68
84
89
49
69
83
88
48
70
82
87
47
69
81
86
46
45
44
43
42
41
40
39
38
37
36
35
34
46
68
80
85
59
58
57
56
55
54
53
52
51
50
49
48
47
33
45
67
79
84
60
32
44
66
78
83
61
31
43
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
82
62
30
42
52
66
81
63
29
41
51
67
80
64
28
40
50
68
79
65
27
28
29
30
31
32
33
34
35
36
37
38
39
49
69
78
77
76
75
74
73
72
71
70
69
68
67
66
26
40
48
70
79
67
25
41
47
71
80
68
24
42
46
72
81
69
23
43
45
73
82
70
22
44
44
74
83
71
21
43
43
75
84
72
20
42
42
76
85
73
19
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
74
18
28
42
76
88
75
17
27
43
75
87
76
16
26
44
74
86
77
15
25
45
73
85
78
14
24
46
72
84
79
13
23
47
71
83
80
12
22
48
70
82
81
11
21
49
69
81
82
10
20
50
68
80
83
9
19
51
67
79
84
8
18
52
66
78
85
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
177
176
175
174
173
172
171
170
169
168
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
145
165
156
116
128
132
120
121
122
123
124
125
126
127
128
129
130
131
132
144
164
155
115
127
131
119
131
143
163
154
114
126
130
118
130
142
162
153
113
125
129
117
129
141
161
152
112
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
116
128
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
151
111
115
127
115
127
139
153
150
110
114
126
114
126
138
153
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
105
117
105
117
129
144
140
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
116
115
114
113
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
125
126
127
128
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
91
103
115
130
90
102
114
129
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
107
108
109
110
111
112
113
114
115
116
117
118
119
81
67
79
99
106
120
82
66
78
98
105
119
83
65
77
97
104
118
84
64
76
96
103
117
85
63
75
95
102
116
86
62
74
94
101
115
87
61
73
93
100
114
100
99
98
97
96
95
94
93
92
91
90
89
88
60
72
92
99
113
112
111
110
109
108
107
106
105
104
103
102
101
59
71
91
98
58
70
90
97
57
69
89
96
56
68
88
95
55
67
87
94
54
55
56
57
58
59
60
61
62
63
64
65
66
86
87
88
89
90
91
92
93
94
95
95
94
93
53
67
85
92
52
68
84
91
51
69
83
90
50
70
82
89
49
69
81
88
48
68
80
87
47
46
45
44
43
42
41
40
39
38
37
36
35
47
67
79
86
60
59
58
57
56
55
54
53
52
51
50
49
48
34
46
66
78
85
61
33
45
65
77
84
62
32
44
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
83
63
31
43
51
65
82
64
30
42
50
66
81
65
29
41
49
67
80
66
28
29
30
31
32
33
34
35
36
37
38
39
40
48
68
79
78
77
76
75
74
73
72
71
70
69
68
67
27
41
47
69
80
68
26
42
46
70
81
69
25
43
45
71
82
70
24
44
44
72
83
71
23
43
43
73
84
72
22
42
42
74
85
73
21
41
41
75
86
74
20
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
75
19
27
41
75
87
76
18
26
42
74
86
77
17
25
43
73
85
78
16
24
44
72
84
79
15
23
45
71
83
80
14
22
46
70
82
81
13
21
47
69
81
82
12
20
48
68
80
83
11
19
49
67
79
84
10
18
50
66
78
85
9
17
51
65
77
86
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
178
177
176
175
174
173
172
171
170
169
168
128
140
144
156
176
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
121
122
123
124
125
126
127
128
129
130
131
132
133
145
165
156
116
128
132
120
132
144
164
155
115
127
131
119
131
143
163
154
114
126
130
118
130
142
162
153
113
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
117
129
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
152
112
116
128
116
128
140
154
151
111
115
127
115
127
139
154
150
110
114
126
114
126
138
153
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
117
116
115
114
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
124
125
126
127
128
129
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
92
104
116
131
91
103
115
130
90
102
114
129
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
108
109
110
111
112
113
114
115
116
117
118
119
120
82
68
80
98
107
121
83
67
79
97
106
120
84
66
78
96
105
119
85
65
77
95
104
118
86
64
76
94
103
117
87
63
75
93
102
116
88
62
74
92
101
115
101
100
99
98
97
96
95
94
93
92
91
90
89
61
73
91
100
114
113
112
111
110
109
108
107
106
105
104
103
102
60
72
90
99
59
71
89
98
58
70
88
97
57
69
87
96
56
68
86
95
55
56
57
58
59
60
61
62
63
64
65
66
67
85
86
87
88
89
90
91
92
93
94
95
95
94
54
68
84
93
53
69
83
92
52
70
82
91
51
69
81
90
50
68
80
89
49
67
79
88
48
47
46
45
44
43
42
41
40
39
38
37
36
48
66
78
87
61
60
59
58
57
56
55
54
53
52
51
50
49
35
47
65
77
86
62
34
46
64
76
85
63
33
45
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
84
64
32
44
50
64
83
65
31
43
49
65
82
66
30
42
48
66
81
67
29
30
31
32
33
34
35
36
37
38
39
40
41
47
67
80
79
78
77
76
75
74
73
72
71
70
69
68
28
42
46
68
81
69
27
43
45
69
82
70
26
44
44
70
83
71
25
43
43
71
84
72
24
42
42
72
85
73
23
41
41
73
86
74
22
40
40
74
87
75
21
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
76
20
26
40
74
86
77
19
25
41
73
85
78
18
24
42
72
84
79
17
23
43
71
83
80
16
22
44
70
82
81
15
21
45
69
81
82
14
20
46
68
80
83
13
19
47
67
79
84
12
18
48
66
78
85
11
17
49
65
77
86
10
16
50
64
76
87
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
179
178
177
176
175
174
173
172
171
170
169
129
141
145
157
177
168
128
140
144
156
176
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
122
123
124
125
126
127
128
129
130
131
132
133
134
146
166
157
117
129
133
121
133
145
165
156
116
128
132
120
132
144
164
155
115
127
131
119
131
143
163
154
114
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
118
130
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
153
113
117
129
117
129
141
155
152
112
116
128
116
128
140
155
151
111
115
127
115
127
139
154
150
110
114
126
114
126
138
153
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
118
117
116
115
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
125
126
127
128
129
130
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
93
105
117
132
92
104
116
131
91
103
115
130
90
102
114
129
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
109
110
111
112
113
114
115
116
117
118
119
120
121
83
69
81
97
108
122
84
68
80
96
107
121
85
67
79
95
106
120
86
66
78
94
105
119
87
65
77
93
104
118
88
64
76
92
103
117
89
63
75
91
102
116
102
101
100
99
98
97
96
95
94
93
92
91
90
62
74
90
101
115
114
113
112
111
110
109
108
107
106
105
104
103
61
73
89
100
60
72
88
99
59
71
87
98
58
70
86
97
57
69
85
96
56
57
58
59
60
61
62
63
64
65
66
67
68
84
85
86
87
88
89
90
91
92
93
94
95
95
55
69
83
94
54
70
82
93
53
69
81
92
52
68
80
91
51
67
79
90
50
66
78
89
49
48
47
46
45
44
43
42
41
40
39
38
37
49
65
77
88
62
61
60
59
58
57
56
55
54
53
52
51
50
36
48
64
76
87
63
35
47
63
75
86
64
34
46
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
85
65
33
45
49
63
84
66
32
44
48
64
83
67
31
43
47
65
82
68
30
31
32
33
34
35
36
37
38
39
40
41
42
46
66
81
80
79
78
77
76
75
74
73
72
71
70
69
29
43
45
67
82
70
28
44
44
68
83
71
27
43
43
69
84
72
26
42
42
70
85
73
25
41
41
71
86
74
24
40
40
72
87
75
23
39
39
73
88
76
22
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
77
21
25
39
73
85
78
20
24
40
72
84
79
19
23
41
71
83
80
18
22
42
70
82
81
17
21
43
69
81
82
16
20
44
68
80
83
15
19
45
67
79
84
14
18
46
66
78
85
13
17
47
65
77
86
12
16
48
64
76
87
11
15
49
63
75
88
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
130
142
146
158
178
168
129
141
145
157
177
167
128
140
144
156
176
166
127
139
143
155
175
165
126
138
142
154
174
164
125
137
141
153
173
163
124
136
140
152
172
162
123
135
139
151
171
161
122
134
138
150
170
160
121
133
137
149
169
159
120
132
136
148
168
158
119
131
135
123
124
125
126
127
128
129
130
131
132
133
134
135
147
167
157
118
130
134
122
134
146
166
156
117
129
133
121
133
145
165
155
116
128
132
120
132
144
164
154
115
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
119
131
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
153
114
118
130
118
130
142
156
152
113
117
129
117
129
141
155
151
112
116
128
116
128
140
154
150
111
115
127
115
127
139
153
149
110
114
126
114
126
138
152
148
109
113
125
113
125
137
151
147
108
112
124
112
124
136
150
146
107
111
123
111
123
135
149
145
106
110
122
110
122
134
148
144
105
109
121
109
121
133
147
143
104
108
120
108
120
132
146
142
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
119
118
117
116
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
126
127
128
129
130
131
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
94
106
118
132
93
105
117
131
92
104
116
130
91
103
115
129
90
102
114
128
89
101
113
127
88
100
112
126
87
99
111
125
86
98
110
124
85
97
109
123
84
96
108
122
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
84
70
82
96
108
122
85
69
81
95
107
122
86
68
80
94
106
121
87
67
79
93
105
120
88
66
78
92
104
119
89
65
77
91
103
118
90
64
76
90
102
117
103
102
101
100
99
98
97
96
95
94
93
92
91
63
75
89
101
116
115
114
113
112
111
110
109
108
107
106
105
104
62
74
88
100
61
73
87
99
60
72
86
98
59
71
85
97
58
70
84
96
57
58
59
60
61
62
63
64
65
66
67
68
69
83
84
85
86
87
88
89
90
91
92
93
94
95
56
70
82
95
55
69
81
94
54
68
80
93
53
67
79
92
52
66
78
91
51
65
77
90
50
49
48
47
46
45
44
43
42
41
40
39
38
50
64
76
89
63
62
61
60
59
58
57
56
55
54
53
52
51
37
49
63
75
88
64
36
48
62
74
87
65
35
47
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
86
66
34
46
48
62
85
67
33
45
47
63
84
68
32
44
46
64
83
69
31
32
33
34
35
36
37
38
39
40
41
42
43
45
65
82
81
80
79
78
77
76
75
74
73
72
71
70
30
44
44
66
83
71
29
43
43
67
84
72
28
42
42
68
85
73
27
41
41
69
86
74
26
40
40
70
87
75
25
39
39
71
88
76
24
38
38
72
89
77
23
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
78
22
24
38
72
84
79
21
23
39
71
83
80
20
22
40
70
82
81
19
21
41
69
81
82
18
20
42
68
80
83
17
19
43
67
79
84
16
18
44
66
78
85
15
17
45
65
77
86
14
16
46
64
76
87
13
15
47
63
75
88
12
14
48
62
74
89
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
131
143
147
159
179
167
130
142
146
158
178
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
124
125
126
127
128
129
130
131
132
133
134
135
136
148
168
156
119
131
135
123
135
147
167
155
118
130
134
122
134
146
166
154
117
129
133
121
133
145
165
153
116
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
120
132
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
152
115
119
131
119
131
143
155
151
114
118
130
118
130
142
154
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
120
119
118
117
116
115
114
113
112
111
110
109
108
120
121
122
123
124
125
126
127
128
129
130
131
132
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
95
107
119
131
94
106
118
130
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
119
120
85
71
83
95
107
121
86
70
82
94
106
122
87
69
81
93
105
122
88
68
80
92
104
121
89
67
79
91
103
120
90
66
78
90
102
119
91
65
77
89
101
118
104
103
102
101
100
99
98
97
96
95
94
93
92
64
76
88
100
117
116
115
114
113
112
111
110
109
108
107
106
105
63
75
87
99
62
74
86
98
61
73
85
97
60
72
84
96
59
71
83
95
58
59
60
61
62
63
64
65
66
67
68
69
70
82
83
84
85
86
87
88
89
90
91
92
93
94
57
69
81
95
56
68
80
95
55
67
79
94
54
66
78
93
53
65
77
92
52
64
76
91
51
50
49
48
47
46
45
44
43
42
41
40
39
51
63
75
90
64
63
62
61
60
59
58
57
56
55
54
53
52
38
50
62
74
89
65
37
49
61
73
88
66
36
48
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
87
67
35
47
47
61
86
68
34
46
46
62
85
69
33
45
45
63
84
70
32
33
34
35
36
37
38
39
40
41
42
43
44
44
64
83
82
81
80
79
78
77
76
75
74
73
72
71
31
43
43
65
84
72
30
42
42
66
85
73
29
41
41
67
86
74
28
40
40
68
87
75
27
39
39
69
88
76
26
38
38
70
89
77
25
37
37
71
90
78
24
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
79
23
23
37
71
83
80
22
22
38
70
82
81
21
21
39
69
81
82
20
20
40
68
80
83
19
19
41
67
79
84
18
18
42
66
78
85
17
17
43
65
77
86
16
16
44
64
76
87
15
15
45
63
75
88
14
14
46
62
74
89
13
13
47
61
73
90
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
130
142
146
158
178
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
123
124
125
126
127
128
129
130
131
132
133
134
135
147
167
155
118
130
134
122
134
146
166
154
117
129
133
121
133
145
165
153
116
128
132
120
132
144
164
152
115
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
119
131
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
151
114
118
130
118
130
142
154
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
119
118
117
116
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
126
127
128
129
130
131
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
94
106
118
130
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
119
84
70
82
94
106
120
85
69
81
93
105
121
86
68
80
92
104
121
87
67
79
91
103
120
88
66
78
90
102
119
89
65
77
89
101
118
90
64
76
88
100
117
103
102
101
100
99
98
97
96
95
94
93
92
91
63
75
87
99
116
115
114
113
112
111
110
109
108
107
106
105
104
62
74
86
98
61
73
85
97
60
72
84
96
59
71
83
95
58
70
82
94
57
58
59
60
61
62
63
64
65
66
67
68
69
81
82
83
84
85
86
87
88
89
90
91
92
93
56
68
80
94
55
67
79
95
54
66
78
95
53
65
77
94
52
64
76
93
51
63
75
92
52
51
50
49
48
47
46
45
44
43
42
41
40
50
62
74
91
65
64
63
62
61
60
59
58
57
56
55
54
53
39
49
61
73
90
66
38
48
60
72
89
67
37
47
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
88
68
36
46
46
60
87
69
35
45
45
61
86
70
34
44
44
62
85
71
33
34
35
36
37
38
39
40
41
42
43
44
43
43
63
84
83
82
81
80
79
78
77
76
75
74
73
72
32
42
42
64
85
73
31
41
41
65
86
74
30
40
40
66
87
75
29
39
39
67
88
76
28
38
38
68
89
77
27
37
37
69
90
78
26
36
36
70
91
79
25
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
80
24
22
36
70
82
81
23
21
37
69
81
82
22
20
38
68
80
83
21
19
39
67
79
84
20
18
40
66
78
85
19
17
41
65
77
86
18
16
42
64
76
87
17
15
43
63
75
88
16
14
44
62
74
89
15
13
45
61
73
90
14
12
46
60
72
91
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
122
123
124
125
126
127
128
129
130
131
132
133
134
146
166
154
117
129
133
121
133
145
165
153
116
128
132
120
132
144
164
152
115
127
131
119
131
143
163
151
114
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
118
130
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
118
117
116
115
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
125
126
127
128
129
130
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
83
69
81
93
105
119
84
68
80
92
104
120
85
67
79
91
103
120
86
66
78
90
102
119
87
65
77
89
101
118
88
64
76
88
100
117
89
63
75
87
99
116
102
101
100
99
98
97
96
95
94
93
92
91
90
62
74
86
98
115
114
113
112
111
110
109
108
107
106
105
104
103
61
73
85
97
60
72
84
96
59
71
83
95
58
70
82
94
57
69
81
93
56
57
58
59
60
61
62
63
64
65
66
67
68
80
81
82
83
84
85
86
87
88
89
90
91
92
55
67
79
93
54
66
78
94
53
65
77
95
52
64
76
95
51
63
75
94
50
62
74
93
53
52
51
50
49
48
47
46
45
44
43
42
41
49
61
73
92
66
65
64
63
62
61
60
59
58
57
56
55
54
40
48
60
72
91
67
39
47
59
71
90
68
38
46
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
89
69
37
45
45
59
88
70
36
44
44
60
87
71
35
43
43
61
86
72
34
35
36
37
38
39
40
41
42
43
44
43
42
42
62
85
84
83
82
81
80
79
78
77
76
75
74
73
33
41
41
63
86
74
32
40
40
64
87
75
31
39
39
65
88
76
30
38
38
66
89
77
29
37
37
67
90
78
28
36
36
68
91
79
27
35
35
69
92
80
26
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
81
25
21
35
69
81
82
24
20
36
68
80
83
23
19
37
67
79
84
22
18
38
66
78
85
21
17
39
65
77
86
20
16
40
64
76
87
19
15
41
63
75
88
18
14
42
62
74
89
17
13
43
61
73
90
16
12
44
60
72
91
15
11
45
59
71
92
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
121
122
123
124
125
126
127
128
129
130
131
132
133
145
165
153
116
128
132
120
132
144
164
152
115
127
131
119
131
143
163
151
114
126
130
118
130
142
162
150
113
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
117
129
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
117
116
115
114
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
124
125
126
127
128
129
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
82
68
80
92
104
118
83
67
79
91
103
119
84
66
78
90
102
119
85
65
77
89
101
118
86
64
76
88
100
117
87
63
75
87
99
116
88
62
74
86
98
115
101
100
99
98
97
96
95
94
93
92
91
90
89
61
73
85
97
114
113
112
111
110
109
108
107
106
105
104
103
102
60
72
84
96
59
71
83
95
58
70
82
94
57
69
81
93
56
68
80
92
55
56
57
58
59
60
61
62
63
64
65
66
67
79
80
81
82
83
84
85
86
87
88
89
90
91
54
66
78
92
53
65
77
93
52
64
76
94
51
63
75
95
50
62
74
95
49
61
73
94
54
53
52
51
50
49
48
47
46
45
44
43
42
48
60
72
93
67
66
65
64
63
62
61
60
59
58
57
56
55
41
47
59
71
92
68
40
46
58
70
91
69
39
45
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
90
70
38
44
44
58
89
71
37
43
43
59
88
72
36
42
42
60
87
73
35
36
37
38
39
40
41
42
43
44
43
42
41
41
61
86
85
84
83
82
81
80
79
78
77
76
75
74
34
40
40
62
87
75
33
39
39
63
88
76
32
38
38
64
89
77
31
37
37
65
90
78
30
36
36
66
91
79
29
35
35
67
92
80
28
34
34
68
93
81
27
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
82
26
20
34
68
80
83
25
19
35
67
79
84
24
18
36
66
78
85
23
17
37
65
77
86
22
16
38
64
76
87
21
15
39
63
75
88
20
14
40
62
74
89
19
13
41
61
73
90
18
12
42
60
72
91
17
11
43
59
71
92
16
10
44
58
70
93
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
120
121
122
123
124
125
126
127
128
129
130
131
132
144
164
152
115
127
131
119
131
143
163
151
114
126
130
118
130
142
162
150
113
125
129
117
129
141
161
149
112
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
116
128
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
116
115
114
113
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
125
126
127
128
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
115
116
81
67
79
91
103
117
82
66
78
90
102
118
83
65
77
89
101
118
84
64
76
88
100
117
85
63
75
87
99
116
86
62
74
86
98
115
87
61
73
85
97
114
100
99
98
97
96
95
94
93
92
91
90
89
88
60
72
84
96
113
112
111
110
109
108
107
106
105
104
103
102
101
59
71
83
95
58
70
82
94
57
69
81
93
56
68
80
92
55
67
79
91
54
55
56
57
58
59
60
61
62
63
64
65
66
78
79
80
81
82
83
84
85
86
87
88
89
90
53
65
77
91
52
64
76
92
51
63
75
93
50
62
74
94
49
61
73
95
48
60
72
95
55
54
53
52
51
50
49
48
47
46
45
44
43
47
59
71
94
68
67
66
65
64
63
62
61
60
59
58
57
56
42
46
58
70
93
69
41
45
57
69
92
70
40
44
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
91
71
39
43
43
57
90
72
38
42
42
58
89
73
37
41
41
59
88
74
36
37
38
39
40
41
42
43
44
43
42
41
40
40
60
87
86
85
84
83
82
81
80
79
78
77
76
75
35
39
39
61
88
76
34
38
38
62
89
77
33
37
37
63
90
78
32
36
36
64
91
79
31
35
35
65
92
80
30
34
34
66
93
81
29
33
33
67
93
82
28
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
83
27
19
33
67
79
84
26
18
34
66
78
85
25
17
35
65
77
86
24
16
36
64
76
87
23
15
37
63
75
88
22
14
38
62
74
89
21
13
39
61
73
90
20
12
40
60
72
91
19
11
41
59
71
92
18
10
42
58
70
93
17
9
43
57
69
93
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
119
120
121
122
123
124
125
126
127
128
129
130
131
143
163
151
114
126
130
118
130
142
162
150
113
125
129
117
129
141
161
149
112
124
128
116
128
140
160
148
111
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
115
127
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
114
115
80
66
78
90
102
116
81
65
77
89
101
117
82
64
76
88
100
117
83
63
75
87
99
116
84
62
74
86
98
115
85
61
73
85
97
114
86
60
72
84
96
113
99
98
97
96
95
94
93
92
91
90
89
88
87
59
71
83
95
112
111
110
109
108
107
106
105
104
103
102
101
100
58
70
82
94
57
69
81
93
56
68
80
92
55
67
79
91
54
66
78
90
53
54
55
56
57
58
59
60
61
62
63
64
65
77
78
79
80
81
82
83
84
85
86
87
88
89
52
64
76
90
51
63
75
91
50
62
74
92
49
61
73
93
48
60
72
94
47
59
71
95
56
55
54
53
52
51
50
49
48
47
46
45
44
46
58
70
95
69
68
67
66
65
64
63
62
61
60
59
58
57
43
45
57
69
94
70
42
44
56
68
93
71
41
43
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
92
72
40
42
42
56
91
73
39
41
41
57
90
74
38
40
40
58
89
75
37
38
39
40
41
42
43
44
43
42
41
40
39
39
59
88
87
86
85
84
83
82
81
80
79
78
77
76
36
38
38
60
89
77
35
37
37
61
90
78
34
36
36
62
91
79
33
35
35
63
92
80
32
34
34
64
93
81
31
33
33
65
93
82
30
32
32
66
92
83
29
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
84
28
18
32
66
78
85
27
17
33
65
77
86
26
16
34
64
76
87
25
15
35
63
75
88
24
14
36
62
74
89
23
13
37
61
73
90
22
12
38
60
72
91
21
11
39
59
71
92
20
10
40
58
70
93
19
9
41
57
69
93
18
8
42
56
68
92
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
118
119
120
121
122
123
124
125
126
127
128
129
130
142
162
150
113
125
129
117
129
141
161
149
112
124
128
116
128
140
160
148
111
123
127
115
127
139
159
147
110
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
114
126
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
113
114
79
65
77
89
101
115
80
64
76
88
100
116
81
63
75
87
99
116
82
62
74
86
98
115
83
61
73
85
97
114
84
60
72
84
96
113
85
59
71
83
95
112
98
97
96
95
94
93
92
91
90
89
88
87
86
58
70
82
94
111
110
109
108
107
106
105
104
103
102
101
100
99
57
69
81
93
56
68
80
92
55
67
79
91
54
66
78
90
53
65
77
89
52
53
54
55
56
57
58
59
60
61
62
63
64
76
77
78
79
80
81
82
83
84
85
86
87
88
51
63
75
89
50
62
74
90
49
61
73
91
48
60
72
92
47
59
71
93
46
58
70
94
57
56
55
54
53
52
51
50
49
48
47
46
45
45
57
69
95
70
69
68
67
66
65
64
63
62
61
60
59
58
44
44
56
68
95
71
43
43
55
67
94
72
42
42
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
93
73
41
41
41
55
92
74
40
40
40
56
91
75
39
39
39
57
90
76
38
39
40
41
42
43
44
43
42
41
40
39
38
38
58
89
88
87
86
85
84
83
82
81
80
79
78
77
37
37
37
59
90
78
36
36
36
60
91
79
35
35
35
61
92
80
34
34
34
62
93
81
33
33
33
63
93
82
32
32
32
64
92
83
31
31
31
65
91
84
30
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
85
29
17
31
65
77
86
28
16
32
64
76
87
27
15
33
63
75
88
26
14
34
62
74
89
25
13
35
61
73
90
24
12
36
60
72
91
23
11
37
59
71
92
22
10
38
58
70
93
21
9
39
57
69
93
20
8
40
56
68
92
19
7
41
55
67
91
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
117
118
119
120
121
122
123
124
125
126
127
128
129
141
161
149
112
124
128
116
128
140
160
148
111
123
127
115
127
139
159
147
110
122
126
114
126
138
158
146
109
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
113
125
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
78
64
76
88
100
114
79
63
75
87
99
115
80
62
74
86
98
115
81
61
73
85
97
114
82
60
72
84
96
113
83
59
71
83
95
112
84
58
70
82
94
111
97
96
95
94
93
92
91
90
89
88
87
86
85
57
69
81
93
110
109
108
107
106
105
104
103
102
101
100
99
98
56
68
80
92
55
67
79
91
54
66
78
90
53
65
77
89
52
64
76
88
51
52
53
54
55
56
57
58
59
60
61
62
63
75
76
77
78
79
80
81
82
83
84
85
86
87
50
62
74
88
49
61
73
89
48
60
72
90
47
59
71
91
46
58
70
92
45
57
69
93
58
57
56
55
54
53
52
51
50
49
48
47
46
44
56
68
94
71
70
69
68
67
66
65
64
63
62
61
60
59
45
43
55
67
95
72
44
42
54
66
95
73
43
41
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
94
74
42
40
40
54
93
75
41
39
39
55
92
76
40
38
38
56
91
77
39
40
41
42
43
44
43
42
41
40
39
38
37
37
57
90
89
88
87
86
85
84
83
82
81
80
79
78
38
36
36
58
91
79
37
35
35
59
92
80
36
34
34
60
93
81
35
33
33
61
93
82
34
32
32
62
92
83
33
31
31
63
91
84
32
30
30
64
90
85
31
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
86
30
16
30
64
76
87
29
15
31
63
75
88
28
14
32
62
74
89
27
13
33
61
73
90
26
12
34
60
72
91
25
11
35
59
71
92
24
10
36
58
70
93
23
9
37
57
69
93
22
8
38
56
68
92
21
7
39
55
67
91
20
6
40
54
66
90
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
116
117
118
119
120
121
122
123
124
125
126
127
128
140
160
148
111
123
127
115
127
139
159
147
110
122
126
114
126
138
158
146
109
121
125
113
125
137
157
145
108
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
112
124
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
111
112
77
63
75
87
99
113
78
62
74
86
98
114
79
61
73
85
97
114
80
60
72
84
96
113
81
59
71
83
95
112
82
58
70
82
94
111
83
57
69
81
93
110
96
95
94
93
92
91
90
89
88
87
86
85
84
56
68
80
92
109
108
107
106
105
104
103
102
101
100
99
98
97
55
67
79
91
54
66
78
90
53
65
77
89
52
64
76
88
51
63
75
87
50
51
52
53
54
55
56
57
58
59
60
61
62
74
75
76
77
78
79
80
81
82
83
84
85
86
49
61
73
87
48
60
72
88
47
59
71
89
46
58
70
90
45
57
69
91
44
56
68
92
59
58
57
56
55
54
53
52
51
50
49
48
47
43
55
67
93
72
71
70
69
68
67
66
65
64
63
62
61
60
46
42
54
66
94
73
45
41
53
65
95
74
44
40
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
95
75
43
39
39
53
94
76
42
38
38
54
93
77
41
37
37
55
92
78
40
41
42
43
44
43
42
41
40
39
38
37
36
36
56
91
90
89
88
87
86
85
84
83
82
81
80
79
39
35
35
57
92
80
38
34
34
58
93
81
37
33
33
59
93
82
36
32
32
60
92
83
35
31
31
61
91
84
34
30
30
62
90
85
33
29
29
63
89
86
32
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
87
31
15
29
63
75
88
30
14
30
62
74
89
29
13
31
61
73
90
28
12
32
60
72
91
27
11
33
59
71
92
26
10
34
58
70
93
25
9
35
57
69
93
24
8
36
56
68
92
23
7
37
55
67
91
22
6
38
54
66
90
21
5
39
53
65
89
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
115
116
117
118
119
120
121
122
123
124
125
126
127
139
159
147
110
122
126
114
126
138
158
146
109
121
125
113
125
137
157
145
108
120
124
112
124
136
156
144
107
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
111
123
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
110
111
76
62
74
86
98
112
77
61
73
85
97
113
78
60
72
84
96
113
79
59
71
83
95
112
80
58
70
82
94
111
81
57
69
81
93
110
82
56
68
80
92
109
95
94
93
92
91
90
89
88
87
86
85
84
83
55
67
79
91
108
107
106
105
104
103
102
101
100
99
98
97
96
54
66
78
90
53
65
77
89
52
64
76
88
51
63
75
87
50
62
74
86
49
50
51
52
53
54
55
56
57
58
59
60
61
73
74
75
76
77
78
79
80
81
82
83
84
85
48
60
72
86
47
59
71
87
46
58
70
88
45
57
69
89
44
56
68
90
43
55
67
91
60
59
58
57
56
55
54
53
52
51
50
49
48
42
54
66
92
73
72
71
70
69
68
67
66
65
64
63
62
61
47
41
53
65
93
74
46
40
52
64
94
75
45
39
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
95
76
44
38
38
52
95
77
43
37
37
53
94
78
42
36
36
54
93
79
41
42
43
44
43
42
41
40
39
38
37
36
35
35
55
92
91
90
89
88
87
86
85
84
83
82
81
80
40
34
34
56
93
81
39
33
33
57
93
82
38
32
32
58
92
83
37
31
31
59
91
84
36
30
30
60
90
85
35
29
29
61
89
86
34
28
28
62
88
87
33
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
32
14
28
62
74
89
31
13
29
61
73
90
30
12
30
60
72
91
29
11
31
59
71
92
28
10
32
58
70
93
27
9
33
57
69
93
26
8
34
56
68
92
25
7
35
55
67
91
24
6
36
54
66
90
23
5
37
53
65
89
22
4
38
52
64
88
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
139
159
147
110
122
126
114
115
116
117
118
119
120
121
122
123
124
125
126
138
158
146
109
121
125
113
125
137
157
145
108
120
124
112
124
136
156
144
107
119
123
111
123
135
155
143
106
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
110
122
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
99
111
99
111
123
135
131
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
87
99
111
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
109
110
75
61
73
85
97
111
76
60
72
84
96
112
77
59
71
83
95
112
78
58
70
82
94
111
79
57
69
81
93
110
80
56
68
80
92
109
81
55
67
79
91
108
94
93
92
91
90
89
88
87
86
85
84
83
82
54
66
78
90
107
106
105
104
103
102
101
100
99
98
97
96
95
53
65
77
89
52
64
76
88
51
63
75
87
50
62
74
86
49
61
73
85
48
49
50
51
52
53
54
55
56
57
58
59
60
72
73
74
75
76
77
78
79
80
81
82
83
84
47
59
71
85
46
58
70
86
45
57
69
87
44
56
68
88
43
55
67
89
42
54
66
90
61
60
59
58
57
56
55
54
53
52
51
50
49
41
53
65
91
74
73
72
71
70
69
68
67
66
65
64
63
62
48
40
52
64
92
75
47
39
51
63
93
76
46
38
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
94
77
45
37
37
51
95
78
44
36
36
52
95
79
43
35
35
53
94
80
42
43
44
43
42
41
40
39
38
37
36
35
34
34
54
93
92
91
90
89
88
87
86
85
84
83
82
81
41
33
33
55
93
82
40
32
32
56
92
83
39
31
31
57
91
84
38
30
30
58
90
85
37
29
29
59
89
86
36
28
28
60
88
87
35
27
27
61
87
88
34
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
89
33
13
27
61
73
90
32
12
28
60
72
91
31
11
29
59
71
92
30
10
30
58
70
93
29
9
31
57
69
93
28
8
32
56
68
92
27
7
33
55
67
91
26
6
34
54
66
90
25
5
35
53
65
89
24
4
36
52
64
88
23
3
37
51
63
87
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
139
159
147
110
122
126
138
158
146
109
121
125
113
114
115
116
117
118
119
120
121
122
123
124
125
137
157
145
108
120
124
112
124
136
156
144
107
119
123
111
123
135
155
143
106
118
122
110
122
134
154
142
105
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
109
121
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
99
111
99
111
123
135
131
94
98
110
98
110
122
134
130
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
87
99
111
74
86
98
110
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
108
109
74
60
72
84
96
110
75
59
71
83
95
111
76
58
70
82
94
111
77
57
69
81
93
110
78
56
68
80
92
109
79
55
67
79
91
108
80
54
66
78
90
107
93
92
91
90
89
88
87
86
85
84
83
82
81
53
65
77
89
106
105
104
103
102
101
100
99
98
97
96
95
94
52
64
76
88
51
63
75
87
50
62
74
86
49
61
73
85
48
60
72
84
47
48
49
50
51
52
53
54
55
56
57
58
59
71
72
73
74
75
76
77
78
79
80
81
82
83
46
58
70
84
45
57
69
85
44
56
68
86
43
55
67
87
42
54
66
88
41
53
65
89
62
61
60
59
58
57
56
55
54
53
52
51
50
40
52
64
90
75
74
73
72
71
70
69
68
67
66
65
64
63
49
39
51
63
91
76
48
38
50
62
92
77
47
37
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
93
78
46
36
36
50
94
79
45
35
35
51
95
80
44
34
34
52
94
81
43
44
43
42
41
40
39
38
37
36
35
34
33
33
53
93
93
92
91
90
89
88
87
86
85
84
83
82
42
32
32
54
92
83
41
31
31
55
91
84
40
30
30
56
90
85
39
29
29
57
89
86
38
28
28
58
88
87
37
27
27
59
87
88
36
26
26
60
86
89
35
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
90
34
12
26
60
72
91
33
11
27
59
71
92
32
10
28
58
70
93
31
9
29
57
69
93
30
8
30
56
68
92
29
7
31
55
67
91
28
6
32
54
66
90
27
5
33
53
65
89
26
4
34
52
64
88
25
3
35
51
63
87
24
2
36
50
62
86
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
139
159
147
110
122
126
138
158
146
109
121
125
137
157
145
108
120
124
112
113
114
115
116
117
118
119
120
121
122
123
124
136
156
144
107
119
123
111
123
135
155
143
106
118
122
110
122
134
154
142
105
117
121
109
121
133
153
141
104
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
108
120
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
99
111
99
111
123
135
131
94
98
110
98
110
122
134
130
93
97
109
97
109
121
133
129
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
108
107
106
105
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
119
120
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
87
99
111
74
86
98
110
73
85
97
109
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
107
108
73
59
71
83
95
109
74
58
70
82
94
110
75
57
69
81
93
110
76
56
68
80
92
109
77
55
67
79
91
108
78
54
66
78
90
107
79
53
65
77
89
106
92
91
90
89
88
87
86
85
84
83
82
81
80
52
64
76
88
105
104
103
102
101
100
99
98
97
96
95
94
93
51
63
75
87
50
62
74
86
49
61
73
85
48
60
72
84
47
59
71
83
46
47
48
49
50
51
52
53
54
55
56
57
58
70
71
72
73
74
75
76
77
78
79
80
81
82
45
57
69
83
44
56
68
84
43
55
67
85
42
54
66
86
41
53
65
87
40
52
64
88
63
62
61
60
59
58
57
56
55
54
53
52
51
39
51
63
89
76
75
74
73
72
71
70
69
68
67
66
65
64
50
38
50
62
90
77
49
37
49
61
91
78
48
36
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
92
79
47
35
35
49
93
80
46
34
34
50
94
81
45
33
33
51
93
82
44
43
42
41
40
39
38
37
36
35
34
33
32
32
52
92
93
93
92
91
90
89
88
87
86
85
84
83
43
31
31
53
91
84
42
30
30
54
90
85
41
29
29
55
89
86
40
28
28
56
88
87
39
27
27
57
87
88
38
26
26
58
86
89
37
25
25
59
85
90
36
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
91
35
11
25
59
71
92
34
10
26
58
70
93
33
9
27
57
69
93
32
8
28
56
68
92
31
7
29
55
67
91
30
6
30
54
66
90
29
5
31
53
65
89
28
4
32
52
64
88
27
3
33
51
63
87
26
2
34
50
62
86
25
1
35
49
61
85
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
131
143
123
135
155
143
130
142
122
134
154
142
129
141
121
133
153
141
128
140
120
132
152
140
127
139
119
131
151
139
126
138
118
130
150
138
125
137
117
129
149
137
124
136
116
128
148
136
123
135
115
127
147
135
122
134
114
126
146
134
121
133
113
125
145
133
120
132
112
100
101
102
103
104
105
106
107
108
109
110
111
112
124
144
132
119
131
111
99
111
123
143
131
118
130
110
98
110
122
142
130
117
129
109
97
109
121
141
129
116
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
108
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
128
115
119
107
95
107
119
131
127
114
118
106
94
106
118
130
126
113
117
105
93
105
117
129
125
112
116
104
92
104
116
128
124
111
115
103
91
103
115
127
123
110
114
102
90
102
114
126
122
109
113
101
89
101
113
125
121
108
112
100
88
100
112
124
120
107
111
99
87
99
111
123
119
106
110
98
86
98
110
122
118
105
109
97
85
97
109
121
117
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
107
108
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
95
83
95
107
94
82
94
106
93
81
93
105
92
80
92
104
91
79
91
103
90
78
90
102
89
77
89
101
88
76
88
100
87
75
87
99
86
74
86
98
85
73
85
97
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
85
71
59
71
83
97
86
70
58
70
82
98
87
69
57
69
81
99
88
68
56
68
80
100
89
67
55
67
79
101
90
66
54
66
78
102
91
65
53
65
77
103
104
103
102
101
100
99
98
97
96
95
94
93
92
64
52
64
76
104
105
106
107
108
109
110
110
109
108
107
106
105
63
51
63
75
62
50
62
74
61
49
61
73
60
48
60
72
59
47
59
71
58
57
56
55
54
53
52
51
50
49
48
47
46
58
59
60
61
62
63
64
65
66
67
68
69
70
57
45
57
69
56
44
56
68
55
43
55
67
54
42
54
66
53
41
53
65
52
40
52
64
75
74
73
72
71
70
69
68
67
66
65
64
63
51
39
51
63
75
76
77
78
79
80
81
81
80
79
78
77
76
62
50
38
50
62
74
61
49
37
49
61
73
60
48
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
60
72
59
47
23
35
59
71
58
46
22
34
58
70
57
45
21
33
57
69
56
55
54
53
52
51
50
49
48
47
46
45
44
20
32
56
57
58
59
60
61
62
63
64
65
66
67
68
57
43
19
31
55
69
58
42
18
30
54
70
59
41
17
29
53
71
60
40
16
28
52
72
61
39
15
27
51
73
62
38
14
26
50
74
63
37
13
25
49
75
64
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
76
65
25
11
23
37
77
66
26
10
22
38
78
67
27
9
21
39
79
68
28
8
20
40
80
67
29
7
19
41
79
66
30
6
18
42
78
65
31
5
17
43
77
64
32
4
16
44
76
63
33
3
15
45
75
62
34
2
14
46
74
61
35
1
13
47
73
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
40
39
38
37
36
0
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
132
144
124
134
154
142
131
143
123
133
153
141
130
142
122
132
152
140
129
141
121
131
151
139
128
140
120
130
150
138
127
139
119
129
149
137
126
138
118
128
148
136
125
137
117
127
147
135
124
136
116
126
146
134
123
135
115
125
145
133
122
134
114
124
144
132
121
133
113
101
102
103
104
105
106
107
108
109
110
111
112
111
123
143
131
120
132
112
100
110
122
142
130
119
131
111
99
109
121
141
129
118
130
110
98
108
120
140
128
117
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
107
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
127
116
120
108
96
106
118
130
126
115
119
107
95
105
117
129
125
114
118
106
94
104
116
128
124
113
117
105
93
103
115
127
123
112
116
104
92
102
114
126
122
111
115
103
91
101
113
125
121
110
114
102
90
100
112
124
120
109
113
101
89
99
111
123
119
108
112
100
88
98
110
122
118
107
111
99
87
97
109
121
117
106
110
98
86
96
108
120
116
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
97
96
95
94
93
92
91
90
89
88
87
86
85
95
96
97
98
99
100
101
102
103
104
105
106
107
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
96
84
94
106
95
83
93
105
94
82
92
104
93
81
91
103
92
80
90
102
91
79
89
101
90
78
88
100
89
77
87
99
88
76
86
98
87
75
85
97
86
74
84
96
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
86
72
60
70
82
96
87
71
59
69
81
97
88
70
58
68
80
98
89
69
57
67
79
99
90
68
56
66
78
100
91
67
55
65
77
101
92
66
54
64
76
102
105
104
103
102
101
100
99
98
97
96
95
94
93
65
53
63
75
103
104
105
106
107
108
109
110
110
109
108
107
106
64
52
62
74
63
51
61
73
62
50
60
72
61
49
59
71
60
48
58
70
59
58
57
56
55
54
53
52
51
50
49
48
47
57
58
59
60
61
62
63
64
65
66
67
68
69
58
46
56
68
57
45
55
67
56
44
54
66
55
43
53
65
54
42
52
64
53
41
51
63
76
75
74
73
72
71
70
69
68
67
66
65
64
52
40
50
62
74
75
76
77
78
79
80
81
81
80
79
78
77
63
51
39
49
61
73
62
50
38
48
60
72
61
49
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
35
36
37
38
39
40
41
42
43
44
45
46
47
59
71
60
48
24
34
58
70
59
47
23
33
57
69
58
46
22
32
56
68
57
56
55
54
53
52
51
50
49
48
47
46
45
21
31
55
56
57
58
59
60
61
62
63
64
65
66
67
58
44
20
30
54
68
59
43
19
29
53
69
60
42
18
28
52
70
61
41
17
27
51
71
62
40
16
26
50
72
63
39
15
25
49
73
64
38
14
24
48
74
65
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
75
66
26
12
22
36
76
67
27
11
21
37
77
68
28
10
20
38
78
69
29
9
19
39
79
68
30
8
18
40
78
67
31
7
17
41
77
66
32
6
16
42
76
65
33
5
15
43
75
64
34
4
14
44
74
63
35
3
13
45
73
62
36
2
12
46
72
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
40
39
38
37
1
0
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
133
145
125
133
153
141
132
144
124
132
152
140
131
143
123
131
151
139
130
142
122
130
150
138
129
141
121
129
149
137
128
140
120
128
148
136
127
139
119
127
147
135
126
138
118
126
146
134
125
137
117
125
145
133
124
136
116
124
144
132
123
135
115
123
143
131
122
134
114
102
103
104
105
106
107
108
109
110
111
112
111
110
122
142
130
121
133
113
101
109
121
141
129
120
132
112
100
108
120
140
128
119
131
111
99
107
119
139
127
118
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
106
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
126
117
121
109
97
105
117
129
125
116
120
108
96
104
116
128
124
115
119
107
95
103
115
127
123
114
118
106
94
102
114
126
122
113
117
105
93
101
113
125
121
112
116
104
92
100
112
124
120
111
115
103
91
99
111
123
119
110
114
102
90
98
110
122
118
109
113
101
89
97
109
121
117
108
112
100
88
96
108
120
116
107
111
99
87
95
107
119
115
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
98
97
96
95
94
93
92
91
90
89
88
87
86
94
95
96
97
98
99
100
101
102
103
104
105
106
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
97
85
93
105
96
84
92
104
95
83
91
103
94
82
90
102
93
81
89
101
92
80
88
100
91
79
87
99
90
78
86
98
89
77
85
97
88
76
84
96
87
75
83
95
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
87
73
61
69
81
95
88
72
60
68
80
96
89
71
59
67
79
97
90
70
58
66
78
98
91
69
57
65
77
99
92
68
56
64
76
100
93
67
55
63
75
101
106
105
104
103
102
101
100
99
98
97
96
95
94
66
54
62
74
102
103
104
105
106
107
108
109
110
110
109
108
107
65
53
61
73
64
52
60
72
63
51
59
71
62
50
58
70
61
49
57
69
60
59
58
57
56
55
54
53
52
51
50
49
48
56
57
58
59
60
61
62
63
64
65
66
67
68
59
47
55
67
58
46
54
66
57
45
53
65
56
44
52
64
55
43
51
63
54
42
50
62
77
76
75
74
73
72
71
70
69
68
67
66
65
53
41
49
61
73
74
75
76
77
78
79
80
81
81
80
79
78
64
52
40
48
60
72
63
51
39
47
59
71
62
50
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
58
70
61
49
25
33
57
69
60
48
24
32
56
68
59
47
23
31
55
67
58
57
56
55
54
53
52
51
50
49
48
47
46
22
30
54
55
56
57
58
59
60
61
62
63
64
65
66
59
45
21
29
53
67
60
44
20
28
52
68
61
43
19
27
51
69
62
42
18
26
50
70
63
41
17
25
49
71
64
40
16
24
48
72
65
39
15
23
47
73
66
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
74
67
27
13
21
35
75
68
28
12
20
36
76
69
29
11
19
37
77
70
30
10
18
38
78
69
31
9
17
39
77
68
32
8
16
40
76
67
33
7
15
41
75
66
34
6
14
42
74
65
35
5
13
43
73
64
36
4
12
44
72
63
37
3
11
45
71
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
40
39
38
2
1
0
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
134
146
126
132
152
140
133
145
125
131
151
139
132
144
124
130
150
138
131
143
123
129
149
137
130
142
122
128
148
136
129
141
121
127
147
135
128
140
120
126
146
134
127
139
119
125
145
133
126
138
118
124
144
132
125
137
117
123
143
131
124
136
116
122
142
130
123
135
115
103
104
105
106
107
108
109
110
111
112
111
110
109
121
141
129
122
134
114
102
108
120
140
128
121
133
113
101
107
119
139
127
120
132
112
100
106
118
138
126
119
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
125
118
122
110
98
104
116
128
124
117
121
109
97
103
115
127
123
116
120
108
96
102
114
126
122
115
119
107
95
101
113
125
121
114
118
106
94
100
112
124
120
113
117
105
93
99
111
123
119
112
116
104
92
98
110
122
118
111
115
103
91
97
109
121
117
110
114
102
90
96
108
120
116
109
113
101
89
95
107
119
115
108
112
100
88
94
106
118
114
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
99
98
97
96
95
94
93
92
91
90
89
88
87
93
94
95
96
97
98
99
100
101
102
103
104
105
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
98
86
92
104
97
85
91
103
96
84
90
102
95
83
89
101
94
82
88
100
93
81
87
99
92
80
86
98
91
79
85
97
90
78
84
96
89
77
83
95
88
76
82
94
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
88
74
62
68
80
94
89
73
61
67
79
95
90
72
60
66
78
96
91
71
59
65
77
97
92
70
58
64
76
98
93
69
57
63
75
99
94
68
56
62
74
100
107
106
105
104
103
102
101
100
99
98
97
96
95
67
55
61
73
101
102
103
104
105
106
107
108
109
110
110
109
108
66
54
60
72
65
53
59
71
64
52
58
70
63
51
57
69
62
50
56
68
61
60
59
58
57
56
55
54
53
52
51
50
49
55
56
57
58
59
60
61
62
63
64
65
66
67
60
48
54
66
59
47
53
65
58
46
52
64
57
45
51
63
56
44
50
62
55
43
49
61
78
77
76
75
74
73
72
71
70
69
68
67
66
54
42
48
60
72
73
74
75
76
77
78
79
80
81
81
80
79
65
53
41
47
59
71
64
52
40
46
58
70
63
51
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
57
69
62
50
26
32
56
68
61
49
25
31
55
67
60
48
24
30
54
66
59
58
57
56
55
54
53
52
51
50
49
48
47
23
29
53
54
55
56
57
58
59
60
61
62
63
64
65
60
46
22
28
52
66
61
45
21
27
51
67
62
44
20
26
50
68
63
43
19
25
49
69
64
42
18
24
48
70
65
41
17
23
47
71
66
40
16
22
46
72
67
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
73
68
28
14
20
34
74
69
29
13
19
35
75
70
30
12
18
36
76
71
31
11
17
37
77
70
32
10
16
38
76
69
33
9
15
39
75
68
34
8
14
40
74
67
35
7
13
41
73
66
36
6
12
42
72
65
37
5
11
43
71
64
38
4
10
44
70
71
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
40
39
3
2
1
0
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
135
147
127
131
151
139
134
146
126
130
150
138
133
145
125
129
149
137
132
144
124
128
148
136
131
143
123
127
147
135
130
142
122
126
146
134
129
141
121
125
145
133
128
140
120
124
144
132
127
139
119
123
143
131
126
138
118
122
142
130
125
137
117
121
141
129
124
136
116
104
105
106
107
108
109
110
111
112
111
110
109
108
120
140
128
123
135
115
103
107
119
139
127
122
134
114
102
106
118
138
126
121
133
113
101
105
117
137
125
120
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
124
119
123
111
99
103
115
127
123
118
122
110
98
102
114
126
122
117
121
109
97
101
113
125
121
116
120
108
96
100
112
124
120
115
119
107
95
99
111
123
119
114
118
106
94
98
110
122
118
113
117
105
93
97
109
121
117
112
116
104
92
96
108
120
116
111
115
103
91
95
107
119
115
110
114
102
90
94
106
118
114
109
113
101
89
93
105
117
113
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
100
99
98
97
96
95
94
93
92
91
90
89
88
92
93
94
95
96
97
98
99
100
101
102
103
104
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
99
87
91
103
98
86
90
102
97
85
89
101
96
84
88
100
95
83
87
99
94
82
86
98
93
81
85
97
92
80
84
96
91
79
83
95
90
78
82
94
89
77
81
93
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
89
75
63
67
79
93
90
74
62
66
78
94
91
73
61
65
77
95
92
72
60
64
76
96
93
71
59
63
75
97
94
70
58
62
74
98
95
69
57
61
73
99
108
107
106
105
104
103
102
101
100
99
98
97
96
68
56
60
72
100
101
102
103
104
105
106
107
108
109
110
110
109
67
55
59
71
66
54
58
70
65
53
57
69
64
52
56
68
63
51
55
67
62
61
60
59
58
57
56
55
54
53
52
51
50
54
55
56
57
58
59
60
61
62
63
64
65
66
61
49
53
65
60
48
52
64
59
47
51
63
58
46
50
62
57
45
49
61
56
44
48
60
79
78
77
76
75
74
73
72
71
70
69
68
67
55
43
47
59
71
72
73
74
75
76
77
78
79
80
81
81
80
66
54
42
46
58
70
65
53
41
45
57
69
64
52
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
56
68
63
51
27
31
55
67
62
50
26
30
54
66
61
49
25
29
53
65
60
59
58
57
56
55
54
53
52
51
50
49
48
24
28
52
53
54
55
56
57
58
59
60
61
62
63
64
61
47
23
27
51
65
62
46
22
26
50
66
63
45
21
25
49
67
64
44
20
24
48
68
65
43
19
23
47
69
66
42
18
22
46
70
67
41
17
21
45
71
68
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
72
69
29
15
19
33
73
70
30
14
18
34
74
71
31
13
17
35
75
72
32
12
16
36
76
71
33
11
15
37
75
70
34
10
14
38
74
69
35
9
13
39
73
68
36
8
12
40
72
67
37
7
11
41
71
66
38
6
10
42
70
65
39
5
9
43
69
72
71
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
40
4
3
2
1
0
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
136
148
128
130
150
138
135
147
127
129
149
137
134
146
126
128
148
136
133
145
125
127
147
135
132
144
124
126
146
134
131
143
123
125
145
133
130
142
122
124
144
132
129
141
121
123
143
131
128
140
120
122
142
130
127
139
119
121
141
129
126
138
118
120
140
128
125
137
117
105
106
107
108
109
110
111
112
111
110
109
108
107
119
139
127
124
136
116
104
106
118
138
126
123
135
115
103
105
117
137
125
122
134
114
102
104
116
136
124
121
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
123
120
124
112
100
102
114
126
122
119
123
111
99
101
113
125
121
118
122
110
98
100
112
124
120
117
121
109
97
99
111
123
119
116
120
108
96
98
110
122
118
115
119
107
95
97
109
121
117
114
118
106
94
96
108
120
116
113
117
105
93
95
107
119
115
112
116
104
92
94
106
118
114
111
115
103
91
93
105
117
113
110
114
102
90
92
104
116
112
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
101
100
99
98
97
96
95
94
93
92
91
90
89
91
92
93
94
95
96
97
98
99
100
101
102
103
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
100
88
90
102
99
87
89
101
98
86
88
100
97
85
87
99
96
84
86
98
95
83
85
97
94
82
84
96
93
81
83
95
92
80
82
94
91
79
81
93
90
78
80
92
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
90
76
64
66
78
92
91
75
63
65
77
93
92
74
62
64
76
94
93
73
61
63
75
95
94
72
60
62
74
96
95
71
59
61
73
97
96
70
58
60
72
98
109
108
107
106
105
104
103
102
101
100
99
98
97
69
57
59
71
99
100
101
102
103
104
105
106
107
108
109
110
110
68
56
58
70
67
55
57
69
66
54
56
68
65
53
55
67
64
52
54
66
63
62
61
60
59
58
57
56
55
54
53
52
51
53
54
55
56
57
58
59
60
61
62
63
64
65
62
50
52
64
61
49
51
63
60
48
50
62
59
47
49
61
58
46
48
60
57
45
47
59
80
79
78
77
76
75
74
73
72
71
70
69
68
56
44
46
58
70
71
72
73
74
75
76
77
78
79
80
81
81
67
55
43
45
57
69
66
54
42
44
56
68
65
53
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
55
67
64
52
28
30
54
66
63
51
27
29
53
65
62
50
26
28
52
64
61
60
59
58
57
56
55
54
53
52
51
50
49
25
27
51
52
53
54
55
56
57
58
59
60
61
62
63
62
48
24
26
50
64
63
47
23
25
49
65
64
46
22
24
48
66
65
45
21
23
47
67
66
44
20
22
46
68
67
43
19
21
45
69
68
42
18
20
44
70
69
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
71
70
30
16
18
32
72
71
31
15
17
33
73
72
32
14
16
34
74
73
33
13
15
35
75
72
34
12
14
36
74
71
35
11
13
37
73
70
36
10
12
38
72
69
37
9
11
39
71
68
38
8
10
40
70
67
39
7
9
41
69
66
40
6
8
42
68
73
72
71
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
5
4
3
2
1
0
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
149
129
129
149
137
136
148
128
128
148
136
135
147
127
127
147
135
134
146
126
126
146
134
133
145
125
125
145
133
132
144
124
124
144
132
131
143
123
123
143
131
130
142
122
122
142
130
129
141
121
121
141
129
128
140
120
120
140
128
127
139
119
119
139
127
126
138
118
106
107
108
109
110
111
112
111
110
109
108
107
106
118
138
126
125
137
117
105
105
117
137
125
124
136
116
104
104
116
136
124
123
135
115
103
103
115
135
123
122
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
122
121
125
113
101
101
113
125
121
120
124
112
100
100
112
124
120
119
123
111
99
99
111
123
119
118
122
110
98
98
110
122
118
117
121
109
97
97
109
121
117
116
120
108
96
96
108
120
116
115
119
107
95
95
107
119
115
114
118
106
94
94
106
118
114
113
117
105
93
93
105
117
113
112
116
104
92
92
104
116
112
111
115
103
91
91
103
115
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
102
101
100
99
98
97
96
95
94
93
92
91
90
90
91
92
93
94
95
96
97
98
99
100
101
102
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
101
89
89
101
100
88
88
100
99
87
87
99
98
86
86
98
97
85
85
97
96
84
84
96
95
83
83
95
94
82
82
94
93
81
81
93
92
80
80
92
91
79
79
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
77
65
65
77
91
92
76
64
64
76
92
93
75
63
63
75
93
94
74
62
62
74
94
95
73
61
61
73
95
96
72
60
60
72
96
97
71
59
59
71
97
110
109
108
107
106
105
104
103
102
101
100
99
98
70
58
58
70
98
99
100
101
102
103
104
105
106
107
108
109
110
69
57
57
69
68
56
56
68
67
55
55
67
66
54
54
66
65
53
53
65
64
63
62
61
60
59
58
57
56
55
54
53
52
52
53
54
55
56
57
58
59
60
61
62
63
64
63
51
51
63
62
50
50
62
61
49
49
61
60
48
48
60
59
47
47
59
58
46
46
58
81
80
79
78
77
76
75
74
73
72
71
70
69
57
45
45
57
69
70
71
72
73
74
75
76
77
78
79
80
81
68
56
44
44
56
68
67
55
43
43
55
67
66
54
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
54
66
65
53
29
29
53
65
64
52
28
28
52
64
63
51
27
27
51
63
62
61
60
59
58
57
56
55
54
53
52
51
50
26
26
50
51
52
53
54
55
56
57
58
59
60
61
62
63
49
25
25
49
63
64
48
24
24
48
64
65
47
23
23
47
65
66
46
22
22
46
66
67
45
21
21
45
67
68
44
20
20
44
68
69
43
19
19
43
69
70
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
70
71
31
17
17
31
71
72
32
16
16
32
72
73
33
15
15
33
73
74
34
14
14
34
74
73
35
13
13
35
73
72
36
12
12
36
72
71
37
11
11
37
71
70
38
10
10
38
70
69
39
9
9
39
69
68
40
8
8
40
68
67
41
7
7
41
67
74
73
72
71
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
6
5
4
3
2
1
0
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
138
150
130
128
148
136
137
149
129
127
147
135
136
148
128
126
146
134
135
147
127
125
145
133
134
146
126
124
144
132
133
145
125
123
143
131
132
144
124
122
142
130
131
143
123
121
141
129
130
142
122
120
140
128
129
141
121
119
139
127
128
140
120
118
138
126
127
139
119
107
108
109
110
111
112
111
110
109
108
107
106
105
117
137
125
126
138
118
106
104
116
136
124
125
137
117
105
103
115
135
123
124
136
116
104
102
114
134
122
123
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
121
122
126
114
102
100
112
124
120
121
125
113
101
99
111
123
119
120
124
112
100
98
110
122
118
119
123
111
99
97
109
121
117
118
122
110
98
96
108
120
116
117
121
109
97
95
107
119
115
116
120
108
96
94
106
118
114
115
119
107
95
93
105
117
113
114
118
106
94
92
104
116
112
113
117
105
93
91
103
115
111
112
116
104
92
90
102
114
110
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
103
102
101
100
99
98
97
96
95
94
93
92
91
89
90
91
92
93
94
95
96
97
98
99
100
101
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
102
90
88
100
101
89
87
99
100
88
86
98
99
87
85
97
98
86
84
96
97
85
83
95
96
84
82
94
95
83
81
93
94
82
80
92
93
81
79
91
92
80
78
90
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
92
78
66
64
76
90
93
77
65
63
75
91
94
76
64
62
74
92
95
75
63
61
73
93
96
74
62
60
72
94
97
73
61
59
71
95
98
72
60
58
70
96
110
110
109
108
107
106
105
104
103
102
101
100
99
71
59
57
69
97
98
99
100
101
102
103
104
105
106
107
108
109
70
58
56
68
69
57
55
67
68
56
54
66
67
55
53
65
66
54
52
64
65
64
63
62
61
60
59
58
57
56
55
54
53
51
52
53
54
55
56
57
58
59
60
61
62
63
64
52
50
62
63
51
49
61
62
50
48
60
61
49
47
59
60
48
46
58
59
47
45
57
81
81
80
79
78
77
76
75
74
73
72
71
70
58
46
44
56
68
69
70
71
72
73
74
75
76
77
78
79
80
69
57
45
43
55
67
68
56
44
42
54
66
67
55
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
53
65
66
54
30
28
52
64
65
53
29
27
51
63
64
52
28
26
50
62
63
62
61
60
59
58
57
56
55
54
53
52
51
27
25
49
50
51
52
53
54
55
56
57
58
59
60
61
64
50
26
24
48
62
65
49
25
23
47
63
66
48
24
22
46
64
67
47
23
21
45
65
68
46
22
20
44
66
69
45
21
19
43
67
70
44
20
18
42
68
71
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
69
72
32
18
16
30
70
73
33
17
15
31
71
74
34
16
14
32
72
75
35
15
13
33
73
74
36
14
12
34
72
73
37
13
11
35
71
72
38
12
10
36
70
71
39
11
9
37
69
70
40
10
8
38
68
69
41
9
7
39
67
68
42
8
6
40
66
75
74
73
72
71
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
7
6
5
4
3
2
1
0
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
139
151
131
127
147
135
138
150
130
126
146
134
137
149
129
125
145
133
136
148
128
124
144
132
135
147
127
123
143
131
134
146
126
122
142
130
133
145
125
121
141
129
132
144
124
120
140
128
131
143
123
119
139
127
130
142
122
118
138
126
129
141
121
117
137
125
128
140
120
108
109
110
111
112
111
110
109
108
107
106
105
104
116
136
124
127
139
119
107
103
115
135
123
126
138
118
106
102
114
134
122
125
137
117
105
101
113
133
121
124
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
120
123
127
115
103
99
111
123
119
122
126
114
102
98
110
122
118
121
125
113
101
97
109
121
117
120
124
112
100
96
108
120
116
119
123
111
99
95
107
119
115
118
122
110
98
94
106
118
114
117
121
109
97
93
105
117
113
116
120
108
96
92
104
116
112
115
119
107
95
91
103
115
111
114
118
106
94
90
102
114
110
113
117
105
93
89
101
113
109
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
104
103
102
101
100
99
98
97
96
95
94
93
92
88
89
90
91
92
93
94
95
96
97
98
99
100
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
103
91
87
99
102
90
86
98
101
89
85
97
100
88
84
96
99
87
83
95
98
86
82
94
97
85
81
93
96
84
80
92
95
83
79
91
94
82
78
90
93
81
77
89
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
93
79
67
63
75
89
94
78
66
62
74
90
95
77
65
61
73
91
96
76
64
60
72
92
97
75
63
59
71
93
98
74
62
58
70
94
99
73
61
57
69
95
109
110
110
109
108
107
106
105
104
103
102
101
100
72
60
56
68
96
97
98
99
100
101
102
103
104
105
106
107
108
71
59
55
67
70
58
54
66
69
57
53
65
68
56
52
64
67
55
51
63
66
65
64
63
62
61
60
59
58
57
56
55
54
50
51
52
53
54
55
56
57
58
59
60
61
62
65
53
49
61
64
52
48
60
63
51
47
59
62
50
46
58
61
49
45
57
60
48
44
56
80
81
81
80
79
78
77
76
75
74
73
72
71
59
47
43
55
67
68
69
70
71
72
73
74
75
76
77
78
79
70
58
46
42
54
66
69
57
45
41
53
65
68
56
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
52
64
67
55
31
27
51
63
66
54
30
26
50
62
65
53
29
25
49
61
64
63
62
61
60
59
58
57
56
55
54
53
52
28
24
48
49
50
51
52
53
54
55
56
57
58
59
60
65
51
27
23
47
61
66
50
26
22
46
62
67
49
25
21
45
63
68
48
24
20
44
64
69
47
23
19
43
65
70
46
22
18
42
66
71
45
21
17
41
67
72
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
68
73
33
19
15
29
69
74
34
18
14
30
70
75
35
17
13
31
71
76
36
16
12
32
72
75
37
15
11
33
71
74
38
14
10
34
70
73
39
13
9
35
69
72
40
12
8
36
68
71
41
11
7
37
67
70
42
10
6
38
66
69
43
9
5
39
65
76
75
74
73
72
71
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
8
7
6
5
4
3
2
1
0
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
140
152
132
126
146
134
139
151
131
125
145
133
138
150
130
124
144
132
137
149
129
123
143
131
136
148
128
122
142
130
135
147
127
121
141
129
134
146
126
120
140
128
133
145
125
119
139
127
132
144
124
118
138
126
131
143
123
117
137
125
130
142
122
116
136
124
129
141
121
109
110
111
112
111
110
109
108
107
106
105
104
103
115
135
123
128
140
120
108
102
114
134
122
127
139
119
107
101
113
133
121
126
138
118
106
100
112
132
120
125
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
119
124
128
116
104
98
110
122
118
123
127
115
103
97
109
121
117
122
126
114
102
96
108
120
116
121
125
113
101
95
107
119
115
120
124
112
100
94
106
118
114
119
123
111
99
93
105
117
113
118
122
110
98
92
104
116
112
117
121
109
97
91
103
115
111
116
120
108
96
90
102
114
110
115
119
107
95
89
101
113
109
114
118
106
94
88
100
112
108
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
105
104
103
102
101
100
99
98
97
96
95
94
93
87
88
89
90
91
92
93
94
95
96
97
98
99
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
104
92
86
98
103
91
85
97
102
90
84
96
101
89
83
95
100
88
82
94
99
87
81
93
98
86
80
92
97
85
79
91
96
84
78
90
95
83
77
89
94
82
76
88
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
94
80
68
62
74
88
95
79
67
61
73
89
96
78
66
60
72
90
97
77
65
59
71
91
98
76
64
58
70
92
99
75
63
57
69
93
100
74
62
56
68
94
108
109
110
110
109
108
107
106
105
104
103
102
101
73
61
55
67
95
96
97
98
99
100
101
102
103
104
105
106
107
72
60
54
66
71
59
53
65
70
58
52
64
69
57
51
63
68
56
50
62
67
66
65
64
63
62
61
60
59
58
57
56
55
49
50
51
52
53
54
55
56
57
58
59
60
61
66
54
48
60
65
53
47
59
64
52
46
58
63
51
45
57
62
50
44
56
61
49
43
55
79
80
81
81
80
79
78
77
76
75
74
73
72
60
48
42
54
66
67
68
69
70
71
72
73
74
75
76
77
78
71
59
47
41
53
65
70
58
46
40
52
64
69
57
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
51
63
68
56
32
26
50
62
67
55
31
25
49
61
66
54
30
24
48
60
65
64
63
62
61
60
59
58
57
56
55
54
53
29
23
47
48
49
50
51
52
53
54
55
56
57
58
59
66
52
28
22
46
60
67
51
27
21
45
61
68
50
26
20
44
62
69
49
25
19
43
63
70
48
24
18
42
64
71
47
23
17
41
65
72
46
22
16
40
66
73
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
67
74
34
20
14
28
68
75
35
19
13
29
69
76
36
18
12
30
70
77
37
17
11
31
71
76
38
16
10
32
70
75
39
15
9
33
69
74
40
14
8
34
68
73
41
13
7
35
67
72
42
12
6
36
66
71
43
11
5
37
65
70
44
10
4
38
64
77
76
75
74
73
72
71
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
9
8
7
6
5
4
3
2
1
0
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
141
153
133
125
145
133
140
152
132
124
144
132
139
151
131
123
143
131
138
150
130
122
142
130
137
149
129
121
141
129
136
148
128
120
140
128
135
147
127
119
139
127
134
146
126
118
138
126
133
145
125
117
137
125
132
144
124
116
136
124
131
143
123
115
135
123
130
142
122
110
111
112
111
110
109
108
107
106
105
104
103
102
114
134
122
129
141
121
109
101
113
133
121
128
140
120
108
100
112
132
120
127
139
119
107
99
111
131
119
126
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
106
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
118
125
129
117
105
97
109
121
117
124
128
116
104
96
108
120
116
123
127
115
103
95
107
119
115
122
126
114
102
94
106
118
114
121
125
113
101
93
105
117
113
120
124
112
100
92
104
116
112
119
123
111
99
91
103
115
111
118
122
110
98
90
102
114
110
117
121
109
97
89
101
113
109
116
120
108
96
88
100
112
108
115
119
107
95
87
99
111
107
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
106
105
104
103
102
101
100
99
98
97
96
95
94
86
87
88
89
90
91
92
93
94
95
96
97
98
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
105
93
85
97
104
92
84
96
103
91
83
95
102
90
82
94
101
89
81
93
100
88
80
92
99
87
79
91
98
86
78
90
97
85
77
89
96
84
76
88
95
83
75
87
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
95
81
69
61
73
87
96
80
68
60
72
88
97
79
67
59
71
89
98
78
66
58
70
90
99
77
65
57
69
91
100
76
64
56
68
92
101
75
63
55
67
93
107
108
109
110
110
109
108
107
106
105
104
103
102
74
62
54
66
94
95
96
97
98
99
100
101
102
103
104
105
106
73
61
53
65
72
60
52
64
71
59
51
63
70
58
50
62
69
57
49
61
68
67
66
65
64
63
62
61
60
59
58
57
56
48
49
50
51
52
53
54
55
56
57
58
59
60
67
55
47
59
66
54
46
58
65
53
45
57
64
52
44
56
63
51
43
55
62
50
42
54
78
79
80
81
81
80
79
78
77
76
75
74
73
61
49
41
53
65
66
67
68
69
70
71
72
73
74
75
76
77
72
60
48
40
52
64
71
59
47
39
51
63
70
58
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
50
62
69
57
33
25
49
61
68
56
32
24
48
60
67
55
31
23
47
59
66
65
64
63
62
61
60
59
58
57
56
55
54
30
22
46
47
48
49
50
51
52
53
54
55
56
57
58
67
53
29
21
45
59
68
52
28
20
44
60
69
51
27
19
43
61
70
50
26
18
42
62
71
49
25
17
41
63
72
48
24
16
40
64
73
47
23
15
39
65
74
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
66
75
35
21
13
27
67
76
36
20
12
28
68
77
37
19
11
29
69
78
38
18
10
30
70
77
39
17
9
31
69
76
40
16
8
32
68
75
41
15
7
33
67
74
42
14
6
34
66
73
43
13
5
35
65
72
44
12
4
36
64
71
45
11
3
37
63
78
77
76
75
74
73
72
71
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
10
9
8
7
6
5
4
3
2
1
0
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
142
154
134
124
144
132
141
153
133
123
143
131
140
152
132
122
142
130
139
151
131
121
141
129
138
150
130
120
140
128
137
149
129
119
139
127
136
148
128
118
138
126
135
147
127
117
137
125
134
146
126
116
136
124
133
145
125
115
135
123
132
144
124
114
134
122
131
143
123
111
112
111
110
109
108
107
106
105
104
103
102
101
113
133
121
130
142
122
110
100
112
132
120
129
141
121
109
99
111
131
119
128
140
120
108
98
110
130
118
127
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
107
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
117
126
130
118
106
96
108
120
116
125
129
117
105
95
107
119
115
124
128
116
104
94
106
118
114
123
127
115
103
93
105
117
113
122
126
114
102
92
104
116
112
121
125
113
101
91
103
115
111
120
124
112
100
90
102
114
110
119
123
111
99
89
101
113
109
118
122
110
98
88
100
112
108
117
121
109
97
87
99
111
107
116
120
108
96
86
98
110
106
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
107
106
105
104
103
102
101
100
99
98
97
96
95
85
86
87
88
89
90
91
92
93
94
95
96
97
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
94
84
96
105
93
83
95
104
92
82
94
103
91
81
93
102
90
80
92
101
89
79
91
100
88
78
90
99
87
77
89
98
86
76
88
97
85
75
87
96
84
74
86
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
96
82
70
60
72
86
97
81
69
59
71
87
98
80
68
58
70
88
99
79
67
57
69
89
100
78
66
56
68
90
101
77
65
55
67
91
102
76
64
54
66
92
106
107
108
109
110
110
109
108
107
106
105
104
103
75
63
53
65
93
94
95
96
97
98
99
100
101
102
103
104
105
74
62
52
64
73
61
51
63
72
60
50
62
71
59
49
61
70
58
48
60
69
68
67
66
65
64
63
62
61
60
59
58
57
47
48
49
50
51
52
53
54
55
56
57
58
59
68
56
46
58
67
55
45
57
66
54
44
56
65
53
43
55
64
52
42
54
63
51
41
53
77
78
79
80
81
81
80
79
78
77
76
75
74
62
50
40
52
64
65
66
67
68
69
70
71
72
73
74
75
76
73
61
49
39
51
63
72
60
48
38
50
62
71
59
47
46
45
44
43
42
41
40
39
38
37
36
35
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
49
61
70
58
34
24
48
60
69
57
33
23
47
59
68
56
32
22
46
58
67
66
65
64
63
62
61
60
59
58
57
56
55
31
21
45
46
47
48
49
50
51
52
53
54
55
56
57
68
54
30
20
44
58
69
53
29
19
43
59
70
52
28
18
42
60
71
51
27
17
41
61
72
50
26
16
40
62
73
49
25
15
39
63
74
48
24
14
38
64
75
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
65
76
36
22
12
26
66
77
37
21
11
27
67
78
38
20
10
28
68
79
39
19
9
29
69
78
40
18
8
30
68
77
41
17
7
31
67
76
42
16
6
32
66
75
43
15
5
33
65
74
44
14
4
34
64
73
45
13
3
35
63
72
46
12
2
36
62
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
143
155
135
123
143
131
142
154
134
122
142
130
141
153
133
121
141
129
140
152
132
120
140
128
139
151
131
119
139
127
138
150
130
118
138
126
137
149
129
117
137
125
136
148
128
116
136
124
135
147
127
115
135
123
134
146
126
114
134
122
133
145
125
113
133
121
132
144
124
112
111
110
109
108
107
106
105
104
103
102
101
100
112
132
120
131
143
123
111
99
111
131
119
130
142
122
110
98
110
130
118
129
141
121
109
97
109
129
117
128
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
108
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
116
127
131
119
107
95
107
119
115
126
130
118
106
94
106
118
114
125
129
117
105
93
105
117
113
124
128
116
104
92
104
116
112
123
127
115
103
91
103
115
111
122
126
114
102
90
102
114
110
121
125
113
101
89
101
113
109
120
124
112
100
88
100
112
108
119
123
111
99
87
99
111
107
118
122
110
98
86
98
110
106
117
121
109
97
85
97
109
105
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
108
107
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
107
95
83
95
106
94
82
94
105
93
81
93
104
92
80
92
103
91
79
91
102
90
78
90
101
89
77
89
100
88
76
88
99
87
75
87
98
86
74
86
97
85
73
85
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
72
73
74
75
76
77
78
79
80
81
82
83
84
97
83
71
59
71
85
98
82
70
58
70
86
99
81
69
57
69
87
100
80
68
56
68
88
101
79
67
55
67
89
102
78
66
54
66
90
103
77
65
53
65
91
105
106
107
108
109
110
110
109
108
107
106
105
104
76
64
52
64
92
93
94
95
96
97
98
99
100
101
102
103
104
75
63
51
63
74
62
50
62
73
61
49
61
72
60
48
60
71
59
47
59
70
69
68
67
66
65
64
63
62
61
60
59
58
46
47
48
49
50
51
52
53
54
55
56
57
58
69
57
45
57
68
56
44
56
67
55
43
55
66
54
42
54
65
53
41
53
64
52
40
52
76
77
78
79
80
81
81
80
79
78
77
76
75
63
51
39
51
63
64
65
66
67
68
69
70
71
72
73
74
75
74
62
50
38
50
62
73
61
49
37
49
61
72
60
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
48
60
71
59
35
23
47
59
70
58
34
22
46
58
69
57
33
21
45
57
68
67
66
65
64
63
62
61
60
59
58
57
56
32
20
44
45
46
47
48
49
50
51
52
53
54
55
56
69
55
31
19
43
57
70
54
30
18
42
58
71
53
29
17
41
59
72
52
28
16
40
60
73
51
27
15
39
61
74
50
26
14
38
62
75
49
25
13
37
63
76
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
64
77
37
23
11
25
65
78
38
22
10
26
66
79
39
21
9
27
67
80
40
20
8
28
68
79
41
19
7
29
67
78
42
18
6
30
66
77
43
17
5
31
65
76
44
16
4
32
64
75
45
15
3
33
63
74
46
14
2
34
62
73
47
13
1
35
61
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
123
111
146
158
138
126
122
110
145
157
137
125
121
109
144
156
136
124
123
122
121
120
119
118
117
116
115
114
113
112
124
120
108
143
155
135
123
111
123
119
107
142
154
134
122
110
122
118
106
141
153
133
121
109
121
117
105
140
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
120
108
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
135
123
111
99
111
99
95
130
134
122
110
98
110
98
94
129
133
121
109
97
109
97
93
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
99
87
75
110
98
86
74
109
97
85
73
108
107
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
109
95
83
71
59
73
110
94
82
70
58
74
110
93
81
69
57
75
109
92
80
68
56
76
108
91
79
67
55
77
107
90
78
66
54
78
106
89
77
65
53
79
93
94
95
96
97
98
99
100
101
102
103
104
105
88
76
64
52
80
81
82
83
84
85
86
87
88
89
90
91
92
87
75
63
51
86
74
62
50
85
73
61
49
84
72
60
48
83
71
59
47
82
81
80
79
78
77
76
75
74
73
72
71
70
58
57
56
55
54
53
52
51
50
49
48
47
46
83
69
57
45
84
68
56
44
85
67
55
43
86
66
54
42
87
65
53
41
88
64
52
40
64
65
66
67
68
69
70
71
72
73
74
75
76
89
63
51
39
51
52
53
54
55
56
57
58
59
60
61
62
63
77
90
62
50
38
50
78
91
61
49
37
49
79
92
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
36
48
80
93
49
35
35
47
81
94
50
34
34
46
82
93
51
33
33
45
83
84
85
86
87
88
89
90
91
92
93
93
92
52
32
32
33
34
35
36
37
38
39
40
41
42
43
44
84
91
53
31
31
43
85
90
54
30
30
42
86
89
55
29
29
41
87
88
56
28
28
40
88
87
57
27
27
39
89
86
58
26
26
38
90
85
59
25
25
37
91
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
36
92
71
59
25
11
35
93
70
58
26
10
34
93
69
57
27
9
33
92
68
56
28
8
32
91
67
55
29
7
31
90
66
54
30
6
30
89
65
53
31
5
29
88
64
52
32
4
28
87
63
51
33
3
27
86
62
50
34
2
26
85
61
49
35
1
25
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
48
47
46
45
44
43
42
41
40
39
38
37
36
0
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
123
111
146
158
138
126
122
110
145
157
137
125
124
123
122
121
120
119
118
117
116
115
114
113
125
121
109
144
156
136
124
112
124
120
108
143
155
135
123
111
123
119
107
142
154
134
122
110
122
118
106
141
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
121
109
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
135
123
111
99
111
99
95
130
134
122
110
98
110
98
94
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
99
87
75
110
98
86
74
109
108
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
110
96
84
72
60
74
111
95
83
71
59
75
111
94
82
70
58
76
110
93
81
69
57
77
109
92
80
68
56
78
108
91
79
67
55
79
107
90
78
66
54
80
94
95
96
97
98
99
100
101
102
103
104
105
106
89
77
65
53
81
82
83
84
85
86
87
88
89
90
91
92
93
88
76
64
52
87
75
63
51
86
74
62
50
85
73
61
49
84
72
60
48
83
82
81
80
79
78
77
76
75
74
73
72
71
59
58
57
56
55
54
53
52
51
50
49
48
47
84
70
58
46
85
69
57
45
86
68
56
44
87
67
55
43
88
66
54
42
89
65
53
41
63
64
65
66
67
68
69
70
71
72
73
74
75
90
64
52
40
50
51
52
53
54
55
56
57
58
59
60
61
62
76
91
63
51
39
49
77
92
62
50
38
48
78
93
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
37
47
79
94
50
36
36
46
80
95
51
35
35
45
81
94
52
34
34
44
82
83
84
85
86
87
88
89
90
91
92
93
93
53
33
33
34
35
36
37
38
39
40
41
42
43
44
43
83
92
54
32
32
42
84
91
55
31
31
41
85
90
56
30
30
40
86
89
57
29
29
39
87
88
58
28
28
38
88
87
59
27
27
37
89
86
60
26
26
36
90
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
35
91
72
60
26
12
34
92
71
59
27
11
33
93
70
58
28
10
32
93
69
57
29
9
31
92
68
56
30
8
30
91
67
55
31
7
29
90
66
54
32
6
28
89
65
53
33
5
27
88
64
52
34
4
26
87
63
51
35
3
25
86
62
50
36
2
24
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
49
48
47
46
45
44
43
42
41
40
39
38
37
1
0
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
123
111
146
158
138
126
125
124
123
122
121
120
119
118
117
116
115
114
126
122
110
145
157
137
125
113
125
121
109
144
156
136
124
112
124
120
108
143
155
135
123
111
123
119
107
142
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
122
110
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
135
123
111
99
111
99
95
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
99
87
75
110
109
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
111
97
85
73
61
75
112
96
84
72
60
76
112
95
83
71
59
77
111
94
82
70
58
78
110
93
81
69
57
79
109
92
80
68
56
80
108
91
79
67
55
81
95
96
97
98
99
100
101
102
103
104
105
106
107
90
78
66
54
82
83
84
85
86
87
88
89
90
91
92
93
94
89
77
65
53
88
76
64
52
87
75
63
51
86
74
62
50
85
73
61
49
84
83
82
81
80
79
78
77
76
75
74
73
72
60
59
58
57
56
55
54
53
52
51
50
49
48
85
71
59
47
86
70
58
46
87
69
57
45
88
68
56
44
89
67
55
43
90
66
54
42
62
63
64
65
66
67
68
69
70
71
72
73
74
91
65
53
41
49
50
51
52
53
54
55
56
57
58
59
60
61
75
92
64
52
40
48
76
93
63
51
39
47
77
94
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
38
46
78
95
51
37
37
45
79
95
52
36
36
44
80
94
53
35
35
43
81
82
83
84
85
86
87
88
89
90
91
92
93
54
34
34
35
36
37
38
39
40
41
42
43
44
43
42
82
93
55
33
33
41
83
92
56
32
32
40
84
91
57
31
31
39
85
90
58
30
30
38
86
89
59
29
29
37
87
88
60
28
28
36
88
87
61
27
27
35
89
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
34
90
73
61
27
13
33
91
72
60
28
12
32
92
71
59
29
11
31
93
70
58
30
10
30
93
69
57
31
9
29
92
68
56
32
8
28
91
67
55
33
7
27
90
66
54
34
6
26
89
65
53
35
5
25
88
64
52
36
4
24
87
63
51
37
3
23
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
50
49
48
47
46
45
44
43
42
41
40
39
38
2
1
0
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
126
125
124
123
122
121
120
119
118
117
116
115
127
123
111
146
158
138
126
114
126
122
110
145
157
137
125
113
125
121
109
144
156
136
124
112
124
120
108
143
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
123
111
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
110
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
112
98
86
74
62
76
113
97
85
73
61
77
113
96
84
72
60
78
112
95
83
71
59
79
111
94
82
70
58
80
110
93
81
69
57
81
109
92
80
68
56
82
96
97
98
99
100
101
102
103
104
105
106
107
108
91
79
67
55
83
84
85
86
87
88
89
90
91
92
93
94
95
90
78
66
54
89
77
65
53
88
76
64
52
87
75
63
51
86
74
62
50
85
84
83
82
81
80
79
78
77
76
75
74
73
61
60
59
58
57
56
55
54
53
52
51
50
49
86
72
60
48
87
71
59
47
88
70
58
46
89
69
57
45
90
68
56
44
91
67
55
43
61
62
63
64
65
66
67
68
69
70
71
72
73
92
66
54
42
48
49
50
51
52
53
54
55
56
57
58
59
60
74
93
65
53
41
47
75
94
64
52
40
46
76
95
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
39
45
77
95
52
38
38
44
78
94
53
37
37
43
79
93
54
36
36
42
80
81
82
83
84
85
86
87
88
89
90
91
92
55
35
35
36
37
38
39
40
41
42
43
44
43
42
41
81
93
56
34
34
40
82
93
57
33
33
39
83
92
58
32
32
38
84
91
59
31
31
37
85
90
60
30
30
36
86
89
61
29
29
35
87
88
62
28
28
34
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
33
89
74
62
28
14
32
90
73
61
29
13
31
91
72
60
30
12
30
92
71
59
31
11
29
93
70
58
32
10
28
93
69
57
33
9
27
92
68
56
34
8
26
91
67
55
35
7
25
90
66
54
36
6
24
89
65
53
37
5
23
88
64
52
38
4
22
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
51
50
49
48
47
46
45
44
43
42
41
40
39
3
2
1
0
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
127
126
125
124
123
122
121
120
119
118
117
116
128
124
112
147
159
139
127
115
127
123
111
146
158
138
126
114
126
122
110
145
157
137
125
113
125
121
109
144
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
124
112
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
111
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
113
99
87
75
63
77
114
98
86
74
62
78
114
97
85
73
61
79
113
96
84
72
60
80
112
95
83
71
59
81
111
94
82
70
58
82
110
93
81
69
57
83
97
98
99
100
101
102
103
104
105
106
107
108
109
92
80
68
56
84
85
86
87
88
89
90
91
92
93
94
95
96
91
79
67
55
90
78
66
54
89
77
65
53
88
76
64
52
87
75
63
51
86
85
84
83
82
81
80
79
78
77
76
75
74
62
61
60
59
58
57
56
55
54
53
52
51
50
87
73
61
49
88
72
60
48
89
71
59
47
90
70
58
46
91
69
57
45
92
68
56
44
60
61
62
63
64
65
66
67
68
69
70
71
72
93
67
55
43
47
48
49
50
51
52
53
54
55
56
57
58
59
73
94
66
54
42
46
74
95
65
53
41
45
75
95
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
40
44
76
94
53
39
39
43
77
93
54
38
38
42
78
92
55
37
37
41
79
80
81
82
83
84
85
86
87
88
89
90
91
56
36
36
37
38
39
40
41
42
43
44
43
42
41
40
80
92
57
35
35
39
81
93
58
34
34
38
82
93
59
33
33
37
83
92
60
32
32
36
84
91
61
31
31
35
85
90
62
30
30
34
86
89
63
29
29
33
87
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
32
88
75
63
29
15
31
89
74
62
30
14
30
90
73
61
31
13
29
91
72
60
32
12
28
92
71
59
33
11
27
93
70
58
34
10
26
93
69
57
35
9
25
92
68
56
36
8
24
91
67
55
37
7
23
90
66
54
38
6
22
89
65
53
39
5
21
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
52
51
50
49
48
47
46
45
44
43
42
41
40
4
3
2
1
0
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
128
127
126
125
124
123
122
121
120
119
118
117
129
125
113
148
160
140
128
116
128
124
112
147
159
139
127
115
127
123
111
146
158
138
126
114
126
122
110
145
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
125
113
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
114
100
88
76
64
78
115
99
87
75
63
79
115
98
86
74
62
80
114
97
85
73
61
81
113
96
84
72
60
82
112
95
83
71
59
83
111
94
82
70
58
84
98
99
100
101
102
103
104
105
106
107
108
109
110
93
81
69
57
85
86
87
88
89
90
91
92
93
94
95
96
97
92
80
68
56
91
79
67
55
90
78
66
54
89
77
65
53
88
76
64
52
87
86
85
84
83
82
81
80
79
78
77
76
75
63
62
61
60
59
58
57
56
55
54
53
52
51
88
74
62
50
89
73
61
49
90
72
60
48
91
71
59
47
92
70
58
46
93
69
57
45
59
60
61
62
63
64
65
66
67
68
69
70
71
94
68
56
44
46
47
48
49
50
51
52
53
54
55
56
57
58
72
95
67
55
43
45
73
95
66
54
42
44
74
94
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
42
43
44
45
46
47
48
49
50
51
52
53
41
43
75
93
54
40
40
42
76
92
55
39
39
41
77
91
56
38
38
40
78
79
80
81
82
83
84
85
86
87
88
89
90
57
37
37
38
39
40
41
42
43
44
43
42
41
40
39
79
91
58
36
36
38
80
92
59
35
35
37
81
93
60
34
34
36
82
93
61
33
33
35
83
92
62
32
32
34
84
91
63
31
31
33
85
90
64
30
30
32
86
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
31
87
76
64
30
16
30
88
75
63
31
15
29
89
74
62
32
14
28
90
73
61
33
13
27
91
72
60
34
12
26
92
71
59
35
11
25
93
70
58
36
10
24
93
69
57
37
9
23
92
68
56
38
8
22
91
67
55
39
7
21
90
66
54
40
6
20
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
53
52
51
50
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
129
128
127
126
125
124
123
122
121
120
119
118
130
126
114
149
161
141
129
117
129
125
113
148
160
140
128
116
128
124
112
147
159
139
127
115
127
123
111
146
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
126
114
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
113
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
115
101
89
77
65
79
116
100
88
76
64
80
116
99
87
75
63
81
115
98
86
74
62
82
114
97
85
73
61
83
113
96
84
72
60
84
112
95
83
71
59
85
99
100
101
102
103
104
105
106
107
108
109
110
111
94
82
70
58
86
87
88
89
90
91
92
93
94
95
96
97
98
93
81
69
57
92
80
68
56
91
79
67
55
90
78
66
54
89
77
65
53
88
87
86
85
84
83
82
81
80
79
78
77
76
64
63
62
61
60
59
58
57
56
55
54
53
52
89
75
63
51
90
74
62
50
91
73
61
49
92
72
60
48
93
71
59
47
94
70
58
46
58
59
60
61
62
63
64
65
66
67
68
69
70
95
69
57
45
45
46
47
48
49
50
51
52
53
54
55
56
57
71
95
68
56
44
44
72
94
67
55
43
43
73
93
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
43
44
45
46
47
48
49
50
51
52
53
54
42
42
74
92
55
41
41
41
75
91
56
40
40
40
76
90
57
39
39
39
77
78
79
80
81
82
83
84
85
86
87
88
89
58
38
38
39
40
41
42
43
44
43
42
41
40
39
38
78
90
59
37
37
37
79
91
60
36
36
36
80
92
61
35
35
35
81
93
62
34
34
34
82
93
63
33
33
33
83
92
64
32
32
32
84
91
65
31
31
31
85
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
30
86
77
65
31
17
29
87
76
64
32
16
28
88
75
63
33
15
27
89
74
62
34
14
26
90
73
61
35
13
25
91
72
60
36
12
24
92
71
59
37
11
23
93
70
58
38
10
22
93
69
57
39
9
21
92
68
56
40
8
20
91
67
55
41
7
19
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
54
53
52
51
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
130
129
128
127
126
125
124
123
122
121
120
119
131
127
115
150
162
142
130
118
130
126
114
149
161
141
129
117
129
125
113
148
160
140
128
116
128
124
112
147
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
127
115
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
114
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
116
102
90
78
66
80
117
101
89
77
65
81
117
100
88
76
64
82
116
99
87
75
63
83
115
98
86
74
62
84
114
97
85
73
61
85
113
96
84
72
60
86
100
101
102
103
104
105
106
107
108
109
110
111
112
95
83
71
59
87
88
89
90
91
92
93
94
95
96
97
98
99
94
82
70
58
93
81
69
57
92
80
68
56
91
79
67
55
90
78
66
54
89
88
87
86
85
84
83
82
81
80
79
78
77
65
64
63
62
61
60
59
58
57
56
55
54
53
90
76
64
52
91
75
63
51
92
74
62
50
93
73
61
49
94
72
60
48
95
71
59
47
57
58
59
60
61
62
63
64
65
66
67
68
69
95
70
58
46
44
45
46
47
48
49
50
51
52
53
54
55
56
70
94
69
57
45
43
71
93
68
56
44
42
72
92
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
44
45
46
47
48
49
50
51
52
53
54
55
43
41
73
91
56
42
42
40
74
90
57
41
41
39
75
89
58
40
40
38
76
77
78
79
80
81
82
83
84
85
86
87
88
59
39
39
40
41
42
43
44
43
42
41
40
39
38
37
77
89
60
38
38
36
78
90
61
37
37
35
79
91
62
36
36
34
80
92
63
35
35
33
81
93
64
34
34
32
82
93
65
33
33
31
83
92
66
32
32
30
84
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
29
85
78
66
32
18
28
86
77
65
33
17
27
87
76
64
34
16
26
88
75
63
35
15
25
89
74
62
36
14
24
90
73
61
37
13
23
91
72
60
38
12
22
92
71
59
39
11
21
93
70
58
40
10
20
93
69
57
41
9
19
92
68
56
42
8
18
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
55
54
53
52
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
131
130
129
128
127
126
125
124
123
122
121
120
132
128
116
151
163
143
131
119
131
127
115
150
162
142
130
118
130
126
114
149
161
141
129
117
129
125
113
148
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
128
116
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
128
127
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
113
114
115
116
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
115
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
117
103
91
79
67
81
118
102
90
78
66
82
118
101
89
77
65
83
117
100
88
76
64
84
116
99
87
75
63
85
115
98
86
74
62
86
114
97
85
73
61
87
101
102
103
104
105
106
107
108
109
110
111
112
113
96
84
72
60
88
89
90
91
92
93
94
95
96
97
98
99
100
95
83
71
59
94
82
70
58
93
81
69
57
92
80
68
56
91
79
67
55
90
89
88
87
86
85
84
83
82
81
80
79
78
66
65
64
63
62
61
60
59
58
57
56
55
54
91
77
65
53
92
76
64
52
93
75
63
51
94
74
62
50
95
73
61
49
95
72
60
48
56
57
58
59
60
61
62
63
64
65
66
67
68
94
71
59
47
43
44
45
46
47
48
49
50
51
52
53
54
55
69
93
70
58
46
42
70
92
69
57
45
41
71
91
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
45
46
47
48
49
50
51
52
53
54
55
56
44
40
72
90
57
43
43
39
73
89
58
42
42
38
74
88
59
41
41
37
75
76
77
78
79
80
81
82
83
84
85
86
87
60
40
40
41
42
43
44
43
42
41
40
39
38
37
36
76
88
61
39
39
35
77
89
62
38
38
34
78
90
63
37
37
33
79
91
64
36
36
32
80
92
65
35
35
31
81
93
66
34
34
30
82
93
67
33
33
29
83
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
28
84
79
67
33
19
27
85
78
66
34
18
26
86
77
65
35
17
25
87
76
64
36
16
24
88
75
63
37
15
23
89
74
62
38
14
22
90
73
61
39
13
21
91
72
60
40
12
20
92
71
59
41
11
19
93
70
58
42
10
18
93
69
57
43
9
17
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
56
55
54
53
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
132
131
130
129
128
127
126
125
124
123
122
121
133
129
117
152
164
144
132
120
132
128
116
151
163
143
131
119
131
127
115
150
162
142
130
118
130
126
114
149
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
129
117
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
129
128
127
126
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
114
115
116
117
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
118
104
92
80
68
82
119
103
91
79
67
83
119
102
90
78
66
84
118
101
89
77
65
85
117
100
88
76
64
86
116
99
87
75
63
87
115
98
86
74
62
88
102
103
104
105
106
107
108
109
110
111
112
113
114
97
85
73
61
89
90
91
92
93
94
95
96
97
98
99
100
101
96
84
72
60
95
83
71
59
94
82
70
58
93
81
69
57
92
80
68
56
91
90
89
88
87
86
85
84
83
82
81
80
79
67
66
65
64
63
62
61
60
59
58
57
56
55
92
78
66
54
93
77
65
53
94
76
64
52
95
75
63
51
95
74
62
50
94
73
61
49
55
56
57
58
59
60
61
62
63
64
65
66
67
93
72
60
48
42
43
44
45
46
47
48
49
50
51
52
53
54
68
92
71
59
47
41
69
91
70
58
46
40
70
90
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
46
47
48
49
50
51
52
53
54
55
56
57
45
39
71
89
58
44
44
38
72
88
59
43
43
37
73
87
60
42
42
36
74
75
76
77
78
79
80
81
82
83
84
85
86
61
41
41
42
43
44
43
42
41
40
39
38
37
36
35
75
87
62
40
40
34
76
88
63
39
39
33
77
89
64
38
38
32
78
90
65
37
37
31
79
91
66
36
36
30
80
92
67
35
35
29
81
93
68
34
34
28
82
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
27
83
80
68
34
20
26
84
79
67
35
19
25
85
78
66
36
18
24
86
77
65
37
17
23
87
76
64
38
16
22
88
75
63
39
15
21
89
74
62
40
14
20
90
73
61
41
13
19
91
72
60
42
12
18
92
71
59
43
11
17
93
70
58
44
10
16
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
56
55
54
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
133
132
131
130
129
128
127
126
125
124
123
122
134
130
118
153
165
145
133
121
133
129
117
152
164
144
132
120
132
128
116
151
163
143
131
119
131
127
115
150
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
130
118
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
130
129
128
127
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
115
116
117
118
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
119
105
93
81
69
83
120
104
92
80
68
84
120
103
91
79
67
85
119
102
90
78
66
86
118
101
89
77
65
87
117
100
88
76
64
88
116
99
87
75
63
89
103
104
105
106
107
108
109
110
111
112
113
114
115
98
86
74
62
90
91
92
93
94
95
96
97
98
99
100
101
102
97
85
73
61
96
84
72
60
95
83
71
59
94
82
70
58
93
81
69
57
92
91
90
89
88
87
86
85
84
83
82
81
80
68
67
66
65
64
63
62
61
60
59
58
57
56
93
79
67
55
94
78
66
54
95
77
65
53
95
76
64
52
94
75
63
51
93
74
62
50
54
55
56
57
58
59
60
61
62
63
64
65
66
92
73
61
49
41
42
43
44
45
46
47
48
49
50
51
52
53
67
91
72
60
48
40
68
90
71
59
47
39
69
89
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
47
48
49
50
51
52
53
54
55
56
57
58
46
38
70
88
59
45
45
37
71
87
60
44
44
36
72
86
61
43
43
35
73
74
75
76
77
78
79
80
81
82
83
84
85
62
42
42
43
44
43
42
41
40
39
38
37
36
35
34
74
86
63
41
41
33
75
87
64
40
40
32
76
88
65
39
39
31
77
89
66
38
38
30
78
90
67
37
37
29
79
91
68
36
36
28
80
92
69
35
35
27
81
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
26
82
81
69
35
21
25
83
80
68
36
20
24
84
79
67
37
19
23
85
78
66
38
18
22
86
77
65
39
17
21
87
76
64
40
16
20
88
75
63
41
15
19
89
74
62
42
14
18
90
73
61
43
13
17
91
72
60
44
12
16
92
71
59
45
11
15
101
100
99
98
97
96
95
94
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
58
57
56
55
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
166
178
158
146
142
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
134
133
132
131
130
129
128
127
126
125
124
123
135
131
119
154
166
146
134
122
134
130
118
153
165
145
133
121
133
129
117
152
164
144
132
120
132
128
116
151
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
131
119
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
115
150
154
142
130
118
130
118
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
131
130
129
128
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
116
117
118
119
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
130
118
106
94
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
120
106
94
82
70
84
121
105
93
81
69
85
121
104
92
80
68
86
120
103
91
79
67
87
119
102
90
78
66
88
118
101
89
77
65
89
117
100
88
76
64
90
104
105
106
107
108
109
110
111
112
113
114
115
116
99
87
75
63
91
92
93
94
95
96
97
98
99
100
101
102
103
98
86
74
62
97
85
73
61
96
84
72
60
95
83
71
59
94
82
70
58
93
92
91
90
89
88
87
86
85
84
83
82
81
69
68
67
66
65
64
63
62
61
60
59
58
57
94
80
68
56
95
79
67
55
95
78
66
54
94
77
65
53
93
76
64
52
92
75
63
51
53
54
55
56
57
58
59
60
61
62
63
64
65
91
74
62
50
40
41
42
43
44
45
46
47
48
49
50
51
52
66
90
73
61
49
39
67
89
72
60
48
38
68
88
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
47
37
69
87
60
46
46
36
70
86
61
45
45
35
71
85
62
44
44
34
72
73
74
75
76
77
78
79
80
81
82
83
84
63
43
43
44
43
42
41
40
39
38
37
36
35
34
33
73
85
64
42
42
32
74
86
65
41
41
31
75
87
66
40
40
30
76
88
67
39
39
29
77
89
68
38
38
28
78
90
69
37
37
27
79
91
70
36
36
26
80
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
25
81
82
70
36
22
24
82
81
69
37
21
23
83
80
68
38
20
22
84
79
67
39
19
21
85
78
66
40
18
20
86
77
65
41
17
19
87
76
64
42
16
18
88
75
63
43
15
17
89
74
62
44
14
16
90
73
61
45
13
15
91
72
60
46
12
14
100
99
98
97
96
95
94
93
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
167
179
159
147
143
131
166
178
158
146
142
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
135
134
133
132
131
130
129
128
127
126
125
124
136
132
120
155
167
147
135
123
135
131
119
154
166
146
134
122
134
130
118
153
165
145
133
121
133
129
117
152
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
132
120
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
116
151
155
143
131
119
131
119
115
150
154
142
130
118
130
118
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
132
131
130
129
128
127
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
117
118
119
120
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
131
119
107
95
130
118
106
94
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
121
107
95
83
71
85
122
106
94
82
70
86
122
105
93
81
69
87
121
104
92
80
68
88
120
103
91
79
67
89
119
102
90
78
66
90
118
101
89
77
65
91
105
106
107
108
109
110
111
112
113
114
115
116
117
100
88
76
64
92
93
94
95
96
97
98
99
100
101
102
103
104
99
87
75
63
98
86
74
62
97
85
73
61
96
84
72
60
95
83
71
59
94
93
92
91
90
89
88
87
86
85
84
83
82
70
69
68
67
66
65
64
63
62
61
60
59
58
95
81
69
57
95
80
68
56
94
79
67
55
93
78
66
54
92
77
65
53
91
76
64
52
52
53
54
55
56
57
58
59
60
61
62
63
64
90
75
63
51
39
40
41
42
43
44
45
46
47
48
49
50
51
65
89
74
62
50
38
66
88
73
61
49
37
67
87
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
48
36
68
86
61
47
47
35
69
85
62
46
46
34
70
84
63
45
45
33
71
72
73
74
75
76
77
78
79
80
81
82
83
64
44
44
43
42
41
40
39
38
37
36
35
34
33
32
72
84
65
43
43
31
73
85
66
42
42
30
74
86
67
41
41
29
75
87
68
40
40
28
76
88
69
39
39
27
77
89
70
38
38
26
78
90
71
37
37
25
79
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
24
80
83
71
37
23
23
81
82
70
38
22
22
82
81
69
39
21
21
83
80
68
40
20
20
84
79
67
41
19
19
85
78
66
42
18
18
86
77
65
43
17
17
87
76
64
44
16
16
88
75
63
45
15
15
89
74
62
46
14
14
90
73
61
47
13
13
99
98
97
96
95
94
93
92
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
168
178
158
146
142
130
167
177
157
145
141
129
166
176
156
144
140
128
165
175
155
143
139
127
164
174
154
142
138
126
163
173
153
141
137
125
162
172
152
140
136
124
161
171
151
139
135
123
160
170
150
138
134
122
159
169
149
137
133
121
158
168
148
136
132
120
157
167
147
135
134
133
132
131
130
129
128
127
126
125
124
123
135
131
119
156
166
146
134
122
134
130
118
155
165
145
133
121
133
129
117
154
164
144
132
120
132
128
116
153
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
131
119
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
115
152
156
142
130
118
130
118
114
151
155
141
129
117
129
117
113
150
154
140
128
116
128
116
112
149
153
139
127
115
127
115
111
148
152
138
126
114
126
114
110
147
151
137
125
113
125
113
109
146
150
136
124
112
124
112
108
145
149
135
123
111
123
111
107
144
148
134
122
110
122
110
106
143
147
133
121
109
121
109
105
142
146
132
120
108
120
108
104
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
131
130
129
128
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
116
117
118
119
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
132
118
106
94
131
117
105
93
130
116
104
92
129
115
103
91
128
114
102
90
127
113
101
89
126
112
100
88
125
111
99
87
124
110
98
86
123
109
97
85
122
108
96
84
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
122
108
96
82
70
84
122
107
95
81
69
85
121
106
94
80
68
86
120
105
93
79
67
87
119
104
92
78
66
88
118
103
91
77
65
89
117
102
90
76
64
90
104
105
106
107
108
109
110
111
112
113
114
115
116
101
89
75
63
91
92
93
94
95
96
97
98
99
100
101
102
103
100
88
74
62
99
87
73
61
98
86
72
60
97
85
71
59
96
84
70
58
95
94
93
92
91
90
89
88
87
86
85
84
83
69
68
67
66
65
64
63
62
61
60
59
58
57
95
82
70
56
94
81
69
55
93
80
68
54
92
79
67
53
91
78
66
52
90
77
65
51
51
52
53
54
55
56
57
58
59
60
61
62
63
89
76
64
50
38
39
40
41
42
43
44
45
46
47
48
49
50
64
88
75
63
49
37
65
87
74
62
48
36
66
86
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
47
35
67
85
62
48
46
34
68
84
63
47
45
33
69
83
64
46
44
32
70
71
72
73
74
75
76
77
78
79
80
81
82
65
45
43
42
41
40
39
38
37
36
35
34
33
32
31
71
83
66
44
44
30
72
84
67
43
43
29
73
85
68
42
42
28
74
86
69
41
41
27
75
87
70
40
40
26
76
88
71
39
39
25
77
89
72
38
38
24
78
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
23
79
84
72
38
24
22
80
83
71
39
23
21
81
82
70
40
22
20
82
81
69
41
21
19
83
80
68
42
20
18
84
79
67
43
19
17
85
78
66
44
18
16
86
77
65
45
17
15
87
76
64
46
16
14
88
75
63
47
15
13
89
74
62
48
14
12
98
97
96
95
94
93
92
91
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
169
170
171
172
173
174
175
176
177
178
179
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
168
177
157
145
141
129
167
176
156
144
140
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
133
132
131
130
129
128
127
126
125
124
123
122
134
130
118
156
165
145
133
121
133
129
117
155
164
144
132
120
132
128
116
154
163
143
131
119
131
127
115
153
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
130
118
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
114
152
155
141
129
117
129
117
113
151
155
140
128
116
128
116
112
150
154
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
130
129
128
127
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
115
116
117
118
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
132
117
105
93
131
116
104
92
130
115
103
91
129
114
102
90
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
120
119
118
117
116
115
114
113
112
111
110
109
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
122
108
97
81
69
83
121
107
96
80
68
84
120
106
95
79
67
85
119
105
94
78
66
86
118
104
93
77
65
87
117
103
92
76
64
88
116
102
91
75
63
89
103
104
105
106
107
108
109
110
111
112
113
114
115
101
90
74
62
90
91
92
93
94
95
96
97
98
99
100
101
102
100
89
73
61
99
88
72
60
98
87
71
59
97
86
70
58
96
85
69
57
95
95
94
93
92
91
90
89
88
87
86
85
84
68
67
66
65
64
63
62
61
60
59
58
57
56
94
83
69
55
93
82
70
54
92
81
69
53
91
80
68
52
90
79
67
51
89
78
66
50
50
51
52
53
54
55
56
57
58
59
60
61
62
88
77
65
49
37
38
39
40
41
42
43
44
45
46
47
48
49
63
87
76
64
48
36
64
86
75
63
47
35
65
85
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
46
34
66
84
63
49
45
33
67
83
64
48
44
32
68
82
65
47
43
31
69
70
71
72
73
74
75
76
77
78
79
80
81
66
46
42
41
40
39
38
37
36
35
34
33
32
31
30
70
82
67
45
43
29
71
83
68
44
44
28
72
84
69
43
43
27
73
85
70
42
42
26
74
86
71
41
41
25
75
87
72
40
40
24
76
88
73
39
39
23
77
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
22
78
85
73
39
25
21
79
84
72
40
24
20
80
83
71
41
23
19
81
82
70
42
22
18
82
81
69
43
21
17
83
80
68
44
20
16
84
79
67
45
19
15
85
78
66
46
18
14
86
77
65
47
17
13
87
76
64
48
16
12
88
75
63
49
15
11
97
96
95
94
93
92
91
90
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
168
169
170
171
172
173
174
175
176
177
178
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
167
176
156
144
140
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
132
131
130
129
128
127
126
125
124
123
122
121
133
129
117
155
164
144
132
120
132
128
116
154
163
143
131
119
131
127
115
153
162
142
130
118
130
126
114
152
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
129
117
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
113
151
154
140
128
116
128
116
112
150
154
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
129
128
127
126
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
114
115
116
117
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
131
116
104
92
130
115
103
91
129
114
102
90
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
119
118
117
116
115
114
113
112
111
110
109
108
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
121
107
98
80
68
82
120
106
97
79
67
83
119
105
96
78
66
84
118
104
95
77
65
85
117
103
94
76
64
86
116
102
93
75
63
87
115
101
92
74
62
88
102
103
104
105
106
107
108
109
110
111
112
113
114
100
91
73
61
89
90
91
92
93
94
95
96
97
98
99
100
101
99
90
72
60
98
89
71
59
97
88
70
58
96
87
69
57
95
86
68
56
94
95
95
94
93
92
91
90
89
88
87
86
85
67
66
65
64
63
62
61
60
59
58
57
56
55
93
84
68
54
92
83
69
53
91
82
70
52
90
81
69
51
89
80
68
50
88
79
67
49
49
50
51
52
53
54
55
56
57
58
59
60
61
87
78
66
48
36
37
38
39
40
41
42
43
44
45
46
47
48
62
86
77
65
47
35
63
85
76
64
46
34
64
84
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
45
33
65
83
64
50
44
32
66
82
65
49
43
31
67
81
66
48
42
30
68
69
70
71
72
73
74
75
76
77
78
79
80
67
47
41
40
39
38
37
36
35
34
33
32
31
30
29
69
81
68
46
42
28
70
82
69
45
43
27
71
83
70
44
44
26
72
84
71
43
43
25
73
85
72
42
42
24
74
86
73
41
41
23
75
87
74
40
40
22
76
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
21
77
86
74
40
26
20
78
85
73
41
25
19
79
84
72
42
24
18
80
83
71
43
23
17
81
82
70
44
22
16
82
81
69
45
21
15
83
80
68
46
20
14
84
79
67
47
19
13
85
78
66
48
18
12
86
77
65
49
17
11
87
76
64
50
16
10
96
95
94
93
92
91
90
89
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
167
168
169
170
171
172
173
174
175
176
177
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
131
130
129
128
127
126
125
124
123
122
121
120
132
128
116
154
163
143
131
119
131
127
115
153
162
142
130
118
130
126
114
152
161
141
129
117
129
125
113
151
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
128
116
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
112
150
153
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
128
127
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
113
114
115
116
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
130
115
103
91
129
114
102
90
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
118
117
116
115
114
113
112
111
110
109
108
107
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
120
106
99
79
67
81
119
105
98
78
66
82
118
104
97
77
65
83
117
103
96
76
64
84
116
102
95
75
63
85
115
101
94
74
62
86
114
100
93
73
61
87
101
102
103
104
105
106
107
108
109
110
111
112
113
99
92
72
60
88
89
90
91
92
93
94
95
96
97
98
99
100
98
91
71
59
97
90
70
58
96
89
69
57
95
88
68
56
94
87
67
55
93
94
95
95
94
93
92
91
90
89
88
87
86
66
65
64
63
62
61
60
59
58
57
56
55
54
92
85
67
53
91
84
68
52
90
83
69
51
89
82
70
50
88
81
69
49
87
80
68
48
48
49
50
51
52
53
54
55
56
57
58
59
60
86
79
67
47
35
36
37
38
39
40
41
42
43
44
45
46
47
61
85
78
66
46
34
62
84
77
65
45
33
63
83
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
44
32
64
82
65
51
43
31
65
81
66
50
42
30
66
80
67
49
41
29
67
68
69
70
71
72
73
74
75
76
77
78
79
68
48
40
39
38
37
36
35
34
33
32
31
30
29
28
68
80
69
47
41
27
69
81
70
46
42
26
70
82
71
45
43
25
71
83
72
44
44
24
72
84
73
43
43
23
73
85
74
42
42
22
74
86
75
41
41
21
75
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
20
76
87
75
41
27
19
77
86
74
42
26
18
78
85
73
43
25
17
79
84
72
44
24
16
80
83
71
45
23
15
81
82
70
46
22
14
82
81
69
47
21
13
83
80
68
48
20
12
84
79
67
49
19
11
85
78
66
50
18
10
86
77
65
51
17
9
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
166
167
168
169
170
171
172
173
174
175
176
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
130
129
128
127
126
125
124
123
122
121
120
119
131
127
115
153
162
142
130
118
130
126
114
152
161
141
129
117
129
125
113
151
160
140
128
116
128
124
112
150
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
127
115
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
111
149
152
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
129
114
102
90
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
117
116
115
114
113
112
111
110
109
108
107
106
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
119
105
100
78
66
80
118
104
99
77
65
81
117
103
98
76
64
82
116
102
97
75
63
83
115
101
96
74
62
84
114
100
95
73
61
85
113
99
94
72
60
86
100
101
102
103
104
105
106
107
108
109
110
111
112
98
93
71
59
87
88
89
90
91
92
93
94
95
96
97
98
99
97
92
70
58
96
91
69
57
95
90
68
56
94
89
67
55
93
88
66
54
92
93
94
95
95
94
93
92
91
90
89
88
87
65
64
63
62
61
60
59
58
57
56
55
54
53
91
86
66
52
90
85
67
51
89
84
68
50
88
83
69
49
87
82
70
48
86
81
69
47
47
48
49
50
51
52
53
54
55
56
57
58
59
85
80
68
46
34
35
36
37
38
39
40
41
42
43
44
45
46
60
84
79
67
45
33
61
83
78
66
44
32
62
82
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
43
31
63
81
66
52
42
30
64
80
67
51
41
29
65
79
68
50
40
28
66
67
68
69
70
71
72
73
74
75
76
77
78
69
49
39
38
37
36
35
34
33
32
31
30
29
28
27
67
79
70
48
40
26
68
80
71
47
41
25
69
81
72
46
42
24
70
82
73
45
43
23
71
83
74
44
44
22
72
84
75
43
43
21
73
85
76
42
42
20
74
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
19
75
88
76
42
28
18
76
87
75
43
27
17
77
86
74
44
26
16
78
85
73
45
25
15
79
84
72
46
24
14
80
83
71
47
23
13
81
82
70
48
22
12
82
81
69
49
21
11
83
80
68
50
20
10
84
79
67
51
19
9
85
78
66
52
18
8
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
165
166
167
168
169
170
171
172
173
174
175
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
129
128
127
126
125
124
123
122
121
120
119
118
130
126
114
152
161
141
129
117
129
125
113
151
160
140
128
116
128
124
112
150
159
139
127
115
127
123
111
149
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
126
114
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
110
148
151
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
116
115
114
113
112
111
110
109
108
107
106
105
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
118
104
101
77
65
79
117
103
100
76
64
80
116
102
99
75
63
81
115
101
98
74
62
82
114
100
97
73
61
83
113
99
96
72
60
84
112
98
95
71
59
85
99
100
101
102
103
104
105
106
107
108
109
110
111
97
94
70
58
86
87
88
89
90
91
92
93
94
95
96
97
98
96
93
69
57
95
92
68
56
94
91
67
55
93
90
66
54
92
89
65
53
91
92
93
94
95
95
94
93
92
91
90
89
88
64
63
62
61
60
59
58
57
56
55
54
53
52
90
87
65
51
89
86
66
50
88
85
67
49
87
84
68
48
86
83
69
47
85
82
70
46
46
47
48
49
50
51
52
53
54
55
56
57
58
84
81
69
45
33
34
35
36
37
38
39
40
41
42
43
44
45
59
83
80
68
44
32
60
82
79
67
43
31
61
81
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
42
30
62
80
67
53
41
29
63
79
68
52
40
28
64
78
69
51
39
27
65
66
67
68
69
70
71
72
73
74
75
76
77
70
50
38
37
36
35
34
33
32
31
30
29
28
27
26
66
78
71
49
39
25
67
79
72
48
40
24
68
80
73
47
41
23
69
81
74
46
42
22
70
82
75
45
43
21
71
83
76
44
44
20
72
84
77
43
43
19
73
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
18
74
89
77
43
29
17
75
88
76
44
28
16
76
87
75
45
27
15
77
86
74
46
26
14
78
85
73
47
25
13
79
84
72
48
24
12
80
83
71
49
23
11
81
82
70
50
22
10
82
81
69
51
21
9
83
80
68
52
20
8
84
79
67
53
19
7
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
128
127
126
125
124
123
122
121
120
119
118
117
129
125
113
151
160
140
128
116
128
124
112
150
159
139
127
115
127
123
111
149
158
138
126
114
126
122
110
148
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
125
113
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
109
147
150
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
117
103
102
76
64
78
116
102
101
75
63
79
115
101
100
74
62
80
114
100
99
73
61
81
113
99
98
72
60
82
112
98
97
71
59
83
111
97
96
70
58
84
98
99
100
101
102
103
104
105
106
107
108
109
110
96
95
69
57
85
86
87
88
89
90
91
92
93
94
95
96
97
95
94
68
56
94
93
67
55
93
92
66
54
92
91
65
53
91
90
64
52
90
91
92
93
94
95
95
94
93
92
91
90
89
63
62
61
60
59
58
57
56
55
54
53
52
51
89
88
64
50
88
87
65
49
87
86
66
48
86
85
67
47
85
84
68
46
84
83
69
45
45
46
47
48
49
50
51
52
53
54
55
56
57
83
82
70
44
32
33
34
35
36
37
38
39
40
41
42
43
44
58
82
81
69
43
31
59
81
80
68
42
30
60
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
41
29
61
79
68
54
40
28
62
78
69
53
39
27
63
77
70
52
38
26
64
65
66
67
68
69
70
71
72
73
74
75
76
71
51
37
36
35
34
33
32
31
30
29
28
27
26
25
65
77
72
50
38
24
66
78
73
49
39
23
67
79
74
48
40
22
68
80
75
47
41
21
69
81
76
46
42
20
70
82
77
45
43
19
71
83
78
44
44
18
72
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
17
73
90
78
44
30
16
74
89
77
45
29
15
75
88
76
46
28
14
76
87
75
47
27
13
77
86
74
48
26
12
78
85
73
49
25
11
79
84
72
50
24
10
80
83
71
51
23
9
81
82
70
52
22
8
82
81
69
53
21
7
83
80
68
54
20
6
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
163
164
165
166
167
168
169
170
171
172
173
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
127
126
125
124
123
122
121
120
119
118
117
116
128
124
112
150
159
139
127
115
127
123
111
149
158
138
126
114
126
122
110
148
157
137
125
113
125
121
109
147
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
124
112
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
108
146
149
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
116
102
103
75
63
77
115
101
102
74
62
78
114
100
101
73
61
79
113
99
100
72
60
80
112
98
99
71
59
81
111
97
98
70
58
82
110
96
97
69
57
83
97
98
99
100
101
102
103
104
105
106
107
108
109
95
96
68
56
84
85
86
87
88
89
90
91
92
93
94
95
96
94
95
67
55
93
94
66
54
92
93
65
53
91
92
64
52
90
91
63
51
89
90
91
92
93
94
95
95
94
93
92
91
90
62
61
60
59
58
57
56
55
54
53
52
51
50
88
89
63
49
87
88
64
48
86
87
65
47
85
86
66
46
84
85
67
45
83
84
68
44
44
45
46
47
48
49
50
51
52
53
54
55
56
82
83
69
43
31
32
33
34
35
36
37
38
39
40
41
42
43
57
81
82
70
42
30
58
80
81
69
41
29
59
79
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
40
28
60
78
69
55
39
27
61
77
70
54
38
26
62
76
71
53
37
25
63
64
65
66
67
68
69
70
71
72
73
74
75
72
52
36
35
34
33
32
31
30
29
28
27
26
25
24
64
76
73
51
37
23
65
77
74
50
38
22
66
78
75
49
39
21
67
79
76
48
40
20
68
80
77
47
41
19
69
81
78
46
42
18
70
82
79
45
43
17
71
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
16
72
91
79
45
31
15
73
90
78
46
30
14
74
89
77
47
29
13
75
88
76
48
28
12
76
87
75
49
27
11
77
86
74
50
26
10
78
85
73
51
25
9
79
84
72
52
24
8
80
83
71
53
23
7
81
82
70
54
22
6
82
81
69
55
21
5
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
162
163
164
165
166
167
168
169
170
171
172
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
126
125
124
123
122
121
120
119
118
117
116
115
127
123
111
149
158
138
126
114
126
122
110
148
157
137
125
113
125
121
109
147
156
136
124
112
124
120
108
146
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
123
111
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
107
145
148
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
113
112
111
110
109
108
107
106
105
104
103
102
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
115
101
104
74
62
76
114
100
103
73
61
77
113
99
102
72
60
78
112
98
101
71
59
79
111
97
100
70
58
80
110
96
99
69
57
81
109
95
98
68
56
82
96
97
98
99
100
101
102
103
104
105
106
107
108
94
97
67
55
83
84
85
86
87
88
89
90
91
92
93
94
95
93
96
66
54
92
95
65
53
91
94
64
52
90
93
63
51
89
92
62
50
88
89
90
91
92
93
94
95
95
94
93
92
91
61
60
59
58
57
56
55
54
53
52
51
50
49
87
90
62
48
86
89
63
47
85
88
64
46
84
87
65
45
83
86
66
44
82
85
67
43
43
44
45
46
47
48
49
50
51
52
53
54
55
81
84
68
42
30
31
32
33
34
35
36
37
38
39
40
41
42
56
80
83
69
41
29
57
79
82
70
40
28
58
78
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
39
27
59
77
70
56
38
26
60
76
71
55
37
25
61
75
72
54
36
24
62
63
64
65
66
67
68
69
70
71
72
73
74
73
53
35
34
33
32
31
30
29
28
27
26
25
24
23
63
75
74
52
36
22
64
76
75
51
37
21
65
77
76
50
38
20
66
78
77
49
39
19
67
79
78
48
40
18
68
80
79
47
41
17
69
81
80
46
42
16
70
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
43
15
71
92
80
46
32
14
72
91
79
47
31
13
73
90
78
48
30
12
74
89
77
49
29
11
75
88
76
50
28
10
76
87
75
51
27
9
77
86
74
52
26
8
78
85
73
53
25
7
79
84
72
54
24
6
80
83
71
55
23
5
81
82
70
56
22
4
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
81
69
68
67
66
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
161
162
163
164
165
166
167
168
169
170
171
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
123
111
149
158
138
126
125
124
123
122
121
120
119
118
117
116
115
114
126
122
110
148
157
137
125
113
125
121
109
147
156
136
124
112
124
120
108
146
155
135
123
111
123
119
107
145
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
122
110
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
106
144
147
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
138
123
111
99
111
99
95
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
113
112
111
110
109
108
107
106
105
104
103
102
101
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
114
100
105
73
61
75
113
99
104
72
60
76
112
98
103
71
59
77
111
97
102
70
58
78
110
96
101
69
57
79
109
95
100
68
56
80
108
94
99
67
55
81
95
96
97
98
99
100
101
102
103
104
105
106
107
93
98
66
54
82
83
84
85
86
87
88
89
90
91
92
93
94
92
97
65
53
91
96
64
52
90
95
63
51
89
94
62
50
88
93
61
49
87
88
89
90
91
92
93
94
95
95
94
93
92
60
59
58
57
56
55
54
53
52
51
50
49
48
86
91
61
47
85
90
62
46
84
89
63
45
83
88
64
44
82
87
65
43
81
86
66
42
42
43
44
45
46
47
48
49
50
51
52
53
54
80
85
67
41
29
30
31
32
33
34
35
36
37
38
39
40
41
55
79
84
68
40
28
56
78
83
69
39
27
57
77
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
38
26
58
76
71
57
37
25
59
75
72
56
36
24
60
74
73
55
35
23
61
62
63
64
65
66
67
68
69
70
71
72
73
74
54
34
33
32
31
30
29
28
27
26
25
24
23
22
62
74
75
53
35
21
63
75
76
52
36
20
64
76
77
51
37
19
65
77
78
50
38
18
66
78
79
49
39
17
67
79
80
48
40
16
68
80
81
47
41
15
69
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
43
42
14
70
93
81
47
33
13
71
92
80
48
32
12
72
91
79
49
31
11
73
90
78
50
30
10
74
89
77
51
29
9
75
88
76
52
28
8
76
87
75
53
27
7
77
86
74
54
26
6
78
85
73
55
25
5
79
84
72
56
24
4
80
83
71
57
23
3
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
82
70
69
68
67
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
160
161
162
163
164
165
166
167
168
169
170
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
123
111
149
158
138
126
122
110
148
157
137
125
124
123
122
121
120
119
118
117
116
115
114
113
125
121
109
147
156
136
124
112
124
120
108
146
155
135
123
111
123
119
107
145
154
134
122
110
122
118
106
144
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
121
109
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
105
143
146
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
138
123
111
99
111
99
95
133
137
122
110
98
110
98
94
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
113
98
86
74
112
111
110
109
108
107
106
105
104
103
102
101
100
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
113
99
106
72
60
74
112
98
105
71
59
75
111
97
104
70
58
76
110
96
103
69
57
77
109
95
102
68
56
78
108
94
101
67
55
79
107
93
100
66
54
80
94
95
96
97
98
99
100
101
102
103
104
105
106
92
99
65
53
81
82
83
84
85
86
87
88
89
90
91
92
93
91
98
64
52
90
97
63
51
89
96
62
50
88
95
61
49
87
94
60
48
86
87
88
89
90
91
92
93
94
95
95
94
93
59
58
57
56
55
54
53
52
51
50
49
48
47
85
92
60
46
84
91
61
45
83
90
62
44
82
89
63
43
81
88
64
42
80
87
65
41
41
42
43
44
45
46
47
48
49
50
51
52
53
79
86
66
40
28
29
30
31
32
33
34
35
36
37
38
39
40
54
78
85
67
39
27
55
77
84
68
38
26
56
76
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
69
37
25
57
75
72
58
36
24
58
74
73
57
35
23
59
73
74
56
34
22
60
61
62
63
64
65
66
67
68
69
70
71
72
75
55
33
32
31
30
29
28
27
26
25
24
23
22
21
61
73
76
54
34
20
62
74
77
53
35
19
63
75
78
52
36
18
64
76
79
51
37
17
65
77
80
50
38
16
66
78
81
49
39
15
67
79
82
48
40
14
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
43
42
41
13
69
93
82
48
34
12
70
93
81
49
33
11
71
92
80
50
32
10
72
91
79
51
31
9
73
90
78
52
30
8
74
89
77
53
29
7
75
88
76
54
28
6
76
87
75
55
27
5
77
86
74
56
26
4
78
85
73
57
25
3
79
84
72
58
24
2
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
83
71
70
69
68
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
159
160
161
162
163
164
165
166
167
168
169
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
123
111
149
158
138
126
122
110
148
157
137
125
121
109
147
156
136
124
123
122
121
120
119
118
117
116
115
114
113
112
124
120
108
146
155
135
123
111
123
119
107
145
154
134
122
110
122
118
106
144
153
133
121
109
121
117
105
143
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
120
108
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
104
142
145
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
138
123
111
99
111
99
95
133
137
122
110
98
110
98
94
132
136
121
109
97
109
97
93
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
113
98
86
74
112
97
85
73
111
110
109
108
107
106
105
104
103
102
101
100
99
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
60
61
62
63
64
65
66
67
68
69
70
71
72
112
98
107
71
59
73
111
97
106
70
58
74
110
96
105
69
57
75
109
95
104
68
56
76
108
94
103
67
55
77
107
93
102
66
54
78
106
92
101
65
53
79
93
94
95
96
97
98
99
100
101
102
103
104
105
91
100
64
52
80
81
82
83
84
85
86
87
88
89
90
91
92
90
99
63
51
89
98
62
50
88
97
61
49
87
96
60
48
86
95
59
47
85
86
87
88
89
90
91
92
93
94
95
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
84
93
59
45
83
92
60
44
82
91
61
43
81
90
62
42
80
89
63
41
79
88
64
40
40
41
42
43
44
45
46
47
48
49
50
51
52
78
87
65
39
27
28
29
30
31
32
33
34
35
36
37
38
39
53
77
86
66
38
26
54
76
85
67
37
25
55
75
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
69
68
36
24
56
74
73
59
35
23
57
73
74
58
34
22
58
72
75
57
33
21
59
60
61
62
63
64
65
66
67
68
69
70
71
76
56
32
31
30
29
28
27
26
25
24
23
22
21
20
60
72
77
55
33
19
61
73
78
54
34
18
62
74
79
53
35
17
63
75
80
52
36
16
64
76
81
51
37
15
65
77
82
50
38
14
66
78
83
49
39
13
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
43
42
41
40
12
68
92
83
49
35
11
69
93
82
50
34
10
70
93
81
51
33
9
71
92
80
52
32
8
72
91
79
53
31
7
73
90
78
54
30
6
74
89
77
55
29
5
75
88
76
56
28
4
76
87
75
57
27
3
77
86
74
58
26
2
78
85
73
59
25
1
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
93
92
91
90
89
88
87
86
85
84
72
71
70
69
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
160
161
162
163
164
165
166
167
168
169
170
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
123
111
149
158
138
126
122
110
148
157
137
125
124
123
122
121
120
119
118
117
116
115
114
113
125
121
109
147
156
136
124
112
124
120
108
146
155
135
123
111
123
119
107
145
154
134
122
110
122
118
106
144
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
121
109
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
105
143
146
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
138
123
111
99
111
99
95
133
137
122
110
98
110
98
94
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
113
98
86
74
112
111
110
109
108
107
106
105
104
103
102
101
100
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
113
99
108
72
60
74
112
98
107
71
59
75
111
97
106
70
58
76
110
96
105
69
57
77
109
95
104
68
56
78
108
94
103
67
55
79
107
93
102
66
54
80
94
95
96
97
98
99
100
101
102
103
104
105
106
92
101
65
53
81
82
83
84
85
86
87
88
89
90
91
92
93
91
100
64
52
90
99
63
51
89
98
62
50
88
97
61
49
87
96
60
48
86
87
88
89
90
91
92
93
94
95
96
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
85
94
60
46
84
93
61
45
83
92
62
44
82
91
63
43
81
90
64
42
80
89
65
41
41
42
43
44
45
46
47
48
49
50
51
52
53
79
88
66
40
28
29
30
31
32
33
34
35
36
37
38
39
40
54
78
87
67
39
27
55
77
86
68
38
26
56
76
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
70
69
37
25
57
75
74
60
36
24
58
74
75
59
35
23
59
73
76
58
34
22
60
61
62
63
64
65
66
67
68
69
70
71
72
77
57
33
32
31
30
29
28
27
26
25
24
23
22
21
61
73
78
56
34
20
62
74
79
55
35
19
63
75
80
54
36
18
64
76
81
53
37
17
65
77
82
52
38
16
66
78
83
51
39
15
67
79
84
50
40
14
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
44
43
42
41
13
69
93
84
50
36
12
70
94
83
51
35
11
71
94
82
52
34
10
72
93
81
53
33
9
73
92
80
54
32
8
74
91
79
55
31
7
75
90
78
56
30
6
76
89
77
57
29
5
77
88
76
58
28
4
78
87
75
59
27
3
79
86
74
60
26
2
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
91
90
89
88
87
86
85
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
161
162
163
164
165
166
167
168
169
170
171
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
123
111
149
158
138
126
125
124
123
122
121
120
119
118
117
116
115
114
126
122
110
148
157
137
125
113
125
121
109
147
156
136
124
112
124
120
108
146
155
135
123
111
123
119
107
145
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
122
110
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
106
144
147
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
138
123
111
99
111
99
95
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
113
112
111
110
109
108
107
106
105
104
103
102
101
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
114
100
109
73
61
75
113
99
108
72
60
76
112
98
107
71
59
77
111
97
106
70
58
78
110
96
105
69
57
79
109
95
104
68
56
80
108
94
103
67
55
81
95
96
97
98
99
100
101
102
103
104
105
106
107
93
102
66
54
82
83
84
85
86
87
88
89
90
91
92
93
94
92
101
65
53
91
100
64
52
90
99
63
51
89
98
62
50
88
97
61
49
87
88
89
90
91
92
93
94
95
96
97
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
86
95
61
47
85
94
62
46
84
93
63
45
83
92
64
44
82
91
65
43
81
90
66
42
42
43
44
45
46
47
48
49
50
51
52
53
54
80
89
67
41
29
30
31
32
33
34
35
36
37
38
39
40
41
55
79
88
68
40
28
56
78
87
69
39
27
57
77
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
71
70
38
26
58
76
75
61
37
25
59
75
76
60
36
24
60
74
77
59
35
23
61
62
63
64
65
66
67
68
69
70
71
72
73
78
58
34
33
32
31
30
29
28
27
26
25
24
23
22
62
74
79
57
35
21
63
75
80
56
36
20
64
76
81
55
37
19
65
77
82
54
38
18
66
78
83
53
39
17
67
79
84
52
40
16
68
80
85
51
41
15
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
95
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
45
44
43
42
14
70
94
85
51
37
13
71
95
84
52
36
12
72
95
83
53
35
11
73
94
82
54
34
10
74
93
81
55
33
9
75
92
80
56
32
8
76
91
79
57
31
7
77
90
78
58
30
6
78
89
77
59
29
5
79
88
76
60
28
4
80
87
75
61
27
3
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
95
94
93
92
91
90
89
88
87
86
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
162
163
164
165
166
167
168
169
170
171
172
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
124
112
150
159
139
127
126
125
124
123
122
121
120
119
118
117
116
115
127
123
111
149
158
138
126
114
126
122
110
148
157
137
125
113
125
121
109
147
156
136
124
112
124
120
108
146
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
123
111
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
107
145
148
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
139
124
112
100
112
100
96
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
113
112
111
110
109
108
107
106
105
104
103
102
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
115
101
110
74
62
76
114
100
109
73
61
77
113
99
108
72
60
78
112
98
107
71
59
79
111
97
106
70
58
80
110
96
105
69
57
81
109
95
104
68
56
82
96
97
98
99
100
101
102
103
104
105
106
107
108
94
103
67
55
83
84
85
86
87
88
89
90
91
92
93
94
95
93
102
66
54
92
101
65
53
91
100
64
52
90
99
63
51
89
98
62
50
88
89
90
91
92
93
94
95
96
97
98
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
87
96
62
48
86
95
63
47
85
94
64
46
84
93
65
45
83
92
66
44
82
91
67
43
43
44
45
46
47
48
49
50
51
52
53
54
55
81
90
68
42
30
31
32
33
34
35
36
37
38
39
40
41
42
56
80
89
69
41
29
57
79
88
70
40
28
58
78
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
72
71
39
27
59
77
76
62
38
26
60
76
77
61
37
25
61
75
78
60
36
24
62
63
64
65
66
67
68
69
70
71
72
73
74
79
59
35
34
33
32
31
30
29
28
27
26
25
24
23
63
75
80
58
36
22
64
76
81
57
37
21
65
77
82
56
38
20
66
78
83
55
39
19
67
79
84
54
40
18
68
80
85
53
41
17
69
81
86
52
42
16
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
96
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
46
45
44
43
15
71
95
86
52
38
14
72
96
85
53
37
13
73
96
84
54
36
12
74
95
83
55
35
11
75
94
82
56
34
10
76
93
81
57
33
9
77
92
80
58
32
8
78
91
79
59
31
7
79
90
78
60
30
6
80
89
77
61
29
5
81
88
76
62
28
4
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
96
95
94
93
92
91
90
89
88
87
75
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
163
164
165
166
167
168
169
170
171
172
173
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
125
113
151
160
140
128
127
126
125
124
123
122
121
120
119
118
117
116
128
124
112
150
159
139
127
115
127
123
111
149
158
138
126
114
126
122
110
148
157
137
125
113
125
121
109
147
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
124
112
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
108
146
149
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
140
125
113
101
113
101
97
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
114
113
112
111
110
109
108
107
106
105
104
103
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
116
102
111
75
63
77
115
101
110
74
62
78
114
100
109
73
61
79
113
99
108
72
60
80
112
98
107
71
59
81
111
97
106
70
58
82
110
96
105
69
57
83
97
98
99
100
101
102
103
104
105
106
107
108
109
95
104
68
56
84
85
86
87
88
89
90
91
92
93
94
95
96
94
103
67
55
93
102
66
54
92
101
65
53
91
100
64
52
90
99
63
51
89
90
91
92
93
94
95
96
97
98
99
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
88
97
63
49
87
96
64
48
86
95
65
47
85
94
66
46
84
93
67
45
83
92
68
44
44
45
46
47
48
49
50
51
52
53
54
55
56
82
91
69
43
31
32
33
34
35
36
37
38
39
40
41
42
43
57
81
90
70
42
30
58
80
89
71
41
29
59
79
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
73
72
40
28
60
78
77
63
39
27
61
77
78
62
38
26
62
76
79
61
37
25
63
64
65
66
67
68
69
70
71
72
73
74
75
80
60
36
35
34
33
32
31
30
29
28
27
26
25
24
64
76
81
59
37
23
65
77
82
58
38
22
66
78
83
57
39
21
67
79
84
56
40
20
68
80
85
55
41
19
69
81
86
54
42
18
70
82
87
53
43
17
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
97
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
47
46
45
44
16
72
96
87
53
39
15
73
97
86
54
38
14
74
97
85
55
37
13
75
96
84
56
36
12
76
95
83
57
35
11
77
94
82
58
34
10
78
93
81
59
33
9
79
92
80
60
32
8
80
91
79
61
31
7
81
90
78
62
30
6
82
89
77
63
29
5
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
97
96
95
94
93
92
91
90
89
88
76
75
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
164
165
166
167
168
169
170
171
172
173
174
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
126
114
152
161
141
129
128
127
126
125
124
123
122
121
120
119
118
117
129
125
113
151
160
140
128
116
128
124
112
150
159
139
127
115
127
123
111
149
158
138
126
114
126
122
110
148
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
125
113
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
109
147
150
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
141
126
114
102
114
102
98
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
115
114
113
112
111
110
109
108
107
106
105
104
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
117
103
112
76
64
78
116
102
111
75
63
79
115
101
110
74
62
80
114
100
109
73
61
81
113
99
108
72
60
82
112
98
107
71
59
83
111
97
106
70
58
84
98
99
100
101
102
103
104
105
106
107
108
109
110
96
105
69
57
85
86
87
88
89
90
91
92
93
94
95
96
97
95
104
68
56
94
103
67
55
93
102
66
54
92
101
65
53
91
100
64
52
90
91
92
93
94
95
96
97
98
99
100
100
99
63
62
61
60
59
58
57
56
55
54
53
52
51
89
98
64
50
88
97
65
49
87
96
66
48
86
95
67
47
85
94
68
46
84
93
69
45
45
46
47
48
49
50
51
52
53
54
55
56
57
83
92
70
44
32
33
34
35
36
37
38
39
40
41
42
43
44
58
82
91
71
43
31
59
81
90
72
42
30
60
80
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
74
73
41
29
61
79
78
64
40
28
62
78
79
63
39
27
63
77
80
62
38
26
64
65
66
67
68
69
70
71
72
73
74
75
76
81
61
37
36
35
34
33
32
31
30
29
28
27
26
25
65
77
82
60
38
24
66
78
83
59
39
23
67
79
84
58
40
22
68
80
85
57
41
21
69
81
86
56
42
20
70
82
87
55
43
19
71
83
88
54
44
18
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
48
47
46
45
17
73
97
88
54
40
16
74
98
87
55
39
15
75
98
86
56
38
14
76
97
85
57
37
13
77
96
84
58
36
12
78
95
83
59
35
11
79
94
82
60
34
10
80
93
81
61
33
9
81
92
80
62
32
8
82
91
79
63
31
7
83
90
78
64
30
6
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
95
94
93
92
91
90
89
77
76
75
74
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
165
166
167
168
169
170
171
172
173
174
175
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
127
115
153
162
142
130
129
128
127
126
125
124
123
122
121
120
119
118
130
126
114
152
161
141
129
117
129
125
113
151
160
140
128
116
128
124
112
150
159
139
127
115
127
123
111
149
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
126
114
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
110
148
151
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
142
127
115
103
115
103
99
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
116
115
114
113
112
111
110
109
108
107
106
105
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
118
104
113
77
65
79
117
103
112
76
64
80
116
102
111
75
63
81
115
101
110
74
62
82
114
100
109
73
61
83
113
99
108
72
60
84
112
98
107
71
59
85
99
100
101
102
103
104
105
106
107
108
109
110
111
97
106
70
58
86
87
88
89
90
91
92
93
94
95
96
97
98
96
105
69
57
95
104
68
56
94
103
67
55
93
102
66
54
92
101
65
53
91
92
93
94
95
96
97
98
99
100
101
101
100
64
63
62
61
60
59
58
57
56
55
54
53
52
90
99
65
51
89
98
66
50
88
97
67
49
87
96
68
48
86
95
69
47
85
94
70
46
46
47
48
49
50
51
52
53
54
55
56
57
58
84
93
71
45
33
34
35
36
37
38
39
40
41
42
43
44
45
59
83
92
72
44
32
60
82
91
73
43
31
61
81
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
75
74
42
30
62
80
79
65
41
29
63
79
80
64
40
28
64
78
81
63
39
27
65
66
67
68
69
70
71
72
73
74
75
76
77
82
62
38
37
36
35
34
33
32
31
30
29
28
27
26
66
78
83
61
39
25
67
79
84
60
40
24
68
80
85
59
41
23
69
81
86
58
42
22
70
82
87
57
43
21
71
83
88
56
44
20
72
84
89
55
45
19
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
99
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
49
48
47
46
18
74
98
89
55
41
17
75
99
88
56
40
16
76
99
87
57
39
15
77
98
86
58
38
14
78
97
85
59
37
13
79
96
84
60
36
12
80
95
83
61
35
11
81
94
82
62
34
10
82
93
81
63
33
9
83
92
80
64
32
8
84
91
79
65
31
7
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
99
98
97
96
95
94
93
92
91
90
78
77
76
75
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
166
167
168
169
170
171
172
173
174
175
176
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
128
116
154
163
143
131
130
129
128
127
126
125
124
123
122
121
120
119
131
127
115
153
162
142
130
118
130
126
114
152
161
141
129
117
129
125
113
151
160
140
128
116
128
124
112
150
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
127
115
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
111
149
152
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
143
128
116
104
116
104
100
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
129
114
102
90
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
117
116
115
114
113
112
111
110
109
108
107
106
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
119
105
114
78
66
80
118
104
113
77
65
81
117
103
112
76
64
82
116
102
111
75
63
83
115
101
110
74
62
84
114
100
109
73
61
85
113
99
108
72
60
86
100
101
102
103
104
105
106
107
108
109
110
111
112
98
107
71
59
87
88
89
90
91
92
93
94
95
96
97
98
99
97
106
70
58
96
105
69
57
95
104
68
56
94
103
67
55
93
102
66
54
92
93
94
95
96
97
98
99
100
101
102
102
101
65
64
63
62
61
60
59
58
57
56
55
54
53
91
100
66
52
90
99
67
51
89
98
68
50
88
97
69
49
87
96
70
48
86
95
71
47
47
48
49
50
51
52
53
54
55
56
57
58
59
85
94
72
46
34
35
36
37
38
39
40
41
42
43
44
45
46
60
84
93
73
45
33
61
83
92
74
44
32
62
82
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
76
75
43
31
63
81
80
66
42
30
64
80
81
65
41
29
65
79
82
64
40
28
66
67
68
69
70
71
72
73
74
75
76
77
78
83
63
39
38
37
36
35
34
33
32
31
30
29
28
27
67
79
84
62
40
26
68
80
85
61
41
25
69
81
86
60
42
24
70
82
87
59
43
23
71
83
88
58
44
22
72
84
89
57
45
21
73
85
90
56
46
20
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
100
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
50
49
48
47
19
75
99
90
56
42
18
76
100
89
57
41
17
77
100
88
58
40
16
78
99
87
59
39
15
79
98
86
60
38
14
80
97
85
61
37
13
81
96
84
62
36
12
82
95
83
63
35
11
83
94
82
64
34
10
84
93
81
65
33
9
85
92
80
66
32
8
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
100
99
98
97
96
95
94
93
92
91
79
78
77
76
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
167
168
169
170
171
172
173
174
175
176
177
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
129
117
155
164
144
132
131
130
129
128
127
126
125
124
123
122
121
120
132
128
116
154
163
143
131
119
131
127
115
153
162
142
130
118
130
126
114
152
161
141
129
117
129
125
113
151
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
128
116
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
112
150
153
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
144
129
117
105
117
105
101
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
128
127
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
113
114
115
116
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
130
115
103
91
129
114
102
90
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
118
117
116
115
114
113
112
111
110
109
108
107
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
120
106
115
79
67
81
119
105
114
78
66
82
118
104
113
77
65
83
117
103
112
76
64
84
116
102
111
75
63
85
115
101
110
74
62
86
114
100
109
73
61
87
101
102
103
104
105
106
107
108
109
110
111
112
113
99
108
72
60
88
89
90
91
92
93
94
95
96
97
98
99
100
98
107
71
59
97
106
70
58
96
105
69
57
95
104
68
56
94
103
67
55
93
94
95
96
97
98
99
100
101
102
103
103
102
66
65
64
63
62
61
60
59
58
57
56
55
54
92
101
67
53
91
100
68
52
90
99
69
51
89
98
70
50
88
97
71
49
87
96
72
48
48
49
50
51
52
53
54
55
56
57
58
59
60
86
95
73
47
35
36
37
38
39
40
41
42
43
44
45
46
47
61
85
94
74
46
34
62
84
93
75
45
33
63
83
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
77
76
44
32
64
82
81
67
43
31
65
81
82
66
42
30
66
80
83
65
41
29
67
68
69
70
71
72
73
74
75
76
77
78
79
84
64
40
39
38
37
36
35
34
33
32
31
30
29
28
68
80
85
63
41
27
69
81
86
62
42
26
70
82
87
61
43
25
71
83
88
60
44
24
72
84
89
59
45
23
73
85
90
58
46
22
74
86
91
57
47
21
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
101
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
51
50
49
48
20
76
100
91
57
43
19
77
101
90
58
42
18
78
101
89
59
41
17
79
100
88
60
40
16
80
99
87
61
39
15
81
98
86
62
38
14
82
97
85
63
37
13
83
96
84
64
36
12
84
95
83
65
35
11
85
94
82
66
34
10
86
93
81
67
33
9
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
101
100
99
98
97
96
95
94
93
92
80
79
78
77
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
178
177
176
175
174
173
172
171
170
169
168
128
140
144
156
176
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
146
166
157
117
129
133
121
122
123
124
125
126
127
128
129
130
131
132
133
145
165
156
116
128
132
120
132
144
164
155
115
127
131
119
131
143
163
154
114
126
130
118
130
142
162
153
113
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
117
129
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
152
112
116
128
116
128
140
154
151
111
115
127
115
127
139
154
150
110
114
126
114
126
138
153
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
106
118
106
118
130
145
141
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
117
116
115
114
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
124
125
126
127
128
129
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
92
104
116
131
91
103
115
130
90
102
114
129
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
108
109
110
111
112
113
114
115
116
117
118
119
120
82
68
80
116
107
121
83
67
79
115
106
120
84
66
78
114
105
119
85
65
77
113
104
118
86
64
76
112
103
117
87
63
75
111
102
116
88
62
74
110
101
115
101
100
99
98
97
96
95
94
93
92
91
90
89
61
73
109
100
114
113
112
111
110
109
108
107
106
105
104
103
102
60
72
108
99
59
71
107
98
58
70
106
97
57
69
105
96
56
68
104
95
55
56
57
58
59
60
61
62
63
64
65
66
67
103
104
104
103
102
101
100
99
98
97
96
95
94
54
68
102
93
53
69
101
92
52
70
100
91
51
71
99
90
50
72
98
89
49
73
97
88
48
47
46
45
44
43
42
41
40
39
38
37
36
48
74
96
87
61
60
59
58
57
56
55
54
53
52
51
50
49
35
47
75
95
86
62
34
46
76
94
85
63
33
45
77
78
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
84
64
32
44
68
82
83
65
31
43
67
83
82
66
30
42
66
84
81
67
29
30
31
32
33
34
35
36
37
38
39
40
41
65
85
80
79
78
77
76
75
74
73
72
71
70
69
68
28
42
64
86
81
69
27
43
63
87
82
70
26
44
62
88
83
71
25
45
61
89
84
72
24
46
60
90
85
73
23
47
59
91
86
74
22
48
58
92
87
75
21
49
50
51
52
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
20
44
58
92
101
77
19
43
59
91
102
78
18
42
60
90
102
79
17
41
61
89
101
80
16
40
62
88
100
81
15
39
63
87
99
82
14
38
64
86
98
83
13
37
65
85
97
84
12
36
66
84
96
85
11
35
67
83
95
86
10
34
68
82
94
87
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
73
74
75
76
77
78
79
80
81
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
0
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
132
144
148
160
180
168
131
143
147
159
179
167
130
142
146
158
178
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
125
126
127
128
129
130
131
132
133
134
135
136
137
149
169
157
120
132
136
124
136
148
168
156
119
131
135
123
135
147
167
155
118
130
134
122
134
146
166
154
117
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
121
133
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
153
116
120
132
120
132
144
156
152
115
119
131
119
131
143
155
151
114
118
130
118
130
142
154
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
121
120
119
118
117
116
115
114
113
112
111
110
109
121
122
123
124
125
126
127
128
129
130
131
132
133
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
96
108
120
132
95
107
119
131
94
106
118
130
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
86
72
84
96
108
122
87
71
83
95
107
123
88
70
82
94
106
123
89
69
81
93
105
122
90
68
80
92
104
121
91
67
79
91
103
120
92
66
78
90
102
119
105
104
103
102
101
100
99
98
97
96
95
94
93
65
77
89
101
118
117
116
115
114
113
112
111
110
109
108
107
106
64
76
88
100
63
75
87
99
62
74
86
98
61
73
85
97
60
72
84
96
59
60
61
62
63
64
65
66
67
68
69
70
71
83
84
85
86
87
88
89
90
91
92
93
94
95
58
70
82
96
57
69
81
96
56
68
80
95
55
67
79
94
54
66
78
93
53
65
77
92
52
51
50
49
48
47
46
45
44
43
42
41
40
52
64
76
91
65
64
63
62
61
60
59
58
57
56
55
54
53
39
51
63
75
90
66
38
50
62
74
89
67
37
49
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
88
68
36
48
48
62
87
69
35
47
47
63
86
70
34
46
46
64
85
71
33
34
35
36
37
38
39
40
41
42
43
44
45
45
65
84
83
82
81
80
79
78
77
76
75
74
73
72
32
44
44
66
85
73
31
43
43
67
86
74
30
42
42
68
87
75
29
41
41
69
88
76
28
40
40
70
89
77
27
39
39
71
90
78
26
38
38
72
91
79
25
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
80
24
24
38
72
84
81
23
23
39
71
83
82
22
22
40
70
82
83
21
21
41
69
81
84
20
20
42
68
80
85
19
19
43
67
79
86
18
18
44
66
78
87
17
17
45
65
77
88
16
16
46
64
76
89
15
15
47
63
75
90
14
14
48
62
74
91
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
49
50
51
52
53
54
55
56
57
58
59
60
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
94
93
92
93
94
95
96
97
98
99
100
22
0
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
139
159
147
110
122
126
138
158
146
109
121
125
113
114
115
116
117
118
119
120
121
122
123
124
125
137
157
145
108
120
124
112
124
136
156
144
107
119
123
111
123
135
155
143
106
118
122
110
122
134
154
142
105
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
109
121
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
99
111
99
111
123
135
131
94
98
110
98
110
122
134
130
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
87
99
111
74
86
98
110
73
72
71
70
69
68
67
66
65
64
63
62
61
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
108
109
74
60
72
84
96
110
75
59
71
83
95
111
76
58
70
82
94
111
77
57
69
81
93
110
78
56
68
80
92
109
79
55
67
79
91
108
80
54
66
78
90
107
93
92
91
90
89
88
87
86
85
84
83
82
81
53
65
77
89
106
105
104
103
102
101
100
99
98
97
96
95
94
52
64
76
88
51
63
75
87
50
62
74
86
49
61
73
85
48
60
72
84
47
48
49
50
51
52
53
54
55
56
57
58
59
71
72
73
74
75
76
77
78
79
80
81
82
83
46
58
70
84
45
57
69
85
44
56
68
86
43
55
67
87
42
54
66
88
41
53
65
89
64
63
62
61
60
59
58
57
56
55
54
53
52
40
52
64
90
77
76
75
74
73
72
71
70
69
68
67
66
65
51
39
51
63
91
78
50
38
50
62
92
79
49
37
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
93
80
48
36
36
50
94
81
47
35
35
51
93
82
46
34
34
52
92
83
45
44
43
42
41
40
39
38
37
36
35
34
33
33
53
91
92
93
93
92
91
90
89
88
87
86
85
84
44
32
32
54
90
85
43
31
31
55
89
86
42
30
30
56
88
87
41
29
29
57
87
88
40
28
28
58
86
89
39
27
27
59
85
90
38
26
26
60
84
91
37
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
61
62
63
64
65
66
67
68
69
70
71
72
71
72
73
74
75
76
77
78
79
80
81
82
83
92
36
12
26
60
70
93
35
11
27
59
69
93
34
10
28
58
68
92
33
9
29
57
67
91
32
8
30
56
66
90
31
7
31
55
65
89
30
6
32
54
64
88
29
5
33
53
63
87
28
4
34
52
62
86
27
3
35
51
61
85
26
2
36
50
60
84
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
37
38
39
40
41
42
43
44
45
46
47
48
49
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
34
14
0
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
123
111
146
158
138
126
122
110
145
157
137
125
124
123
122
121
120
119
118
117
116
115
114
113
125
121
109
144
156
136
124
112
124
120
108
143
155
135
123
111
123
119
107
142
154
134
122
110
122
118
106
141
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
121
109
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
135
123
111
99
111
99
95
130
134
122
110
98
110
98
94
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
99
87
75
110
98
86
74
109
108
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
62
63
64
65
66
67
68
69
70
71
72
73
110
96
84
72
60
74
111
95
83
71
59
75
111
94
82
70
58
76
110
93
81
69
57
77
109
92
80
68
56
78
108
91
79
67
55
79
107
90
78
66
54
80
94
95
96
97
98
99
100
101
102
103
104
105
106
89
77
65
53
81
82
83
84
85
86
87
88
89
90
91
92
93
88
76
64
52
87
75
63
51
86
74
62
50
85
73
61
49
84
72
60
48
83
82
81
80
79
78
77
76
75
74
73
72
71
59
58
57
56
55
54
53
52
51
50
49
48
47
84
70
58
46
85
69
57
45
86
68
56
44
87
67
55
43
88
66
54
42
89
65
53
41
65
66
67
68
69
70
71
72
73
74
75
76
77
90
64
52
40
52
53
54
55
56
57
58
59
60
61
62
63
64
78
91
63
51
39
51
79
92
62
50
38
50
80
93
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
37
49
81
94
50
36
36
48
82
93
51
35
35
47
83
92
52
34
34
46
84
85
86
87
88
89
90
91
92
93
93
92
91
53
33
33
34
35
36
37
38
39
40
41
42
43
44
45
85
90
54
32
32
44
86
89
55
31
31
43
87
88
56
30
30
42
88
87
57
29
29
41
89
86
58
28
28
40
90
85
59
27
27
39
91
84
60
26
26
38
92
83
82
81
80
79
78
77
76
75
74
73
72
71
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
37
93
70
60
26
12
36
93
69
59
27
11
35
92
68
58
28
10
34
91
67
57
29
9
33
90
66
56
30
8
32
89
65
55
31
7
31
88
64
54
32
6
30
87
63
53
33
5
29
86
62
52
34
4
28
85
61
51
35
3
27
84
60
50
36
2
26
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
49
48
47
46
45
44
43
42
41
40
39
38
37
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
92
72
58
0
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
168
180
160
148
144
132
167
179
159
147
143
131
166
178
158
146
142
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
136
135
134
133
132
131
130
129
128
127
126
125
137
133
121
156
168
148
136
124
136
132
120
155
167
147
135
123
135
131
119
154
166
146
134
122
134
130
118
153
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
133
121
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
117
152
156
144
132
120
132
120
116
151
155
143
131
119
131
119
115
150
154
142
130
118
130
118
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
133
132
131
130
129
128
127
126
125
124
123
122
121
109
110
111
112
113
114
115
116
117
118
119
120
121
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
132
120
108
96
131
119
107
95
130
118
106
94
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
122
108
96
84
72
86
123
107
95
83
71
87
123
106
94
82
70
88
122
105
93
81
69
89
121
104
92
80
68
90
120
103
91
79
67
91
119
102
90
78
66
92
106
107
108
109
110
111
112
113
114
115
116
117
118
101
89
77
65
93
94
95
96
97
98
99
100
101
102
103
104
105
100
88
76
64
99
87
75
63
98
86
74
62
97
85
73
61
96
84
72
60
95
94
93
92
91
90
89
88
87
86
85
84
83
71
70
69
68
67
66
65
64
63
62
61
60
59
96
82
70
58
96
81
69
57
95
80
68
56
94
79
67
55
93
78
66
54
92
77
65
53
53
54
55
56
57
58
59
60
61
62
63
64
65
91
76
64
52
40
41
42
43
44
45
46
47
48
49
50
51
52
66
90
75
63
51
39
67
89
74
62
50
38
68
88
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
49
37
69
87
62
48
48
36
70
86
63
47
47
35
71
85
64
46
46
34
72
73
74
75
76
77
78
79
80
81
82
83
84
65
45
45
44
43
42
41
40
39
38
37
36
35
34
33
73
85
66
44
44
32
74
86
67
43
43
31
75
87
68
42
42
30
76
88
69
41
41
29
77
89
70
40
40
28
78
90
71
39
39
27
79
91
72
38
38
26
80
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
25
81
84
72
38
24
24
82
83
71
39
23
23
83
82
70
40
22
22
84
81
69
41
21
21
85
80
68
42
20
20
86
79
67
43
19
19
87
78
66
44
18
18
88
77
65
45
17
17
89
76
64
46
16
16
90
75
63
47
15
15
91
74
62
48
14
14
100
99
98
97
96
95
94
93
92
93
94
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
101
86
72
14
0
168
169
170
171
172
173
174
175
176
177
178
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
167
176
156
144
140
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
130
118
156
165
145
133
132
131
130
129
128
127
126
125
124
123
122
121
133
129
117
155
164
144
132
120
132
128
116
154
163
143
131
119
131
127
115
153
162
142
130
118
130
126
114
152
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
129
117
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
113
151
154
140
128
116
128
116
112
150
154
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
145
130
118
106
118
106
102
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
129
128
127
126
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
114
115
116
117
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
131
116
104
92
130
115
103
91
129
114
102
90
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
119
118
117
116
115
114
113
112
111
110
109
108
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
121
107
116
80
68
82
120
106
115
79
67
83
119
105
114
78
66
84
118
104
113
77
65
85
117
103
112
76
64
86
116
102
111
75
63
87
115
101
110
74
62
88
102
103
104
105
106
107
108
109
110
111
112
113
114
100
109
73
61
89
90
91
92
93
94
95
96
97
98
99
100
101
99
108
72
60
98
107
71
59
97
106
70
58
96
105
69
57
95
104
68
56
94
95
96
97
98
99
100
101
102
103
104
104
103
67
66
65
64
63
62
61
60
59
58
57
56
55
93
102
68
54
92
101
69
53
91
100
70
52
90
99
71
51
89
98
72
50
88
97
73
49
49
50
51
52
53
54
55
56
57
58
59
60
61
87
96
74
48
36
37
38
39
40
41
42
43
44
45
46
47
48
62
86
95
75
47
35
63
85
94
76
46
34
64
84
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
78
77
45
33
65
83
82
68
44
32
66
82
83
67
43
31
67
81
84
66
42
30
68
69
70
71
72
73
74
75
76
77
78
79
80
85
65
41
40
39
38
37
36
35
34
33
32
31
30
29
69
81
86
64
42
28
70
82
87
63
43
27
71
83
88
62
44
26
72
84
89
61
45
25
73
85
90
60
46
24
74
86
91
59
47
23
75
87
92
58
48
22
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
52
51
50
49
21
77
101
92
58
44
20
78
102
91
59
43
19
79
102
90
60
42
18
80
101
89
61
41
17
81
100
88
62
40
16
82
99
87
63
39
15
83
98
86
64
38
14
84
97
85
65
37
13
85
96
84
66
36
12
86
95
83
67
35
11
87
94
82
68
34
10
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
99
98
97
96
95
94
93
81
80
79
78
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
97
101
92
34
22
0
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
179
178
177
176
175
174
173
172
171
170
169
129
141
145
157
177
168
128
140
144
156
176
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
147
167
158
118
130
134
122
123
124
125
126
127
128
129
130
131
132
133
134
146
166
157
117
129
133
121
133
145
165
156
116
128
132
120
132
144
164
155
115
127
131
119
131
143
163
154
114
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
118
130
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
153
113
117
129
117
129
141
155
152
112
116
128
116
128
140
155
151
111
115
127
115
127
139
154
150
110
114
126
114
126
138
153
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
107
119
107
119
131
146
142
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
118
117
116
115
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
125
126
127
128
129
130
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
93
105
117
132
92
104
116
131
91
103
115
130
90
102
114
129
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
109
110
111
112
113
114
115
116
117
118
119
120
121
83
69
81
117
108
122
84
68
80
116
107
121
85
67
79
115
106
120
86
66
78
114
105
119
87
65
77
113
104
118
88
64
76
112
103
117
89
63
75
111
102
116
102
101
100
99
98
97
96
95
94
93
92
91
90
62
74
110
101
115
114
113
112
111
110
109
108
107
106
105
104
103
61
73
109
100
60
72
108
99
59
71
107
98
58
70
106
97
57
69
105
96
56
57
58
59
60
61
62
63
64
65
66
67
68
104
105
105
104
103
102
101
100
99
98
97
96
95
55
69
103
94
54
70
102
93
53
71
101
92
52
72
100
91
51
73
99
90
50
74
98
89
49
48
47
46
45
44
43
42
41
40
39
38
37
49
75
97
88
62
61
60
59
58
57
56
55
54
53
52
51
50
36
48
76
96
87
63
35
47
77
95
86
64
34
46
78
79
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
85
65
33
45
69
83
84
66
32
44
68
84
83
67
31
43
67
85
82
68
30
31
32
33
34
35
36
37
38
39
40
41
42
66
86
81
80
79
78
77
76
75
74
73
72
71
70
69
29
43
65
87
82
70
28
44
64
88
83
71
27
45
63
89
84
72
26
46
62
90
85
73
25
47
61
91
86
74
24
48
60
92
87
75
23
49
59
93
88
76
22
50
51
52
53
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
21
45
59
93
102
78
20
44
60
92
103
79
19
43
61
91
103
80
18
42
62
90
102
81
17
41
63
89
101
82
16
40
64
88
100
83
15
39
65
87
99
84
14
38
66
86
98
85
13
37
67
85
97
86
12
36
68
84
96
87
11
35
69
83
95
88
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
75
76
77
78
79
80
81
82
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
1
23
35
93
102
98
0
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
133
145
149
161
181
169
132
144
148
160
180
168
131
143
147
159
179
167
130
142
146
158
178
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
126
127
128
129
130
131
132
133
134
135
136
137
138
150
170
158
121
133
137
125
137
149
169
157
120
132
136
124
136
148
168
156
119
131
135
123
135
147
167
155
118
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
122
134
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
154
117
121
133
121
133
145
157
153
116
120
132
120
132
144
156
152
115
119
131
119
131
143
155
151
114
118
130
118
130
142
154
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
122
121
120
119
118
117
116
115
114
113
112
111
110
122
123
124
125
126
127
128
129
130
131
132
133
134
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
97
109
121
133
96
108
120
132
95
107
119
131
94
106
118
130
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
87
73
85
97
109
123
88
72
84
96
108
124
89
71
83
95
107
124
90
70
82
94
106
123
91
69
81
93
105
122
92
68
80
92
104
121
93
67
79
91
103
120
106
105
104
103
102
101
100
99
98
97
96
95
94
66
78
90
102
119
118
117
116
115
114
113
112
111
110
109
108
107
65
77
89
101
64
76
88
100
63
75
87
99
62
74
86
98
61
73
85
97
60
61
62
63
64
65
66
67
68
69
70
71
72
84
85
86
87
88
89
90
91
92
93
94
95
96
59
71
83
97
58
70
82
97
57
69
81
96
56
68
80
95
55
67
79
94
54
66
78
93
53
52
51
50
49
48
47
46
45
44
43
42
41
53
65
77
92
66
65
64
63
62
61
60
59
58
57
56
55
54
40
52
64
76
91
67
39
51
63
75
90
68
38
50
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
89
69
37
49
49
63
88
70
36
48
48
64
87
71
35
47
47
65
86
72
34
35
36
37
38
39
40
41
42
43
44
45
46
46
66
85
84
83
82
81
80
79
78
77
76
75
74
73
33
45
45
67
86
74
32
44
44
68
87
75
31
43
43
69
88
76
30
42
42
70
89
77
29
41
41
71
90
78
28
40
40
72
91
79
27
39
39
73
92
80
26
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
95
94
93
81
25
25
39
73
85
82
24
24
40
72
84
83
23
23
41
71
83
84
22
22
42
70
82
85
21
21
43
69
81
86
20
20
44
68
80
87
19
19
45
67
79
88
18
18
46
66
78
89
17
17
47
65
77
90
16
16
48
64
76
91
15
15
49
63
75
92
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
50
51
52
53
54
55
56
57
58
59
60
61
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
95
94
93
94
95
96
97
98
99
100
101
23
1
15
73
87
102
24
0
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
139
159
147
110
122
126
114
115
116
117
118
119
120
121
122
123
124
125
126
138
158
146
109
121
125
113
125
137
157
145
108
120
124
112
124
136
156
144
107
119
123
111
123
135
155
143
106
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
110
122
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
99
111
99
111
123
135
131
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
87
99
111
74
73
72
71
70
69
68
67
66
65
64
63
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
109
110
75
61
73
85
97
111
76
60
72
84
96
112
77
59
71
83
95
112
78
58
70
82
94
111
79
57
69
81
93
110
80
56
68
80
92
109
81
55
67
79
91
108
94
93
92
91
90
89
88
87
86
85
84
83
82
54
66
78
90
107
106
105
104
103
102
101
100
99
98
97
96
95
53
65
77
89
52
64
76
88
51
63
75
87
50
62
74
86
49
61
73
85
48
49
50
51
52
53
54
55
56
57
58
59
60
72
73
74
75
76
77
78
79
80
81
82
83
84
47
59
71
85
46
58
70
86
45
57
69
87
44
56
68
88
43
55
67
89
42
54
66
90
65
64
63
62
61
60
59
58
57
56
55
54
53
41
53
65
91
78
77
76
75
74
73
72
71
70
69
68
67
66
52
40
52
64
92
79
51
39
51
63
93
80
50
38
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
94
81
49
37
37
51
93
82
48
36
36
52
92
83
47
35
35
53
91
84
46
45
44
43
42
41
40
39
38
37
36
35
34
34
54
90
91
92
93
93
92
91
90
89
88
87
86
85
45
33
33
55
89
86
44
32
32
56
88
87
43
31
31
57
87
88
42
30
30
58
86
89
41
29
29
59
85
90
40
28
28
60
84
91
39
27
27
61
83
92
38
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
62
63
64
65
66
67
68
69
70
71
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
93
37
13
27
61
69
93
36
12
28
60
68
92
35
11
29
59
67
91
34
10
30
58
66
90
33
9
31
57
65
89
32
8
32
56
64
88
31
7
33
55
63
87
30
6
34
54
62
86
29
5
35
53
61
85
28
4
36
52
60
84
27
3
37
51
59
83
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
38
39
40
41
42
43
44
45
46
47
48
49
50
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
35
15
1
57
71
91
36
16
0
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
123
111
146
158
138
126
125
124
123
122
121
120
119
118
117
116
115
114
126
122
110
145
157
137
125
113
125
121
109
144
156
136
124
112
124
120
108
143
155
135
123
111
123
119
107
142
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
122
110
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
135
123
111
99
111
99
95
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
99
87
75
110
109
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
63
64
65
66
67
68
69
70
71
72
73
74
111
97
85
73
61
75
112
96
84
72
60
76
112
95
83
71
59
77
111
94
82
70
58
78
110
93
81
69
57
79
109
92
80
68
56
80
108
91
79
67
55
81
95
96
97
98
99
100
101
102
103
104
105
106
107
90
78
66
54
82
83
84
85
86
87
88
89
90
91
92
93
94
89
77
65
53
88
76
64
52
87
75
63
51
86
74
62
50
85
73
61
49
84
83
82
81
80
79
78
77
76
75
74
73
72
60
59
58
57
56
55
54
53
52
51
50
49
48
85
71
59
47
86
70
58
46
87
69
57
45
88
68
56
44
89
67
55
43
90
66
54
42
66
67
68
69
70
71
72
73
74
75
76
77
78
91
65
53
41
53
54
55
56
57
58
59
60
61
62
63
64
65
79
92
64
52
40
52
80
93
63
51
39
51
81
94
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
38
50
82
93
51
37
37
49
83
92
52
36
36
48
84
91
53
35
35
47
85
86
87
88
89
90
91
92
93
93
92
91
90
54
34
34
35
36
37
38
39
40
41
42
43
44
45
46
86
89
55
33
33
45
87
88
56
32
32
44
88
87
57
31
31
43
89
86
58
30
30
42
90
85
59
29
29
41
91
84
60
28
28
40
92
83
61
27
27
39
93
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
38
93
69
61
27
13
37
92
68
60
28
12
36
91
67
59
29
11
35
90
66
58
30
10
34
89
65
57
31
9
33
88
64
56
32
8
32
87
63
55
33
7
31
86
62
54
34
6
30
85
61
53
35
5
29
84
60
52
36
4
28
83
59
51
37
3
27
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
50
49
48
47
46
45
44
43
42
41
40
39
38
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
91
71
57
1
15
35
92
72
56
0
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
169
181
161
149
145
133
168
180
160
148
144
132
167
179
159
147
143
131
166
178
158
146
142
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
137
136
135
134
133
132
131
130
129
128
127
126
138
134
122
157
169
149
137
125
137
133
121
156
168
148
136
124
136
132
120
155
167
147
135
123
135
131
119
154
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
134
122
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
118
153
157
145
133
121
133
121
117
152
156
144
132
120
132
120
116
151
155
143
131
119
131
119
115
150
154
142
130
118
130
118
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
134
133
132
131
130
129
128
127
126
125
124
123
122
110
111
112
113
114
115
116
117
118
119
120
121
122
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
133
121
109
97
132
120
108
96
131
119
107
95
130
118
106
94
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
123
109
97
85
73
87
124
108
96
84
72
88
124
107
95
83
71
89
123
106
94
82
70
90
122
105
93
81
69
91
121
104
92
80
68
92
120
103
91
79
67
93
107
108
109
110
111
112
113
114
115
116
117
118
119
102
90
78
66
94
95
96
97
98
99
100
101
102
103
104
105
106
101
89
77
65
100
88
76
64
99
87
75
63
98
86
74
62
97
85
73
61
96
95
94
93
92
91
90
89
88
87
86
85
84
72
71
70
69
68
67
66
65
64
63
62
61
60
97
83
71
59
97
82
70
58
96
81
69
57
95
80
68
56
94
79
67
55
93
78
66
54
54
55
56
57
58
59
60
61
62
63
64
65
66
92
77
65
53
41
42
43
44
45
46
47
48
49
50
51
52
53
67
91
76
64
52
40
68
90
75
63
51
39
69
89
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
50
38
70
88
63
49
49
37
71
87
64
48
48
36
72
86
65
47
47
35
73
74
75
76
77
78
79
80
81
82
83
84
85
66
46
46
45
44
43
42
41
40
39
38
37
36
35
34
74
86
67
45
45
33
75
87
68
44
44
32
76
88
69
43
43
31
77
89
70
42
42
30
78
90
71
41
41
29
79
91
72
40
40
28
80
92
73
39
39
27
81
93
94
95
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
26
82
85
73
39
25
25
83
84
72
40
24
24
84
83
71
41
23
23
85
82
70
42
22
22
86
81
69
43
21
21
87
80
68
44
20
20
88
79
67
45
19
19
89
78
66
46
18
18
90
77
65
47
17
17
91
76
64
48
16
16
92
75
63
49
15
15
101
100
99
98
97
96
95
94
93
94
95
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
102
87
73
15
1
23
103
88
72
16
0
169
170
171
172
173
174
175
176
177
178
179
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
168
177
157
145
141
129
167
176
156
144
140
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
131
119
157
166
146
134
133
132
131
130
129
128
127
126
125
124
123
122
134
130
118
156
165
145
133
121
133
129
117
155
164
144
132
120
132
128
116
154
163
143
131
119
131
127
115
153
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
130
118
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
114
152
155
141
129
117
129
117
113
151
155
140
128
116
128
116
112
150
154
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
146
131
119
107
119
107
103
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
130
129
128
127
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
115
116
117
118
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
132
117
105
93
131
116
104
92
130
115
103
91
129
114
102
90
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
120
119
118
117
116
115
114
113
112
111
110
109
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
122
108
117
81
69
83
121
107
116
80
68
84
120
106
115
79
67
85
119
105
114
78
66
86
118
104
113
77
65
87
117
103
112
76
64
88
116
102
111
75
63
89
103
104
105
106
107
108
109
110
111
112
113
114
115
101
110
74
62
90
91
92
93
94
95
96
97
98
99
100
101
102
100
109
73
61
99
108
72
60
98
107
71
59
97
106
70
58
96
105
69
57
95
96
97
98
99
100
101
102
103
104
105
105
104
68
67
66
65
64
63
62
61
60
59
58
57
56
94
103
69
55
93
102
70
54
92
101
71
53
91
100
72
52
90
99
73
51
89
98
74
50
50
51
52
53
54
55
56
57
58
59
60
61
62
88
97
75
49
37
38
39
40
41
42
43
44
45
46
47
48
49
63
87
96
76
48
36
64
86
95
77
47
35
65
85
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
79
78
46
34
66
84
83
69
45
33
67
83
84
68
44
32
68
82
85
67
43
31
69
70
71
72
73
74
75
76
77
78
79
80
81
86
66
42
41
40
39
38
37
36
35
34
33
32
31
30
70
82
87
65
43
29
71
83
88
64
44
28
72
84
89
63
45
27
73
85
90
62
46
26
74
86
91
61
47
25
75
87
92
60
48
24
76
88
93
59
49
23
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
53
52
51
50
22
78
102
93
59
45
21
79
103
92
60
44
20
80
103
91
61
43
19
81
102
90
62
42
18
82
101
89
63
41
17
83
100
88
64
40
16
84
99
87
65
39
15
85
98
86
66
38
14
86
97
85
67
37
13
87
96
84
68
36
12
88
95
83
69
35
11
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
103
102
101
100
99
98
97
96
95
94
82
81
80
79
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
98
102
93
35
23
1
99
103
92
36
24
0
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
180
179
178
177
176
175
174
173
172
171
170
130
142
146
158
178
169
129
141
145
157
177
168
128
140
144
156
176
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
148
168
159
119
131
135
123
124
125
126
127
128
129
130
131
132
133
134
135
147
167
158
118
130
134
122
134
146
166
157
117
129
133
121
133
145
165
156
116
128
132
120
132
144
164
155
115
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
119
131
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
154
114
118
130
118
130
142
156
153
113
117
129
117
129
141
156
152
112
116
128
116
128
140
155
151
111
115
127
115
127
139
154
150
110
114
126
114
126
138
153
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
108
120
108
120
132
147
143
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
119
118
117
116
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
126
127
128
129
130
131
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
94
106
118
133
93
105
117
132
92
104
116
131
91
103
115
130
90
102
114
129
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
96
108
123
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
110
111
112
113
114
115
116
117
118
119
120
121
122
84
70
82
118
109
123
85
69
81
117
108
122
86
68
80
116
107
121
87
67
79
115
106
120
88
66
78
114
105
119
89
65
77
113
104
118
90
64
76
112
103
117
103
102
101
100
99
98
97
96
95
94
93
92
91
63
75
111
102
116
115
114
113
112
111
110
109
108
107
106
105
104
62
74
110
101
61
73
109
100
60
72
108
99
59
71
107
98
58
70
106
97
57
58
59
60
61
62
63
64
65
66
67
68
69
105
106
106
105
104
103
102
101
100
99
98
97
96
56
70
104
95
55
71
103
94
54
72
102
93
53
73
101
92
52
74
100
91
51
75
99
90
50
49
48
47
46
45
44
43
42
41
40
39
38
50
76
98
89
63
62
61
60
59
58
57
56
55
54
53
52
51
37
49
77
97
88
64
36
48
78
96
87
65
35
47
79
80
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
86
66
34
46
70
84
85
67
33
45
69
85
84
68
32
44
68
86
83
69
31
32
33
34
35
36
37
38
39
40
41
42
43
67
87
82
81
80
79
78
77
76
75
74
73
72
71
70
30
44
66
88
83
71
29
45
65
89
84
72
28
46
64
90
85
73
27
47
63
91
86
74
26
48
62
92
87
75
25
49
61
93
88
76
24
50
60
94
89
77
23
51
52
53
54
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
22
46
60
94
103
79
21
45
61
93
104
80
20
44
62
92
104
81
19
43
63
91
103
82
18
42
64
90
102
83
17
41
65
89
101
84
16
40
66
88
100
85
15
39
67
87
99
86
14
38
68
86
98
87
13
37
69
85
97
88
12
36
70
84
96
89
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
73
74
75
76
77
78
79
80
81
82
83
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
2
24
36
94
103
99
1
25
37
93
104
100
0
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
134
146
150
162
182
170
133
145
149
161
181
169
132
144
148
160
180
168
131
143
147
159
179
167
130
142
146
158
178
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
127
128
129
130
131
132
133
134
135
136
137
138
139
151
171
159
122
134
138
126
138
150
170
158
121
133
137
125
137
149
169
157
120
132
136
124
136
148
168
156
119
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
123
135
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
155
118
122
134
122
134
146
158
154
117
121
133
121
133
145
157
153
116
120
132
120
132
144
156
152
115
119
131
119
131
143
155
151
114
118
130
118
130
142
154
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
123
122
121
120
119
118
117
116
115
114
113
112
111
123
124
125
126
127
128
129
130
131
132
133
134
135
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
98
110
122
134
97
109
121
133
96
108
120
132
95
107
119
131
94
106
118
130
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
88
74
86
98
110
124
89
73
85
97
109
125
90
72
84
96
108
125
91
71
83
95
107
124
92
70
82
94
106
123
93
69
81
93
105
122
94
68
80
92
104
121
107
106
105
104
103
102
101
100
99
98
97
96
95
67
79
91
103
120
119
118
117
116
115
114
113
112
111
110
109
108
66
78
90
102
65
77
89
101
64
76
88
100
63
75
87
99
62
74
86
98
61
62
63
64
65
66
67
68
69
70
71
72
73
85
86
87
88
89
90
91
92
93
94
95
96
97
60
72
84
98
59
71
83
98
58
70
82
97
57
69
81
96
56
68
80
95
55
67
79
94
54
53
52
51
50
49
48
47
46
45
44
43
42
54
66
78
93
67
66
65
64
63
62
61
60
59
58
57
56
55
41
53
65
77
92
68
40
52
64
76
91
69
39
51
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
90
70
38
50
50
64
89
71
37
49
49
65
88
72
36
48
48
66
87
73
35
36
37
38
39
40
41
42
43
44
45
46
47
47
67
86
85
84
83
82
81
80
79
78
77
76
75
74
34
46
46
68
87
75
33
45
45
69
88
76
32
44
44
70
89
77
31
43
43
71
90
78
30
42
42
72
91
79
29
41
41
73
92
80
28
40
40
74
93
81
27
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
96
95
94
82
26
26
40
74
86
83
25
25
41
73
85
84
24
24
42
72
84
85
23
23
43
71
83
86
22
22
44
70
82
87
21
21
45
69
81
88
20
20
46
68
80
89
19
19
47
67
79
90
18
18
48
66
78
91
17
17
49
65
77
92
16
16
50
64
76
93
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
51
52
53
54
55
56
57
58
59
60
61
62
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
96
95
94
95
96
97
98
99
100
101
102
24
2
16
74
88
103
25
1
17
73
89
104
26
0
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
140
160
148
111
123
127
115
116
117
118
119
120
121
122
123
124
125
126
127
139
159
147
110
122
126
114
126
138
158
146
109
121
125
113
125
137
157
145
108
120
124
112
124
136
156
144
107
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
111
123
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
100
112
100
112
124
136
132
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
74
73
72
71
70
69
68
67
66
65
64
63
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
110
111
76
62
74
86
98
112
77
61
73
85
97
113
78
60
72
84
96
113
79
59
71
83
95
112
80
58
70
82
94
111
81
57
69
81
93
110
82
56
68
80
92
109
95
94
93
92
91
90
89
88
87
86
85
84
83
55
67
79
91
108
107
106
105
104
103
102
101
100
99
98
97
96
54
66
78
90
53
65
77
89
52
64
76
88
51
63
75
87
50
62
74
86
49
50
51
52
53
54
55
56
57
58
59
60
61
73
74
75
76
77
78
79
80
81
82
83
84
85
48
60
72
86
47
59
71
87
46
58
70
88
45
57
69
89
44
56
68
90
43
55
67
91
66
65
64
63
62
61
60
59
58
57
56
55
54
42
54
66
92
79
78
77
76
75
74
73
72
71
70
69
68
67
53
41
53
65
93
80
52
40
52
64
94
81
51
39
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
93
82
50
38
38
52
92
83
49
37
37
53
91
84
48
36
36
54
90
85
47
46
45
44
43
42
41
40
39
38
37
36
35
35
55
89
90
91
92
93
93
92
91
90
89
88
87
86
46
34
34
56
88
87
45
33
33
57
87
88
44
32
32
58
86
89
43
31
31
59
85
90
42
30
30
60
84
91
41
29
29
61
83
92
40
28
28
62
82
93
39
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
63
64
65
66
67
68
69
70
71
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
93
38
14
28
62
68
92
37
13
29
61
67
91
36
12
30
60
66
90
35
11
31
59
65
89
34
10
32
58
64
88
33
9
33
57
63
87
32
8
34
56
62
86
31
7
35
55
61
85
30
6
36
54
60
84
29
5
37
53
59
83
28
4
38
52
58
82
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
39
40
41
42
43
44
45
46
47
48
49
50
51
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
36
16
2
56
70
90
37
17
1
55
71
91
38
18
0
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
124
112
147
159
139
127
126
125
124
123
122
121
120
119
118
117
116
115
127
123
111
146
158
138
126
114
126
122
110
145
157
137
125
113
125
121
109
144
156
136
124
112
124
120
108
143
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
123
111
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
136
124
112
100
112
100
96
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
110
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
64
65
66
67
68
69
70
71
72
73
74
75
112
98
86
74
62
76
113
97
85
73
61
77
113
96
84
72
60
78
112
95
83
71
59
79
111
94
82
70
58
80
110
93
81
69
57
81
109
92
80
68
56
82
96
97
98
99
100
101
102
103
104
105
106
107
108
91
79
67
55
83
84
85
86
87
88
89
90
91
92
93
94
95
90
78
66
54
89
77
65
53
88
76
64
52
87
75
63
51
86
74
62
50
85
84
83
82
81
80
79
78
77
76
75
74
73
61
60
59
58
57
56
55
54
53
52
51
50
49
86
72
60
48
87
71
59
47
88
70
58
46
89
69
57
45
90
68
56
44
91
67
55
43
67
68
69
70
71
72
73
74
75
76
77
78
79
92
66
54
42
54
55
56
57
58
59
60
61
62
63
64
65
66
80
93
65
53
41
53
81
94
64
52
40
52
82
93
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
39
51
83
92
52
38
38
50
84
91
53
37
37
49
85
90
54
36
36
48
86
87
88
89
90
91
92
93
93
92
91
90
89
55
35
35
36
37
38
39
40
41
42
43
44
45
46
47
87
88
56
34
34
46
88
87
57
33
33
45
89
86
58
32
32
44
90
85
59
31
31
43
91
84
60
30
30
42
92
83
61
29
29
41
93
82
62
28
28
40
93
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
39
92
68
62
28
14
38
91
67
61
29
13
37
90
66
60
30
12
36
89
65
59
31
11
35
88
64
58
32
10
34
87
63
57
33
9
33
86
62
56
34
8
32
85
61
55
35
7
31
84
60
54
36
6
30
83
59
53
37
5
29
82
58
52
38
4
28
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
51
50
49
48
47
46
45
44
43
42
41
40
39
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
90
70
56
2
16
36
91
71
55
1
17
37
92
72
54
0
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
170
182
162
150
146
134
169
181
161
149
145
133
168
180
160
148
144
132
167
179
159
147
143
131
166
178
158
146
142
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
138
137
136
135
134
133
132
131
130
129
128
127
139
135
123
158
170
150
138
126
138
134
122
157
169
149
137
125
137
133
121
156
168
148
136
124
136
132
120
155
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
135
123
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
119
154
158
146
134
122
134
122
118
153
157
145
133
121
133
121
117
152
156
144
132
120
132
120
116
151
155
143
131
119
131
119
115
150
154
142
130
118
130
118
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
135
134
133
132
131
130
129
128
127
126
125
124
123
111
112
113
114
115
116
117
118
119
120
121
122
123
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
134
122
110
98
133
121
109
97
132
120
108
96
131
119
107
95
130
118
106
94
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
124
110
98
86
74
88
125
109
97
85
73
89
125
108
96
84
72
90
124
107
95
83
71
91
123
106
94
82
70
92
122
105
93
81
69
93
121
104
92
80
68
94
108
109
110
111
112
113
114
115
116
117
118
119
120
103
91
79
67
95
96
97
98
99
100
101
102
103
104
105
106
107
102
90
78
66
101
89
77
65
100
88
76
64
99
87
75
63
98
86
74
62
97
96
95
94
93
92
91
90
89
88
87
86
85
73
72
71
70
69
68
67
66
65
64
63
62
61
98
84
72
60
98
83
71
59
97
82
70
58
96
81
69
57
95
80
68
56
94
79
67
55
55
56
57
58
59
60
61
62
63
64
65
66
67
93
78
66
54
42
43
44
45
46
47
48
49
50
51
52
53
54
68
92
77
65
53
41
69
91
76
64
52
40
70
90
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
51
39
71
89
64
50
50
38
72
88
65
49
49
37
73
87
66
48
48
36
74
75
76
77
78
79
80
81
82
83
84
85
86
67
47
47
46
45
44
43
42
41
40
39
38
37
36
35
75
87
68
46
46
34
76
88
69
45
45
33
77
89
70
44
44
32
78
90
71
43
43
31
79
91
72
42
42
30
80
92
73
41
41
29
81
93
74
40
40
28
82
94
95
96
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
27
83
86
74
40
26
26
84
85
73
41
25
25
85
84
72
42
24
24
86
83
71
43
23
23
87
82
70
44
22
22
88
81
69
45
21
21
89
80
68
46
20
20
90
79
67
47
19
19
91
78
66
48
18
18
92
77
65
49
17
17
93
76
64
50
16
16
102
101
100
99
98
97
96
95
94
95
96
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
103
88
74
16
2
24
104
89
73
17
1
25
105
90
72
18
0
170
171
172
173
174
175
176
177
178
179
180
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
169
178
158
146
142
130
168
177
157
145
141
129
167
176
156
144
140
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
132
120
158
167
147
135
134
133
132
131
130
129
128
127
126
125
124
123
135
131
119
157
166
146
134
122
134
130
118
156
165
145
133
121
133
129
117
155
164
144
132
120
132
128
116
154
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
131
119
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
115
153
156
142
130
118
130
118
114
152
156
141
129
117
129
117
113
151
155
140
128
116
128
116
112
150
154
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
147
132
120
108
120
108
104
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
131
130
129
128
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
116
117
118
119
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
133
118
106
94
132
117
105
93
131
116
104
92
130
115
103
91
129
114
102
90
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
121
120
119
118
117
116
115
114
113
112
111
110
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
123
109
118
82
70
84
122
108
117
81
69
85
121
107
116
80
68
86
120
106
115
79
67
87
119
105
114
78
66
88
118
104
113
77
65
89
117
103
112
76
64
90
104
105
106
107
108
109
110
111
112
113
114
115
116
102
111
75
63
91
92
93
94
95
96
97
98
99
100
101
102
103
101
110
74
62
100
109
73
61
99
108
72
60
98
107
71
59
97
106
70
58
96
97
98
99
100
101
102
103
104
105
106
106
105
69
68
67
66
65
64
63
62
61
60
59
58
57
95
104
70
56
94
103
71
55
93
102
72
54
92
101
73
53
91
100
74
52
90
99
75
51
51
52
53
54
55
56
57
58
59
60
61
62
63
89
98
76
50
38
39
40
41
42
43
44
45
46
47
48
49
50
64
88
97
77
49
37
65
87
96
78
48
36
66
86
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
80
79
47
35
67
85
84
70
46
34
68
84
85
69
45
33
69
83
86
68
44
32
70
71
72
73
74
75
76
77
78
79
80
81
82
87
67
43
42
41
40
39
38
37
36
35
34
33
32
31
71
83
88
66
44
30
72
84
89
65
45
29
73
85
90
64
46
28
74
86
91
63
47
27
75
87
92
62
48
26
76
88
93
61
49
25
77
89
94
60
50
24
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
54
53
52
51
23
79
103
94
60
46
22
80
104
93
61
45
21
81
104
92
62
44
20
82
103
91
63
43
19
83
102
90
64
42
18
84
101
89
65
41
17
85
100
88
66
40
16
86
99
87
67
39
15
87
98
86
68
38
14
88
97
85
69
37
13
89
96
84
70
36
12
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
104
103
102
101
100
99
98
97
96
95
83
82
81
80
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
99
103
94
36
24
2
100
104
93
37
25
1
101
105
92
38
26
0
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
181
180
179
178
177
176
175
174
173
172
171
131
143
147
159
179
170
130
142
146
158
178
169
129
141
145
157
177
168
128
140
144
156
176
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
149
169
160
120
132
136
124
125
126
127
128
129
130
131
132
133
134
135
136
148
168
159
119
131
135
123
135
147
167
158
118
130
134
122
134
146
166
157
117
129
133
121
133
145
165
156
116
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
120
132
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
155
115
119
131
119
131
143
157
154
114
118
130
118
130
142
157
153
113
117
129
117
129
141
156
152
112
116
128
116
128
140
155
151
111
115
127
115
127
139
154
150
110
114
126
114
126
138
153
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
109
121
109
121
133
148
144
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
120
119
118
117
116
115
114
113
112
111
110
109
108
120
121
122
123
124
125
126
127
128
129
130
131
132
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
95
107
119
134
94
106
118
133
93
105
117
132
92
104
116
131
91
103
115
130
90
102
114
129
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
97
109
124
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
111
112
113
114
115
116
117
118
119
120
121
122
123
85
71
83
119
110
124
86
70
82
118
109
123
87
69
81
117
108
122
88
68
80
116
107
121
89
67
79
115
106
120
90
66
78
114
105
119
91
65
77
113
104
118
104
103
102
101
100
99
98
97
96
95
94
93
92
64
76
112
103
117
116
115
114
113
112
111
110
109
108
107
106
105
63
75
111
102
62
74
110
101
61
73
109
100
60
72
108
99
59
71
107
98
58
59
60
61
62
63
64
65
66
67
68
69
70
106
107
107
106
105
104
103
102
101
100
99
98
97
57
71
105
96
56
72
104
95
55
73
103
94
54
74
102
93
53
75
101
92
52
76
100
91
51
50
49
48
47
46
45
44
43
42
41
40
39
51
77
99
90
64
63
62
61
60
59
58
57
56
55
54
53
52
38
50
78
98
89
65
37
49
79
97
88
66
36
48
80
81
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
87
67
35
47
71
85
86
68
34
46
70
86
85
69
33
45
69
87
84
70
32
33
34
35
36
37
38
39
40
41
42
43
44
68
88
83
82
81
80
79
78
77
76
75
74
73
72
71
31
45
67
89
84
72
30
46
66
90
85
73
29
47
65
91
86
74
28
48
64
92
87
75
27
49
63
93
88
76
26
50
62
94
89
77
25
51
61
95
90
78
24
52
53
54
55
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
23
47
61
95
104
80
22
46
62
94
105
81
21
45
63
93
105
82
20
44
64
92
104
83
19
43
65
91
103
84
18
42
66
90
102
85
17
41
67
89
101
86
16
40
68
88
100
87
15
39
69
87
99
88
14
38
70
86
98
89
13
37
71
85
97
90
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
72
73
74
75
76
77
78
79
80
81
82
83
84
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
3
25
37
95
104
100
2
26
38
94
105
101
1
27
39
93
106
102
0
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
135
147
151
163
183
171
134
146
150
162
182
170
133
145
149
161
181
169
132
144
148
160
180
168
131
143
147
159
179
167
130
142
146
158
178
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
128
129
130
131
132
133
134
135
136
137
138
139
140
152
172
160
123
135
139
127
139
151
171
159
122
134
138
126
138
150
170
158
121
133
137
125
137
149
169
157
120
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
124
136
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
156
119
123
135
123
135
147
159
155
118
122
134
122
134
146
158
154
117
121
133
121
133
145
157
153
116
120
132
120
132
144
156
152
115
119
131
119
131
143
155
151
114
118
130
118
130
142
154
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
124
123
122
121
120
119
118
117
116
115
114
113
112
124
125
126
127
128
129
130
131
132
133
134
135
136
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
99
111
123
135
98
110
122
134
97
109
121
133
96
108
120
132
95
107
119
131
94
106
118
130
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
89
75
87
99
111
125
90
74
86
98
110
126
91
73
85
97
109
126
92
72
84
96
108
125
93
71
83
95
107
124
94
70
82
94
106
123
95
69
81
93
105
122
108
107
106
105
104
103
102
101
100
99
98
97
96
68
80
92
104
121
120
119
118
117
116
115
114
113
112
111
110
109
67
79
91
103
66
78
90
102
65
77
89
101
64
76
88
100
63
75
87
99
62
63
64
65
66
67
68
69
70
71
72
73
74
86
87
88
89
90
91
92
93
94
95
96
97
98
61
73
85
99
60
72
84
99
59
71
83
98
58
70
82
97
57
69
81
96
56
68
80
95
55
54
53
52
51
50
49
48
47
46
45
44
43
55
67
79
94
68
67
66
65
64
63
62
61
60
59
58
57
56
42
54
66
78
93
69
41
53
65
77
92
70
40
52
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
91
71
39
51
51
65
90
72
38
50
50
66
89
73
37
49
49
67
88
74
36
37
38
39
40
41
42
43
44
45
46
47
48
48
68
87
86
85
84
83
82
81
80
79
78
77
76
75
35
47
47
69
88
76
34
46
46
70
89
77
33
45
45
71
90
78
32
44
44
72
91
79
31
43
43
73
92
80
30
42
42
74
93
81
29
41
41
75
94
82
28
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
97
96
95
83
27
27
41
75
87
84
26
26
42
74
86
85
25
25
43
73
85
86
24
24
44
72
84
87
23
23
45
71
83
88
22
22
46
70
82
89
21
21
47
69
81
90
20
20
48
68
80
91
19
19
49
67
79
92
18
18
50
66
78
93
17
17
51
65
77
94
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
52
53
54
55
56
57
58
59
60
61
62
63
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
97
96
95
96
97
98
99
100
101
102
103
25
3
17
75
89
104
26
2
18
74
90
105
27
1
19
73
91
106
28
0
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
141
161
149
112
124
128
116
117
118
119
120
121
122
123
124
125
126
127
128
140
160
148
111
123
127
115
127
139
159
147
110
122
126
114
126
138
158
146
109
121
125
113
125
137
157
145
108
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
112
124
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
101
113
101
113
125
137
133
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
75
74
73
72
71
70
69
68
67
66
65
64
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
111
112
77
63
75
87
99
113
78
62
74
86
98
114
79
61
73
85
97
114
80
60
72
84
96
113
81
59
71
83
95
112
82
58
70
82
94
111
83
57
69
81
93
110
96
95
94
93
92
91
90
89
88
87
86
85
84
56
68
80
92
109
108
107
106
105
104
103
102
101
100
99
98
97
55
67
79
91
54
66
78
90
53
65
77
89
52
64
76
88
51
63
75
87
50
51
52
53
54
55
56
57
58
59
60
61
62
74
75
76
77
78
79
80
81
82
83
84
85
86
49
61
73
87
48
60
72
88
47
59
71
89
46
58
70
90
45
57
69
91
44
56
68
92
67
66
65
64
63
62
61
60
59
58
57
56
55
43
55
67
93
80
79
78
77
76
75
74
73
72
71
70
69
68
54
42
54
66
94
81
53
41
53
65
93
82
52
40
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
92
83
51
39
39
53
91
84
50
38
38
54
90
85
49
37
37
55
89
86
48
47
46
45
44
43
42
41
40
39
38
37
36
36
56
88
89
90
91
92
93
93
92
91
90
89
88
87
47
35
35
57
87
88
46
34
34
58
86
89
45
33
33
59
85
90
44
32
32
60
84
91
43
31
31
61
83
92
42
30
30
62
82
93
41
29
29
63
81
93
40
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
64
65
66
67
68
69
70
71
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
92
39
15
29
63
67
91
38
14
30
62
66
90
37
13
31
61
65
89
36
12
32
60
64
88
35
11
33
59
63
87
34
10
34
58
62
86
33
9
35
57
61
85
32
8
36
56
60
84
31
7
37
55
59
83
30
6
38
54
58
82
29
5
39
53
57
81
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
40
41
42
43
44
45
46
47
48
49
50
51
52
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
37
17
3
55
69
89
38
18
2
54
70
90
39
19
1
53
71
91
40
20
0
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
125
113
148
160
140
128
127
126
125
124
123
122
121
120
119
118
117
116
128
124
112
147
159
139
127
115
127
123
111
146
158
138
126
114
126
122
110
145
157
137
125
113
125
121
109
144
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
124
112
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
137
125
113
101
113
101
97
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
111
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
65
66
67
68
69
70
71
72
73
74
75
76
113
99
87
75
63
77
114
98
86
74
62
78
114
97
85
73
61
79
113
96
84
72
60
80
112
95
83
71
59
81
111
94
82
70
58
82
110
93
81
69
57
83
97
98
99
100
101
102
103
104
105
106
107
108
109
92
80
68
56
84
85
86
87
88
89
90
91
92
93
94
95
96
91
79
67
55
90
78
66
54
89
77
65
53
88
76
64
52
87
75
63
51
86
85
84
83
82
81
80
79
78
77
76
75
74
62
61
60
59
58
57
56
55
54
53
52
51
50
87
73
61
49
88
72
60
48
89
71
59
47
90
70
58
46
91
69
57
45
92
68
56
44
68
69
70
71
72
73
74
75
76
77
78
79
80
93
67
55
43
55
56
57
58
59
60
61
62
63
64
65
66
67
81
94
66
54
42
54
82
93
65
53
41
53
83
92
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
40
52
84
91
53
39
39
51
85
90
54
38
38
50
86
89
55
37
37
49
87
88
89
90
91
92
93
93
92
91
90
89
88
56
36
36
37
38
39
40
41
42
43
44
45
46
47
48
88
87
57
35
35
47
89
86
58
34
34
46
90
85
59
33
33
45
91
84
60
32
32
44
92
83
61
31
31
43
93
82
62
30
30
42
93
81
63
29
29
41
92
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
40
91
67
63
29
15
39
90
66
62
30
14
38
89
65
61
31
13
37
88
64
60
32
12
36
87
63
59
33
11
35
86
62
58
34
10
34
85
61
57
35
9
33
84
60
56
36
8
32
83
59
55
37
7
31
82
58
54
38
6
30
81
57
53
39
5
29
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
52
51
50
49
48
47
46
45
44
43
42
41
40
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
89
69
55
3
17
37
90
70
54
2
18
38
91
71
53
1
19
39
92
72
52
0
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
171
183
163
151
147
135
170
182
162
150
146
134
169
181
161
149
145
133
168
180
160
148
144
132
167
179
159
147
143
131
166
178
158
146
142
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
139
138
137
136
135
134
133
132
131
130
129
128
140
136
124
159
171
151
139
127
139
135
123
158
170
150
138
126
138
134
122
157
169
149
137
125
137
133
121
156
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
136
124
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
120
155
159
147
135
123
135
123
119
154
158
146
134
122
134
122
118
153
157
145
133
121
133
121
117
152
156
144
132
120
132
120
116
151
155
143
131
119
131
119
115
150
154
142
130
118
130
118
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
136
135
134
133
132
131
130
129
128
127
126
125
124
112
113
114
115
116
117
118
119
120
121
122
123
124
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
135
123
111
99
134
122
110
98
133
121
109
97
132
120
108
96
131
119
107
95
130
118
106
94
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
125
111
99
87
75
89
126
110
98
86
74
90
126
109
97
85
73
91
125
108
96
84
72
92
124
107
95
83
71
93
123
106
94
82
70
94
122
105
93
81
69
95
109
110
111
112
113
114
115
116
117
118
119
120
121
104
92
80
68
96
97
98
99
100
101
102
103
104
105
106
107
108
103
91
79
67
102
90
78
66
101
89
77
65
100
88
76
64
99
87
75
63
98
97
96
95
94
93
92
91
90
89
88
87
86
74
73
72
71
70
69
68
67
66
65
64
63
62
99
85
73
61
99
84
72
60
98
83
71
59
97
82
70
58
96
81
69
57
95
80
68
56
56
57
58
59
60
61
62
63
64
65
66
67
68
94
79
67
55
43
44
45
46
47
48
49
50
51
52
53
54
55
69
93
78
66
54
42
70
92
77
65
53
41
71
91
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
52
40
72
90
65
51
51
39
73
89
66
50
50
38
74
88
67
49
49
37
75
76
77
78
79
80
81
82
83
84
85
86
87
68
48
48
47
46
45
44
43
42
41
40
39
38
37
36
76
88
69
47
47
35
77
89
70
46
46
34
78
90
71
45
45
33
79
91
72
44
44
32
80
92
73
43
43
31
81
93
74
42
42
30
82
94
75
41
41
29
83
95
96
97
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
28
84
87
75
41
27
27
85
86
74
42
26
26
86
85
73
43
25
25
87
84
72
44
24
24
88
83
71
45
23
23
89
82
70
46
22
22
90
81
69
47
21
21
91
80
68
48
20
20
92
79
67
49
19
19
93
78
66
50
18
18
94
77
65
51
17
17
103
102
101
100
99
98
97
96
95
96
97
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
104
89
75
17
3
25
105
90
74
18
2
26
106
91
73
19
1
27
107
92
72
20
0
171
172
173
174
175
176
177
178
179
180
181
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
170
179
159
147
143
131
169
178
158
146
142
130
168
177
157
145
141
129
167
176
156
144
140
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
133
121
159
168
148
136
135
134
133
132
131
130
129
128
127
126
125
124
136
132
120
158
167
147
135
123
135
131
119
157
166
146
134
122
134
130
118
156
165
145
133
121
133
129
117
155
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
132
120
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
116
154
157
143
131
119
131
119
115
153
157
142
130
118
130
118
114
152
156
141
129
117
129
117
113
151
155
140
128
116
128
116
112
150
154
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
148
133
121
109
121
109
105
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
132
131
130
129
128
127
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
117
118
119
120
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
134
119
107
95
133
118
106
94
132
117
105
93
131
116
104
92
130
115
103
91
129
114
102
90
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
109
97
85
123
122
121
120
119
118
117
116
115
114
113
112
111
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
124
110
119
83
71
85
123
109
118
82
70
86
122
108
117
81
69
87
121
107
116
80
68
88
120
106
115
79
67
89
119
105
114
78
66
90
118
104
113
77
65
91
105
106
107
108
109
110
111
112
113
114
115
116
117
103
112
76
64
92
93
94
95
96
97
98
99
100
101
102
103
104
102
111
75
63
101
110
74
62
100
109
73
61
99
108
72
60
98
107
71
59
97
98
99
100
101
102
103
104
105
106
107
107
106
70
69
68
67
66
65
64
63
62
61
60
59
58
96
105
71
57
95
104
72
56
94
103
73
55
93
102
74
54
92
101
75
53
91
100
76
52
52
53
54
55
56
57
58
59
60
61
62
63
64
90
99
77
51
39
40
41
42
43
44
45
46
47
48
49
50
51
65
89
98
78
50
38
66
88
97
79
49
37
67
87
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
81
80
48
36
68
86
85
71
47
35
69
85
86
70
46
34
70
84
87
69
45
33
71
72
73
74
75
76
77
78
79
80
81
82
83
88
68
44
43
42
41
40
39
38
37
36
35
34
33
32
72
84
89
67
45
31
73
85
90
66
46
30
74
86
91
65
47
29
75
87
92
64
48
28
76
88
93
63
49
27
77
89
94
62
50
26
78
90
95
61
51
25
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
55
54
53
52
24
80
104
95
61
47
23
81
105
94
62
46
22
82
105
93
63
45
21
83
104
92
64
44
20
84
103
91
65
43
19
85
102
90
66
42
18
86
101
89
67
41
17
87
100
88
68
40
16
88
99
87
69
39
15
89
98
86
70
38
14
90
97
85
71
37
13
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
105
104
103
102
101
100
99
98
97
96
84
83
82
81
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
100
104
95
37
25
3
101
105
94
38
26
2
102
106
93
39
27
1
103
107
92
40
28
0
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
182
181
180
179
178
177
176
175
174
173
172
132
144
148
160
180
171
131
143
147
159
179
170
130
142
146
158
178
169
129
141
145
157
177
168
128
140
144
156
176
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
150
170
161
121
133
137
125
126
127
128
129
130
131
132
133
134
135
136
137
149
169
160
120
132
136
124
136
148
168
159
119
131
135
123
135
147
167
158
118
130
134
122
134
146
166
157
117
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
121
133
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
156
116
120
132
120
132
144
158
155
115
119
131
119
131
143
158
154
114
118
130
118
130
142
157
153
113
117
129
117
129
141
156
152
112
116
128
116
128
140
155
151
111
115
127
115
127
139
154
150
110
114
126
114
126
138
153
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
110
122
110
122
134
149
145
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
121
120
119
118
117
116
115
114
113
112
111
110
109
121
122
123
124
125
126
127
128
129
130
131
132
133
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
96
108
120
135
95
107
119
134
94
106
118
133
93
105
117
132
92
104
116
131
91
103
115
130
90
102
114
129
89
101
113
128
88
100
112
127
87
99
111
126
86
98
110
125
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
112
113
114
115
116
117
118
119
120
121
122
123
124
86
72
84
120
111
125
87
71
83
119
110
124
88
70
82
118
109
123
89
69
81
117
108
122
90
68
80
116
107
121
91
67
79
115
106
120
92
66
78
114
105
119
105
104
103
102
101
100
99
98
97
96
95
94
93
65
77
113
104
118
117
116
115
114
113
112
111
110
109
108
107
106
64
76
112
103
63
75
111
102
62
74
110
101
61
73
109
100
60
72
108
99
59
60
61
62
63
64
65
66
67
68
69
70
71
107
108
108
107
106
105
104
103
102
101
100
99
98
58
72
106
97
57
73
105
96
56
74
104
95
55
75
103
94
54
76
102
93
53
77
101
92
52
51
50
49
48
47
46
45
44
43
42
41
40
52
78
100
91
65
64
63
62
61
60
59
58
57
56
55
54
53
39
51
79
99
90
66
38
50
80
98
89
67
37
49
81
82
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
88
68
36
48
72
86
87
69
35
47
71
87
86
70
34
46
70
88
85
71
33
34
35
36
37
38
39
40
41
42
43
44
45
69
89
84
83
82
81
80
79
78
77
76
75
74
73
72
32
46
68
90
85
73
31
47
67
91
86
74
30
48
66
92
87
75
29
49
65
93
88
76
28
50
64
94
89
77
27
51
63
95
90
78
26
52
62
96
91
79
25
53
54
55
56
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
24
48
62
96
105
81
23
47
63
95
106
82
22
46
64
94
106
83
21
45
65
93
105
84
20
44
66
92
104
85
19
43
67
91
103
86
18
42
68
90
102
87
17
41
69
89
101
88
16
40
70
88
100
89
15
39
71
87
99
90
14
38
72
86
98
91
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
82
83
84
85
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
4
26
38
96
105
101
3
27
39
95
106
102
2
28
40
94
107
103
1
29
41
93
108
104
0
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
136
148
152
164
184
172
135
147
151
163
183
171
134
146
150
162
182
170
133
145
149
161
181
169
132
144
148
160
180
168
131
143
147
159
179
167
130
142
146
158
178
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
129
130
131
132
133
134
135
136
137
138
139
140
141
153
173
161
124
136
140
128
140
152
172
160
123
135
139
127
139
151
171
159
122
134
138
126
138
150
170
158
121
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
125
137
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
157
120
124
136
124
136
148
160
156
119
123
135
123
135
147
159
155
118
122
134
122
134
146
158
154
117
121
133
121
133
145
157
153
116
120
132
120
132
144
156
152
115
119
131
119
131
143
155
151
114
118
130
118
130
142
154
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
125
124
123
122
121
120
119
118
117
116
115
114
113
125
126
127
128
129
130
131
132
133
134
135
136
137
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
100
112
124
136
99
111
123
135
98
110
122
134
97
109
121
133
96
108
120
132
95
107
119
131
94
106
118
130
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
90
76
88
100
112
126
91
75
87
99
111
127
92
74
86
98
110
127
93
73
85
97
109
126
94
72
84
96
108
125
95
71
83
95
107
124
96
70
82
94
106
123
109
108
107
106
105
104
103
102
101
100
99
98
97
69
81
93
105
122
121
120
119
118
117
116
115
114
113
112
111
110
68
80
92
104
67
79
91
103
66
78
90
102
65
77
89
101
64
76
88
100
63
64
65
66
67
68
69
70
71
72
73
74
75
87
88
89
90
91
92
93
94
95
96
97
98
99
62
74
86
100
61
73
85
100
60
72
84
99
59
71
83
98
58
70
82
97
57
69
81
96
56
55
54
53
52
51
50
49
48
47
46
45
44
56
68
80
95
69
68
67
66
65
64
63
62
61
60
59
58
57
43
55
67
79
94
70
42
54
66
78
93
71
41
53
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
92
72
40
52
52
66
91
73
39
51
51
67
90
74
38
50
50
68
89
75
37
38
39
40
41
42
43
44
45
46
47
48
49
49
69
88
87
86
85
84
83
82
81
80
79
78
77
76
36
48
48
70
89
77
35
47
47
71
90
78
34
46
46
72
91
79
33
45
45
73
92
80
32
44
44
74
93
81
31
43
43
75
94
82
30
42
42
76
95
83
29
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
84
28
28
42
76
88
85
27
27
43
75
87
86
26
26
44
74
86
87
25
25
45
73
85
88
24
24
46
72
84
89
23
23
47
71
83
90
22
22
48
70
82
91
21
21
49
69
81
92
20
20
50
68
80
93
19
19
51
67
79
94
18
18
52
66
78
95
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
53
54
55
56
57
58
59
60
61
62
63
64
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
98
97
96
97
98
99
100
101
102
103
104
26
4
18
76
90
105
27
3
19
75
91
106
28
2
20
74
92
107
29
1
21
73
93
108
30
0
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
142
162
150
113
125
129
117
118
119
120
121
122
123
124
125
126
127
128
129
141
161
149
112
124
128
116
128
140
160
148
111
123
127
115
127
139
159
147
110
122
126
114
126
138
158
146
109
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
113
125
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
102
114
102
114
126
138
134
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
76
75
74
73
72
71
70
69
68
67
66
65
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
78
64
76
88
100
114
79
63
75
87
99
115
80
62
74
86
98
115
81
61
73
85
97
114
82
60
72
84
96
113
83
59
71
83
95
112
84
58
70
82
94
111
97
96
95
94
93
92
91
90
89
88
87
86
85
57
69
81
93
110
109
108
107
106
105
104
103
102
101
100
99
98
56
68
80
92
55
67
79
91
54
66
78
90
53
65
77
89
52
64
76
88
51
52
53
54
55
56
57
58
59
60
61
62
63
75
76
77
78
79
80
81
82
83
84
85
86
87
50
62
74
88
49
61
73
89
48
60
72
90
47
59
71
91
46
58
70
92
45
57
69
93
68
67
66
65
64
63
62
61
60
59
58
57
56
44
56
68
94
81
80
79
78
77
76
75
74
73
72
71
70
69
55
43
55
67
93
82
54
42
54
66
92
83
53
41
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
91
84
52
40
40
54
90
85
51
39
39
55
89
86
50
38
38
56
88
87
49
48
47
46
45
44
43
42
41
40
39
38
37
37
57
87
88
89
90
91
92
93
93
92
91
90
89
88
48
36
36
58
86
89
47
35
35
59
85
90
46
34
34
60
84
91
45
33
33
61
83
92
44
32
32
62
82
93
43
31
31
63
81
93
42
30
30
64
80
92
41
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
65
66
67
68
69
70
71
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
91
40
16
30
64
66
90
39
15
31
63
65
89
38
14
32
62
64
88
37
13
33
61
63
87
36
12
34
60
62
86
35
11
35
59
61
85
34
10
36
58
60
84
33
9
37
57
59
83
32
8
38
56
58
82
31
7
39
55
57
81
30
6
40
54
56
80
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
41
42
43
44
45
46
47
48
49
50
51
52
53
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
38
18
4
54
68
88
39
19
3
53
69
89
40
20
2
52
70
90
41
21
1
51
71
91
42
22
0
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
126
114
149
161
141
129
128
127
126
125
124
123
122
121
120
119
118
117
129
125
113
148
160
140
128
116
128
124
112
147
159
139
127
115
127
123
111
146
158
138
126
114
126
122
110
145
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
125
113
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
138
126
114
102
114
102
98
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
66
67
68
69
70
71
72
73
74
75
76
77
114
100
88
76
64
78
115
99
87
75
63
79
115
98
86
74
62
80
114
97
85
73
61
81
113
96
84
72
60
82
112
95
83
71
59
83
111
94
82
70
58
84
98
99
100
101
102
103
104
105
106
107
108
109
110
93
81
69
57
85
86
87
88
89
90
91
92
93
94
95
96
97
92
80
68
56
91
79
67
55
90
78
66
54
89
77
65
53
88
76
64
52
87
86
85
84
83
82
81
80
79
78
77
76
75
63
62
61
60
59
58
57
56
55
54
53
52
51
88
74
62
50
89
73
61
49
90
72
60
48
91
71
59
47
92
70
58
46
93
69
57
45
69
70
71
72
73
74
75
76
77
78
79
80
81
94
68
56
44
56
57
58
59
60
61
62
63
64
65
66
67
68
82
93
67
55
43
55
83
92
66
54
42
54
84
91
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
42
43
44
45
46
47
48
49
50
51
52
53
41
53
85
90
54
40
40
52
86
89
55
39
39
51
87
88
56
38
38
50
88
89
90
91
92
93
93
92
91
90
89
88
87
57
37
37
38
39
40
41
42
43
44
45
46
47
48
49
89
86
58
36
36
48
90
85
59
35
35
47
91
84
60
34
34
46
92
83
61
33
33
45
93
82
62
32
32
44
93
81
63
31
31
43
92
80
64
30
30
42
91
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
41
90
66
64
30
16
40
89
65
63
31
15
39
88
64
62
32
14
38
87
63
61
33
13
37
86
62
60
34
12
36
85
61
59
35
11
35
84
60
58
36
10
34
83
59
57
37
9
33
82
58
56
38
8
32
81
57
55
39
7
31
80
56
54
40
6
30
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
53
52
51
50
49
48
47
46
45
44
43
42
41
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
88
68
54
4
18
38
89
69
53
3
19
39
90
70
52
2
20
40
91
71
51
1
21
41
92
72
50
0
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
172
184
164
152
148
136
171
183
163
151
147
135
170
182
162
150
146
134
169
181
161
149
145
133
168
180
160
148
144
132
167
179
159
147
143
131
166
178
158
146
142
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
140
139
138
137
136
135
134
133
132
131
130
129
141
137
125
160
172
152
140
128
140
136
124
159
171
151
139
127
139
135
123
158
170
150
138
126
138
134
122
157
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
137
125
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
121
156
160
148
136
124
136
124
120
155
159
147
135
123
135
123
119
154
158
146
134
122
134
122
118
153
157
145
133
121
133
121
117
152
156
144
132
120
132
120
116
151
155
143
131
119
131
119
115
150
154
142
130
118
130
118
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
137
136
135
134
133
132
131
130
129
128
127
126
125
113
114
115
116
117
118
119
120
121
122
123
124
125
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
136
124
112
100
135
123
111
99
134
122
110
98
133
121
109
97
132
120
108
96
131
119
107
95
130
118
106
94
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
126
112
100
88
76
90
127
111
99
87
75
91
127
110
98
86
74
92
126
109
97
85
73
93
125
108
96
84
72
94
124
107
95
83
71
95
123
106
94
82
70
96
110
111
112
113
114
115
116
117
118
119
120
121
122
105
93
81
69
97
98
99
100
101
102
103
104
105
106
107
108
109
104
92
80
68
103
91
79
67
102
90
78
66
101
89
77
65
100
88
76
64
99
98
97
96
95
94
93
92
91
90
89
88
87
75
74
73
72
71
70
69
68
67
66
65
64
63
100
86
74
62
100
85
73
61
99
84
72
60
98
83
71
59
97
82
70
58
96
81
69
57
57
58
59
60
61
62
63
64
65
66
67
68
69
95
80
68
56
44
45
46
47
48
49
50
51
52
53
54
55
56
70
94
79
67
55
43
71
93
78
66
54
42
72
92
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
53
41
73
91
66
52
52
40
74
90
67
51
51
39
75
89
68
50
50
38
76
77
78
79
80
81
82
83
84
85
86
87
88
69
49
49
48
47
46
45
44
43
42
41
40
39
38
37
77
89
70
48
48
36
78
90
71
47
47
35
79
91
72
46
46
34
80
92
73
45
45
33
81
93
74
44
44
32
82
94
75
43
43
31
83
95
76
42
42
30
84
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
29
85
88
76
42
28
28
86
87
75
43
27
27
87
86
74
44
26
26
88
85
73
45
25
25
89
84
72
46
24
24
90
83
71
47
23
23
91
82
70
48
22
22
92
81
69
49
21
21
93
80
68
50
20
20
94
79
67
51
19
19
95
78
66
52
18
18
104
103
102
101
100
99
98
97
96
97
98
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
105
90
76
18
4
26
106
91
75
19
3
27
107
92
74
20
2
28
108
93
73
21
1
29
109
94
72
22
0
172
173
174
175
176
177
178
179
180
181
182
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
171
180
160
148
144
132
170
179
159
147
143
131
169
178
158
146
142
130
168
177
157
145
141
129
167
176
156
144
140
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
134
122
160
169
149
137
136
135
134
133
132
131
130
129
128
127
126
125
137
133
121
159
168
148
136
124
136
132
120
158
167
147
135
123
135
131
119
157
166
146
134
122
134
130
118
156
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
133
121
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
117
155
158
144
132
120
132
120
116
154
158
143
131
119
131
119
115
153
157
142
130
118
130
118
114
152
156
141
129
117
129
117
113
151
155
140
128
116
128
116
112
150
154
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
149
134
122
110
122
110
106
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
133
132
131
130
129
128
127
126
125
124
123
122
121
109
110
111
112
113
114
115
116
117
118
119
120
121
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
135
120
108
96
134
119
107
95
133
118
106
94
132
117
105
93
131
116
104
92
130
115
103
91
129
114
102
90
128
113
101
89
127
112
100
88
126
111
99
87
125
110
98
86
124
123
122
121
120
119
118
117
116
115
114
113
112
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
125
111
120
84
72
86
124
110
119
83
71
87
123
109
118
82
70
88
122
108
117
81
69
89
121
107
116
80
68
90
120
106
115
79
67
91
119
105
114
78
66
92
106
107
108
109
110
111
112
113
114
115
116
117
118
104
113
77
65
93
94
95
96
97
98
99
100
101
102
103
104
105
103
112
76
64
102
111
75
63
101
110
74
62
100
109
73
61
99
108
72
60
98
99
100
101
102
103
104
105
106
107
108
108
107
71
70
69
68
67
66
65
64
63
62
61
60
59
97
106
72
58
96
105
73
57
95
104
74
56
94
103
75
55
93
102
76
54
92
101
77
53
53
54
55
56
57
58
59
60
61
62
63
64
65
91
100
78
52
40
41
42
43
44
45
46
47
48
49
50
51
52
66
90
99
79
51
39
67
89
98
80
50
38
68
88
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
82
81
49
37
69
87
86
72
48
36
70
86
87
71
47
35
71
85
88
70
46
34
72
73
74
75
76
77
78
79
80
81
82
83
84
89
69
45
44
43
42
41
40
39
38
37
36
35
34
33
73
85
90
68
46
32
74
86
91
67
47
31
75
87
92
66
48
30
76
88
93
65
49
29
77
89
94
64
50
28
78
90
95
63
51
27
79
91
96
62
52
26
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
56
55
54
53
25
81
105
96
62
48
24
82
106
95
63
47
23
83
106
94
64
46
22
84
105
93
65
45
21
85
104
92
66
44
20
86
103
91
67
43
19
87
102
90
68
42
18
88
101
89
69
41
17
89
100
88
70
40
16
90
99
87
71
39
15
91
98
86
72
38
14
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
103
102
101
100
99
98
97
85
84
83
82
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
101
105
96
38
26
4
102
106
95
39
27
3
103
107
94
40
28
2
104
108
93
41
29
1
105
109
92
42
30
0
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
183
182
181
180
179
178
177
176
175
174
173
133
145
149
161
181
172
132
144
148
160
180
171
131
143
147
159
179
170
130
142
146
158
178
169
129
141
145
157
177
168
128
140
144
156
176
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
151
171
162
122
134
138
126
127
128
129
130
131
132
133
134
135
136
137
138
150
170
161
121
133
137
125
137
149
169
160
120
132
136
124
136
148
168
159
119
131
135
123
135
147
167
158
118
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
122
134
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
157
117
121
133
121
133
145
159
156
116
120
132
120
132
144
159
155
115
119
131
119
131
143
158
154
114
118
130
118
130
142
157
153
113
117
129
117
129
141
156
152
112
116
128
116
128
140
155
151
111
115
127
115
127
139
154
150
110
114
126
114
126
138
153
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
111
123
111
123
135
150
146
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
122
121
120
119
118
117
116
115
114
113
112
111
110
122
123
124
125
126
127
128
129
130
131
132
133
134
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
97
109
121
136
96
108
120
135
95
107
119
134
94
106
118
133
93
105
117
132
92
104
116
131
91
103
115
130
90
102
114
129
89
101
113
128
88
100
112
127
87
99
111
126
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
113
114
115
116
117
118
119
120
121
122
123
124
125
87
73
85
121
112
126
88
72
84
120
111
125
89
71
83
119
110
124
90
70
82
118
109
123
91
69
81
117
108
122
92
68
80
116
107
121
93
67
79
115
106
120
106
105
104
103
102
101
100
99
98
97
96
95
94
66
78
114
105
119
118
117
116
115
114
113
112
111
110
109
108
107
65
77
113
104
64
76
112
103
63
75
111
102
62
74
110
101
61
73
109
100
60
61
62
63
64
65
66
67
68
69
70
71
72
108
109
109
108
107
106
105
104
103
102
101
100
99
59
73
107
98
58
74
106
97
57
75
105
96
56
76
104
95
55
77
103
94
54
78
102
93
53
52
51
50
49
48
47
46
45
44
43
42
41
53
79
101
92
66
65
64
63
62
61
60
59
58
57
56
55
54
40
52
80
100
91
67
39
51
81
99
90
68
38
50
82
83
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
89
69
37
49
73
87
88
70
36
48
72
88
87
71
35
47
71
89
86
72
34
35
36
37
38
39
40
41
42
43
44
45
46
70
90
85
84
83
82
81
80
79
78
77
76
75
74
73
33
47
69
91
86
74
32
48
68
92
87
75
31
49
67
93
88
76
30
50
66
94
89
77
29
51
65
95
90
78
28
52
64
96
91
79
27
53
63
97
92
80
26
54
55
56
57
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
25
49
63
97
106
82
24
48
64
96
107
83
23
47
65
95
107
84
22
46
66
94
106
85
21
45
67
93
105
86
20
44
68
92
104
87
19
43
69
91
103
88
18
42
70
90
102
89
17
41
71
89
101
90
16
40
72
88
100
91
15
39
73
87
99
92
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
83
84
85
86
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
5
27
39
97
106
102
4
28
40
96
107
103
3
29
41
95
108
104
2
30
42
94
109
105
1
31
43
93
110
106
0
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
137
149
153
165
185
173
136
148
152
164
184
172
135
147
151
163
183
171
134
146
150
162
182
170
133
145
149
161
181
169
132
144
148
160
180
168
131
143
147
159
179
167
130
142
146
158
178
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
130
131
132
133
134
135
136
137
138
139
140
141
142
154
174
162
125
137
141
129
141
153
173
161
124
136
140
128
140
152
172
160
123
135
139
127
139
151
171
159
122
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
126
138
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
158
121
125
137
125
137
149
161
157
120
124
136
124
136
148
160
156
119
123
135
123
135
147
159
155
118
122
134
122
134
146
158
154
117
121
133
121
133
145
157
153
116
120
132
120
132
144
156
152
115
119
131
119
131
143
155
151
114
118
130
118
130
142
154
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
126
125
124
123
122
121
120
119
118
117
116
115
114
126
127
128
129
130
131
132
133
134
135
136
137
138
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
101
113
125
137
100
112
124
136
99
111
123
135
98
110
122
134
97
109
121
133
96
108
120
132
95
107
119
131
94
106
118
130
93
105
117
129
92
104
116
128
91
103
115
127
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
91
77
89
101
113
127
92
76
88
100
112
128
93
75
87
99
111
128
94
74
86
98
110
127
95
73
85
97
109
126
96
72
84
96
108
125
97
71
83
95
107
124
110
109
108
107
106
105
104
103
102
101
100
99
98
70
82
94
106
123
122
121
120
119
118
117
116
115
114
113
112
111
69
81
93
105
68
80
92
104
67
79
91
103
66
78
90
102
65
77
89
101
64
65
66
67
68
69
70
71
72
73
74
75
76
88
89
90
91
92
93
94
95
96
97
98
99
100
63
75
87
101
62
74
86
101
61
73
85
100
60
72
84
99
59
71
83
98
58
70
82
97
57
56
55
54
53
52
51
50
49
48
47
46
45
57
69
81
96
70
69
68
67
66
65
64
63
62
61
60
59
58
44
56
68
80
95
71
43
55
67
79
94
72
42
54
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
93
73
41
53
53
67
92
74
40
52
52
68
91
75
39
51
51
69
90
76
38
39
40
41
42
43
44
45
46
47
48
49
50
50
70
89
88
87
86
85
84
83
82
81
80
79
78
77
37
49
49
71
90
78
36
48
48
72
91
79
35
47
47
73
92
80
34
46
46
74
93
81
33
45
45
75
94
82
32
44
44
76
95
83
31
43
43
77
96
84
30
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
99
98
97
85
29
29
43
77
89
86
28
28
44
76
88
87
27
27
45
75
87
88
26
26
46
74
86
89
25
25
47
73
85
90
24
24
48
72
84
91
23
23
49
71
83
92
22
22
50
70
82
93
21
21
51
69
81
94
20
20
52
68
80
95
19
19
53
67
79
96
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
54
55
56
57
58
59
60
61
62
63
64
65
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
99
98
97
98
99
100
101
102
103
104
105
27
5
19
77
91
106
28
4
20
76
92
107
29
3
21
75
93
108
30
2
22
74
94
109
31
1
23
73
95
110
32
0
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
143
163
151
114
126
130
118
119
120
121
122
123
124
125
126
127
128
129
130
142
162
150
113
125
129
117
129
141
161
149
112
124
128
116
128
140
160
148
111
123
127
115
127
139
159
147
110
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
114
126
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
103
115
103
115
127
139
135
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
77
76
75
74
73
72
71
70
69
68
67
66
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
113
114
79
65
77
89
101
115
80
64
76
88
100
116
81
63
75
87
99
116
82
62
74
86
98
115
83
61
73
85
97
114
84
60
72
84
96
113
85
59
71
83
95
112
98
97
96
95
94
93
92
91
90
89
88
87
86
58
70
82
94
111
110
109
108
107
106
105
104
103
102
101
100
99
57
69
81
93
56
68
80
92
55
67
79
91
54
66
78
90
53
65
77
89
52
53
54
55
56
57
58
59
60
61
62
63
64
76
77
78
79
80
81
82
83
84
85
86
87
88
51
63
75
89
50
62
74
90
49
61
73
91
48
60
72
92
47
59
71
93
46
58
70
94
69
68
67
66
65
64
63
62
61
60
59
58
57
45
57
69
93
82
81
80
79
78
77
76
75
74
73
72
71
70
56
44
56
68
92
83
55
43
55
67
91
84
54
42
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
90
85
53
41
41
55
89
86
52
40
40
56
88
87
51
39
39
57
87
88
50
49
48
47
46
45
44
43
42
41
40
39
38
38
58
86
87
88
89
90
91
92
93
93
92
91
90
89
49
37
37
59
85
90
48
36
36
60
84
91
47
35
35
61
83
92
46
34
34
62
82
93
45
33
33
63
81
93
44
32
32
64
80
92
43
31
31
65
79
91
42
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
66
67
68
69
70
71
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
90
41
17
31
65
65
89
40
16
32
64
64
88
39
15
33
63
63
87
38
14
34
62
62
86
37
13
35
61
61
85
36
12
36
60
60
84
35
11
37
59
59
83
34
10
38
58
58
82
33
9
39
57
57
81
32
8
40
56
56
80
31
7
41
55
55
79
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
42
43
44
45
46
47
48
49
50
51
52
53
54
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
39
19
5
53
67
87
40
20
4
52
68
88
41
21
3
51
69
89
42
22
2
50
70
90
43
23
1
49
71
91
44
24
0
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
127
115
150
162
142
130
129
128
127
126
125
124
123
122
121
120
119
118
130
126
114
149
161
141
129
117
129
125
113
148
160
140
128
116
128
124
112
147
159
139
127
115
127
123
111
146
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
126
114
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
139
127
115
103
115
103
99
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
113
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
99
100
101
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
67
68
69
70
71
72
73
74
75
76
77
78
115
101
89
77
65
79
116
100
88
76
64
80
116
99
87
75
63
81
115
98
86
74
62
82
114
97
85
73
61
83
113
96
84
72
60
84
112
95
83
71
59
85
99
100
101
102
103
104
105
106
107
108
109
110
111
94
82
70
58
86
87
88
89
90
91
92
93
94
95
96
97
98
93
81
69
57
92
80
68
56
91
79
67
55
90
78
66
54
89
77
65
53
88
87
86
85
84
83
82
81
80
79
78
77
76
64
63
62
61
60
59
58
57
56
55
54
53
52
89
75
63
51
90
74
62
50
91
73
61
49
92
72
60
48
93
71
59
47
94
70
58
46
70
71
72
73
74
75
76
77
78
79
80
81
82
93
69
57
45
57
58
59
60
61
62
63
64
65
66
67
68
69
83
92
68
56
44
56
84
91
67
55
43
55
85
90
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
43
44
45
46
47
48
49
50
51
52
53
54
42
54
86
89
55
41
41
53
87
88
56
40
40
52
88
87
57
39
39
51
89
90
91
92
93
93
92
91
90
89
88
87
86
58
38
38
39
40
41
42
43
44
45
46
47
48
49
50
90
85
59
37
37
49
91
84
60
36
36
48
92
83
61
35
35
47
93
82
62
34
34
46
93
81
63
33
33
45
92
80
64
32
32
44
91
79
65
31
31
43
90
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
42
89
65
65
31
17
41
88
64
64
32
16
40
87
63
63
33
15
39
86
62
62
34
14
38
85
61
61
35
13
37
84
60
60
36
12
36
83
59
59
37
11
35
82
58
58
38
10
34
81
57
57
39
9
33
80
56
56
40
8
32
79
55
55
41
7
31
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
54
53
52
51
50
49
48
47
46
45
44
43
42
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
87
67
53
5
19
39
88
68
52
4
20
40
89
69
51
3
21
41
90
70
50
2
22
42
91
71
49
1
23
43
92
72
48
0
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
173
185
165
153
149
137
172
184
164
152
148
136
171
183
163
151
147
135
170
182
162
150
146
134
169
181
161
149
145
133
168
180
160
148
144
132
167
179
159
147
143
131
166
178
158
146
142
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
141
140
139
138
137
136
135
134
133
132
131
130
142
138
126
161
173
153
141
129
141
137
125
160
172
152
140
128
140
136
124
159
171
151
139
127
139
135
123
158
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
138
126
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
122
157
161
149
137
125
137
125
121
156
160
148
136
124
136
124
120
155
159
147
135
123
135
123
119
154
158
146
134
122
134
122
118
153
157
145
133
121
133
121
117
152
156
144
132
120
132
120
116
151
155
143
131
119
131
119
115
150
154
142
130
118
130
118
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
138
137
136
135
134
133
132
131
130
129
128
127
126
114
115
116
117
118
119
120
121
122
123
124
125
126
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
137
125
113
101
136
124
112
100
135
123
111
99
134
122
110
98
133
121
109
97
132
120
108
96
131
119
107
95
130
118
106
94
129
117
105
93
128
116
104
92
127
115
103
91
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
127
113
101
89
77
91
128
112
100
88
76
92
128
111
99
87
75
93
127
110
98
86
74
94
126
109
97
85
73
95
125
108
96
84
72
96
124
107
95
83
71
97
111
112
113
114
115
116
117
118
119
120
121
122
123
106
94
82
70
98
99
100
101
102
103
104
105
106
107
108
109
110
105
93
81
69
104
92
80
68
103
91
79
67
102
90
78
66
101
89
77
65
100
99
98
97
96
95
94
93
92
91
90
89
88
76
75
74
73
72
71
70
69
68
67
66
65
64
101
87
75
63
101
86
74
62
100
85
73
61
99
84
72
60
98
83
71
59
97
82
70
58
58
59
60
61
62
63
64
65
66
67
68
69
70
96
81
69
57
45
46
47
48
49
50
51
52
53
54
55
56
57
71
95
80
68
56
44
72
94
79
67
55
43
73
93
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
54
42
74
92
67
53
53
41
75
91
68
52
52
40
76
90
69
51
51
39
77
78
79
80
81
82
83
84
85
86
87
88
89
70
50
50
49
48
47
46
45
44
43
42
41
40
39
38
78
90
71
49
49
37
79
91
72
48
48
36
80
92
73
47
47
35
81
93
74
46
46
34
82
94
75
45
45
33
83
95
76
44
44
32
84
96
77
43
43
31
85
97
98
99
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
30
86
89
77
43
29
29
87
88
76
44
28
28
88
87
75
45
27
27
89
86
74
46
26
26
90
85
73
47
25
25
91
84
72
48
24
24
92
83
71
49
23
23
93
82
70
50
22
22
94
81
69
51
21
21
95
80
68
52
20
20
96
79
67
53
19
19
105
104
103
102
101
100
99
98
97
98
99
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
106
91
77
19
5
27
107
92
76
20
4
28
108
93
75
21
3
29
109
94
74
22
2
30
110
95
73
23
1
31
111
96
72
24
0
173
174
175
176
177
178
179
180
181
182
183
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
172
181
161
149
145
133
171
180
160
148
144
132
170
179
159
147
143
131
169
178
158
146
142
130
168
177
157
145
141
129
167
176
156
144
140
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
135
123
161
170
150
138
137
136
135
134
133
132
131
130
129
128
127
126
138
134
122
160
169
149
137
125
137
133
121
159
168
148
136
124
136
132
120
158
167
147
135
123
135
131
119
157
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
134
122
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
118
156
159
145
133
121
133
121
117
155
159
144
132
120
132
120
116
154
158
143
131
119
131
119
115
153
157
142
130
118
130
118
114
152
156
141
129
117
129
117
113
151
155
140
128
116
128
116
112
150
154
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
150
135
123
111
123
111
107
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
134
133
132
131
130
129
128
127
126
125
124
123
122
110
111
112
113
114
115
116
117
118
119
120
121
122
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
136
121
109
97
135
120
108
96
134
119
107
95
133
118
106
94
132
117
105
93
131
116
104
92
130
115
103
91
129
114
102
90
128
113
101
89
127
112
100
88
126
111
99
87
125
124
123
122
121
120
119
118
117
116
115
114
113
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
126
112
121
85
73
87
125
111
120
84
72
88
124
110
119
83
71
89
123
109
118
82
70
90
122
108
117
81
69
91
121
107
116
80
68
92
120
106
115
79
67
93
107
108
109
110
111
112
113
114
115
116
117
118
119
105
114
78
66
94
95
96
97
98
99
100
101
102
103
104
105
106
104
113
77
65
103
112
76
64
102
111
75
63
101
110
74
62
100
109
73
61
99
100
101
102
103
104
105
106
107
108
109
109
108
72
71
70
69
68
67
66
65
64
63
62
61
60
98
107
73
59
97
106
74
58
96
105
75
57
95
104
76
56
94
103
77
55
93
102
78
54
54
55
56
57
58
59
60
61
62
63
64
65
66
92
101
79
53
41
42
43
44
45
46
47
48
49
50
51
52
53
67
91
100
80
52
40
68
90
99
81
51
39
69
89
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
83
82
50
38
70
88
87
73
49
37
71
87
88
72
48
36
72
86
89
71
47
35
73
74
75
76
77
78
79
80
81
82
83
84
85
90
70
46
45
44
43
42
41
40
39
38
37
36
35
34
74
86
91
69
47
33
75
87
92
68
48
32
76
88
93
67
49
31
77
89
94
66
50
30
78
90
95
65
51
29
79
91
96
64
52
28
80
92
97
63
53
27
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
57
56
55
54
26
82
106
97
63
49
25
83
107
96
64
48
24
84
107
95
65
47
23
85
106
94
66
46
22
86
105
93
67
45
21
87
104
92
68
44
20
88
103
91
69
43
19
89
102
90
70
42
18
90
101
89
71
41
17
91
100
88
72
40
16
92
99
87
73
39
15
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
105
104
103
102
101
100
99
98
86
85
84
83
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
102
106
97
39
27
5
103
107
96
40
28
4
104
108
95
41
29
3
105
109
94
42
30
2
106
110
93
43
31
1
107
111
92
44
32
0
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
184
183
182
181
180
179
178
177
176
175
174
134
146
150
162
182
173
133
145
149
161
181
172
132
144
148
160
180
171
131
143
147
159
179
170
130
142
146
158
178
169
129
141
145
157
177
168
128
140
144
156
176
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
152
172
163
123
135
139
127
128
129
130
131
132
133
134
135
136
137
138
139
151
171
162
122
134
138
126
138
150
170
161
121
133
137
125
137
149
169
160
120
132
136
124
136
148
168
159
119
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
123
135
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
158
118
122
134
122
134
146
160
157
117
121
133
121
133
145
160
156
116
120
132
120
132
144
159
155
115
119
131
119
131
143
158
154
114
118
130
118
130
142
157
153
113
117
129
117
129
141
156
152
112
116
128
116
128
140
155
151
111
115
127
115
127
139
154
150
110
114
126
114
126
138
153
149
109
113
125
113
125
137
152
148
108
112
124
112
124
136
151
147
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
123
122
121
120
119
118
117
116
115
114
113
112
111
123
124
125
126
127
128
129
130
131
132
133
134
135
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
98
110
122
137
97
109
121
136
96
108
120
135
95
107
119
134
94
106
118
133
93
105
117
132
92
104
116
131
91
103
115
130
90
102
114
129
89
101
113
128
88
100
112
127
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
114
115
116
117
118
119
120
121
122
123
124
125
126
88
74
86
122
113
127
89
73
85
121
112
126
90
72
84
120
111
125
91
71
83
119
110
124
92
70
82
118
109
123
93
69
81
117
108
122
94
68
80
116
107
121
107
106
105
104
103
102
101
100
99
98
97
96
95
67
79
115
106
120
119
118
117
116
115
114
113
112
111
110
109
108
66
78
114
105
65
77
113
104
64
76
112
103
63
75
111
102
62
74
110
101
61
62
63
64
65
66
67
68
69
70
71
72
73
109
110
110
109
108
107
106
105
104
103
102
101
100
60
74
108
99
59
75
107
98
58
76
106
97
57
77
105
96
56
78
104
95
55
79
103
94
54
53
52
51
50
49
48
47
46
45
44
43
42
54
80
102
93
67
66
65
64
63
62
61
60
59
58
57
56
55
41
53
81
101
92
68
40
52
82
100
91
69
39
51
83
84
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
90
70
38
50
74
88
89
71
37
49
73
89
88
72
36
48
72
90
87
73
35
36
37
38
39
40
41
42
43
44
45
46
47
71
91
86
85
84
83
82
81
80
79
78
77
76
75
74
34
48
70
92
87
75
33
49
69
93
88
76
32
50
68
94
89
77
31
51
67
95
90
78
30
52
66
96
91
79
29
53
65
97
92
80
28
54
64
98
93
81
27
55
56
57
58
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
26
50
64
98
107
83
25
49
65
97
108
84
24
48
66
96
108
85
23
47
67
95
107
86
22
46
68
94
106
87
21
45
69
93
105
88
20
44
70
92
104
89
19
43
71
91
103
90
18
42
72
90
102
91
17
41
73
89
101
92
16
40
74
88
100
93
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
84
85
86
87
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
6
28
40
98
107
103
5
29
41
97
108
104
4
30
42
96
109
105
3
31
43
95
110
106
2
32
44
94
111
107
1
33
45
93
112
108
0
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
138
150
154
166
186
174
137
149
153
165
185
173
136
148
152
164
184
172
135
147
151
163
183
171
134
146
150
162
182
170
133
145
149
161
181
169
132
144
148
160
180
168
131
143
147
159
179
167
130
142
146
158
178
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
131
132
133
134
135
136
137
138
139
140
141
142
143
155
175
163
126
138
142
130
142
154
174
162
125
137
141
129
141
153
173
161
124
136
140
128
140
152
172
160
123
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
127
139
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
159
122
126
138
126
138
150
162
158
121
125
137
125
137
149
161
157
120
124
136
124
136
148
160
156
119
123
135
123
135
147
159
155
118
122
134
122
134
146
158
154
117
121
133
121
133
145
157
153
116
120
132
120
132
144
156
152
115
119
131
119
131
143
155
151
114
118
130
118
130
142
154
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
127
126
125
124
123
122
121
120
119
118
117
116
115
127
128
129
130
131
132
133
134
135
136
137
138
139
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
102
114
126
138
101
113
125
137
100
112
124
136
99
111
123
135
98
110
122
134
97
109
121
133
96
108
120
132
95
107
119
131
94
106
118
130
93
105
117
129
92
104
116
128
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
92
78
90
102
114
128
93
77
89
101
113
129
94
76
88
100
112
129
95
75
87
99
111
128
96
74
86
98
110
127
97
73
85
97
109
126
98
72
84
96
108
125
111
110
109
108
107
106
105
104
103
102
101
100
99
71
83
95
107
124
123
122
121
120
119
118
117
116
115
114
113
112
70
82
94
106
69
81
93
105
68
80
92
104
67
79
91
103
66
78
90
102
65
66
67
68
69
70
71
72
73
74
75
76
77
89
90
91
92
93
94
95
96
97
98
99
100
101
64
76
88
102
63
75
87
102
62
74
86
101
61
73
85
100
60
72
84
99
59
71
83
98
58
57
56
55
54
53
52
51
50
49
48
47
46
58
70
82
97
71
70
69
68
67
66
65
64
63
62
61
60
59
45
57
69
81
96
72
44
56
68
80
95
73
43
55
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
94
74
42
54
54
68
93
75
41
53
53
69
92
76
40
52
52
70
91
77
39
40
41
42
43
44
45
46
47
48
49
50
51
51
71
90
89
88
87
86
85
84
83
82
81
80
79
78
38
50
50
72
91
79
37
49
49
73
92
80
36
48
48
74
93
81
35
47
47
75
94
82
34
46
46
76
95
83
33
45
45
77
96
84
32
44
44
78
97
85
31
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
100
99
98
86
30
30
44
78
90
87
29
29
45
77
89
88
28
28
46
76
88
89
27
27
47
75
87
90
26
26
48
74
86
91
25
25
49
73
85
92
24
24
50
72
84
93
23
23
51
71
83
94
22
22
52
70
82
95
21
21
53
69
81
96
20
20
54
68
80
97
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
55
56
57
58
59
60
61
62
63
64
65
66
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
100
99
98
99
100
101
102
103
104
105
106
28
6
20
78
92
107
29
5
21
77
93
108
30
4
22
76
94
109
31
3
23
75
95
110
32
2
24
74
96
111
33
1
25
73
97
112
34
0
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
144
164
152
115
127
131
119
120
121
122
123
124
125
126
127
128
129
130
131
143
163
151
114
126
130
118
130
142
162
150
113
125
129
117
129
141
161
149
112
124
128
116
128
140
160
148
111
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
115
127
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
104
116
104
116
128
140
136
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
78
77
76
75
74
73
72
71
70
69
68
67
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
114
115
80
66
78
90
102
116
81
65
77
89
101
117
82
64
76
88
100
117
83
63
75
87
99
116
84
62
74
86
98
115
85
61
73
85
97
114
86
60
72
84
96
113
99
98
97
96
95
94
93
92
91
90
89
88
87
59
71
83
95
112
111
110
109
108
107
106
105
104
103
102
101
100
58
70
82
94
57
69
81
93
56
68
80
92
55
67
79
91
54
66
78
90
53
54
55
56
57
58
59
60
61
62
63
64
65
77
78
79
80
81
82
83
84
85
86
87
88
89
52
64
76
90
51
63
75
91
50
62
74
92
49
61
73
93
48
60
72
94
47
59
71
93
70
69
68
67
66
65
64
63
62
61
60
59
58
46
58
70
92
83
82
81
80
79
78
77
76
75
74
73
72
71
57
45
57
69
91
84
56
44
56
68
90
85
55
43
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
89
86
54
42
42
56
88
87
53
41
41
57
87
88
52
40
40
58
86
89
51
50
49
48
47
46
45
44
43
42
41
40
39
39
59
85
86
87
88
89
90
91
92
93
93
92
91
90
50
38
38
60
84
91
49
37
37
61
83
92
48
36
36
62
82
93
47
35
35
63
81
93
46
34
34
64
80
92
45
33
33
65
79
91
44
32
32
66
78
90
43
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
67
68
69
70
71
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
89
42
18
32
66
64
88
41
17
33
65
63
87
40
16
34
64
62
86
39
15
35
63
61
85
38
14
36
62
60
84
37
13
37
61
59
83
36
12
38
60
58
82
35
11
39
59
57
81
34
10
40
58
56
80
33
9
41
57
55
79
32
8
42
56
54
78
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
43
44
45
46
47
48
49
50
51
52
53
54
55
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
40
20
6
52
66
86
41
21
5
51
67
87
42
22
4
50
68
88
43
23
3
49
69
89
44
24
2
48
70
90
45
25
1
47
71
91
46
26
0
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
128
116
151
163
143
131
130
129
128
127
126
125
124
123
122
121
120
119
131
127
115
150
162
142
130
118
130
126
114
149
161
141
129
117
129
125
113
148
160
140
128
116
128
124
112
147
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
127
115
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
140
128
116
104
116
104
100
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
114
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
100
101
102
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
68
69
70
71
72
73
74
75
76
77
78
79
116
102
90
78
66
80
117
101
89
77
65
81
117
100
88
76
64
82
116
99
87
75
63
83
115
98
86
74
62
84
114
97
85
73
61
85
113
96
84
72
60
86
100
101
102
103
104
105
106
107
108
109
110
111
112
95
83
71
59
87
88
89
90
91
92
93
94
95
96
97
98
99
94
82
70
58
93
81
69
57
92
80
68
56
91
79
67
55
90
78
66
54
89
88
87
86
85
84
83
82
81
80
79
78
77
65
64
63
62
61
60
59
58
57
56
55
54
53
90
76
64
52
91
75
63
51
92
74
62
50
93
73
61
49
94
72
60
48
93
71
59
47
71
72
73
74
75
76
77
78
79
80
81
82
83
92
70
58
46
58
59
60
61
62
63
64
65
66
67
68
69
70
84
91
69
57
45
57
85
90
68
56
44
56
86
89
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
44
45
46
47
48
49
50
51
52
53
54
55
43
55
87
88
56
42
42
54
88
87
57
41
41
53
89
86
58
40
40
52
90
91
92
93
93
92
91
90
89
88
87
86
85
59
39
39
40
41
42
43
44
45
46
47
48
49
50
51
91
84
60
38
38
50
92
83
61
37
37
49
93
82
62
36
36
48
93
81
63
35
35
47
92
80
64
34
34
46
91
79
65
33
33
45
90
78
66
32
32
44
89
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
43
88
64
66
32
18
42
87
63
65
33
17
41
86
62
64
34
16
40
85
61
63
35
15
39
84
60
62
36
14
38
83
59
61
37
13
37
82
58
60
38
12
36
81
57
59
39
11
35
80
56
58
40
10
34
79
55
57
41
9
33
78
54
56
42
8
32
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
55
54
53
52
51
50
49
48
47
46
45
44
43
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
86
66
52
6
20
40
87
67
51
5
21
41
88
68
50
4
22
42
89
69
49
3
23
43
90
70
48
2
24
44
91
71
47
1
25
45
92
72
46
0
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
174
186
166
154
150
138
173
185
165
153
149
137
172
184
164
152
148
136
171
183
163
151
147
135
170
182
162
150
146
134
169
181
161
149
145
133
168
180
160
148
144
132
167
179
159
147
143
131
166
178
158
146
142
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
142
141
140
139
138
137
136
135
134
133
132
131
143
139
127
162
174
154
142
130
142
138
126
161
173
153
141
129
141
137
125
160
172
152
140
128
140
136
124
159
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
139
127
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
123
158
162
150
138
126
138
126
122
157
161
149
137
125
137
125
121
156
160
148
136
124
136
124
120
155
159
147
135
123
135
123
119
154
158
146
134
122
134
122
118
153
157
145
133
121
133
121
117
152
156
144
132
120
132
120
116
151
155
143
131
119
131
119
115
150
154
142
130
118
130
118
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
139
138
137
136
135
134
133
132
131
130
129
128
127
115
116
117
118
119
120
121
122
123
124
125
126
127
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
138
126
114
102
137
125
113
101
136
124
112
100
135
123
111
99
134
122
110
98
133
121
109
97
132
120
108
96
131
119
107
95
130
118
106
94
129
117
105
93
128
116
104
92
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
128
114
102
90
78
92
129
113
101
89
77
93
129
112
100
88
76
94
128
111
99
87
75
95
127
110
98
86
74
96
126
109
97
85
73
97
125
108
96
84
72
98
112
113
114
115
116
117
118
119
120
121
122
123
124
107
95
83
71
99
100
101
102
103
104
105
106
107
108
109
110
111
106
94
82
70
105
93
81
69
104
92
80
68
103
91
79
67
102
90
78
66
101
100
99
98
97
96
95
94
93
92
91
90
89
77
76
75
74
73
72
71
70
69
68
67
66
65
102
88
76
64
102
87
75
63
101
86
74
62
100
85
73
61
99
84
72
60
98
83
71
59
59
60
61
62
63
64
65
66
67
68
69
70
71
97
82
70
58
46
47
48
49
50
51
52
53
54
55
56
57
58
72
96
81
69
57
45
73
95
80
68
56
44
74
94
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
55
43
75
93
68
54
54
42
76
92
69
53
53
41
77
91
70
52
52
40
78
79
80
81
82
83
84
85
86
87
88
89
90
71
51
51
50
49
48
47
46
45
44
43
42
41
40
39
79
91
72
50
50
38
80
92
73
49
49
37
81
93
74
48
48
36
82
94
75
47
47
35
83
95
76
46
46
34
84
96
77
45
45
33
85
97
78
44
44
32
86
98
99
100
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
31
87
90
78
44
30
30
88
89
77
45
29
29
89
88
76
46
28
28
90
87
75
47
27
27
91
86
74
48
26
26
92
85
73
49
25
25
93
84
72
50
24
24
94
83
71
51
23
23
95
82
70
52
22
22
96
81
69
53
21
21
97
80
68
54
20
20
106
105
104
103
102
101
100
99
98
99
100
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
107
92
78
20
6
28
108
93
77
21
5
29
109
94
76
22
4
30
110
95
75
23
3
31
111
96
74
24
2
32
112
97
73
25
1
33
113
98
72
26
0
174
175
176
177
178
179
180
181
182
183
184
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
173
182
162
150
146
134
172
181
161
149
145
133
171
180
160
148
144
132
170
179
159
147
143
131
169
178
158
146
142
130
168
177
157
145
141
129
167
176
156
144
140
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
136
124
162
171
151
139
138
137
136
135
134
133
132
131
130
129
128
127
139
135
123
161
170
150
138
126
138
134
122
160
169
149
137
125
137
133
121
159
168
148
136
124
136
132
120
158
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
135
123
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
119
157
160
146
134
122
134
122
118
156
160
145
133
121
133
121
117
155
159
144
132
120
132
120
116
154
158
143
131
119
131
119
115
153
157
142
130
118
130
118
114
152
156
141
129
117
129
117
113
151
155
140
128
116
128
116
112
150
154
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
151
136
124
112
124
112
108
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
135
134
133
132
131
130
129
128
127
126
125
124
123
111
112
113
114
115
116
117
118
119
120
121
122
123
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
137
122
110
98
136
121
109
97
135
120
108
96
134
119
107
95
133
118
106
94
132
117
105
93
131
116
104
92
130
115
103
91
129
114
102
90
128
113
101
89
127
112
100
88
126
125
124
123
122
121
120
119
118
117
116
115
114
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
127
113
122
86
74
88
126
112
121
85
73
89
125
111
120
84
72
90
124
110
119
83
71
91
123
109
118
82
70
92
122
108
117
81
69
93
121
107
116
80
68
94
108
109
110
111
112
113
114
115
116
117
118
119
120
106
115
79
67
95
96
97
98
99
100
101
102
103
104
105
106
107
105
114
78
66
104
113
77
65
103
112
76
64
102
111
75
63
101
110
74
62
100
101
102
103
104
105
106
107
108
109
110
110
109
73
72
71
70
69
68
67
66
65
64
63
62
61
99
108
74
60
98
107
75
59
97
106
76
58
96
105
77
57
95
104
78
56
94
103
79
55
55
56
57
58
59
60
61
62
63
64
65
66
67
93
102
80
54
42
43
44
45
46
47
48
49
50
51
52
53
54
68
92
101
81
53
41
69
91
100
82
52
40
70
90
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
84
83
51
39
71
89
88
74
50
38
72
88
89
73
49
37
73
87
90
72
48
36
74
75
76
77
78
79
80
81
82
83
84
85
86
91
71
47
46
45
44
43
42
41
40
39
38
37
36
35
75
87
92
70
48
34
76
88
93
69
49
33
77
89
94
68
50
32
78
90
95
67
51
31
79
91
96
66
52
30
80
92
97
65
53
29
81
93
98
64
54
28
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
58
57
56
55
27
83
107
98
64
50
26
84
108
97
65
49
25
85
108
96
66
48
24
86
107
95
67
47
23
87
106
94
68
46
22
88
105
93
69
45
21
89
104
92
70
44
20
90
103
91
71
43
19
91
102
90
72
42
18
92
101
89
73
41
17
93
100
88
74
40
16
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
106
105
104
103
102
101
100
99
87
86
85
84
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
103
107
98
40
28
6
104
108
97
41
29
5
105
109
96
42
30
4
106
110
95
43
31
3
107
111
94
44
32
2
108
112
93
45
33
1
109
113
92
46
34
0
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
185
184
183
182
181
180
179
178
177
176
175
135
147
151
163
183
174
134
146
150
162
182
173
133
145
149
161
181
172
132
144
148
160
180
171
131
143
147
159
179
170
130
142
146
158
178
169
129
141
145
157
177
168
128
140
144
156
176
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
153
173
164
124
136
140
128
129
130
131
132
133
134
135
136
137
138
139
140
152
172
163
123
135
139
127
139
151
171
162
122
134
138
126
138
150
170
161
121
133
137
125
137
149
169
160
120
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
124
136
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
159
119
123
135
123
135
147
161
158
118
122
134
122
134
146
161
157
117
121
133
121
133
145
160
156
116
120
132
120
132
144
159
155
115
119
131
119
131
143
158
154
114
118
130
118
130
142
157
153
113
117
129
117
129
141
156
152
112
116
128
116
128
140
155
151
111
115
127
115
127
139
154
150
110
114
126
114
126
138
153
149
109
113
125
113
125
137
152
148
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
124
123
122
121
120
119
118
117
116
115
114
113
112
124
125
126
127
128
129
130
131
132
133
134
135
136
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
99
111
123
138
98
110
122
137
97
109
121
136
96
108
120
135
95
107
119
134
94
106
118
133
93
105
117
132
92
104
116
131
91
103
115
130
90
102
114
129
89
101
113
128
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
115
116
117
118
119
120
121
122
123
124
125
126
127
89
75
87
123
114
128
90
74
86
122
113
127
91
73
85
121
112
126
92
72
84
120
111
125
93
71
83
119
110
124
94
70
82
118
109
123
95
69
81
117
108
122
108
107
106
105
104
103
102
101
100
99
98
97
96
68
80
116
107
121
120
119
118
117
116
115
114
113
112
111
110
109
67
79
115
106
66
78
114
105
65
77
113
104
64
76
112
103
63
75
111
102
62
63
64
65
66
67
68
69
70
71
72
73
74
110
111
111
110
109
108
107
106
105
104
103
102
101
61
75
109
100
60
76
108
99
59
77
107
98
58
78
106
97
57
79
105
96
56
80
104
95
55
54
53
52
51
50
49
48
47
46
45
44
43
55
81
103
94
68
67
66
65
64
63
62
61
60
59
58
57
56
42
54
82
102
93
69
41
53
83
101
92
70
40
52
84
85
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
91
71
39
51
75
89
90
72
38
50
74
90
89
73
37
49
73
91
88
74
36
37
38
39
40
41
42
43
44
45
46
47
48
72
92
87
86
85
84
83
82
81
80
79
78
77
76
75
35
49
71
93
88
76
34
50
70
94
89
77
33
51
69
95
90
78
32
52
68
96
91
79
31
53
67
97
92
80
30
54
66
98
93
81
29
55
65
99
94
82
28
56
57
58
59
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
27
51
65
99
108
84
26
50
66
98
109
85
25
49
67
97
109
86
24
48
68
96
108
87
23
47
69
95
107
88
22
46
70
94
106
89
21
45
71
93
105
90
20
44
72
92
104
91
19
43
73
91
103
92
18
42
74
90
102
93
17
41
75
89
101
94
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
85
86
87
88
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
7
29
41
99
108
104
6
30
42
98
109
105
5
31
43
97
110
106
4
32
44
96
111
107
3
33
45
95
112
108
2
34
46
94
113
109
1
35
47
93
114
110
0
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
139
151
155
167
187
175
138
150
154
166
186
174
137
149
153
165
185
173
136
148
152
164
184
172
135
147
151
163
183
171
134
146
150
162
182
170
133
145
149
161
181
169
132
144
148
160
180
168
131
143
147
159
179
167
130
142
146
158
178
166
129
141
145
157
177
165
128
140
144
132
133
134
135
136
137
138
139
140
141
142
143
144
156
176
164
127
139
143
131
143
155
175
163
126
138
142
130
142
154
174
162
125
137
141
129
141
153
173
161
124
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
128
140
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
160
123
127
139
127
139
151
163
159
122
126
138
126
138
150
162
158
121
125
137
125
137
149
161
157
120
124
136
124
136
148
160
156
119
123
135
123
135
147
159
155
118
122
134
122
134
146
158
154
117
121
133
121
133
145
157
153
116
120
132
120
132
144
156
152
115
119
131
119
131
143
155
151
114
118
130
118
130
142
154
150
113
117
129
117
129
141
153
149
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
128
127
126
125
124
123
122
121
120
119
118
117
116
128
129
130
131
132
133
134
135
136
137
138
139
140
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
103
115
127
139
102
114
126
138
101
113
125
137
100
112
124
136
99
111
123
135
98
110
122
134
97
109
121
133
96
108
120
132
95
107
119
131
94
106
118
130
93
105
117
129
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
125
126
127
128
93
79
91
103
115
129
94
78
90
102
114
130
95
77
89
101
113
130
96
76
88
100
112
129
97
75
87
99
111
128
98
74
86
98
110
127
99
73
85
97
109
126
112
111
110
109
108
107
106
105
104
103
102
101
100
72
84
96
108
125
124
123
122
121
120
119
118
117
116
115
114
113
71
83
95
107
70
82
94
106
69
81
93
105
68
80
92
104
67
79
91
103
66
67
68
69
70
71
72
73
74
75
76
77
78
90
91
92
93
94
95
96
97
98
99
100
101
102
65
77
89
103
64
76
88
103
63
75
87
102
62
74
86
101
61
73
85
100
60
72
84
99
59
58
57
56
55
54
53
52
51
50
49
48
47
59
71
83
98
72
71
70
69
68
67
66
65
64
63
62
61
60
46
58
70
82
97
73
45
57
69
81
96
74
44
56
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
95
75
43
55
55
69
94
76
42
54
54
70
93
77
41
53
53
71
92
78
40
41
42
43
44
45
46
47
48
49
50
51
52
52
72
91
90
89
88
87
86
85
84
83
82
81
80
79
39
51
51
73
92
80
38
50
50
74
93
81
37
49
49
75
94
82
36
48
48
76
95
83
35
47
47
77
96
84
34
46
46
78
97
85
33
45
45
79
98
86
32
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
101
100
99
87
31
31
45
79
91
88
30
30
46
78
90
89
29
29
47
77
89
90
28
28
48
76
88
91
27
27
49
75
87
92
26
26
50
74
86
93
25
25
51
73
85
94
24
24
52
72
84
95
23
23
53
71
83
96
22
22
54
70
82
97
21
21
55
69
81
98
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
56
57
58
59
60
61
62
63
64
65
66
67
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
101
100
99
100
101
102
103
104
105
106
107
29
7
21
79
93
108
30
6
22
78
94
109
31
5
23
77
95
110
32
4
24
76
96
111
33
3
25
75
97
112
34
2
26
74
98
113
35
1
27
73
99
114
36
0
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
145
165
153
116
128
132
120
121
122
123
124
125
126
127
128
129
130
131
132
144
164
152
115
127
131
119
131
143
163
151
114
126
130
118
130
142
162
150
113
125
129
117
129
141
161
149
112
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
116
128
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
105
117
105
117
129
141
137
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
116
115
114
113
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
125
126
127
128
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
79
78
77
76
75
74
73
72
71
70
69
68
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
115
116
81
67
79
91
103
117
82
66
78
90
102
118
83
65
77
89
101
118
84
64
76
88
100
117
85
63
75
87
99
116
86
62
74
86
98
115
87
61
73
85
97
114
100
99
98
97
96
95
94
93
92
91
90
89
88
60
72
84
96
113
112
111
110
109
108
107
106
105
104
103
102
101
59
71
83
95
58
70
82
94
57
69
81
93
56
68
80
92
55
67
79
91
54
55
56
57
58
59
60
61
62
63
64
65
66
78
79
80
81
82
83
84
85
86
87
88
89
90
53
65
77
91
52
64
76
92
51
63
75
93
50
62
74
94
49
61
73
93
48
60
72
92
71
70
69
68
67
66
65
64
63
62
61
60
59
47
59
71
91
84
83
82
81
80
79
78
77
76
75
74
73
72
58
46
58
70
90
85
57
45
57
69
89
86
56
44
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
88
87
55
43
43
57
87
88
54
42
42
58
86
89
53
41
41
59
85
90
52
51
50
49
48
47
46
45
44
43
42
41
40
40
60
84
85
86
87
88
89
90
91
92
93
93
92
91
51
39
39
61
83
92
50
38
38
62
82
93
49
37
37
63
81
93
48
36
36
64
80
92
47
35
35
65
79
91
46
34
34
66
78
90
45
33
33
67
77
89
44
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
68
69
70
71
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
88
43
19
33
67
63
87
42
18
34
66
62
86
41
17
35
65
61
85
40
16
36
64
60
84
39
15
37
63
59
83
38
14
38
62
58
82
37
13
39
61
57
81
36
12
40
60
56
80
35
11
41
59
55
79
34
10
42
58
54
78
33
9
43
57
53
77
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
44
45
46
47
48
49
50
51
52
53
54
55
56
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
41
21
7
51
65
85
42
22
6
50
66
86
43
23
5
49
67
87
44
24
4
48
68
88
45
25
3
47
69
89
46
26
2
46
70
90
47
27
1
45
71
91
48
28
0
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
129
117
152
164
144
132
131
130
129
128
127
126
125
124
123
122
121
120
132
128
116
151
163
143
131
119
131
127
115
150
162
142
130
118
130
126
114
149
161
141
129
117
129
125
113
148
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
128
116
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
141
129
117
105
117
105
101
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
128
127
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
113
114
115
116
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
115
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
101
102
103
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
69
70
71
72
73
74
75
76
77
78
79
80
117
103
91
79
67
81
118
102
90
78
66
82
118
101
89
77
65
83
117
100
88
76
64
84
116
99
87
75
63
85
115
98
86
74
62
86
114
97
85
73
61
87
101
102
103
104
105
106
107
108
109
110
111
112
113
96
84
72
60
88
89
90
91
92
93
94
95
96
97
98
99
100
95
83
71
59
94
82
70
58
93
81
69
57
92
80
68
56
91
79
67
55
90
89
88
87
86
85
84
83
82
81
80
79
78
66
65
64
63
62
61
60
59
58
57
56
55
54
91
77
65
53
92
76
64
52
93
75
63
51
94
74
62
50
93
73
61
49
92
72
60
48
72
73
74
75
76
77
78
79
80
81
82
83
84
91
71
59
47
59
60
61
62
63
64
65
66
67
68
69
70
71
85
90
70
58
46
58
86
89
69
57
45
57
87
88
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
45
46
47
48
49
50
51
52
53
54
55
56
44
56
88
87
57
43
43
55
89
86
58
42
42
54
90
85
59
41
41
53
91
92
93
93
92
91
90
89
88
87
86
85
84
60
40
40
41
42
43
44
45
46
47
48
49
50
51
52
92
83
61
39
39
51
93
82
62
38
38
50
93
81
63
37
37
49
92
80
64
36
36
48
91
79
65
35
35
47
90
78
66
34
34
46
89
77
67
33
33
45
88
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
44
87
63
67
33
19
43
86
62
66
34
18
42
85
61
65
35
17
41
84
60
64
36
16
40
83
59
63
37
15
39
82
58
62
38
14
38
81
57
61
39
13
37
80
56
60
40
12
36
79
55
59
41
11
35
78
54
58
42
10
34
77
53
57
43
9
33
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
56
55
54
53
52
51
50
49
48
47
46
45
44
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
85
65
51
7
21
41
86
66
50
6
22
42
87
67
49
5
23
43
88
68
48
4
24
44
89
69
47
3
25
45
90
70
46
2
26
46
91
71
45
1
27
47
92
72
44
0
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
175
187
167
155
151
139
174
186
166
154
150
138
173
185
165
153
149
137
172
184
164
152
148
136
171
183
163
151
147
135
170
182
162
150
146
134
169
181
161
149
145
133
168
180
160
148
144
132
167
179
159
147
143
131
166
178
158
146
142
130
165
177
157
145
141
129
164
176
156
144
143
142
141
140
139
138
137
136
135
134
133
132
144
140
128
163
175
155
143
131
143
139
127
162
174
154
142
130
142
138
126
161
173
153
141
129
141
137
125
160
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
140
128
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
124
159
163
151
139
127
139
127
123
158
162
150
138
126
138
126
122
157
161
149
137
125
137
125
121
156
160
148
136
124
136
124
120
155
159
147
135
123
135
123
119
154
158
146
134
122
134
122
118
153
157
145
133
121
133
121
117
152
156
144
132
120
132
120
116
151
155
143
131
119
131
119
115
150
154
142
130
118
130
118
114
149
153
141
129
117
129
117
113
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
140
139
138
137
136
135
134
133
132
131
130
129
128
116
117
118
119
120
121
122
123
124
125
126
127
128
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
139
127
115
103
138
126
114
102
137
125
113
101
136
124
112
100
135
123
111
99
134
122
110
98
133
121
109
97
132
120
108
96
131
119
107
95
130
118
106
94
129
117
105
93
128
127
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
129
115
103
91
79
93
130
114
102
90
78
94
130
113
101
89
77
95
129
112
100
88
76
96
128
111
99
87
75
97
127
110
98
86
74
98
126
109
97
85
73
99
113
114
115
116
117
118
119
120
121
122
123
124
125
108
96
84
72
100
101
102
103
104
105
106
107
108
109
110
111
112
107
95
83
71
106
94
82
70
105
93
81
69
104
92
80
68
103
91
79
67
102
101
100
99
98
97
96
95
94
93
92
91
90
78
77
76
75
74
73
72
71
70
69
68
67
66
103
89
77
65
103
88
76
64
102
87
75
63
101
86
74
62
100
85
73
61
99
84
72
60
60
61
62
63
64
65
66
67
68
69
70
71
72
98
83
71
59
47
48
49
50
51
52
53
54
55
56
57
58
59
73
97
82
70
58
46
74
96
81
69
57
45
75
95
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
56
44
76
94
69
55
55
43
77
93
70
54
54
42
78
92
71
53
53
41
79
80
81
82
83
84
85
86
87
88
89
90
91
72
52
52
51
50
49
48
47
46
45
44
43
42
41
40
80
92
73
51
51
39
81
93
74
50
50
38
82
94
75
49
49
37
83
95
76
48
48
36
84
96
77
47
47
35
85
97
78
46
46
34
86
98
79
45
45
33
87
99
100
101
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
32
88
91
79
45
31
31
89
90
78
46
30
30
90
89
77
47
29
29
91
88
76
48
28
28
92
87
75
49
27
27
93
86
74
50
26
26
94
85
73
51
25
25
95
84
72
52
24
24
96
83
71
53
23
23
97
82
70
54
22
22
98
81
69
55
21
21
107
106
105
104
103
102
101
100
99
100
101
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
108
93
79
21
7
29
109
94
78
22
6
30
110
95
77
23
5
31
111
96
76
24
4
32
112
97
75
25
3
33
113
98
74
26
2
34
114
99
73
27
1
35
115
100
72
28
0
175
176
177
178
179
180
181
182
183
184
185
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
174
183
163
151
147
135
173
182
162
150
146
134
172
181
161
149
145
133
171
180
160
148
144
132
170
179
159
147
143
131
169
178
158
146
142
130
168
177
157
145
141
129
167
176
156
144
140
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
137
125
163
172
152
140
139
138
137
136
135
134
133
132
131
130
129
128
140
136
124
162
171
151
139
127
139
135
123
161
170
150
138
126
138
134
122
160
169
149
137
125
137
133
121
159
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
136
124
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
120
158
161
147
135
123
135
123
119
157
161
146
134
122
134
122
118
156
160
145
133
121
133
121
117
155
159
144
132
120
132
120
116
154
158
143
131
119
131
119
115
153
157
142
130
118
130
118
114
152
156
141
129
117
129
117
113
151
155
140
128
116
128
116
112
150
154
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
152
137
125
113
125
113
109
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
136
135
134
133
132
131
130
129
128
127
126
125
124
112
113
114
115
116
117
118
119
120
121
122
123
124
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
138
123
111
99
137
122
110
98
136
121
109
97
135
120
108
96
134
119
107
95
133
118
106
94
132
117
105
93
131
116
104
92
130
115
103
91
129
114
102
90
128
113
101
89
127
126
125
124
123
122
121
120
119
118
117
116
115
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
128
114
123
87
75
89
127
113
122
86
74
90
126
112
121
85
73
91
125
111
120
84
72
92
124
110
119
83
71
93
123
109
118
82
70
94
122
108
117
81
69
95
109
110
111
112
113
114
115
116
117
118
119
120
121
107
116
80
68
96
97
98
99
100
101
102
103
104
105
106
107
108
106
115
79
67
105
114
78
66
104
113
77
65
103
112
76
64
102
111
75
63
101
102
103
104
105
106
107
108
109
110
111
111
110
74
73
72
71
70
69
68
67
66
65
64
63
62
100
109
75
61
99
108
76
60
98
107
77
59
97
106
78
58
96
105
79
57
95
104
80
56
56
57
58
59
60
61
62
63
64
65
66
67
68
94
103
81
55
43
44
45
46
47
48
49
50
51
52
53
54
55
69
93
102
82
54
42
70
92
101
83
53
41
71
91
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
85
84
52
40
72
90
89
75
51
39
73
89
90
74
50
38
74
88
91
73
49
37
75
76
77
78
79
80
81
82
83
84
85
86
87
92
72
48
47
46
45
44
43
42
41
40
39
38
37
36
76
88
93
71
49
35
77
89
94
70
50
34
78
90
95
69
51
33
79
91
96
68
52
32
80
92
97
67
53
31
81
93
98
66
54
30
82
94
99
65
55
29
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
59
58
57
56
28
84
108
99
65
51
27
85
109
98
66
50
26
86
109
97
67
49
25
87
108
96
68
48
24
88
107
95
69
47
23
89
106
94
70
46
22
90
105
93
71
45
21
91
104
92
72
44
20
92
103
91
73
43
19
93
102
90
74
42
18
94
101
89
75
41
17
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
107
106
105
104
103
102
101
100
88
87
86
85
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
104
108
99
41
29
7
105
109
98
42
30
6
106
110
97
43
31
5
107
111
96
44
32
4
108
112
95
45
33
3
109
113
94
46
34
2
110
114
93
47
35
1
111
115
92
48
36
0
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
136
148
152
164
184
175
135
147
151
163
183
174
134
146
150
162
182
173
133
145
149
161
181
172
132
144
148
160
180
171
131
143
147
159
179
170
130
142
146
158
178
169
129
141
145
157
177
168
128
140
144
156
176
167
127
139
143
155
175
166
126
138
142
154
174
165
125
137
141
129
130
131
132
133
134
135
136
137
138
139
140
141
153
173
164
124
136
140
128
140
152
172
163
123
135
139
127
139
151
171
162
122
134
138
126
138
150
170
161
121
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
125
137
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
160
120
124
136
124
136
148
162
159
119
123
135
123
135
147
162
158
118
122
134
122
134
146
161
157
117
121
133
121
133
145
160
156
116
120
132
120
132
144
159
155
115
119
131
119
131
143
158
154
114
118
130
118
130
142
157
153
113
117
129
117
129
141
156
152
112
116
128
116
128
140
155
151
111
115
127
115
127
139
154
150
110
114
126
114
126
138
153
149
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
125
124
123
122
121
120
119
118
117
116
115
114
113
125
126
127
128
129
130
131
132
133
134
135
136
137
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
100
112
124
139
99
111
123
138
98
110
122
137
97
109
121
136
96
108
120
135
95
107
119
134
94
106
118
133
93
105
117
132
92
104
116
131
91
103
115
130
90
102
114
129
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
116
117
118
119
120
121
122
123
124
125
126
127
128
90
76
88
124
115
129
91
75
87
123
114
128
92
74
86
122
113
127
93
73
85
121
112
126
94
72
84
120
111
125
95
71
83
119
110
124
96
70
82
118
109
123
109
108
107
106
105
104
103
102
101
100
99
98
97
69
81
117
108
122
121
120
119
118
117
116
115
114
113
112
111
110
68
80
116
107
67
79
115
106
66
78
114
105
65
77
113
104
64
76
112
103
63
64
65
66
67
68
69
70
71
72
73
74
75
111
112
112
111
110
109
108
107
106
105
104
103
102
62
76
110
101
61
77
109
100
60
78
108
99
59
79
107
98
58
80
106
97
57
81
105
96
56
55
54
53
52
51
50
49
48
47
46
45
44
56
82
104
95
69
68
67
66
65
64
63
62
61
60
59
58
57
43
55
83
103
94
70
42
54
84
102
93
71
41
53
85
86
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
92
72
40
52
76
90
91
73
39
51
75
91
90
74
38
50
74
92
89
75
37
38
39
40
41
42
43
44
45
46
47
48
49
73
93
88
87
86
85
84
83
82
81
80
79
78
77
76
36
50
72
94
89
77
35
51
71
95
90
78
34
52
70
96
91
79
33
53
69
97
92
80
32
54
68
98
93
81
31
55
67
99
94
82
30
56
66
100
95
83
29
57
58
59
60
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
28
52
66
100
109
85
27
51
67
99
110
86
26
50
68
98
110
87
25
49
69
97
109
88
24
48
70
96
108
89
23
47
71
95
107
90
22
46
72
94
106
91
21
45
73
93
105
92
20
44
74
92
104
93
19
43
75
91
103
94
18
42
76
90
102
95
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
86
87
88
89
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
8
30
42
100
109
105
7
31
43
99
110
106
6
32
44
98
111
107
5
33
45
97
112
108
4
34
46
96
113
109
3
35
47
95
114
110
2
36
48
94
115
111
1
37
49
93
116
112
0
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
140
152
156
168
188
176
139
151
155
167
187
175
138
150
154
166
186
174
137
149
153
165
185
173
136
148
152
164
184
172
135
147
151
163
183
171
134
146
150
162
182
170
133
145
149
161
181
169
132
144
148
160
180
168
131
143
147
159
179
167
130
142
146
158
178
166
129
141
145
133
134
135
136
137
138
139
140
141
142
143
144
145
157
177
165
128
140
144
132
144
156
176
164
127
139
143
131
143
155
175
163
126
138
142
130
142
154
174
162
125
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
129
141
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
161
124
128
140
128
140
152
164
160
123
127
139
127
139
151
163
159
122
126
138
126
138
150
162
158
121
125
137
125
137
149
161
157
120
124
136
124
136
148
160
156
119
123
135
123
135
147
159
155
118
122
134
122
134
146
158
154
117
121
133
121
133
145
157
153
116
120
132
120
132
144
156
152
115
119
131
119
131
143
155
151
114
118
130
118
130
142
154
150
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
129
128
127
126
125
124
123
122
121
120
119
118
117
129
130
131
132
133
134
135
136
137
138
139
140
141
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
104
116
128
140
103
115
127
139
102
114
126
138
101
113
125
137
100
112
124
136
99
111
123
135
98
110
122
134
97
109
121
133
96
108
120
132
95
107
119
131
94
106
118
130
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
124
125
126
127
128
129
94
80
92
104
116
130
95
79
91
103
115
131
96
78
90
102
114
131
97
77
89
101
113
130
98
76
88
100
112
129
99
75
87
99
111
128
100
74
86
98
110
127
113
112
111
110
109
108
107
106
105
104
103
102
101
73
85
97
109
126
125
124
123
122
121
120
119
118
117
116
115
114
72
84
96
108
71
83
95
107
70
82
94
106
69
81
93
105
68
80
92
104
67
68
69
70
71
72
73
74
75
76
77
78
79
91
92
93
94
95
96
97
98
99
100
101
102
103
66
78
90
104
65
77
89
104
64
76
88
103
63
75
87
102
62
74
86
101
61
73
85
100
60
59
58
57
56
55
54
53
52
51
50
49
48
60
72
84
99
73
72
71
70
69
68
67
66
65
64
63
62
61
47
59
71
83
98
74
46
58
70
82
97
75
45
57
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
96
76
44
56
56
70
95
77
43
55
55
71
94
78
42
54
54
72
93
79
41
42
43
44
45
46
47
48
49
50
51
52
53
53
73
92
91
90
89
88
87
86
85
84
83
82
81
80
40
52
52
74
93
81
39
51
51
75
94
82
38
50
50
76
95
83
37
49
49
77
96
84
36
48
48
78
97
85
35
47
47
79
98
86
34
46
46
80
99
87
33
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
88
32
32
46
80
92
89
31
31
47
79
91
90
30
30
48
78
90
91
29
29
49
77
89
92
28
28
50
76
88
93
27
27
51
75
87
94
26
26
52
74
86
95
25
25
53
73
85
96
24
24
54
72
84
97
23
23
55
71
83
98
22
22
56
70
82
99
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
57
58
59
60
61
62
63
64
65
66
67
68
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
102
101
100
101
102
103
104
105
106
107
108
30
8
22
80
94
109
31
7
23
79
95
110
32
6
24
78
96
111
33
5
25
77
97
112
34
4
26
76
98
113
35
3
27
75
99
114
36
2
28
74
100
115
37
1
29
73
101
116
38
0
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
146
166
154
117
129
133
121
122
123
124
125
126
127
128
129
130
131
132
133
145
165
153
116
128
132
120
132
144
164
152
115
127
131
119
131
143
163
151
114
126
130
118
130
142
162
150
113
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
117
129
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
106
118
106
118
130
142
138
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
117
116
115
114
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
124
125
126
127
128
129
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
80
79
78
77
76
75
74
73
72
71
70
69
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
82
68
80
92
104
118
83
67
79
91
103
119
84
66
78
90
102
119
85
65
77
89
101
118
86
64
76
88
100
117
87
63
75
87
99
116
88
62
74
86
98
115
101
100
99
98
97
96
95
94
93
92
91
90
89
61
73
85
97
114
113
112
111
110
109
108
107
106
105
104
103
102
60
72
84
96
59
71
83
95
58
70
82
94
57
69
81
93
56
68
80
92
55
56
57
58
59
60
61
62
63
64
65
66
67
79
80
81
82
83
84
85
86
87
88
89
90
91
54
66
78
92
53
65
77
93
52
64
76
94
51
63
75
93
50
62
74
92
49
61
73
91
72
71
70
69
68
67
66
65
64
63
62
61
60
48
60
72
90
85
84
83
82
81
80
79
78
77
76
75
74
73
59
47
59
71
89
86
58
46
58
70
88
87
57
45
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
87
88
56
44
44
58
86
89
55
43
43
59
85
90
54
42
42
60
84
91
53
52
51
50
49
48
47
46
45
44
43
42
41
41
61
83
84
85
86
87
88
89
90
91
92
93
93
92
52
40
40
62
82
93
51
39
39
63
81
93
50
38
38
64
80
92
49
37
37
65
79
91
48
36
36
66
78
90
47
35
35
67
77
89
46
34
34
68
76
88
45
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
87
44
20
34
68
62
86
43
19
35
67
61
85
42
18
36
66
60
84
41
17
37
65
59
83
40
16
38
64
58
82
39
15
39
63
57
81
38
14
40
62
56
80
37
13
41
61
55
79
36
12
42
60
54
78
35
11
43
59
53
77
34
10
44
58
52
76
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
45
46
47
48
49
50
51
52
53
54
55
56
57
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
42
22
8
50
64
84
43
23
7
49
65
85
44
24
6
48
66
86
45
25
5
47
67
87
46
26
4
46
68
88
47
27
3
45
69
89
48
28
2
44
70
90
49
29
1
43
71
91
50
30
0
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
130
118
153
165
145
133
132
131
130
129
128
127
126
125
124
123
122
121
133
129
117
152
164
144
132
120
132
128
116
151
163
143
131
119
131
127
115
150
162
142
130
118
130
126
114
149
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
129
117
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
142
130
118
106
118
106
102
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
129
128
127
126
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
114
115
116
117
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
102
103
104
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
70
71
72
73
74
75
76
77
78
79
80
81
118
104
92
80
68
82
119
103
91
79
67
83
119
102
90
78
66
84
118
101
89
77
65
85
117
100
88
76
64
86
116
99
87
75
63
87
115
98
86
74
62
88
102
103
104
105
106
107
108
109
110
111
112
113
114
97
85
73
61
89
90
91
92
93
94
95
96
97
98
99
100
101
96
84
72
60
95
83
71
59
94
82
70
58
93
81
69
57
92
80
68
56
91
90
89
88
87
86
85
84
83
82
81
80
79
67
66
65
64
63
62
61
60
59
58
57
56
55
92
78
66
54
93
77
65
53
94
76
64
52
93
75
63
51
92
74
62
50
91
73
61
49
73
74
75
76
77
78
79
80
81
82
83
84
85
90
72
60
48
60
61
62
63
64
65
66
67
68
69
70
71
72
86
89
71
59
47
59
87
88
70
58
46
58
88
87
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
46
47
48
49
50
51
52
53
54
55
56
57
45
57
89
86
58
44
44
56
90
85
59
43
43
55
91
84
60
42
42
54
92
93
93
92
91
90
89
88
87
86
85
84
83
61
41
41
42
43
44
45
46
47
48
49
50
51
52
53
93
82
62
40
40
52
93
81
63
39
39
51
92
80
64
38
38
50
91
79
65
37
37
49
90
78
66
36
36
48
89
77
67
35
35
47
88
76
68
34
34
46
87
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
45
86
62
68
34
20
44
85
61
67
35
19
43
84
60
66
36
18
42
83
59
65
37
17
41
82
58
64
38
16
40
81
57
63
39
15
39
80
56
62
40
14
38
79
55
61
41
13
37
78
54
60
42
12
36
77
53
59
43
11
35
76
52
58
44
10
34
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
57
56
55
54
53
52
51
50
49
48
47
46
45
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
84
64
50
8
22
42
85
65
49
7
23
43
86
66
48
6
24
44
87
67
47
5
25
45
88
68
46
4
26
46
89
69
45
3
27
47
90
70
44
2
28
48
91
71
43
1
29
49
92
72
42
0
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
176
188
168
156
152
140
175
187
167
155
151
139
174
186
166
154
150
138
173
185
165
153
149
137
172
184
164
152
148
136
171
183
163
151
147
135
170
182
162
150
146
134
169
181
161
149
145
133
168
180
160
148
144
132
167
179
159
147
143
131
166
178
158
146
142
130
165
177
157
145
144
143
142
141
140
139
138
137
136
135
134
133
145
141
129
164
176
156
144
132
144
140
128
163
175
155
143
131
143
139
127
162
174
154
142
130
142
138
126
161
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
141
129
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
125
160
164
152
140
128
140
128
124
159
163
151
139
127
139
127
123
158
162
150
138
126
138
126
122
157
161
149
137
125
137
125
121
156
160
148
136
124
136
124
120
155
159
147
135
123
135
123
119
154
158
146
134
122
134
122
118
153
157
145
133
121
133
121
117
152
156
144
132
120
132
120
116
151
155
143
131
119
131
119
115
150
154
142
130
118
130
118
114
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
141
140
139
138
137
136
135
134
133
132
131
130
129
117
118
119
120
121
122
123
124
125
126
127
128
129
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
140
128
116
104
139
127
115
103
138
126
114
102
137
125
113
101
136
124
112
100
135
123
111
99
134
122
110
98
133
121
109
97
132
120
108
96
131
119
107
95
130
118
106
94
129
128
127
126
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
130
116
104
92
80
94
131
115
103
91
79
95
131
114
102
90
78
96
130
113
101
89
77
97
129
112
100
88
76
98
128
111
99
87
75
99
127
110
98
86
74
100
114
115
116
117
118
119
120
121
122
123
124
125
126
109
97
85
73
101
102
103
104
105
106
107
108
109
110
111
112
113
108
96
84
72
107
95
83
71
106
94
82
70
105
93
81
69
104
92
80
68
103
102
101
100
99
98
97
96
95
94
93
92
91
79
78
77
76
75
74
73
72
71
70
69
68
67
104
90
78
66
104
89
77
65
103
88
76
64
102
87
75
63
101
86
74
62
100
85
73
61
61
62
63
64
65
66
67
68
69
70
71
72
73
99
84
72
60
48
49
50
51
52
53
54
55
56
57
58
59
60
74
98
83
71
59
47
75
97
82
70
58
46
76
96
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
57
45
77
95
70
56
56
44
78
94
71
55
55
43
79
93
72
54
54
42
80
81
82
83
84
85
86
87
88
89
90
91
92
73
53
53
52
51
50
49
48
47
46
45
44
43
42
41
81
93
74
52
52
40
82
94
75
51
51
39
83
95
76
50
50
38
84
96
77
49
49
37
85
97
78
48
48
36
86
98
79
47
47
35
87
99
80
46
46
34
88
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
33
89
92
80
46
32
32
90
91
79
47
31
31
91
90
78
48
30
30
92
89
77
49
29
29
93
88
76
50
28
28
94
87
75
51
27
27
95
86
74
52
26
26
96
85
73
53
25
25
97
84
72
54
24
24
98
83
71
55
23
23
99
82
70
56
22
22
108
107
106
105
104
103
102
101
100
101
102
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
69
68
67
66
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
109
94
80
22
8
30
110
95
79
23
7
31
111
96
78
24
6
32
112
97
77
25
5
33
113
98
76
26
4
34
114
99
75
27
3
35
115
100
74
28
2
36
116
101
73
29
1
37
117
102
72
30
0
176
177
178
179
180
181
182
183
184
185
186
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
175
184
164
152
148
136
174
183
163
151
147
135
173
182
162
150
146
134
172
181
161
149
145
133
171
180
160
148
144
132
170
179
159
147
143
131
169
178
158
146
142
130
168
177
157
145
141
129
167
176
156
144
140
128
166
175
155
143
139
127
165
174
154
142
138
126
164
173
153
141
140
139
138
137
136
135
134
133
132
131
130
129
141
137
125
163
172
152
140
128
140
136
124
162
171
151
139
127
139
135
123
161
170
150
138
126
138
134
122
160
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
137
125
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
121
159
162
148
136
124
136
124
120
158
162
147
135
123
135
123
119
157
161
146
134
122
134
122
118
156
160
145
133
121
133
121
117
155
159
144
132
120
132
120
116
154
158
143
131
119
131
119
115
153
157
142
130
118
130
118
114
152
156
141
129
117
129
117
113
151
155
140
128
116
128
116
112
150
154
139
127
115
127
115
111
149
153
138
126
114
126
114
110
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
137
136
135
134
133
132
131
130
129
128
127
126
125
113
114
115
116
117
118
119
120
121
122
123
124
125
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
139
124
112
100
138
123
111
99
137
122
110
98
136
121
109
97
135
120
108
96
134
119
107
95
133
118
106
94
132
117
105
93
131
116
104
92
130
115
103
91
129
114
102
90
128
127
126
125
124
123
122
121
120
119
118
117
116
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
129
115
124
88
76
90
128
114
123
87
75
91
127
113
122
86
74
92
126
112
121
85
73
93
125
111
120
84
72
94
124
110
119
83
71
95
123
109
118
82
70
96
110
111
112
113
114
115
116
117
118
119
120
121
122
108
117
81
69
97
98
99
100
101
102
103
104
105
106
107
108
109
107
116
80
68
106
115
79
67
105
114
78
66
104
113
77
65
103
112
76
64
102
103
104
105
106
107
108
109
110
111
112
112
111
75
74
73
72
71
70
69
68
67
66
65
64
63
101
110
76
62
100
109
77
61
99
108
78
60
98
107
79
59
97
106
80
58
96
105
81
57
57
58
59
60
61
62
63
64
65
66
67
68
69
95
104
82
56
44
45
46
47
48
49
50
51
52
53
54
55
56
70
94
103
83
55
43
71
93
102
84
54
42
72
92
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
86
85
53
41
73
91
90
76
52
40
74
90
91
75
51
39
75
89
92
74
50
38
76
77
78
79
80
81
82
83
84
85
86
87
88
93
73
49
48
47
46
45
44
43
42
41
40
39
38
37
77
89
94
72
50
36
78
90
95
71
51
35
79
91
96
70
52
34
80
92
97
69
53
33
81
93
98
68
54
32
82
94
99
67
55
31
83
95
100
66
56
30
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
60
59
58
57
29
85
109
100
66
52
28
86
110
99
67
51
27
87
110
98
68
50
26
88
109
97
69
49
25
89
108
96
70
48
24
90
107
95
71
47
23
91
106
94
72
46
22
92
105
93
73
45
21
93
104
92
74
44
20
94
103
91
75
43
19
95
102
90
76
42
18
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
107
106
105
104
103
102
101
89
88
87
86
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
105
109
100
42
30
8
106
110
99
43
31
7
107
111
98
44
32
6
108
112
97
45
33
5
109
113
96
46
34
4
110
114
95
47
35
3
111
115
94
48
36
2
112
116
93
49
37
1
113
117
92
50
38
0
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
187
186
185
184
183
182
181
180
179
178
177
137
149
153
165
185
176
136
148
152
164
184
175
135
147
151
163
183
174
134
146
150
162
182
173
133
145
149
161
181
172
132
144
148
160
180
171
131
143
147
159
179
170
130
142
146
158
178
169
129
141
145
157
177
168
128
140
144
156
176
167
127
139
143
155
175
166
126
138
142
130
131
132
133
134
135
136
137
138
139
140
141
142
154
174
165
125
137
141
129
141
153
173
164
124
136
140
128
140
152
172
163
123
135
139
127
139
151
171
162
122
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
126
138
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
161
121
125
137
125
137
149
163
160
120
124
136
124
136
148
163
159
119
123
135
123
135
147
162
158
118
122
134
122
134
146
161
157
117
121
133
121
133
145
160
156
116
120
132
120
132
144
159
155
115
119
131
119
131
143
158
154
114
118
130
118
130
142
157
153
113
117
129
117
129
141
156
152
112
116
128
116
128
140
155
151
111
115
127
115
127
139
154
150
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
126
125
124
123
122
121
120
119
118
117
116
115
114
126
127
128
129
130
131
132
133
134
135
136
137
138
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
101
113
125
140
100
112
124
139
99
111
123
138
98
110
122
137
97
109
121
136
96
108
120
135
95
107
119
134
94
106
118
133
93
105
117
132
92
104
116
131
91
103
115
130
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
117
118
119
120
121
122
123
124
125
126
127
128
129
91
77
89
125
116
130
92
76
88
124
115
129
93
75
87
123
114
128
94
74
86
122
113
127
95
73
85
121
112
126
96
72
84
120
111
125
97
71
83
119
110
124
110
109
108
107
106
105
104
103
102
101
100
99
98
70
82
118
109
123
122
121
120
119
118
117
116
115
114
113
112
111
69
81
117
108
68
80
116
107
67
79
115
106
66
78
114
105
65
77
113
104
64
65
66
67
68
69
70
71
72
73
74
75
76
112
113
113
112
111
110
109
108
107
106
105
104
103
63
77
111
102
62
78
110
101
61
79
109
100
60
80
108
99
59
81
107
98
58
82
106
97
57
56
55
54
53
52
51
50
49
48
47
46
45
57
83
105
96
70
69
68
67
66
65
64
63
62
61
60
59
58
44
56
84
104
95
71
43
55
85
103
94
72
42
54
86
87
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
93
73
41
53
77
91
92
74
40
52
76
92
91
75
39
51
75
93
90
76
38
39
40
41
42
43
44
45
46
47
48
49
50
74
94
89
88
87
86
85
84
83
82
81
80
79
78
77
37
51
73
95
90
78
36
52
72
96
91
79
35
53
71
97
92
80
34
54
70
98
93
81
33
55
69
99
94
82
32
56
68
100
95
83
31
57
67
101
96
84
30
58
59
60
61
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
29
53
67
101
110
86
28
52
68
100
111
87
27
51
69
99
111
88
26
50
70
98
110
89
25
49
71
97
109
90
24
48
72
96
108
91
23
47
73
95
107
92
22
46
74
94
106
93
21
45
75
93
105
94
20
44
76
92
104
95
19
43
77
91
103
96
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
87
88
89
90
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
9
31
43
101
110
106
8
32
44
100
111
107
7
33
45
99
112
108
6
34
46
98
113
109
5
35
47
97
114
110
4
36
48
96
115
111
3
37
49
95
116
112
2
38
50
94
117
113
1
39
51
93
118
114
0
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
141
153
157
169
189
177
140
152
156
168
188
176
139
151
155
167
187
175
138
150
154
166
186
174
137
149
153
165
185
173
136
148
152
164
184
172
135
147
151
163
183
171
134
146
150
162
182
170
133
145
149
161
181
169
132
144
148
160
180
168
131
143
147
159
179
167
130
142
146
134
135
136
137
138
139
140
141
142
143
144
145
146
158
178
166
129
141
145
133
145
157
177
165
128
140
144
132
144
156
176
164
127
139
143
131
143
155
175
163
126
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
130
142
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
162
125
129
141
129
141
153
165
161
124
128
140
128
140
152
164
160
123
127
139
127
139
151
163
159
122
126
138
126
138
150
162
158
121
125
137
125
137
149
161
157
120
124
136
124
136
148
160
156
119
123
135
123
135
147
159
155
118
122
134
122
134
146
158
154
117
121
133
121
133
145
157
153
116
120
132
120
132
144
156
152
115
119
131
119
131
143
155
151
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
130
129
128
127
126
125
124
123
122
121
120
119
118
130
131
132
133
134
135
136
137
138
139
140
141
142
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
105
117
129
141
104
116
128
140
103
115
127
139
102
114
126
138
101
113
125
137
100
112
124
136
99
111
123
135
98
110
122
134
97
109
121
133
96
108
120
132
95
107
119
131
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
125
126
127
128
129
130
95
81
93
105
117
131
96
80
92
104
116
132
97
79
91
103
115
132
98
78
90
102
114
131
99
77
89
101
113
130
100
76
88
100
112
129
101
75
87
99
111
128
114
113
112
111
110
109
108
107
106
105
104
103
102
74
86
98
110
127
126
125
124
123
122
121
120
119
118
117
116
115
73
85
97
109
72
84
96
108
71
83
95
107
70
82
94
106
69
81
93
105
68
69
70
71
72
73
74
75
76
77
78
79
80
92
93
94
95
96
97
98
99
100
101
102
103
104
67
79
91
105
66
78
90
105
65
77
89
104
64
76
88
103
63
75
87
102
62
74
86
101
61
60
59
58
57
56
55
54
53
52
51
50
49
61
73
85
100
74
73
72
71
70
69
68
67
66
65
64
63
62
48
60
72
84
99
75
47
59
71
83
98
76
46
58
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
97
77
45
57
57
71
96
78
44
56
56
72
95
79
43
55
55
73
94
80
42
43
44
45
46
47
48
49
50
51
52
53
54
54
74
93
92
91
90
89
88
87
86
85
84
83
82
81
41
53
53
75
94
82
40
52
52
76
95
83
39
51
51
77
96
84
38
50
50
78
97
85
37
49
49
79
98
86
36
48
48
80
99
87
35
47
47
81
100
88
34
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
103
102
101
89
33
33
47
81
93
90
32
32
48
80
92
91
31
31
49
79
91
92
30
30
50
78
90
93
29
29
51
77
89
94
28
28
52
76
88
95
27
27
53
75
87
96
26
26
54
74
86
97
25
25
55
73
85
98
24
24
56
72
84
99
23
23
57
71
83
100
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
58
59
60
61
62
63
64
65
66
67
68
69
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
103
102
101
102
103
104
105
106
107
108
109
31
9
23
81
95
110
32
8
24
80
96
111
33
7
25
79
97
112
34
6
26
78
98
113
35
5
27
77
99
114
36
4
28
76
100
115
37
3
29
75
101
116
38
2
30
74
102
117
39
1
31
73
103
118
40
0
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
147
167
155
118
130
134
122
123
124
125
126
127
128
129
130
131
132
133
134
146
166
154
117
129
133
121
133
145
165
153
116
128
132
120
132
144
164
152
115
127
131
119
131
143
163
151
114
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
118
130
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
107
119
107
119
131
143
139
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
118
117
116
115
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
125
126
127
128
129
130
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
81
80
79
78
77
76
75
74
73
72
71
70
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
83
69
81
93
105
119
84
68
80
92
104
120
85
67
79
91
103
120
86
66
78
90
102
119
87
65
77
89
101
118
88
64
76
88
100
117
89
63
75
87
99
116
102
101
100
99
98
97
96
95
94
93
92
91
90
62
74
86
98
115
114
113
112
111
110
109
108
107
106
105
104
103
61
73
85
97
60
72
84
96
59
71
83
95
58
70
82
94
57
69
81
93
56
57
58
59
60
61
62
63
64
65
66
67
68
80
81
82
83
84
85
86
87
88
89
90
91
92
55
67
79
93
54
66
78
94
53
65
77
93
52
64
76
92
51
63
75
91
50
62
74
90
73
72
71
70
69
68
67
66
65
64
63
62
61
49
61
73
89
86
85
84
83
82
81
80
79
78
77
76
75
74
60
48
60
72
88
87
59
47
59
71
87
88
58
46
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
86
89
57
45
45
59
85
90
56
44
44
60
84
91
55
43
43
61
83
92
54
53
52
51
50
49
48
47
46
45
44
43
42
42
62
82
83
84
85
86
87
88
89
90
91
92
93
93
53
41
41
63
81
93
52
40
40
64
80
92
51
39
39
65
79
91
50
38
38
66
78
90
49
37
37
67
77
89
48
36
36
68
76
88
47
35
35
69
75
87
46
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
86
45
21
35
69
61
85
44
20
36
68
60
84
43
19
37
67
59
83
42
18
38
66
58
82
41
17
39
65
57
81
40
16
40
64
56
80
39
15
41
63
55
79
38
14
42
62
54
78
37
13
43
61
53
77
36
12
44
60
52
76
35
11
45
59
51
75
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
46
47
48
49
50
51
52
53
54
55
56
57
58
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
43
23
9
49
63
83
44
24
8
48
64
84
45
25
7
47
65
85
46
26
6
46
66
86
47
27
5
45
67
87
48
28
4
44
68
88
49
29
3
43
69
89
50
30
2
42
70
90
51
31
1
41
71
91
52
32
0
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
131
119
154
166
146
134
133
132
131
130
129
128
127
126
125
124
123
122
134
130
118
153
165
145
133
121
133
129
117
152
164
144
132
120
132
128
116
151
163
143
131
119
131
127
115
150
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
130
118
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
143
131
119
107
119
107
103
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
130
129
128
127
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
115
116
117
118
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
103
104
105
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
71
72
73
74
75
76
77
78
79
80
81
82
119
105
93
81
69
83
120
104
92
80
68
84
120
103
91
79
67
85
119
102
90
78
66
86
118
101
89
77
65
87
117
100
88
76
64
88
116
99
87
75
63
89
103
104
105
106
107
108
109
110
111
112
113
114
115
98
86
74
62
90
91
92
93
94
95
96
97
98
99
100
101
102
97
85
73
61
96
84
72
60
95
83
71
59
94
82
70
58
93
81
69
57
92
91
90
89
88
87
86
85
84
83
82
81
80
68
67
66
65
64
63
62
61
60
59
58
57
56
93
79
67
55
94
78
66
54
93
77
65
53
92
76
64
52
91
75
63
51
90
74
62
50
74
75
76
77
78
79
80
81
82
83
84
85
86
89
73
61
49
61
62
63
64
65
66
67
68
69
70
71
72
73
87
88
72
60
48
60
88
87
71
59
47
59
89
86
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
47
48
49
50
51
52
53
54
55
56
57
58
46
58
90
85
59
45
45
57
91
84
60
44
44
56
92
83
61
43
43
55
93
93
92
91
90
89
88
87
86
85
84
83
82
62
42
42
43
44
45
46
47
48
49
50
51
52
53
54
93
81
63
41
41
53
92
80
64
40
40
52
91
79
65
39
39
51
90
78
66
38
38
50
89
77
67
37
37
49
88
76
68
36
36
48
87
75
69
35
35
47
86
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
46
85
61
69
35
21
45
84
60
68
36
20
44
83
59
67
37
19
43
82
58
66
38
18
42
81
57
65
39
17
41
80
56
64
40
16
40
79
55
63
41
15
39
78
54
62
42
14
38
77
53
61
43
13
37
76
52
60
44
12
36
75
51
59
45
11
35
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
58
57
56
55
54
53
52
51
50
49
48
47
46
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
83
63
49
9
23
43
84
64
48
8
24
44
85
65
47
7
25
45
86
66
46
6
26
46
87
67
45
5
27
47
88
68
44
4
28
48
89
69
43
3
29
49
90
70
42
2
30
50
91
71
41
1
31
51
92
72
40
0
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
177
189
169
157
153
141
176
188
168
156
152
140
175
187
167
155
151
139
174
186
166
154
150
138
173
185
165
153
149
137
172
184
164
152
148
136
171
183
163
151
147
135
170
182
162
150
146
134
169
181
161
149
145
133
168
180
160
148
144
132
167
179
159
147
143
131
166
178
158
146
145
144
143
142
141
140
139
138
137
136
135
134
146
142
130
165
177
157
145
133
145
141
129
164
176
156
144
132
144
140
128
163
175
155
143
131
143
139
127
162
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
142
130
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
126
161
165
153
141
129
141
129
125
160
164
152
140
128
140
128
124
159
163
151
139
127
139
127
123
158
162
150
138
126
138
126
122
157
161
149
137
125
137
125
121
156
160
148
136
124
136
124
120
155
159
147
135
123
135
123
119
154
158
146
134
122
134
122
118
153
157
145
133
121
133
121
117
152
156
144
132
120
132
120
116
151
155
143
131
119
131
119
115
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
142
141
140
139
138
137
136
135
134
133
132
131
130
118
119
120
121
122
123
124
125
126
127
128
129
130
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
141
129
117
105
140
128
116
104
139
127
115
103
138
126
114
102
137
125
113
101
136
124
112
100
135
123
111
99
134
122
110
98
133
121
109
97
132
120
108
96
131
119
107
95
130
129
128
127
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
131
117
105
93
81
95
132
116
104
92
80
96
132
115
103
91
79
97
131
114
102
90
78
98
130
113
101
89
77
99
129
112
100
88
76
100
128
111
99
87
75
101
115
116
117
118
119
120
121
122
123
124
125
126
127
110
98
86
74
102
103
104
105
106
107
108
109
110
111
112
113
114
109
97
85
73
108
96
84
72
107
95
83
71
106
94
82
70
105
93
81
69
104
103
102
101
100
99
98
97
96
95
94
93
92
80
79
78
77
76
75
74
73
72
71
70
69
68
105
91
79
67
105
90
78
66
104
89
77
65
103
88
76
64
102
87
75
63
101
86
74
62
62
63
64
65
66
67
68
69
70
71
72
73
74
100
85
73
61
49
50
51
52
53
54
55
56
57
58
59
60
61
75
99
84
72
60
48
76
98
83
71
59
47
77
97
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
58
46
78
96
71
57
57
45
79
95
72
56
56
44
80
94
73
55
55
43
81
82
83
84
85
86
87
88
89
90
91
92
93
74
54
54
53
52
51
50
49
48
47
46
45
44
43
42
82
94
75
53
53
41
83
95
76
52
52
40
84
96
77
51
51
39
85
97
78
50
50
38
86
98
79
49
49
37
87
99
80
48
48
36
88
100
81
47
47
35
89
101
102
103
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
34
90
93
81
47
33
33
91
92
80
48
32
32
92
91
79
49
31
31
93
90
78
50
30
30
94
89
77
51
29
29
95
88
76
52
28
28
96
87
75
53
27
27
97
86
74
54
26
26
98
85
73
55
25
25
99
84
72
56
24
24
100
83
71
57
23
23
109
108
107
106
105
104
103
102
101
102
103
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
70
69
68
67
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
110
95
81
23
9
31
111
96
80
24
8
32
112
97
79
25
7
33
113
98
78
26
6
34
114
99
77
27
5
35
115
100
76
28
4
36
116
101
75
29
3
37
117
102
74
30
2
38
118
103
73
31
1
39
119
104
72
32
0
177
178
179
180
181
182
183
184
185
186
187
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
176
185
165
153
149
137
175
184
164
152
148
136
174
183
163
151
147
135
173
182
162
150
146
134
172
181
161
149
145
133
171
180
160
148
144
132
170
179
159
147
143
131
169
178
158
146
142
130
168
177
157
145
141
129
167
176
156
144
140
128
166
175
155
143
139
127
165
174
154
142
141
140
139
138
137
136
135
134
133
132
131
130
142
138
126
164
173
153
141
129
141
137
125
163
172
152
140
128
140
136
124
162
171
151
139
127
139
135
123
161
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
138
126
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
122
160
163
149
137
125
137
125
121
159
163
148
136
124
136
124
120
158
162
147
135
123
135
123
119
157
161
146
134
122
134
122
118
156
160
145
133
121
133
121
117
155
159
144
132
120
132
120
116
154
158
143
131
119
131
119
115
153
157
142
130
118
130
118
114
152
156
141
129
117
129
117
113
151
155
140
128
116
128
116
112
150
154
139
127
115
127
115
111
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
138
137
136
135
134
133
132
131
130
129
128
127
126
114
115
116
117
118
119
120
121
122
123
124
125
126
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
140
125
113
101
139
124
112
100
138
123
111
99
137
122
110
98
136
121
109
97
135
120
108
96
134
119
107
95
133
118
106
94
132
117
105
93
131
116
104
92
130
115
103
91
129
128
127
126
125
124
123
122
121
120
119
118
117
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
130
116
125
89
77
91
129
115
124
88
76
92
128
114
123
87
75
93
127
113
122
86
74
94
126
112
121
85
73
95
125
111
120
84
72
96
124
110
119
83
71
97
111
112
113
114
115
116
117
118
119
120
121
122
123
109
118
82
70
98
99
100
101
102
103
104
105
106
107
108
109
110
108
117
81
69
107
116
80
68
106
115
79
67
105
114
78
66
104
113
77
65
103
104
105
106
107
108
109
110
111
112
113
113
112
76
75
74
73
72
71
70
69
68
67
66
65
64
102
111
77
63
101
110
78
62
100
109
79
61
99
108
80
60
98
107
81
59
97
106
82
58
58
59
60
61
62
63
64
65
66
67
68
69
70
96
105
83
57
45
46
47
48
49
50
51
52
53
54
55
56
57
71
95
104
84
56
44
72
94
103
85
55
43
73
93
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
87
86
54
42
74
92
91
77
53
41
75
91
92
76
52
40
76
90
93
75
51
39
77
78
79
80
81
82
83
84
85
86
87
88
89
94
74
50
49
48
47
46
45
44
43
42
41
40
39
38
78
90
95
73
51
37
79
91
96
72
52
36
80
92
97
71
53
35
81
93
98
70
54
34
82
94
99
69
55
33
83
95
100
68
56
32
84
96
101
67
57
31
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
61
60
59
58
30
86
110
101
67
53
29
87
111
100
68
52
28
88
111
99
69
51
27
89
110
98
70
50
26
90
109
97
71
49
25
91
108
96
72
48
24
92
107
95
73
47
23
93
106
94
74
46
22
94
105
93
75
45
21
95
104
92
76
44
20
96
103
91
77
43
19
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
108
107
106
105
104
103
102
90
89
88
87
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
106
110
101
43
31
9
107
111
100
44
32
8
108
112
99
45
33
7
109
113
98
46
34
6
110
114
97
47
35
5
111
115
96
48
36
4
112
116
95
49
37
3
113
117
94
50
38
2
114
118
93
51
39
1
115
119
92
52
40
0
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
188
187
186
185
184
183
182
181
180
179
178
138
150
154
166
186
177
137
149
153
165
185
176
136
148
152
164
184
175
135
147
151
163
183
174
134
146
150
162
182
173
133
145
149
161
181
172
132
144
148
160
180
171
131
143
147
159
179
170
130
142
146
158
178
169
129
141
145
157
177
168
128
140
144
156
176
167
127
139
143
131
132
133
134
135
136
137
138
139
140
141
142
143
155
175
166
126
138
142
130
142
154
174
165
125
137
141
129
141
153
173
164
124
136
140
128
140
152
172
163
123
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
127
139
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
162
122
126
138
126
138
150
164
161
121
125
137
125
137
149
164
160
120
124
136
124
136
148
163
159
119
123
135
123
135
147
162
158
118
122
134
122
134
146
161
157
117
121
133
121
133
145
160
156
116
120
132
120
132
144
159
155
115
119
131
119
131
143
158
154
114
118
130
118
130
142
157
153
113
117
129
117
129
141
156
152
112
116
128
116
128
140
155
151
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
127
126
125
124
123
122
121
120
119
118
117
116
115
127
128
129
130
131
132
133
134
135
136
137
138
139
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
102
114
126
141
101
113
125
140
100
112
124
139
99
111
123
138
98
110
122
137
97
109
121
136
96
108
120
135
95
107
119
134
94
106
118
133
93
105
117
132
92
104
116
131
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
118
119
120
121
122
123
124
125
126
127
128
129
130
92
78
90
126
117
131
93
77
89
125
116
130
94
76
88
124
115
129
95
75
87
123
114
128
96
74
86
122
113
127
97
73
85
121
112
126
98
72
84
120
111
125
111
110
109
108
107
106
105
104
103
102
101
100
99
71
83
119
110
124
123
122
121
120
119
118
117
116
115
114
113
112
70
82
118
109
69
81
117
108
68
80
116
107
67
79
115
106
66
78
114
105
65
66
67
68
69
70
71
72
73
74
75
76
77
113
114
114
113
112
111
110
109
108
107
106
105
104
64
78
112
103
63
79
111
102
62
80
110
101
61
81
109
100
60
82
108
99
59
83
107
98
58
57
56
55
54
53
52
51
50
49
48
47
46
58
84
106
97
71
70
69
68
67
66
65
64
63
62
61
60
59
45
57
85
105
96
72
44
56
86
104
95
73
43
55
87
88
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
94
74
42
54
78
92
93
75
41
53
77
93
92
76
40
52
76
94
91
77
39
40
41
42
43
44
45
46
47
48
49
50
51
75
95
90
89
88
87
86
85
84
83
82
81
80
79
78
38
52
74
96
91
79
37
53
73
97
92
80
36
54
72
98
93
81
35
55
71
99
94
82
34
56
70
100
95
83
33
57
69
101
96
84
32
58
68
102
97
85
31
59
60
61
62
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
30
54
68
102
111
87
29
53
69
101
112
88
28
52
70
100
112
89
27
51
71
99
111
90
26
50
72
98
110
91
25
49
73
97
109
92
24
48
74
96
108
93
23
47
75
95
107
94
22
46
76
94
106
95
21
45
77
93
105
96
20
44
78
92
104
97
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
88
89
90
91
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
10
32
44
102
111
107
9
33
45
101
112
108
8
34
46
100
113
109
7
35
47
99
114
110
6
36
48
98
115
111
5
37
49
97
116
112
4
38
50
96
117
113
3
39
51
95
118
114
2
40
52
94
119
115
1
41
53
93
120
116
0
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
142
154
158
170
190
178
141
153
157
169
189
177
140
152
156
168
188
176
139
151
155
167
187
175
138
150
154
166
186
174
137
149
153
165
185
173
136
148
152
164
184
172
135
147
151
163
183
171
134
146
150
162
182
170
133
145
149
161
181
169
132
144
148
160
180
168
131
143
147
135
136
137
138
139
140
141
142
143
144
145
146
147
159
179
167
130
142
146
134
146
158
178
166
129
141
145
133
145
157
177
165
128
140
144
132
144
156
176
164
127
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
131
143
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
163
126
130
142
130
142
154
166
162
125
129
141
129
141
153
165
161
124
128
140
128
140
152
164
160
123
127
139
127
139
151
163
159
122
126
138
126
138
150
162
158
121
125
137
125
137
149
161
157
120
124
136
124
136
148
160
156
119
123
135
123
135
147
159
155
118
122
134
122
134
146
158
154
117
121
133
121
133
145
157
153
116
120
132
120
132
144
156
152
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
131
130
129
128
127
126
125
124
123
122
121
120
119
131
132
133
134
135
136
137
138
139
140
141
142
143
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
106
118
130
142
105
117
129
141
104
116
128
140
103
115
127
139
102
114
126
138
101
113
125
137
100
112
124
136
99
111
123
135
98
110
122
134
97
109
121
133
96
108
120
132
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
126
127
128
129
130
131
96
82
94
106
118
132
97
81
93
105
117
133
98
80
92
104
116
133
99
79
91
103
115
132
100
78
90
102
114
131
101
77
89
101
113
130
102
76
88
100
112
129
115
114
113
112
111
110
109
108
107
106
105
104
103
75
87
99
111
128
127
126
125
124
123
122
121
120
119
118
117
116
74
86
98
110
73
85
97
109
72
84
96
108
71
83
95
107
70
82
94
106
69
70
71
72
73
74
75
76
77
78
79
80
81
93
94
95
96
97
98
99
100
101
102
103
104
105
68
80
92
106
67
79
91
106
66
78
90
105
65
77
89
104
64
76
88
103
63
75
87
102
62
61
60
59
58
57
56
55
54
53
52
51
50
62
74
86
101
75
74
73
72
71
70
69
68
67
66
65
64
63
49
61
73
85
100
76
48
60
72
84
99
77
47
59
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
98
78
46
58
58
72
97
79
45
57
57
73
96
80
44
56
56
74
95
81
43
44
45
46
47
48
49
50
51
52
53
54
55
55
75
94
93
92
91
90
89
88
87
86
85
84
83
82
42
54
54
76
95
83
41
53
53
77
96
84
40
52
52
78
97
85
39
51
51
79
98
86
38
50
50
80
99
87
37
49
49
81
100
88
36
48
48
82
101
89
35
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
104
103
102
90
34
34
48
82
94
91
33
33
49
81
93
92
32
32
50
80
92
93
31
31
51
79
91
94
30
30
52
78
90
95
29
29
53
77
89
96
28
28
54
76
88
97
27
27
55
75
87
98
26
26
56
74
86
99
25
25
57
73
85
100
24
24
58
72
84
101
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
59
60
61
62
63
64
65
66
67
68
69
70
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
104
103
102
103
104
105
106
107
108
109
110
32
10
24
82
96
111
33
9
25
81
97
112
34
8
26
80
98
113
35
7
27
79
99
114
36
6
28
78
100
115
37
5
29
77
101
116
38
4
30
76
102
117
39
3
31
75
103
118
40
2
32
74
104
119
41
1
33
73
105
120
42
0
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
130
142
146
158
178
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
148
168
156
119
131
135
123
124
125
126
127
128
129
130
131
132
133
134
135
147
167
155
118
130
134
122
134
146
166
154
117
129
133
121
133
145
165
153
116
128
132
120
132
144
164
152
115
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
119
131
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
151
114
118
130
118
130
142
154
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
108
120
108
120
132
144
140
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
119
118
117
116
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
126
127
128
129
130
131
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
94
106
118
130
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
82
81
80
79
78
77
76
75
74
73
72
71
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
119
84
70
82
94
106
120
85
69
81
93
105
121
86
68
80
92
104
121
87
67
79
91
103
120
88
66
78
90
102
119
89
65
77
89
101
118
90
64
76
88
100
117
103
102
101
100
99
98
97
96
95
94
93
92
91
63
75
87
99
116
115
114
113
112
111
110
109
108
107
106
105
104
62
74
86
98
61
73
85
97
60
72
84
96
59
71
83
95
58
70
82
94
57
58
59
60
61
62
63
64
65
66
67
68
69
81
82
83
84
85
86
87
88
89
90
91
92
93
56
68
80
94
55
67
79
93
54
66
78
92
53
65
77
91
52
64
76
90
51
63
75
89
74
73
72
71
70
69
68
67
66
65
64
63
62
50
62
74
88
87
86
85
84
83
82
81
80
79
78
77
76
75
61
49
61
73
87
88
60
48
60
72
86
89
59
47
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
85
90
58
46
46
60
84
91
57
45
45
61
83
92
56
44
44
62
82
93
55
54
53
52
51
50
49
48
47
46
45
44
43
43
63
81
82
83
84
85
86
87
88
89
90
91
92
93
54
42
42
64
80
92
53
41
41
65
79
91
52
40
40
66
78
90
51
39
39
67
77
89
50
38
38
68
76
88
49
37
37
69
75
87
48
36
36
70
74
86
47
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
85
46
22
36
70
60
84
45
21
37
69
59
83
44
20
38
68
58
82
43
19
39
67
57
81
42
18
40
66
56
80
41
17
41
65
55
79
40
16
42
64
54
78
39
15
43
63
53
77
38
14
44
62
52
76
37
13
45
61
51
75
36
12
46
60
50
74
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
47
48
49
50
51
52
53
54
55
56
57
58
59
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
44
24
10
48
62
82
45
25
9
47
63
83
46
26
8
46
64
84
47
27
7
45
65
85
48
28
6
44
66
86
49
29
5
43
67
87
50
30
4
42
68
88
51
31
3
41
69
89
52
32
2
40
70
90
53
33
1
39
71
91
54
34
0
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
166
178
158
146
142
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
132
120
155
167
147
135
134
133
132
131
130
129
128
127
126
125
124
123
135
131
119
154
166
146
134
122
134
130
118
153
165
145
133
121
133
129
117
152
164
144
132
120
132
128
116
151
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
131
119
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
115
150
154
142
130
118
130
118
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
144
132
120
108
120
108
104
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
131
130
129
128
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
116
117
118
119
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
130
118
106
94
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
104
105
106
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
72
73
74
75
76
77
78
79
80
81
82
83
120
106
94
82
70
84
121
105
93
81
69
85
121
104
92
80
68
86
120
103
91
79
67
87
119
102
90
78
66
88
118
101
89
77
65
89
117
100
88
76
64
90
104
105
106
107
108
109
110
111
112
113
114
115
116
99
87
75
63
91
92
93
94
95
96
97
98
99
100
101
102
103
98
86
74
62
97
85
73
61
96
84
72
60
95
83
71
59
94
82
70
58
93
92
91
90
89
88
87
86
85
84
83
82
81
69
68
67
66
65
64
63
62
61
60
59
58
57
94
80
68
56
93
79
67
55
92
78
66
54
91
77
65
53
90
76
64
52
89
75
63
51
75
76
77
78
79
80
81
82
83
84
85
86
87
88
74
62
50
62
63
64
65
66
67
68
69
70
71
72
73
74
88
87
73
61
49
61
89
86
72
60
48
60
90
85
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
47
59
91
84
60
46
46
58
92
83
61
45
45
57
93
82
62
44
44
56
93
92
91
90
89
88
87
86
85
84
83
82
81
63
43
43
44
45
46
47
48
49
50
51
52
53
54
55
92
80
64
42
42
54
91
79
65
41
41
53
90
78
66
40
40
52
89
77
67
39
39
51
88
76
68
38
38
50
87
75
69
37
37
49
86
74
70
36
36
48
85
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
47
84
60
70
36
22
46
83
59
69
37
21
45
82
58
68
38
20
44
81
57
67
39
19
43
80
56
66
40
18
42
79
55
65
41
17
41
78
54
64
42
16
40
77
53
63
43
15
39
76
52
62
44
14
38
75
51
61
45
13
37
74
50
60
46
12
36
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
59
58
57
56
55
54
53
52
51
50
49
48
47
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
82
62
48
10
24
44
83
63
47
9
25
45
84
64
46
8
26
46
85
65
45
7
27
47
86
66
44
6
28
48
87
67
43
5
29
49
88
68
42
4
30
50
89
69
41
3
31
51
90
70
40
2
32
52
91
71
39
1
33
53
92
72
38
0
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
178
190
170
158
154
142
177
189
169
157
153
141
176
188
168
156
152
140
175
187
167
155
151
139
174
186
166
154
150
138
173
185
165
153
149
137
172
184
164
152
148
136
171
183
163
151
147
135
170
182
162
150
146
134
169
181
161
149
145
133
168
180
160
148
144
132
167
179
159
147
146
145
144
143
142
141
140
139
138
137
136
135
147
143
131
166
178
158
146
134
146
142
130
165
177
157
145
133
145
141
129
164
176
156
144
132
144
140
128
163
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
143
131
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
127
162
166
154
142
130
142
130
126
161
165
153
141
129
141
129
125
160
164
152
140
128
140
128
124
159
163
151
139
127
139
127
123
158
162
150
138
126
138
126
122
157
161
149
137
125
137
125
121
156
160
148
136
124
136
124
120
155
159
147
135
123
135
123
119
154
158
146
134
122
134
122
118
153
157
145
133
121
133
121
117
152
156
144
132
120
132
120
116
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
143
142
141
140
139
138
137
136
135
134
133
132
131
119
120
121
122
123
124
125
126
127
128
129
130
131
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
142
130
118
106
141
129
117
105
140
128
116
104
139
127
115
103
138
126
114
102
137
125
113
101
136
124
112
100
135
123
111
99
134
122
110
98
133
121
109
97
132
120
108
96
131
130
129
128
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
132
118
106
94
82
96
133
117
105
93
81
97
133
116
104
92
80
98
132
115
103
91
79
99
131
114
102
90
78
100
130
113
101
89
77
101
129
112
100
88
76
102
116
117
118
119
120
121
122
123
124
125
126
127
128
111
99
87
75
103
104
105
106
107
108
109
110
111
112
113
114
115
110
98
86
74
109
97
85
73
108
96
84
72
107
95
83
71
106
94
82
70
105
104
103
102
101
100
99
98
97
96
95
94
93
81
80
79
78
77
76
75
74
73
72
71
70
69
106
92
80
68
106
91
79
67
105
90
78
66
104
89
77
65
103
88
76
64
102
87
75
63
63
64
65
66
67
68
69
70
71
72
73
74
75
101
86
74
62
50
51
52
53
54
55
56
57
58
59
60
61
62
76
100
85
73
61
49
77
99
84
72
60
48
78
98
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
59
47
79
97
72
58
58
46
80
96
73
57
57
45
81
95
74
56
56
44
82
83
84
85
86
87
88
89
90
91
92
93
94
75
55
55
54
53
52
51
50
49
48
47
46
45
44
43
83
95
76
54
54
42
84
96
77
53
53
41
85
97
78
52
52
40
86
98
79
51
51
39
87
99
80
50
50
38
88
100
81
49
49
37
89
101
82
48
48
36
90
102
103
104
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
35
91
94
82
48
34
34
92
93
81
49
33
33
93
92
80
50
32
32
94
91
79
51
31
31
95
90
78
52
30
30
96
89
77
53
29
29
97
88
76
54
28
28
98
87
75
55
27
27
99
86
74
56
26
26
100
85
73
57
25
25
101
84
72
58
24
24
110
109
108
107
106
105
104
103
102
103
104
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
71
70
69
68
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
111
96
82
24
10
32
112
97
81
25
9
33
113
98
80
26
8
34
114
99
79
27
7
35
115
100
78
28
6
36
116
101
77
29
5
37
117
102
76
30
4
38
118
103
75
31
3
39
119
104
74
32
2
40
120
105
73
33
1
41
121
106
72
34
0
178
179
180
181
182
183
184
185
186
187
188
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
177
186
166
154
150
138
176
185
165
153
149
137
175
184
164
152
148
136
174
183
163
151
147
135
173
182
162
150
146
134
172
181
161
149
145
133
171
180
160
148
144
132
170
179
159
147
143
131
169
178
158
146
142
130
168
177
157
145
141
129
167
176
156
144
140
128
166
175
155
143
142
141
140
139
138
137
136
135
134
133
132
131
143
139
127
165
174
154
142
130
142
138
126
164
173
153
141
129
141
137
125
163
172
152
140
128
140
136
124
162
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
139
127
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
123
161
164
150
138
126
138
126
122
160
164
149
137
125
137
125
121
159
163
148
136
124
136
124
120
158
162
147
135
123
135
123
119
157
161
146
134
122
134
122
118
156
160
145
133
121
133
121
117
155
159
144
132
120
132
120
116
154
158
143
131
119
131
119
115
153
157
142
130
118
130
118
114
152
156
141
129
117
129
117
113
151
155
140
128
116
128
116
112
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
139
138
137
136
135
134
133
132
131
130
129
128
127
115
116
117
118
119
120
121
122
123
124
125
126
127
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
141
126
114
102
140
125
113
101
139
124
112
100
138
123
111
99
137
122
110
98
136
121
109
97
135
120
108
96
134
119
107
95
133
118
106
94
132
117
105
93
131
116
104
92
130
129
128
127
126
125
124
123
122
121
120
119
118
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
131
117
126
90
78
92
130
116
125
89
77
93
129
115
124
88
76
94
128
114
123
87
75
95
127
113
122
86
74
96
126
112
121
85
73
97
125
111
120
84
72
98
112
113
114
115
116
117
118
119
120
121
122
123
124
110
119
83
71
99
100
101
102
103
104
105
106
107
108
109
110
111
109
118
82
70
108
117
81
69
107
116
80
68
106
115
79
67
105
114
78
66
104
105
106
107
108
109
110
111
112
113
114
114
113
77
76
75
74
73
72
71
70
69
68
67
66
65
103
112
78
64
102
111
79
63
101
110
80
62
100
109
81
61
99
108
82
60
98
107
83
59
59
60
61
62
63
64
65
66
67
68
69
70
71
97
106
84
58
46
47
48
49
50
51
52
53
54
55
56
57
58
72
96
105
85
57
45
73
95
104
86
56
44
74
94
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
88
87
55
43
75
93
92
78
54
42
76
92
93
77
53
41
77
91
94
76
52
40
78
79
80
81
82
83
84
85
86
87
88
89
90
95
75
51
50
49
48
47
46
45
44
43
42
41
40
39
79
91
96
74
52
38
80
92
97
73
53
37
81
93
98
72
54
36
82
94
99
71
55
35
83
95
100
70
56
34
84
96
101
69
57
33
85
97
102
68
58
32
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
62
61
60
59
31
87
111
102
68
54
30
88
112
101
69
53
29
89
112
100
70
52
28
90
111
99
71
51
27
91
110
98
72
50
26
92
109
97
73
49
25
93
108
96
74
48
24
94
107
95
75
47
23
95
106
94
76
46
22
96
105
93
77
45
21
97
104
92
78
44
20
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
109
108
107
106
105
104
103
91
90
89
88
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
107
111
102
44
32
10
108
112
101
45
33
9
109
113
100
46
34
8
110
114
99
47
35
7
111
115
98
48
36
6
112
116
97
49
37
5
113
117
96
50
38
4
114
118
95
51
39
3
115
119
94
52
40
2
116
120
93
53
41
1
117
121
92
54
42
0
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
189
188
187
186
185
184
183
182
181
180
179
139
151
155
167
187
178
138
150
154
166
186
177
137
149
153
165
185
176
136
148
152
164
184
175
135
147
151
163
183
174
134
146
150
162
182
173
133
145
149
161
181
172
132
144
148
160
180
171
131
143
147
159
179
170
130
142
146
158
178
169
129
141
145
157
177
168
128
140
144
132
133
134
135
136
137
138
139
140
141
142
143
144
156
176
167
127
139
143
131
143
155
175
166
126
138
142
130
142
154
174
165
125
137
141
129
141
153
173
164
124
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
128
140
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
163
123
127
139
127
139
151
165
162
122
126
138
126
138
150
165
161
121
125
137
125
137
149
164
160
120
124
136
124
136
148
163
159
119
123
135
123
135
147
162
158
118
122
134
122
134
146
161
157
117
121
133
121
133
145
160
156
116
120
132
120
132
144
159
155
115
119
131
119
131
143
158
154
114
118
130
118
130
142
157
153
113
117
129
117
129
141
156
152
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
128
127
126
125
124
123
122
121
120
119
118
117
116
128
129
130
131
132
133
134
135
136
137
138
139
140
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
103
115
127
142
102
114
126
141
101
113
125
140
100
112
124
139
99
111
123
138
98
110
122
137
97
109
121
136
96
108
120
135
95
107
119
134
94
106
118
133
93
105
117
132
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
119
120
121
122
123
124
125
126
127
128
129
130
131
93
79
91
127
118
132
94
78
90
126
117
131
95
77
89
125
116
130
96
76
88
124
115
129
97
75
87
123
114
128
98
74
86
122
113
127
99
73
85
121
112
126
112
111
110
109
108
107
106
105
104
103
102
101
100
72
84
120
111
125
124
123
122
121
120
119
118
117
116
115
114
113
71
83
119
110
70
82
118
109
69
81
117
108
68
80
116
107
67
79
115
106
66
67
68
69
70
71
72
73
74
75
76
77
78
114
115
115
114
113
112
111
110
109
108
107
106
105
65
79
113
104
64
80
112
103
63
81
111
102
62
82
110
101
61
83
109
100
60
84
108
99
59
58
57
56
55
54
53
52
51
50
49
48
47
59
85
107
98
72
71
70
69
68
67
66
65
64
63
62
61
60
46
58
86
106
97
73
45
57
87
105
96
74
44
56
88
89
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
95
75
43
55
79
93
94
76
42
54
78
94
93
77
41
53
77
95
92
78
40
41
42
43
44
45
46
47
48
49
50
51
52
76
96
91
90
89
88
87
86
85
84
83
82
81
80
79
39
53
75
97
92
80
38
54
74
98
93
81
37
55
73
99
94
82
36
56
72
100
95
83
35
57
71
101
96
84
34
58
70
102
97
85
33
59
69
103
98
86
32
60
61
62
63
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
31
55
69
103
112
88
30
54
70
102
113
89
29
53
71
101
113
90
28
52
72
100
112
91
27
51
73
99
111
92
26
50
74
98
110
93
25
49
75
97
109
94
24
48
76
96
108
95
23
47
77
95
107
96
22
46
78
94
106
97
21
45
79
93
105
98
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
89
90
91
92
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
11
33
45
103
112
108
10
34
46
102
113
109
9
35
47
101
114
110
8
36
48
100
115
111
7
37
49
99
116
112
6
38
50
98
117
113
5
39
51
97
118
114
4
40
52
96
119
115
3
41
53
95
120
116
2
42
54
94
121
117
1
43
55
93
122
118
0
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
151
163
167
179
199
187
150
162
166
178
198
186
149
161
165
177
197
185
148
160
164
176
196
184
147
159
163
175
195
183
146
158
162
174
194
182
145
157
161
173
193
181
144
156
160
172
192
180
143
155
159
171
191
179
142
154
158
170
190
178
141
153
157
169
189
177
140
152
156
144
145
146
147
148
149
150
151
152
153
154
155
156
168
188
176
139
151
155
143
155
167
187
175
138
150
154
142
154
166
186
174
137
149
153
141
153
165
185
173
136
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
140
152
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
172
135
139
151
139
151
163
175
171
134
138
150
138
150
162
174
170
133
137
149
137
149
161
173
169
132
136
148
136
148
160
172
168
131
135
147
135
147
159
171
167
130
134
146
134
146
158
170
166
129
133
145
133
145
157
169
165
128
132
144
132
144
156
168
164
127
131
143
131
143
155
167
163
126
130
142
130
142
154
166
162
125
129
141
129
141
153
165
161
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
140
139
138
137
136
135
134
133
132
131
130
129
128
140
141
142
143
144
145
146
147
148
149
150
151
152
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
115
127
139
151
114
126
138
150
113
125
137
149
112
124
136
148
111
123
135
147
110
122
134
146
109
121
133
145
108
120
132
144
107
119
131
143
106
118
130
142
105
117
129
141
104
103
102
101
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
128
129
130
131
132
133
134
135
136
137
138
139
140
105
91
103
115
127
141
106
90
102
114
126
142
107
89
101
113
125
142
108
88
100
112
124
141
109
87
99
111
123
140
110
86
98
110
122
139
111
85
97
109
121
138
124
123
122
121
120
119
118
117
116
115
114
113
112
84
96
108
120
137
136
135
134
133
132
131
130
129
128
127
126
125
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
79
80
81
82
83
84
85
86
87
88
89
90
102
103
104
105
106
107
108
109
110
111
112
113
114
77
89
101
115
76
88
100
115
75
87
99
114
74
86
98
113
73
85
97
112
72
84
96
111
71
70
69
68
67
66
65
64
63
62
61
60
59
71
83
95
110
84
83
82
81
80
79
78
77
76
75
74
73
72
58
70
82
94
109
85
57
69
81
93
108
86
56
68
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
107
87
55
67
67
81
106
88
54
66
66
82
105
89
53
65
65
83
104
90
52
53
54
55
56
57
58
59
60
61
62
63
64
64
84
103
102
101
100
99
98
97
96
95
94
93
92
91
51
63
63
85
104
92
50
62
62
86
105
93
49
61
61
87
106
94
48
60
60
88
107
95
47
59
59
89
108
96
46
58
58
90
109
97
45
57
57
91
110
98
44
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
99
43
43
57
91
103
100
42
42
58
90
102
101
41
41
59
89
101
102
40
40
60
88
100
103
39
39
61
87
99
104
38
38
62
86
98
105
37
37
63
85
97
106
36
36
64
84
96
107
35
35
65
83
95
108
34
34
66
82
94
109
33
33
67
81
93
110
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
68
69
70
71
72
73
74
75
76
77
78
79
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
112
113
114
115
116
117
118
119
41
19
33
91
105
120
42
18
34
90
106
121
43
17
35
89
107
122
44
16
36
88
108
123
43
15
37
87
109
124
42
14
38
86
110
125
41
13
39
85
111
126
40
12
40
84
112
127
39
11
41
83
113
128
38
10
42
82
114
129
37
9
43
81
115
130
36
0
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
150
162
166
178
198
186
149
161
165
177
197
185
148
160
164
176
196
184
147
159
163
175
195
183
146
158
162
174
194
182
145
157
161
173
193
181
144
156
160
172
192
180
143
155
159
171
191
179
142
154
158
170
190
178
141
153
157
169
189
177
140
152
156
168
188
176
139
151
155
143
144
145
146
147
148
149
150
151
152
153
154
155
167
187
175
138
150
154
142
154
166
186
174
137
149
153
141
153
165
185
173
136
148
152
140
152
164
184
172
135
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
139
151
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
171
134
138
150
138
150
162
174
170
133
137
149
137
149
161
173
169
132
136
148
136
148
160
172
168
131
135
147
135
147
159
171
167
130
134
146
134
146
158
170
166
129
133
145
133
145
157
169
165
128
132
144
132
144
156
168
164
127
131
143
131
143
155
167
163
126
130
142
130
142
154
166
162
125
129
141
129
141
153
165
161
124
128
140
128
140
152
164
160
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
139
138
137
136
135
134
133
132
131
130
129
128
127
139
140
141
142
143
144
145
146
147
148
149
150
151
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
114
126
138
150
113
125
137
149
112
124
136
148
111
123
135
147
110
122
134
146
109
121
133
145
108
120
132
144
107
119
131
143
106
118
130
142
105
117
129
141
104
116
128
140
103
102
101
100
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
127
128
129
130
131
132
133
134
135
136
137
138
139
104
90
102
114
126
140
105
89
101
113
125
141
106
88
100
112
124
141
107
87
99
111
123
140
108
86
98
110
122
139
109
85
97
109
121
138
110
84
96
108
120
137
123
122
121
120
119
118
117
116
115
114
113
112
111
83
95
107
119
136
135
134
133
132
131
130
129
128
127
126
125
124
82
94
106
118
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
78
79
80
81
82
83
84
85
86
87
88
89
101
102
103
104
105
106
107
108
109
110
111
112
113
76
88
100
114
75
87
99
114
74
86
98
113
73
85
97
112
72
84
96
111
71
83
95
110
70
69
68
67
66
65
64
63
62
61
60
59
58
70
82
94
109
83
82
81
80
79
78
77
76
75
74
73
72
71
57
69
81
93
108
84
56
68
80
92
107
85
55
67
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
106
86
54
66
66
80
105
87
53
65
65
81
104
88
52
64
64
82
103
89
51
52
53
54
55
56
57
58
59
60
61
62
63
63
83
102
101
100
99
98
97
96
95
94
93
92
91
90
50
62
62
84
103
91
49
61
61
85
104
92
48
60
60
86
105
93
47
59
59
87
106
94
46
58
58
88
107
95
45
57
57
89
108
96
44
56
56
90
109
97
43
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
98
42
42
56
90
102
99
41
41
57
89
101
100
40
40
58
88
100
101
39
39
59
87
99
102
38
38
60
86
98
103
37
37
61
85
97
104
36
36
62
84
96
105
35
35
63
83
95
106
34
34
64
82
94
107
33
33
65
81
93
108
32
32
66
80
92
109
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
67
68
69
70
71
72
73
74
75
76
77
78
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
112
111
110
111
112
113
114
115
116
117
118
40
18
32
90
104
119
41
17
33
89
105
120
42
16
34
88
106
121
43
15
35
87
107
122
44
14
36
86
108
123
43
13
37
85
109
124
42
12
38
84
110
125
41
11
39
83
111
126
40
10
40
82
112
127
39
9
41
81
113
128
38
8
42
80
114
129
37
1
0
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
149
161
165
177
197
185
148
160
164
176
196
184
147
159
163
175
195
183
146
158
162
174
194
182
145
157
161
173
193
181
144
156
160
172
192
180
143
155
159
171
191
179
142
154
158
170
190
178
141
153
157
169
189
177
140
152
156
168
188
176
139
151
155
167
187
175
138
150
154
142
143
144
145
146
147
148
149
150
151
152
153
154
166
186
174
137
149
153
141
153
165
185
173
136
148
152
140
152
164
184
172
135
147
151
139
151
163
183
171
134
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
138
150
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
170
133
137
149
137
149
161
173
169
132
136
148
136
148
160
172
168
131
135
147
135
147
159
171
167
130
134
146
134
146
158
170
166
129
133
145
133
145
157
169
165
128
132
144
132
144
156
168
164
127
131
143
131
143
155
167
163
126
130
142
130
142
154
166
162
125
129
141
129
141
153
165
161
124
128
140
128
140
152
164
160
123
127
139
127
139
151
163
159
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
138
137
136
135
134
133
132
131
130
129
128
127
126
138
139
140
141
142
143
144
145
146
147
148
149
150
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
113
125
137
149
112
124
136
148
111
123
135
147
110
122
134
146
109
121
133
145
108
120
132
144
107
119
131
143
106
118
130
142
105
117
129
141
104
116
128
140
103
115
127
139
102
101
100
99
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
126
127
128
129
130
131
132
133
134
135
136
137
138
103
89
101
113
125
139
104
88
100
112
124
140
105
87
99
111
123
140
106
86
98
110
122
139
107
85
97
109
121
138
108
84
96
108
120
137
109
83
95
107
119
136
122
121
120
119
118
117
116
115
114
113
112
111
110
82
94
106
118
135
134
133
132
131
130
129
128
127
126
125
124
123
81
93
105
117
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
77
78
79
80
81
82
83
84
85
86
87
88
100
101
102
103
104
105
106
107
108
109
110
111
112
75
87
99
113
74
86
98
113
73
85
97
112
72
84
96
111
71
83
95
110
70
82
94
109
69
68
67
66
65
64
63
62
61
60
59
58
57
69
81
93
108
82
81
80
79
78
77
76
75
74
73
72
71
70
56
68
80
92
107
83
55
67
79
91
106
84
54
66
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
105
85
53
65
65
79
104
86
52
64
64
80
103
87
51
63
63
81
102
88
50
51
52
53
54
55
56
57
58
59
60
61
62
62
82
101
100
99
98
97
96
95
94
93
92
91
90
89
49
61
61
83
102
90
48
60
60
84
103
91
47
59
59
85
104
92
46
58
58
86
105
93
45
57
57
87
106
94
44
56
56
88
107
95
43
55
55
89
108
96
42
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
97
41
41
55
89
101
98
40
40
56
88
100
99
39
39
57
87
99
100
38
38
58
86
98
101
37
37
59
85
97
102
36
36
60
84
96
103
35
35
61
83
95
104
34
34
62
82
94
105
33
33
63
81
93
106
32
32
64
80
92
107
31
31
65
79
91
108
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
66
67
68
69
70
71
72
73
74
75
76
77
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
111
110
109
110
111
112
113
114
115
116
117
39
17
31
89
103
118
40
16
32
88
104
119
41
15
33
87
105
120
42
14
34
86
106
121
43
13
35
85
107
122
44
12
36
84
108
123
43
11
37
83
109
124
42
10
38
82
110
125
41
9
39
81
111
126
40
8
40
80
112
127
39
7
41
79
113
128
38
2
1
0
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
148
160
164
176
196
184
147
159
163
175
195
183
146
158
162
174
194
182
145
157
161
173
193
181
144
156
160
172
192
180
143
155
159
171
191
179
142
154
158
170
190
178
141
153
157
169
189
177
140
152
156
168
188
176
139
151
155
167
187
175
138
150
154
166
186
174
137
149
153
141
142
143
144
145
146
147
148
149
150
151
152
153
165
185
173
136
148
152
140
152
164
184
172
135
147
151
139
151
163
183
171
134
146
150
138
150
162
182
170
133
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
137
149
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
169
132
136
148
136
148
160
172
168
131
135
147
135
147
159
171
167
130
134
146
134
146
158
170
166
129
133
145
133
145
157
169
165
128
132
144
132
144
156
168
164
127
131
143
131
143
155
167
163
126
130
142
130
142
154
166
162
125
129
141
129
141
153
165
161
124
128
140
128
140
152
164
160
123
127
139
127
139
151
163
159
122
126
138
126
138
150
162
158
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
137
136
135
134
133
132
131
130
129
128
127
126
125
137
138
139
140
141
142
143
144
145
146
147
148
149
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
112
124
136
148
111
123
135
147
110
122
134
146
109
121
133
145
108
120
132
144
107
119
131
143
106
118
130
142
105
117
129
141
104
116
128
140
103
115
127
139
102
114
126
138
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
125
126
127
128
129
130
131
132
133
134
135
136
137
102
88
100
112
124
138
103
87
99
111
123
139
104
86
98
110
122
139
105
85
97
109
121
138
106
84
96
108
120
137
107
83
95
107
119
136
108
82
94
106
118
135
121
120
119
118
117
116
115
114
113
112
111
110
109
81
93
105
117
134
133
132
131
130
129
128
127
126
125
124
123
122
80
92
104
116
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
76
77
78
79
80
81
82
83
84
85
86
87
99
100
101
102
103
104
105
106
107
108
109
110
111
74
86
98
112
73
85
97
112
72
84
96
111
71
83
95
110
70
82
94
109
69
81
93
108
68
67
66
65
64
63
62
61
60
59
58
57
56
68
80
92
107
81
80
79
78
77
76
75
74
73
72
71
70
69
55
67
79
91
106
82
54
66
78
90
105
83
53
65
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
104
84
52
64
64
78
103
85
51
63
63
79
102
86
50
62
62
80
101
87
49
50
51
52
53
54
55
56
57
58
59
60
61
61
81
100
99
98
97
96
95
94
93
92
91
90
89
88
48
60
60
82
101
89
47
59
59
83
102
90
46
58
58
84
103
91
45
57
57
85
104
92
44
56
56
86
105
93
43
55
55
87
106
94
42
54
54
88
107
95
41
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
96
40
40
54
88
100
97
39
39
55
87
99
98
38
38
56
86
98
99
37
37
57
85
97
100
36
36
58
84
96
101
35
35
59
83
95
102
34
34
60
82
94
103
33
33
61
81
93
104
32
32
62
80
92
105
31
31
63
79
91
106
30
30
64
78
90
107
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
65
66
67
68
69
70
71
72
73
74
75
76
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
109
108
109
110
111
112
113
114
115
116
38
16
30
88
102
117
39
15
31
87
103
118
40
14
32
86
104
119
41
13
33
85
105
120
42
12
34
84
106
121
43
11
35
83
107
122
44
10
36
82
108
123
43
9
37
81
109
124
42
8
38
80
110
125
41
7
39
79
111
126
40
6
40
78
112
127
39
3
2
1
0
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
147
159
163
175
195
183
146
158
162
174
194
182
145
157
161
173
193
181
144
156
160
172
192
180
143
155
159
171
191
179
142
154
158
170
190
178
141
153
157
169
189
177
140
152
156
168
188
176
139
151
155
167
187
175
138
150
154
166
186
174
137
149
153
165
185
173
136
148
152
140
141
142
143
144
145
146
147
148
149
150
151
152
164
184
172
135
147
151
139
151
163
183
171
134
146
150
138
150
162
182
170
133
145
149
137
149
161
181
169
132
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
136
148
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
168
131
135
147
135
147
159
171
167
130
134
146
134
146
158
170
166
129
133
145
133
145
157
169
165
128
132
144
132
144
156
168
164
127
131
143
131
143
155
167
163
126
130
142
130
142
154
166
162
125
129
141
129
141
153
165
161
124
128
140
128
140
152
164
160
123
127
139
127
139
151
163
159
122
126
138
126
138
150
162
158
121
125
137
125
137
149
161
157
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
136
135
134
133
132
131
130
129
128
127
126
125
124
136
137
138
139
140
141
142
143
144
145
146
147
148
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
111
123
135
147
110
122
134
146
109
121
133
145
108
120
132
144
107
119
131
143
106
118
130
142
105
117
129
141
104
116
128
140
103
115
127
139
102
114
126
138
101
113
125
137
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
124
125
126
127
128
129
130
131
132
133
134
135
136
101
87
99
111
123
137
102
86
98
110
122
138
103
85
97
109
121
138
104
84
96
108
120
137
105
83
95
107
119
136
106
82
94
106
118
135
107
81
93
105
117
134
120
119
118
117
116
115
114
113
112
111
110
109
108
80
92
104
116
133
132
131
130
129
128
127
126
125
124
123
122
121
79
91
103
115
78
90
102
114
77
89
101
113
76
88
100
112
75
87
99
111
74
75
76
77
78
79
80
81
82
83
84
85
86
98
99
100
101
102
103
104
105
106
107
108
109
110
73
85
97
111
72
84
96
111
71
83
95
110
70
82
94
109
69
81
93
108
68
80
92
107
67
66
65
64
63
62
61
60
59
58
57
56
55
67
79
91
106
80
79
78
77
76
75
74
73
72
71
70
69
68
54
66
78
90
105
81
53
65
77
89
104
82
52
64
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
103
83
51
63
63
77
102
84
50
62
62
78
101
85
49
61
61
79
100
86
48
49
50
51
52
53
54
55
56
57
58
59
60
60
80
99
98
97
96
95
94
93
92
91
90
89
88
87
47
59
59
81
100
88
46
58
58
82
101
89
45
57
57
83
102
90
44
56
56
84
103
91
43
55
55
85
104
92
42
54
54
86
105
93
41
53
53
87
106
94
40
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
107
95
39
39
53
87
99
96
38
38
54
86
98
97
37
37
55
85
97
98
36
36
56
84
96
99
35
35
57
83
95
100
34
34
58
82
94
101
33
33
59
81
93
102
32
32
60
80
92
103
31
31
61
79
91
104
30
30
62
78
90
105
29
29
63
77
89
106
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
64
65
66
67
68
69
70
71
72
73
74
75
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
109
108
107
108
109
110
111
112
113
114
115
37
15
29
87
101
116
38
14
30
86
102
117
39
13
31
85
103
118
40
12
32
84
104
119
41
11
33
83
105
120
42
10
34
82
106
121
43
9
35
81
107
122
44
8
36
80
108
123
43
7
37
79
109
124
42
6
38
78
110
125
41
5
39
77
111
126
40
4
3
2
1
0
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
146
158
162
174
194
182
145
157
161
173
193
181
144
156
160
172
192
180
143
155
159
171
191
179
142
154
158
170
190
178
141
153
157
169
189
177
140
152
156
168
188
176
139
151
155
167
187
175
138
150
154
166
186
174
137
149
153
165
185
173
136
148
152
164
184
172
135
147
151
139
140
141
142
143
144
145
146
147
148
149
150
151
163
183
171
134
146
150
138
150
162
182
170
133
145
149
137
149
161
181
169
132
144
148
136
148
160
180
168
131
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
135
147
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
167
130
134
146
134
146
158
170
166
129
133
145
133
145
157
169
165
128
132
144
132
144
156
168
164
127
131
143
131
143
155
167
163
126
130
142
130
142
154
166
162
125
129
141
129
141
153
165
161
124
128
140
128
140
152
164
160
123
127
139
127
139
151
163
159
122
126
138
126
138
150
162
158
121
125
137
125
137
149
161
157
120
124
136
124
136
148
160
156
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
135
134
133
132
131
130
129
128
127
126
125
124
123
135
136
137
138
139
140
141
142
143
144
145
146
147
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
110
122
134
146
109
121
133
145
108
120
132
144
107
119
131
143
106
118
130
142
105
117
129
141
104
116
128
140
103
115
127
139
102
114
126
138
101
113
125
137
100
112
124
136
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
123
124
125
126
127
128
129
130
131
132
133
134
135
100
86
98
110
122
136
101
85
97
109
121
137
102
84
96
108
120
137
103
83
95
107
119
136
104
82
94
106
118
135
105
81
93
105
117
134
106
80
92
104
116
133
119
118
117
116
115
114
113
112
111
110
109
108
107
79
91
103
115
132
131
130
129
128
127
126
125
124
123
122
121
120
78
90
102
114
77
89
101
113
76
88
100
112
75
87
99
111
74
86
98
110
73
74
75
76
77
78
79
80
81
82
83
84
85
97
98
99
100
101
102
103
104
105
106
107
108
109
72
84
96
110
71
83
95
110
70
82
94
109
69
81
93
108
68
80
92
107
67
79
91
106
66
65
64
63
62
61
60
59
58
57
56
55
54
66
78
90
105
79
78
77
76
75
74
73
72
71
70
69
68
67
53
65
77
89
104
80
52
64
76
88
103
81
51
63
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
102
82
50
62
62
76
101
83
49
61
61
77
100
84
48
60
60
78
99
85
47
48
49
50
51
52
53
54
55
56
57
58
59
59
79
98
97
96
95
94
93
92
91
90
89
88
87
86
46
58
58
80
99
87
45
57
57
81
100
88
44
56
56
82
101
89
43
55
55
83
102
90
42
54
54
84
103
91
41
53
53
85
104
92
40
52
52
86
105
93
39
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
106
94
38
38
52
86
98
95
37
37
53
85
97
96
36
36
54
84
96
97
35
35
55
83
95
98
34
34
56
82
94
99
33
33
57
81
93
100
32
32
58
80
92
101
31
31
59
79
91
102
30
30
60
78
90
103
29
29
61
77
89
104
28
28
62
76
88
105
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
63
64
65
66
67
68
69
70
71
72
73
74
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
108
107
106
107
108
109
110
111
112
113
114
36
14
28
86
100
115
37
13
29
85
101
116
38
12
30
84
102
117
39
11
31
83
103
118
40
10
32
82
104
119
41
9
33
81
105
120
42
8
34
80
106
121
43
7
35
79
107
122
44
6
36
78
108
123
43
5
37
77
109
124
42
4
38
76
110
125
41
5
4
3
2
1
0
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
145
157
161
173
193
181
144
156
160
172
192
180
143
155
159
171
191
179
142
154
158
170
190
178
141
153
157
169
189
177
140
152
156
168
188
176
139
151
155
167
187
175
138
150
154
166
186
174
137
149
153
165
185
173
136
148
152
164
184
172
135
147
151
163
183
171
134
146
150
138
139
140
141
142
143
144
145
146
147
148
149
150
162
182
170
133
145
149
137
149
161
181
169
132
144
148
136
148
160
180
168
131
143
147
135
147
159
179
167
130
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
134
146
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
166
129
133
145
133
145
157
169
165
128
132
144
132
144
156
168
164
127
131
143
131
143
155
167
163
126
130
142
130
142
154
166
162
125
129
141
129
141
153
165
161
124
128
140
128
140
152
164
160
123
127
139
127
139
151
163
159
122
126
138
126
138
150
162
158
121
125
137
125
137
149
161
157
120
124
136
124
136
148
160
156
119
123
135
123
135
147
159
155
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
134
133
132
131
130
129
128
127
126
125
124
123
122
134
135
136
137
138
139
140
141
142
143
144
145
146
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
109
121
133
145
108
120
132
144
107
119
131
143
106
118
130
142
105
117
129
141
104
116
128
140
103
115
127
139
102
114
126
138
101
113
125
137
100
112
124
136
99
111
123
135
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
122
123
124
125
126
127
128
129
130
131
132
133
134
99
85
97
109
121
135
100
84
96
108
120
136
101
83
95
107
119
136
102
82
94
106
118
135
103
81
93
105
117
134
104
80
92
104
116
133
105
79
91
103
115
132
118
117
116
115
114
113
112
111
110
109
108
107
106
78
90
102
114
131
130
129
128
127
126
125
124
123
122
121
120
119
77
89
101
113
76
88
100
112
75
87
99
111
74
86
98
110
73
85
97
109
72
73
74
75
76
77
78
79
80
81
82
83
84
96
97
98
99
100
101
102
103
104
105
106
107
108
71
83
95
109
70
82
94
109
69
81
93
108
68
80
92
107
67
79
91
106
66
78
90
105
65
64
63
62
61
60
59
58
57
56
55
54
53
65
77
89
104
78
77
76
75
74
73
72
71
70
69
68
67
66
52
64
76
88
103
79
51
63
75
87
102
80
50
62
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
101
81
49
61
61
75
100
82
48
60
60
76
99
83
47
59
59
77
98
84
46
47
48
49
50
51
52
53
54
55
56
57
58
58
78
97
96
95
94
93
92
91
90
89
88
87
86
85
45
57
57
79
98
86
44
56
56
80
99
87
43
55
55
81
100
88
42
54
54
82
101
89
41
53
53
83
102
90
40
52
52
84
103
91
39
51
51
85
104
92
38
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
105
93
37
37
51
85
97
94
36
36
52
84
96
95
35
35
53
83
95
96
34
34
54
82
94
97
33
33
55
81
93
98
32
32
56
80
92
99
31
31
57
79
91
100
30
30
58
78
90
101
29
29
59
77
89
102
28
28
60
76
88
103
27
27
61
75
87
104
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
62
63
64
65
66
67
68
69
70
71
72
73
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
107
106
105
106
107
108
109
110
111
112
113
35
13
27
85
99
114
36
12
28
84
100
115
37
11
29
83
101
116
38
10
30
82
102
117
39
9
31
81
103
118
40
8
32
80
104
119
41
7
33
79
105
120
42
6
34
78
106
121
43
5
35
77
107
122
44
4
36
76
108
123
43
3
37
75
109
124
42
6
5
4
3
2
1
0
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
144
156
160
172
192
180
143
155
159
171
191
179
142
154
158
170
190
178
141
153
157
169
189
177
140
152
156
168
188
176
139
151
155
167
187
175
138
150
154
166
186
174
137
149
153
165
185
173
136
148
152
164
184
172
135
147
151
163
183
171
134
146
150
162
182
170
133
145
149
137
138
139
140
141
142
143
144
145
146
147
148
149
161
181
169
132
144
148
136
148
160
180
168
131
143
147
135
147
159
179
167
130
142
146
134
146
158
178
166
129
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
133
145
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
165
128
132
144
132
144
156
168
164
127
131
143
131
143
155
167
163
126
130
142
130
142
154
166
162
125
129
141
129
141
153
165
161
124
128
140
128
140
152
164
160
123
127
139
127
139
151
163
159
122
126
138
126
138
150
162
158
121
125
137
125
137
149
161
157
120
124
136
124
136
148
160
156
119
123
135
123
135
147
159
155
118
122
134
122
134
146
158
154
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
133
132
131
130
129
128
127
126
125
124
123
122
121
133
134
135
136
137
138
139
140
141
142
143
144
145
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
108
120
132
144
107
119
131
143
106
118
130
142
105
117
129
141
104
116
128
140
103
115
127
139
102
114
126
138
101
113
125
137
100
112
124
136
99
111
123
135
98
110
122
134
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
121
122
123
124
125
126
127
128
129
130
131
132
133
98
84
96
108
120
134
99
83
95
107
119
135
100
82
94
106
118
135
101
81
93
105
117
134
102
80
92
104
116
133
103
79
91
103
115
132
104
78
90
102
114
131
117
116
115
114
113
112
111
110
109
108
107
106
105
77
89
101
113
130
129
128
127
126
125
124
123
122
121
120
119
118
76
88
100
112
75
87
99
111
74
86
98
110
73
85
97
109
72
84
96
108
71
72
73
74
75
76
77
78
79
80
81
82
83
95
96
97
98
99
100
101
102
103
104
105
106
107
70
82
94
108
69
81
93
108
68
80
92
107
67
79
91
106
66
78
90
105
65
77
89
104
64
63
62
61
60
59
58
57
56
55
54
53
52
64
76
88
103
77
76
75
74
73
72
71
70
69
68
67
66
65
51
63
75
87
102
78
50
62
74
86
101
79
49
61
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
100
80
48
60
60
74
99
81
47
59
59
75
98
82
46
58
58
76
97
83
45
46
47
48
49
50
51
52
53
54
55
56
57
57
77
96
95
94
93
92
91
90
89
88
87
86
85
84
44
56
56
78
97
85
43
55
55
79
98
86
42
54
54
80
99
87
41
53
53
81
100
88
40
52
52
82
101
89
39
51
51
83
102
90
38
50
50
84
103
91
37
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
92
36
36
50
84
96
93
35
35
51
83
95
94
34
34
52
82
94
95
33
33
53
81
93
96
32
32
54
80
92
97
31
31
55
79
91
98
30
30
56
78
90
99
29
29
57
77
89
100
28
28
58
76
88
101
27
27
59
75
87
102
26
26
60
74
86
103
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
61
62
63
64
65
66
67
68
69
70
71
72
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
106
105
104
105
106
107
108
109
110
111
112
34
12
26
84
98
113
35
11
27
83
99
114
36
10
28
82
100
115
37
9
29
81
101
116
38
8
30
80
102
117
39
7
31
79
103
118
40
6
32
78
104
119
41
5
33
77
105
120
42
4
34
76
106
121
43
3
35
75
107
122
44
2
36
74
108
123
43
7
6
5
4
3
2
1
0
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
143
155
159
171
191
179
142
154
158
170
190
178
141
153
157
169
189
177
140
152
156
168
188
176
139
151
155
167
187
175
138
150
154
166
186
174
137
149
153
165
185
173
136
148
152
164
184
172
135
147
151
163
183
171
134
146
150
162
182
170
133
145
149
161
181
169
132
144
148
136
137
138
139
140
141
142
143
144
145
146
147
148
160
180
168
131
143
147
135
147
159
179
167
130
142
146
134
146
158
178
166
129
141
145
133
145
157
177
165
128
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
132
144
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
164
127
131
143
131
143
155
167
163
126
130
142
130
142
154
166
162
125
129
141
129
141
153
165
161
124
128
140
128
140
152
164
160
123
127
139
127
139
151
163
159
122
126
138
126
138
150
162
158
121
125
137
125
137
149
161
157
120
124
136
124
136
148
160
156
119
123
135
123
135
147
159
155
118
122
134
122
134
146
158
154
117
121
133
121
133
145
157
153
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
132
131
130
129
128
127
126
125
124
123
122
121
120
132
133
134
135
136
137
138
139
140
141
142
143
144
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
107
119
131
143
106
118
130
142
105
117
129
141
104
116
128
140
103
115
127
139
102
114
126
138
101
113
125
137
100
112
124
136
99
111
123
135
98
110
122
134
97
109
121
133
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
120
121
122
123
124
125
126
127
128
129
130
131
132
97
83
95
107
119
133
98
82
94
106
118
134
99
81
93
105
117
134
100
80
92
104
116
133
101
79
91
103
115
132
102
78
90
102
114
131
103
77
89
101
113
130
116
115
114
113
112
111
110
109
108
107
106
105
104
76
88
100
112
129
128
127
126
125
124
123
122
121
120
119
118
117
75
87
99
111
74
86
98
110
73
85
97
109
72
84
96
108
71
83
95
107
70
71
72
73
74
75
76
77
78
79
80
81
82
94
95
96
97
98
99
100
101
102
103
104
105
106
69
81
93
107
68
80
92
107
67
79
91
106
66
78
90
105
65
77
89
104
64
76
88
103
63
62
61
60
59
58
57
56
55
54
53
52
51
63
75
87
102
76
75
74
73
72
71
70
69
68
67
66
65
64
50
62
74
86
101
77
49
61
73
85
100
78
48
60
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
99
79
47
59
59
73
98
80
46
58
58
74
97
81
45
57
57
75
96
82
44
45
46
47
48
49
50
51
52
53
54
55
56
56
76
95
94
93
92
91
90
89
88
87
86
85
84
83
43
55
55
77
96
84
42
54
54
78
97
85
41
53
53
79
98
86
40
52
52
80
99
87
39
51
51
81
100
88
38
50
50
82
101
89
37
49
49
83
102
90
36
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
105
104
103
91
35
35
49
83
95
92
34
34
50
82
94
93
33
33
51
81
93
94
32
32
52
80
92
95
31
31
53
79
91
96
30
30
54
78
90
97
29
29
55
77
89
98
28
28
56
76
88
99
27
27
57
75
87
100
26
26
58
74
86
101
25
25
59
73
85
102
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
60
61
62
63
64
65
66
67
68
69
70
71
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
105
104
103
104
105
106
107
108
109
110
111
33
11
25
83
97
112
34
10
26
82
98
113
35
9
27
81
99
114
36
8
28
80
100
115
37
7
29
79
101
116
38
6
30
78
102
117
39
5
31
77
103
118
40
4
32
76
104
119
41
3
33
75
105
120
42
2
34
74
106
121
43
1
35
73
107
122
44
8
7
6
5
4
3
2
1
0
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
131
143
147
159
179
167
130
142
146
158
178
166
129
141
145
157
177
165
128
140
144
156
176
164
127
139
143
155
175
163
126
138
142
154
174
162
125
137
141
153
173
161
124
136
140
152
172
160
123
135
139
151
171
159
122
134
138
150
170
158
121
133
137
149
169
157
120
132
136
124
125
126
127
128
129
130
131
132
133
134
135
136
148
168
156
119
131
135
123
135
147
167
155
118
130
134
122
134
146
166
154
117
129
133
121
133
145
165
153
116
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
120
132
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
152
115
119
131
119
131
143
155
151
114
118
130
118
130
142
154
150
113
117
129
117
129
141
153
149
112
116
128
116
128
140
152
148
111
115
127
115
127
139
151
147
110
114
126
114
126
138
150
146
109
113
125
113
125
137
149
145
108
112
124
112
124
136
148
144
107
111
123
111
123
135
147
143
106
110
122
110
122
134
146
142
105
109
121
109
121
133
145
141
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
120
119
118
117
116
115
114
113
112
111
110
109
108
120
121
122
123
124
125
126
127
128
129
130
131
132
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
95
107
119
131
94
106
118
130
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
83
82
81
80
79
78
77
76
75
74
73
72
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
119
120
85
71
83
95
107
121
86
70
82
94
106
122
87
69
81
93
105
122
88
68
80
92
104
121
89
67
79
91
103
120
90
66
78
90
102
119
91
65
77
89
101
118
104
103
102
101
100
99
98
97
96
95
94
93
92
64
76
88
100
117
116
115
114
113
112
111
110
109
108
107
106
105
63
75
87
99
62
74
86
98
61
73
85
97
60
72
84
96
59
71
83
95
58
59
60
61
62
63
64
65
66
67
68
69
70
82
83
84
85
86
87
88
89
90
91
92
93
94
57
69
81
93
56
68
80
92
55
67
79
91
54
66
78
90
53
65
77
89
52
64
76
88
75
74
73
72
71
70
69
68
67
66
65
64
63
51
63
75
87
88
87
86
85
84
83
82
81
80
79
78
77
76
62
50
62
74
86
89
61
49
61
73
85
90
60
48
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
84
91
59
47
47
61
83
92
58
46
46
62
82
93
57
45
45
63
81
93
56
55
54
53
52
51
50
49
48
47
46
45
44
44
64
80
81
82
83
84
85
86
87
88
89
90
91
92
55
43
43
65
79
91
54
42
42
66
78
90
53
41
41
67
77
89
52
40
40
68
76
88
51
39
39
69
75
87
50
38
38
70
74
86
49
37
37
71
73
85
48
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
84
47
23
37
71
59
83
46
22
38
70
58
82
45
21
39
69
57
81
44
20
40
68
56
80
43
19
41
67
55
79
42
18
42
66
54
78
41
17
43
65
53
77
40
16
44
64
52
76
39
15
45
63
51
75
38
14
46
62
50
74
37
13
47
61
49
73
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
48
49
50
51
52
53
54
55
56
57
58
59
60
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
45
25
11
47
61
81
46
26
10
46
62
82
47
27
9
45
63
83
48
28
8
44
64
84
49
29
7
43
65
85
50
30
6
42
66
86
51
31
5
41
67
87
52
32
4
40
68
88
53
33
3
39
69
89
54
34
2
38
70
90
55
35
1
37
71
91
56
44
43
42
41
40
39
38
37
36
0
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
132
144
148
160
178
166
131
143
147
159
177
165
130
142
146
158
176
164
129
141
145
157
175
163
128
140
144
156
174
162
127
139
143
155
173
161
126
138
142
154
172
160
125
137
141
153
171
159
124
136
140
152
170
158
123
135
139
151
169
157
122
134
138
150
168
156
121
133
137
125
126
127
128
129
130
131
132
133
134
135
136
137
149
167
155
120
132
136
124
136
148
166
154
119
131
135
123
135
147
165
153
118
130
134
122
134
146
164
152
117
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
121
133
145
146
147
148
149
150
151
152
153
154
155
156
155
156
157
158
159
160
161
162
163
151
116
120
132
120
132
144
154
150
115
119
131
119
131
143
153
149
114
118
130
118
130
142
152
148
113
117
129
117
129
141
151
147
112
116
128
116
128
140
150
146
111
115
127
115
127
139
149
145
110
114
126
114
126
138
148
144
109
113
125
113
125
137
147
143
108
112
124
112
124
136
146
142
107
111
123
111
123
135
145
141
106
110
122
110
122
134
144
140
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
121
120
119
118
117
116
115
114
113
112
111
110
109
121
122
123
124
125
126
127
128
129
130
131
132
133
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
96
108
120
130
95
107
119
129
94
106
118
128
93
105
117
127
92
104
116
126
91
103
115
125
90
102
114
124
89
101
113
123
88
100
112
122
87
99
111
121
86
98
110
120
85
84
83
82
81
80
79
78
77
76
75
74
73
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
107
108
109
110
111
112
113
114
115
116
117
118
119
86
72
84
96
106
120
87
71
83
95
105
121
88
70
82
94
104
122
89
69
81
93
103
122
90
68
80
92
102
121
91
67
79
91
101
120
92
66
78
90
100
119
105
104
103
102
101
100
99
98
97
96
95
94
93
65
77
89
99
118
117
116
115
114
113
112
111
110
109
108
107
106
64
76
88
98
63
75
87
97
62
74
86
96
61
73
85
95
60
72
84
94
59
60
61
62
63
64
65
66
67
68
69
70
71
83
84
85
86
87
88
89
90
91
92
93
94
93
58
70
82
92
57
69
81
91
56
68
80
90
55
67
79
89
54
66
78
88
53
65
77
87
76
75
74
73
72
71
70
69
68
67
66
65
64
52
64
76
86
89
88
87
86
85
84
83
82
81
80
79
78
77
63
51
63
75
85
90
62
50
62
74
84
91
61
49
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
83
92
60
48
48
62
82
93
59
47
47
63
81
93
58
46
46
64
80
92
57
56
55
54
53
52
51
50
49
48
47
46
45
45
65
79
80
81
82
83
84
85
86
87
88
89
90
91
56
44
44
66
78
90
55
43
43
67
77
89
54
42
42
68
76
88
53
41
41
69
75
87
52
40
40
70
74
86
51
39
39
71
73
85
50
38
38
72
72
84
49
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
83
48
24
38
72
58
82
47
23
39
71
57
81
46
22
40
70
56
80
45
21
41
69
55
79
44
20
42
68
54
78
43
19
43
67
53
77
42
18
44
66
52
76
41
17
45
65
51
75
40
16
46
64
50
74
39
15
47
63
49
73
38
14
48
62
48
72
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
49
50
51
52
53
54
55
56
57
58
59
60
61
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
46
26
12
46
60
80
47
27
11
45
61
81
48
28
10
44
62
82
49
29
9
43
63
83
50
30
8
42
64
84
51
31
7
41
65
85
52
32
6
40
66
86
53
33
5
39
67
87
54
34
4
38
68
88
55
35
3
37
69
89
56
36
2
36
70
90
57
45
44
43
42
41
40
39
38
37
1
0
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
133
145
149
161
177
165
132
144
148
160
176
164
131
143
147
159
175
163
130
142
146
158
174
162
129
141
145
157
173
161
128
140
144
156
172
160
127
139
143
155
171
159
126
138
142
154
170
158
125
137
141
153
169
157
124
136
140
152
168
156
123
135
139
151
167
155
122
134
138
126
127
128
129
130
131
132
133
134
135
136
137
138
150
166
154
121
133
137
125
137
149
165
153
120
132
136
124
136
148
164
152
119
131
135
123
135
147
163
151
118
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
122
134
146
147
148
149
150
151
152
153
154
155
156
155
154
155
156
157
158
159
160
161
162
150
117
121
133
121
133
145
153
149
116
120
132
120
132
144
152
148
115
119
131
119
131
143
151
147
114
118
130
118
130
142
150
146
113
117
129
117
129
141
149
145
112
116
128
116
128
140
148
144
111
115
127
115
127
139
147
143
110
114
126
114
126
138
146
142
109
113
125
113
125
137
145
141
108
112
124
112
124
136
144
140
107
111
123
111
123
135
143
139
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
122
121
120
119
118
117
116
115
114
113
112
111
110
122
123
124
125
126
127
128
129
130
131
132
133
134
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
97
109
121
129
96
108
120
128
95
107
119
127
94
106
118
126
93
105
117
125
92
104
116
124
91
103
115
123
90
102
114
122
89
101
113
121
88
100
112
120
87
99
111
119
86
85
84
83
82
81
80
79
78
77
76
75
74
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
106
107
108
109
110
111
112
113
114
115
116
117
118
87
73
85
97
105
119
88
72
84
96
104
120
89
71
83
95
103
121
90
70
82
94
102
122
91
69
81
93
101
122
92
68
80
92
100
121
93
67
79
91
99
120
106
105
104
103
102
101
100
99
98
97
96
95
94
66
78
90
98
119
118
117
116
115
114
113
112
111
110
109
108
107
65
77
89
97
64
76
88
96
63
75
87
95
62
74
86
94
61
73
85
93
60
61
62
63
64
65
66
67
68
69
70
71
72
84
85
86
87
88
89
90
91
92
93
94
93
92
59
71
83
91
58
70
82
90
57
69
81
89
56
68
80
88
55
67
79
87
54
66
78
86
77
76
75
74
73
72
71
70
69
68
67
66
65
53
65
77
85
90
89
88
87
86
85
84
83
82
81
80
79
78
64
52
64
76
84
91
63
51
63
75
83
92
62
50
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
82
93
61
49
49
63
81
93
60
48
48
64
80
92
59
47
47
65
79
91
58
57
56
55
54
53
52
51
50
49
48
47
46
46
66
78
79
80
81
82
83
84
85
86
87
88
89
90
57
45
45
67
77
89
56
44
44
68
76
88
55
43
43
69
75
87
54
42
42
70
74
86
53
41
41
71
73
85
52
40
40
72
72
84
51
39
39
71
71
83
50
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
82
49
25
39
71
57
81
48
24
40
72
56
80
47
23
41
71
55
79
46
22
42
70
54
78
45
21
43
69
53
77
44
20
44
68
52
76
43
19
45
67
51
75
42
18
46
66
50
74
41
17
47
65
49
73
40
16
48
64
48
72
39
15
49
63
47
71
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
50
51
52
53
54
55
56
57
58
59
60
61
62
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
47
27
13
45
59
79
48
28
12
44
60
80
49
29
11
43
61
81
50
30
10
42
62
82
51
31
9
41
63
83
52
32
8
40
64
84
53
33
7
39
65
85
54
34
6
38
66
86
55
35
5
37
67
87
56
36
4
36
68
88
57
37
3
35
69
89
58
46
45
44
43
42
41
40
39
38
2
1
0
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
134
146
150
162
176
164
133
145
149
161
175
163
132
144
148
160
174
162
131
143
147
159
173
161
130
142
146
158
172
160
129
141
145
157
171
159
128
140
144
156
170
158
127
139
143
155
169
157
126
138
142
154
168
156
125
137
141
153
167
155
124
136
140
152
166
154
123
135
139
127
128
129
130
131
132
133
134
135
136
137
138
139
151
165
153
122
134
138
126
138
150
164
152
121
133
137
125
137
149
163
151
120
132
136
124
136
148
162
150
119
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
123
135
147
148
149
150
151
152
153
154
155
156
155
154
153
154
155
156
157
158
159
160
161
149
118
122
134
122
134
146
152
148
117
121
133
121
133
145
151
147
116
120
132
120
132
144
150
146
115
119
131
119
131
143
149
145
114
118
130
118
130
142
148
144
113
117
129
117
129
141
147
143
112
116
128
116
128
140
146
142
111
115
127
115
127
139
145
141
110
114
126
114
126
138
144
140
109
113
125
113
125
137
143
139
108
112
124
112
124
136
142
138
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
123
122
121
120
119
118
117
116
115
114
113
112
111
123
124
125
126
127
128
129
130
131
132
133
134
135
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
98
110
122
128
97
109
121
127
96
108
120
126
95
107
119
125
94
106
118
124
93
105
117
123
92
104
116
122
91
103
115
121
90
102
114
120
89
101
113
119
88
100
112
118
87
86
85
84
83
82
81
80
79
78
77
76
75
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
105
106
107
108
109
110
111
112
113
114
115
116
117
88
74
86
98
104
118
89
73
85
97
103
119
90
72
84
96
102
120
91
71
83
95
101
121
92
70
82
94
100
122
93
69
81
93
99
122
94
68
80
92
98
121
107
106
105
104
103
102
101
100
99
98
97
96
95
67
79
91
97
120
119
118
117
116
115
114
113
112
111
110
109
108
66
78
90
96
65
77
89
95
64
76
88
94
63
75
87
93
62
74
86
92
61
62
63
64
65
66
67
68
69
70
71
72
73
85
86
87
88
89
90
91
92
93
94
93
92
91
60
72
84
90
59
71
83
89
58
70
82
88
57
69
81
87
56
68
80
86
55
67
79
85
78
77
76
75
74
73
72
71
70
69
68
67
66
54
66
78
84
91
90
89
88
87
86
85
84
83
82
81
80
79
65
53
65
77
83
92
64
52
64
76
82
93
63
51
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
81
93
62
50
50
64
80
92
61
49
49
65
79
91
60
48
48
66
78
90
59
58
57
56
55
54
53
52
51
50
49
48
47
47
67
77
78
79
80
81
82
83
84
85
86
87
88
89
58
46
46
68
76
88
57
45
45
69
75
87
56
44
44
70
74
86
55
43
43
71
73
85
54
42
42
72
72
84
53
41
41
71
71
83
52
40
40
70
70
82
51
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
81
50
26
40
70
56
80
49
25
41
71
55
79
48
24
42
72
54
78
47
23
43
71
53
77
46
22
44
70
52
76
45
21
45
69
51
75
44
20
46
68
50
74
43
19
47
67
49
73
42
18
48
66
48
72
41
17
49
65
47
71
40
16
50
64
46
70
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
51
52
53
54
55
56
57
58
59
60
61
62
63
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
48
28
14
44
58
78
49
29
13
43
59
79
50
30
12
42
60
80
51
31
11
41
61
81
52
32
10
40
62
82
53
33
9
39
63
83
54
34
8
38
64
84
55
35
7
37
65
85
56
36
6
36
66
86
57
37
5
35
67
87
58
38
4
34
68
88
59
47
46
45
44
43
42
41
40
39
3
2
1
0
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
135
147
151
163
175
163
134
146
150
162
174
162
133
145
149
161
173
161
132
144
148
160
172
160
131
143
147
159
171
159
130
142
146
158
170
158
129
141
145
157
169
157
128
140
144
156
168
156
127
139
143
155
167
155
126
138
142
154
166
154
125
137
141
153
165
153
124
136
140
128
129
130
131
132
133
134
135
136
137
138
139
140
152
164
152
123
135
139
127
139
151
163
151
122
134
138
126
138
150
162
150
121
133
137
125
137
149
161
149
120
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
124
136
148
149
150
151
152
153
154
155
156
155
154
153
152
153
154
155
156
157
158
159
160
148
119
123
135
123
135
147
151
147
118
122
134
122
134
146
150
146
117
121
133
121
133
145
149
145
116
120
132
120
132
144
148
144
115
119
131
119
131
143
147
143
114
118
130
118
130
142
146
142
113
117
129
117
129
141
145
141
112
116
128
116
128
140
144
140
111
115
127
115
127
139
143
139
110
114
126
114
126
138
142
138
109
113
125
113
125
137
141
137
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
124
123
122
121
120
119
118
117
116
115
114
113
112
124
125
126
127
128
129
130
131
132
133
134
135
136
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
99
111
123
127
98
110
122
126
97
109
121
125
96
108
120
124
95
107
119
123
94
106
118
122
93
105
117
121
92
104
116
120
91
103
115
119
90
102
114
118
89
101
113
117
88
87
86
85
84
83
82
81
80
79
78
77
76
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
104
105
106
107
108
109
110
111
112
113
114
115
116
89
75
87
99
103
117
90
74
86
98
102
118
91
73
85
97
101
119
92
72
84
96
100
120
93
71
83
95
99
121
94
70
82
94
98
122
95
69
81
93
97
122
108
107
106
105
104
103
102
101
100
99
98
97
96
68
80
92
96
121
120
119
118
117
116
115
114
113
112
111
110
109
67
79
91
95
66
78
90
94
65
77
89
93
64
76
88
92
63
75
87
91
62
63
64
65
66
67
68
69
70
71
72
73
74
86
87
88
89
90
91
92
93
94
93
92
91
90
61
73
85
89
60
72
84
88
59
71
83
87
58
70
82
86
57
69
81
85
56
68
80
84
79
78
77
76
75
74
73
72
71
70
69
68
67
55
67
79
83
92
91
90
89
88
87
86
85
84
83
82
81
80
66
54
66
78
82
93
65
53
65
77
81
93
64
52
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
80
92
63
51
51
65
79
91
62
50
50
66
78
90
61
49
49
67
77
89
60
59
58
57
56
55
54
53
52
51
50
49
48
48
68
76
77
78
79
80
81
82
83
84
85
86
87
88
59
47
47
69
75
87
58
46
46
70
74
86
57
45
45
71
73
85
56
44
44
72
72
84
55
43
43
71
71
83
54
42
42
70
70
82
53
41
41
69
69
81
52
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
80
51
27
41
69
55
79
50
26
42
70
54
78
49
25
43
71
53
77
48
24
44
72
52
76
47
23
45
71
51
75
46
22
46
70
50
74
45
21
47
69
49
73
44
20
48
68
48
72
43
19
49
67
47
71
42
18
50
66
46
70
41
17
51
65
45
69
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
52
53
54
55
56
57
58
59
60
61
62
63
64
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
49
29
15
43
57
77
50
30
14
42
58
78
51
31
13
41
59
79
52
32
12
40
60
80
53
33
11
39
61
81
54
34
10
38
62
82
55
35
9
37
63
83
56
36
8
36
64
84
57
37
7
35
65
85
58
38
6
34
66
86
59
39
5
33
67
87
60
48
47
46
45
44
43
42
41
40
4
3
2
1
0
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
136
148
152
164
174
162
135
147
151
163
173
161
134
146
150
162
172
160
133
145
149
161
171
159
132
144
148
160
170
158
131
143
147
159
169
157
130
142
146
158
168
156
129
141
145
157
167
155
128
140
144
156
166
154
127
139
143
155
165
153
126
138
142
154
164
152
125
137
141
129
130
131
132
133
134
135
136
137
138
139
140
141
153
163
151
124
136
140
128
140
152
162
150
123
135
139
127
139
151
161
149
122
134
138
126
138
150
160
148
121
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
125
137
149
150
151
152
153
154
155
156
155
154
153
152
151
152
153
154
155
156
157
158
159
147
120
124
136
124
136
148
150
146
119
123
135
123
135
147
149
145
118
122
134
122
134
146
148
144
117
121
133
121
133
145
147
143
116
120
132
120
132
144
146
142
115
119
131
119
131
143
145
141
114
118
130
118
130
142
144
140
113
117
129
117
129
141
143
139
112
116
128
116
128
140
142
138
111
115
127
115
127
139
141
137
110
114
126
114
126
138
140
136
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
125
124
123
122
121
120
119
118
117
116
115
114
113
125
126
127
128
129
130
131
132
133
134
135
136
137
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
100
112
124
126
99
111
123
125
98
110
122
124
97
109
121
123
96
108
120
122
95
107
119
121
94
106
118
120
93
105
117
119
92
104
116
118
91
103
115
117
90
102
114
116
89
88
87
86
85
84
83
82
81
80
79
78
77
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
103
104
105
106
107
108
109
110
111
112
113
114
115
90
76
88
100
102
116
91
75
87
99
101
117
92
74
86
98
100
118
93
73
85
97
99
119
94
72
84
96
98
120
95
71
83
95
97
121
96
70
82
94
96
122
109
108
107
106
105
104
103
102
101
100
99
98
97
69
81
93
95
122
121
120
119
118
117
116
115
114
113
112
111
110
68
80
92
94
67
79
91
93
66
78
90
92
65
77
89
91
64
76
88
90
63
64
65
66
67
68
69
70
71
72
73
74
75
87
88
89
90
91
92
93
94
93
92
91
90
89
62
74
86
88
61
73
85
87
60
72
84
86
59
71
83
85
58
70
82
84
57
69
81
83
80
79
78
77
76
75
74
73
72
71
70
69
68
56
68
80
82
93
92
91
90
89
88
87
86
85
84
83
82
81
67
55
67
79
81
93
66
54
66
78
80
92
65
53
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
79
91
64
52
52
66
78
90
63
51
51
67
77
89
62
50
50
68
76
88
61
60
59
58
57
56
55
54
53
52
51
50
49
49
69
75
76
77
78
79
80
81
82
83
84
85
86
87
60
48
48
70
74
86
59
47
47
71
73
85
58
46
46
72
72
84
57
45
45
71
71
83
56
44
44
70
70
82
55
43
43
69
69
81
54
42
42
68
68
80
53
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
79
52
28
42
68
54
78
51
27
43
69
53
77
50
26
44
70
52
76
49
25
45
71
51
75
48
24
46
72
50
74
47
23
47
71
49
73
46
22
48
70
48
72
45
21
49
69
47
71
44
20
50
68
46
70
43
19
51
67
45
69
42
18
52
66
44
68
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
53
54
55
56
57
58
59
60
61
62
63
64
65
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
50
30
16
42
56
76
51
31
15
41
57
77
52
32
14
40
58
78
53
33
13
39
59
79
54
34
12
38
60
80
55
35
11
37
61
81
56
36
10
36
62
82
57
37
9
35
63
83
58
38
8
34
64
84
59
39
7
33
65
85
60
40
6
32
66
86
61
49
48
47
46
45
44
43
42
41
5
4
3
2
1
0
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
137
149
153
165
173
161
136
148
152
164
172
160
135
147
151
163
171
159
134
146
150
162
170
158
133
145
149
161
169
157
132
144
148
160
168
156
131
143
147
159
167
155
130
142
146
158
166
154
129
141
145
157
165
153
128
140
144
156
164
152
127
139
143
155
163
151
126
138
142
130
131
132
133
134
135
136
137
138
139
140
141
142
154
162
150
125
137
141
129
141
153
161
149
124
136
140
128
140
152
160
148
123
135
139
127
139
151
159
147
122
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
126
138
150
151
152
153
154
155
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
146
121
125
137
125
137
149
149
145
120
124
136
124
136
148
148
144
119
123
135
123
135
147
147
143
118
122
134
122
134
146
146
142
117
121
133
121
133
145
145
141
116
120
132
120
132
144
144
140
115
119
131
119
131
143
143
139
114
118
130
118
130
142
142
138
113
117
129
117
129
141
141
137
112
116
128
116
128
140
140
136
111
115
127
115
127
139
139
135
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
126
125
124
123
122
121
120
119
118
117
116
115
114
126
127
128
129
130
131
132
133
134
135
136
137
138
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
101
113
125
125
100
112
124
124
99
111
123
123
98
110
122
122
97
109
121
121
96
108
120
120
95
107
119
119
94
106
118
118
93
105
117
117
92
104
116
116
91
103
115
115
90
89
88
87
86
85
84
83
82
81
80
79
78
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
102
103
104
105
106
107
108
109
110
111
112
113
114
91
77
89
101
101
115
92
76
88
100
100
116
93
75
87
99
99
117
94
74
86
98
98
118
95
73
85
97
97
119
96
72
84
96
96
120
97
71
83
95
95
121
110
109
108
107
106
105
104
103
102
101
100
99
98
70
82
94
94
122
122
121
120
119
118
117
116
115
114
113
112
111
69
81
93
93
68
80
92
92
67
79
91
91
66
78
90
90
65
77
89
89
64
65
66
67
68
69
70
71
72
73
74
75
76
88
89
90
91
92
93
94
93
92
91
90
89
88
63
75
87
87
62
74
86
86
61
73
85
85
60
72
84
84
59
71
83
83
58
70
82
82
81
80
79
78
77
76
75
74
73
72
71
70
69
57
69
81
81
93
93
92
91
90
89
88
87
86
85
84
83
82
68
56
68
80
80
92
67
55
67
79
79
91
66
54
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
78
90
65
53
53
67
77
89
64
52
52
68
76
88
63
51
51
69
75
87
62
61
60
59
58
57
56
55
54
53
52
51
50
50
70
74
75
76
77
78
79
80
81
82
83
84
85
86
61
49
49
71
73
85
60
48
48
72
72
84
59
47
47
71
71
83
58
46
46
70
70
82
57
45
45
69
69
81
56
44
44
68
68
80
55
43
43
67
67
79
54
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
78
53
29
43
67
53
77
52
28
44
68
52
76
51
27
45
69
51
75
50
26
46
70
50
74
49
25
47
71
49
73
48
24
48
72
48
72
47
23
49
71
47
71
46
22
50
70
46
70
45
21
51
69
45
69
44
20
52
68
44
68
43
19
53
67
43
67
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
54
55
56
57
58
59
60
61
62
63
64
65
66
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
51
31
17
41
55
75
52
32
16
40
56
76
53
33
15
39
57
77
54
34
14
38
58
78
55
35
13
37
59
79
56
36
12
36
60
80
57
37
11
35
61
81
58
38
10
34
62
82
59
39
9
33
63
83
60
40
8
32
64
84
61
41
7
31
65
85
62
50
49
48
47
46
45
44
43
42
6
5
4
3
2
1
0
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
138
150
154
166
172
160
137
149
153
165
171
159
136
148
152
164
170
158
135
147
151
163
169
157
134
146
150
162
168
156
133
145
149
161
167
155
132
144
148
160
166
154
131
143
147
159
165
153
130
142
146
158
164
152
129
141
145
157
163
151
128
140
144
156
162
150
127
139
143
131
132
133
134
135
136
137
138
139
140
141
142
143
155
161
149
126
138
142
130
142
154
160
148
125
137
141
129
141
153
159
147
124
136
140
128
140
152
158
146
123
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
127
139
151
152
153
154
155
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
145
122
126
138
126
138
150
148
144
121
125
137
125
137
149
147
143
120
124
136
124
136
148
146
142
119
123
135
123
135
147
145
141
118
122
134
122
134
146
144
140
117
121
133
121
133
145
143
139
116
120
132
120
132
144
142
138
115
119
131
119
131
143
141
137
114
118
130
118
130
142
140
136
113
117
129
117
129
141
139
135
112
116
128
116
128
140
138
134
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
127
126
125
124
123
122
121
120
119
118
117
116
115
127
128
129
130
131
132
133
134
135
136
137
138
139
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
102
114
126
124
101
113
125
123
100
112
124
122
99
111
123
121
98
110
122
120
97
109
121
119
96
108
120
118
95
107
119
117
94
106
118
116
93
105
117
115
92
104
116
114
91
90
89
88
87
86
85
84
83
82
81
80
79
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
101
102
103
104
105
106
107
108
109
110
111
112
113
92
78
90
102
100
114
93
77
89
101
99
115
94
76
88
100
98
116
95
75
87
99
97
117
96
74
86
98
96
118
97
73
85
97
95
119
98
72
84
96
94
120
111
110
109
108
107
106
105
104
103
102
101
100
99
71
83
95
93
121
122
122
121
120
119
118
117
116
115
114
113
112
70
82
94
92
69
81
93
91
68
80
92
90
67
79
91
89
66
78
90
88
65
66
67
68
69
70
71
72
73
74
75
76
77
89
90
91
92
93
94
93
92
91
90
89
88
87
64
76
88
86
63
75
87
85
62
74
86
84
61
73
85
83
60
72
84
82
59
71
83
81
82
81
80
79
78
77
76
75
74
73
72
71
70
58
70
82
80
92
93
93
92
91
90
89
88
87
86
85
84
83
69
57
69
81
79
91
68
56
68
80
78
90
67
55
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
77
89
66
54
54
68
76
88
65
53
53
69
75
87
64
52
52
70
74
86
63
62
61
60
59
58
57
56
55
54
53
52
51
51
71
73
74
75
76
77
78
79
80
81
82
83
84
85
62
50
50
72
72
84
61
49
49
71
71
83
60
48
48
70
70
82
59
47
47
69
69
81
58
46
46
68
68
80
57
45
45
67
67
79
56
44
44
66
66
78
55
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
77
54
30
44
66
52
76
53
29
45
67
51
75
52
28
46
68
50
74
51
27
47
69
49
73
50
26
48
70
48
72
49
25
49
71
47
71
48
24
50
72
46
70
47
23
51
71
45
69
46
22
52
70
44
68
45
21
53
69
43
67
44
20
54
68
42
66
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
55
56
57
58
59
60
61
62
63
64
65
66
67
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
52
32
18
40
54
74
53
33
17
39
55
75
54
34
16
38
56
76
55
35
15
37
57
77
56
36
14
36
58
78
57
37
13
35
59
79
58
38
12
34
60
80
59
39
11
33
61
81
60
40
10
32
62
82
61
41
9
31
63
83
62
42
8
30
64
84
63
51
50
49
48
47
46
45
44
43
7
6
5
4
3
2
1
0
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
139
151
155
167
171
159
138
150
154
166
170
158
137
149
153
165
169
157
136
148
152
164
168
156
135
147
151
163
167
155
134
146
150
162
166
154
133
145
149
161
165
153
132
144
148
160
164
152
131
143
147
159
163
151
130
142
146
158
162
150
129
141
145
157
161
149
128
140
144
132
133
134
135
136
137
138
139
140
141
142
143
144
156
160
148
127
139
143
131
143
155
159
147
126
138
142
130
142
154
158
146
125
137
141
129
141
153
157
145
124
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
128
140
152
153
154
155
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
144
123
127
139
127
139
151
147
143
122
126
138
126
138
150
146
142
121
125
137
125
137
149
145
141
120
124
136
124
136
148
144
140
119
123
135
123
135
147
143
139
118
122
134
122
134
146
142
138
117
121
133
121
133
145
141
137
116
120
132
120
132
144
140
136
115
119
131
119
131
143
139
135
114
118
130
118
130
142
138
134
113
117
129
117
129
141
137
133
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
128
127
126
125
124
123
122
121
120
119
118
117
116
128
129
130
131
132
133
134
135
136
137
138
139
140
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
103
115
127
123
102
114
126
122
101
113
125
121
100
112
124
120
99
111
123
119
98
110
122
118
97
109
121
117
96
108
120
116
95
107
119
115
94
106
118
114
93
105
117
113
92
91
90
89
88
87
86
85
84
83
82
81
80
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
100
101
102
103
104
105
106
107
108
109
110
111
112
93
79
91
103
99
113
94
78
90
102
98
114
95
77
89
101
97
115
96
76
88
100
96
116
97
75
87
99
95
117
98
74
86
98
94
118
99
73
85
97
93
119
112
111
110
109
108
107
106
105
104
103
102
101
100
72
84
96
92
120
121
122
122
121
120
119
118
117
116
115
114
113
71
83
95
91
70
82
94
90
69
81
93
89
68
80
92
88
67
79
91
87
66
67
68
69
70
71
72
73
74
75
76
77
78
90
91
92
93
94
93
92
91
90
89
88
87
86
65
77
89
85
64
76
88
84
63
75
87
83
62
74
86
82
61
73
85
81
60
72
84
80
83
82
81
80
79
78
77
76
75
74
73
72
71
59
71
83
79
91
92
93
93
92
91
90
89
88
87
86
85
84
70
58
70
82
78
90
69
57
69
81
77
89
68
56
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
76
88
67
55
55
69
75
87
66
54
54
70
74
86
65
53
53
71
73
85
64
63
62
61
60
59
58
57
56
55
54
53
52
52
72
72
73
74
75
76
77
78
79
80
81
82
83
84
63
51
51
71
71
83
62
50
50
70
70
82
61
49
49
69
69
81
60
48
48
68
68
80
59
47
47
67
67
79
58
46
46
66
66
78
57
45
45
65
65
77
56
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
76
55
31
45
65
51
75
54
30
46
66
50
74
53
29
47
67
49
73
52
28
48
68
48
72
51
27
49
69
47
71
50
26
50
70
46
70
49
25
51
71
45
69
48
24
52
72
44
68
47
23
53
71
43
67
46
22
54
70
42
66
45
21
55
69
41
65
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
56
57
58
59
60
61
62
63
64
65
66
67
68
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
53
33
19
39
53
73
54
34
18
38
54
74
55
35
17
37
55
75
56
36
16
36
56
76
57
37
15
35
57
77
58
38
14
34
58
78
59
39
13
33
59
79
60
40
12
32
60
80
61
41
11
31
61
81
62
42
10
30
62
82
63
43
9
29
63
83
64
52
51
50
49
48
47
46
45
44
8
7
6
5
4
3
2
1
0
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
140
152
156
168
170
158
139
151
155
167
169
157
138
150
154
166
168
156
137
149
153
165
167
155
136
148
152
164
166
154
135
147
151
163
165
153
134
146
150
162
164
152
133
145
149
161
163
151
132
144
148
160
162
150
131
143
147
159
161
149
130
142
146
158
160
148
129
141
145
133
134
135
136
137
138
139
140
141
142
143
144
145
157
159
147
128
140
144
132
144
156
158
146
127
139
143
131
143
155
157
145
126
138
142
130
142
154
156
144
125
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
129
141
153
154
155
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
143
124
128
140
128
140
152
146
142
123
127
139
127
139
151
145
141
122
126
138
126
138
150
144
140
121
125
137
125
137
149
143
139
120
124
136
124
136
148
142
138
119
123
135
123
135
147
141
137
118
122
134
122
134
146
140
136
117
121
133
121
133
145
139
135
116
120
132
120
132
144
138
134
115
119
131
119
131
143
137
133
114
118
130
118
130
142
136
132
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
129
128
127
126
125
124
123
122
121
120
119
118
117
129
130
131
132
133
134
135
136
137
138
139
140
141
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
104
116
128
122
103
115
127
121
102
114
126
120
101
113
125
119
100
112
124
118
99
111
123
117
98
110
122
116
97
109
121
115
96
108
120
114
95
107
119
113
94
106
118
112
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
99
100
101
102
103
104
105
106
107
108
109
110
111
94
80
92
104
98
112
95
79
91
103
97
113
96
78
90
102
96
114
97
77
89
101
95
115
98
76
88
100
94
116
99
75
87
99
93
117
100
74
86
98
92
118
113
112
111
110
109
108
107
106
105
104
103
102
101
73
85
97
91
119
120
121
122
122
121
120
119
118
117
116
115
114
72
84
96
90
71
83
95
89
70
82
94
88
69
81
93
87
68
80
92
86
67
68
69
70
71
72
73
74
75
76
77
78
79
91
92
93
94
93
92
91
90
89
88
87
86
85
66
78
90
84
65
77
89
83
64
76
88
82
63
75
87
81
62
74
86
80
61
73
85
79
84
83
82
81
80
79
78
77
76
75
74
73
72
60
72
84
78
90
91
92
93
93
92
91
90
89
88
87
86
85
71
59
71
83
77
89
70
58
70
82
76
88
69
57
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
75
87
68
56
56
70
74
86
67
55
55
71
73
85
66
54
54
72
72
84
65
64
63
62
61
60
59
58
57
56
55
54
53
53
71
71
72
73
74
75
76
77
78
79
80
81
82
83
64
52
52
70
70
82
63
51
51
69
69
81
62
50
50
68
68
80
61
49
49
67
67
79
60
48
48
66
66
78
59
47
47
65
65
77
58
46
46
64
64
76
57
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
75
56
32
46
64
50
74
55
31
47
65
49
73
54
30
48
66
48
72
53
29
49
67
47
71
52
28
50
68
46
70
51
27
51
69
45
69
50
26
52
70
44
68
49
25
53
71
43
67
48
24
54
72
42
66
47
23
55
71
41
65
46
22
56
70
40
64
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
57
58
59
60
61
62
63
64
65
66
67
68
69
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
54
34
20
38
52
72
55
35
19
37
53
73
56
36
18
36
54
74
57
37
17
35
55
75
58
38
16
34
56
76
59
39
15
33
57
77
60
40
14
32
58
78
61
41
13
31
59
79
62
42
12
30
60
80
63
43
11
29
61
81
64
44
10
28
62
82
65
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
0
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
141
153
157
169
169
157
140
152
156
168
168
156
139
151
155
167
167
155
138
150
154
166
166
154
137
149
153
165
165
153
136
148
152
164
164
152
135
147
151
163
163
151
134
146
150
162
162
150
133
145
149
161
161
149
132
144
148
160
160
148
131
143
147
159
159
147
130
142
146
134
135
136
137
138
139
140
141
142
143
144
145
146
158
158
146
129
141
145
133
145
157
157
145
128
140
144
132
144
156
156
144
127
139
143
131
143
155
155
143
126
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
130
142
154
155
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
142
125
129
141
129
141
153
145
141
124
128
140
128
140
152
144
140
123
127
139
127
139
151
143
139
122
126
138
126
138
150
142
138
121
125
137
125
137
149
141
137
120
124
136
124
136
148
140
136
119
123
135
123
135
147
139
135
118
122
134
122
134
146
138
134
117
121
133
121
133
145
137
133
116
120
132
120
132
144
136
132
115
119
131
119
131
143
135
131
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
130
129
128
127
126
125
124
123
122
121
120
119
118
130
131
132
133
134
135
136
137
138
139
140
141
142
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
105
117
129
121
104
116
128
120
103
115
127
119
102
114
126
118
101
113
125
117
100
112
124
116
99
111
123
115
98
110
122
114
97
109
121
113
96
108
120
112
95
107
119
111
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
98
99
100
101
102
103
104
105
106
107
108
109
110
95
81
93
105
97
111
96
80
92
104
96
112
97
79
91
103
95
113
98
78
90
102
94
114
99
77
89
101
93
115
100
76
88
100
92
116
101
75
87
99
91
117
114
113
112
111
110
109
108
107
106
105
104
103
102
74
86
98
90
118
119
120
121
122
122
121
120
119
118
117
116
115
73
85
97
89
72
84
96
88
71
83
95
87
70
82
94
86
69
81
93
85
68
69
70
71
72
73
74
75
76
77
78
79
80
92
93
94
93
92
91
90
89
88
87
86
85
84
67
79
91
83
66
78
90
82
65
77
89
81
64
76
88
80
63
75
87
79
62
74
86
78
85
84
83
82
81
80
79
78
77
76
75
74
73
61
73
85
77
89
90
91
92
93
93
92
91
90
89
88
87
86
72
60
72
84
76
88
71
59
71
83
75
87
70
58
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
74
86
69
57
57
71
73
85
68
56
56
72
72
84
67
55
55
71
71
83
66
65
64
63
62
61
60
59
58
57
56
55
54
54
70
70
71
72
73
74
75
76
77
78
79
80
81
82
65
53
53
69
69
81
64
52
52
68
68
80
63
51
51
67
67
79
62
50
50
66
66
78
61
49
49
65
65
77
60
48
48
64
64
76
59
47
47
63
63
75
58
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
74
57
33
47
63
49
73
56
32
48
64
48
72
55
31
49
65
47
71
54
30
50
66
46
70
53
29
51
67
45
69
52
28
52
68
44
68
51
27
53
69
43
67
50
26
54
70
42
66
49
25
55
71
41
65
48
24
56
72
40
64
47
23
57
71
39
63
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
58
59
60
61
62
63
64
65
66
67
68
69
70
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
55
35
21
37
51
71
56
36
20
36
52
72
57
37
19
35
53
73
58
38
18
34
54
74
59
39
17
33
55
75
60
40
16
32
56
76
61
41
15
31
57
77
62
42
14
30
58
78
63
43
13
29
59
79
64
44
12
28
60
80
65
45
11
27
61
81
66
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
1
0
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
142
154
158
170
168
156
141
153
157
169
167
155
140
152
156
168
166
154
139
151
155
167
165
153
138
150
154
166
164
152
137
149
153
165
163
151
136
148
152
164
162
150
135
147
151
163
161
149
134
146
150
162
160
148
133
145
149
161
159
147
132
144
148
160
158
146
131
143
147
135
136
137
138
139
140
141
142
143
144
145
146
147
159
157
145
130
142
146
134
146
158
156
144
129
141
145
133
145
157
155
143
128
140
144
132
144
156
154
142
127
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
131
143
155
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
141
126
130
142
130
142
154
144
140
125
129
141
129
141
153
143
139
124
128
140
128
140
152
142
138
123
127
139
127
139
151
141
137
122
126
138
126
138
150
140
136
121
125
137
125
137
149
139
135
120
124
136
124
136
148
138
134
119
123
135
123
135
147
137
133
118
122
134
122
134
146
136
132
117
121
133
121
133
145
135
131
116
120
132
120
132
144
134
130
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
131
130
129
128
127
126
125
124
123
122
121
120
119
131
132
133
134
135
136
137
138
139
140
141
142
143
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
106
118
130
120
105
117
129
119
104
116
128
118
103
115
127
117
102
114
126
116
101
113
125
115
100
112
124
114
99
111
123
113
98
110
122
112
97
109
121
111
96
108
120
110
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
97
98
99
100
101
102
103
104
105
106
107
108
109
96
82
94
106
96
110
97
81
93
105
95
111
98
80
92
104
94
112
99
79
91
103
93
113
100
78
90
102
92
114
101
77
89
101
91
115
102
76
88
100
90
116
115
114
113
112
111
110
109
108
107
106
105
104
103
75
87
99
89
117
118
119
120
121
122
122
121
120
119
118
117
116
74
86
98
88
73
85
97
87
72
84
96
86
71
83
95
85
70
82
94
84
69
70
71
72
73
74
75
76
77
78
79
80
81
93
94
93
92
91
90
89
88
87
86
85
84
83
68
80
92
82
67
79
91
81
66
78
90
80
65
77
89
79
64
76
88
78
63
75
87
77
86
85
84
83
82
81
80
79
78
77
76
75
74
62
74
86
76
88
89
90
91
92
93
93
92
91
90
89
88
87
73
61
73
85
75
87
72
60
72
84
74
86
71
59
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
73
85
70
58
58
72
72
84
69
57
57
71
71
83
68
56
56
70
70
82
67
66
65
64
63
62
61
60
59
58
57
56
55
55
69
69
70
71
72
73
74
75
76
77
78
79
80
81
66
54
54
68
68
80
65
53
53
67
67
79
64
52
52
66
66
78
63
51
51
65
65
77
62
50
50
64
64
76
61
49
49
63
63
75
60
48
48
62
62
74
59
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
73
58
34
48
62
48
72
57
33
49
63
47
71
56
32
50
64
46
70
55
31
51
65
45
69
54
30
52
66
44
68
53
29
53
67
43
67
52
28
54
68
42
66
51
27
55
69
41
65
50
26
56
70
40
64
49
25
57
71
39
63
48
24
58
72
38
62
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
59
60
61
62
63
64
65
66
67
68
69
70
71
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
56
36
22
36
50
70
57
37
21
35
51
71
58
38
20
34
52
72
59
39
19
33
53
73
60
40
18
32
54
74
61
41
17
31
55
75
62
42
16
30
56
76
63
43
15
29
57
77
64
44
14
28
58
78
65
45
13
27
59
79
66
46
12
26
60
80
67
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
143
155
159
171
167
155
142
154
158
170
166
154
141
153
157
169
165
153
140
152
156
168
164
152
139
151
155
167
163
151
138
150
154
166
162
150
137
149
153
165
161
149
136
148
152
164
160
148
135
147
151
163
159
147
134
146
150
162
158
146
133
145
149
161
157
145
132
144
148
136
137
138
139
140
141
142
143
144
145
146
147
148
160
156
144
131
143
147
135
147
159
155
143
130
142
146
134
146
158
154
142
129
141
145
133
145
157
153
141
128
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
132
144
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
140
127
131
143
131
143
155
143
139
126
130
142
130
142
154
142
138
125
129
141
129
141
153
141
137
124
128
140
128
140
152
140
136
123
127
139
127
139
151
139
135
122
126
138
126
138
150
138
134
121
125
137
125
137
149
137
133
120
124
136
124
136
148
136
132
119
123
135
123
135
147
135
131
118
122
134
122
134
146
134
130
117
121
133
121
133
145
133
129
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
132
131
130
129
128
127
126
125
124
123
122
121
120
132
133
134
135
136
137
138
139
140
141
142
143
144
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
107
119
131
119
106
118
130
118
105
117
129
117
104
116
128
116
103
115
127
115
102
114
126
114
101
113
125
113
100
112
124
112
99
111
123
111
98
110
122
110
97
109
121
109
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
97
83
95
107
95
109
98
82
94
106
94
110
99
81
93
105
93
111
100
80
92
104
92
112
101
79
91
103
91
113
102
78
90
102
90
114
103
77
89
101
89
115
116
115
114
113
112
111
110
109
108
107
106
105
104
76
88
100
88
116
117
118
119
120
121
122
122
121
120
119
118
117
75
87
99
87
74
86
98
86
73
85
97
85
72
84
96
84
71
83
95
83
70
71
72
73
74
75
76
77
78
79
80
81
82
94
93
92
91
90
89
88
87
86
85
84
83
82
69
81
93
81
68
80
92
80
67
79
91
79
66
78
90
78
65
77
89
77
64
76
88
76
87
86
85
84
83
82
81
80
79
78
77
76
75
63
75
87
75
87
88
89
90
91
92
93
93
92
91
90
89
88
74
62
74
86
74
86
73
61
73
85
73
85
72
60
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
72
84
71
59
59
71
71
83
70
58
58
70
70
82
69
57
57
69
69
81
68
67
66
65
64
63
62
61
60
59
58
57
56
56
68
68
69
70
71
72
73
74
75
76
77
78
79
80
67
55
55
67
67
79
66
54
54
66
66
78
65
53
53
65
65
77
64
52
52
64
64
76
63
51
51
63
63
75
62
50
50
62
62
74
61
49
49
61
61
73
60
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
72
59
35
49
61
47
71
58
34
50
62
46
70
57
33
51
63
45
69
56
32
52
64
44
68
55
31
53
65
43
67
54
30
54
66
42
66
53
29
55
67
41
65
52
28
56
68
40
64
51
27
57
69
39
63
50
26
58
70
38
62
49
25
59
71
37
61
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
60
61
62
63
64
65
66
67
68
69
70
71
72
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
57
37
23
35
49
69
58
38
22
34
50
70
59
39
21
33
51
71
60
40
20
32
52
72
61
41
19
31
53
73
62
42
18
30
54
74
63
43
17
29
55
75
64
44
16
28
56
76
65
45
15
27
57
77
66
46
14
26
58
78
67
47
13
25
59
79
68
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
144
156
160
170
166
154
143
155
159
169
165
153
142
154
158
168
164
152
141
153
157
167
163
151
140
152
156
166
162
150
139
151
155
165
161
149
138
150
154
164
160
148
137
149
153
163
159
147
136
148
152
162
158
146
135
147
151
161
157
145
134
146
150
160
156
144
133
145
149
137
138
139
140
141
142
143
144
145
146
147
148
147
159
155
143
132
144
148
136
146
158
154
142
131
143
147
135
145
157
153
141
130
142
146
134
144
156
152
140
129
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
133
143
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
139
128
132
144
132
142
154
142
138
127
131
143
131
141
153
141
137
126
130
142
130
140
152
140
136
125
129
141
129
139
151
139
135
124
128
140
128
138
150
138
134
123
127
139
127
137
149
137
133
122
126
138
126
136
148
136
132
121
125
137
125
135
147
135
131
120
124
136
124
134
146
134
130
119
123
135
123
133
145
133
129
118
122
134
122
132
144
132
128
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
133
132
131
130
129
128
127
126
125
124
123
122
121
131
132
133
134
135
136
137
138
139
140
141
142
143
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
108
120
130
118
107
119
129
117
106
118
128
116
105
117
127
115
104
116
126
114
103
115
125
113
102
114
124
112
101
113
123
111
100
112
122
110
99
111
121
109
98
110
120
108
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
104
105
106
107
98
84
96
106
94
108
99
83
95
105
93
109
100
82
94
104
92
110
101
81
93
103
91
111
102
80
92
102
90
112
103
79
91
101
89
113
104
78
90
100
88
114
117
116
115
114
113
112
111
110
109
108
107
106
105
77
89
99
87
115
116
117
118
119
120
121
122
122
121
120
119
118
76
88
98
86
75
87
97
85
74
86
96
84
73
85
95
83
72
84
94
82
71
72
73
74
75
76
77
78
79
80
81
82
83
93
92
91
90
89
88
87
86
85
84
83
82
81
70
82
92
80
69
81
91
79
68
80
90
78
67
79
89
77
66
78
88
76
65
77
87
75
88
87
86
85
84
83
82
81
80
79
78
77
76
64
76
86
74
86
87
88
89
90
91
92
93
93
92
91
90
89
75
63
75
85
73
85
74
62
74
84
72
84
73
61
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
71
72
73
74
75
76
77
78
79
80
81
82
83
71
83
72
60
60
70
70
82
71
59
59
69
69
81
70
58
58
68
68
80
69
68
67
66
65
64
63
62
61
60
59
58
57
57
67
67
68
69
70
71
72
73
74
75
76
77
78
79
68
56
56
66
66
78
67
55
55
65
65
77
66
54
54
64
64
76
65
53
53
63
63
75
64
52
52
62
62
74
63
51
51
61
61
73
62
50
50
60
60
72
61
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
71
60
36
50
60
46
70
59
35
51
61
45
69
58
34
52
62
44
68
57
33
53
63
43
67
56
32
54
64
42
66
55
31
55
65
41
65
54
30
56
66
40
64
53
29
57
67
39
63
52
28
58
68
38
62
51
27
59
69
37
61
50
26
60
70
36
60
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
61
62
63
64
65
66
67
68
69
70
71
72
71
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
58
38
24
34
48
68
59
39
23
33
49
69
60
40
22
32
50
70
61
41
21
31
51
71
62
42
20
30
52
72
63
43
19
29
53
73
64
44
18
28
54
74
65
45
17
27
55
75
66
46
16
26
56
76
67
47
15
25
57
77
68
48
14
24
58
78
69
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
145
157
161
169
165
153
144
156
160
168
164
152
143
155
159
167
163
151
142
154
158
166
162
150
141
153
157
165
161
149
140
152
156
164
160
148
139
151
155
163
159
147
138
150
154
162
158
146
137
149
153
161
157
145
136
148
152
160
156
144
135
147
151
159
155
143
134
146
150
138
139
140
141
142
143
144
145
146
147
148
147
146
158
154
142
133
145
149
137
145
157
153
141
132
144
148
136
144
156
152
140
131
143
147
135
143
155
151
139
130
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
134
142
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
138
129
133
145
133
141
153
141
137
128
132
144
132
140
152
140
136
127
131
143
131
139
151
139
135
126
130
142
130
138
150
138
134
125
129
141
129
137
149
137
133
124
128
140
128
136
148
136
132
123
127
139
127
135
147
135
131
122
126
138
126
134
146
134
130
121
125
137
125
133
145
133
129
120
124
136
124
132
144
132
128
119
123
135
123
131
143
131
127
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
134
133
132
131
130
129
128
127
126
125
124
123
122
130
131
132
133
134
135
136
137
138
139
140
141
142
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
109
121
129
117
108
120
128
116
107
119
127
115
106
118
126
114
105
117
125
113
104
116
124
112
103
115
123
111
102
114
122
110
101
113
121
109
100
112
120
108
99
111
119
107
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
103
104
105
106
99
85
97
105
93
107
100
84
96
104
92
108
101
83
95
103
91
109
102
82
94
102
90
110
103
81
93
101
89
111
104
80
92
100
88
112
105
79
91
99
87
113
118
117
116
115
114
113
112
111
110
109
108
107
106
78
90
98
86
114
115
116
117
118
119
120
121
122
122
121
120
119
77
89
97
85
76
88
96
84
75
87
95
83
74
86
94
82
73
85
93
81
72
73
74
75
76
77
78
79
80
81
82
83
84
92
91
90
89
88
87
86
85
84
83
82
81
80
71
83
91
79
70
82
90
78
69
81
89
77
68
80
88
76
67
79
87
75
66
78
86
74
89
88
87
86
85
84
83
82
81
80
79
78
77
65
77
85
73
85
86
87
88
89
90
91
92
93
93
92
91
90
76
64
76
84
72
84
75
63
75
83
71
83
74
62
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
70
82
73
61
61
69
69
81
72
60
60
68
68
80
71
59
59
67
67
79
70
69
68
67
66
65
64
63
62
61
60
59
58
58
66
66
67
68
69
70
71
72
73
74
75
76
77
78
69
57
57
65
65
77
68
56
56
64
64
76
67
55
55
63
63
75
66
54
54
62
62
74
65
53
53
61
61
73
64
52
52
60
60
72
63
51
51
59
59
71
62
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
70
61
37
51
59
45
69
60
36
52
60
44
68
59
35
53
61
43
67
58
34
54
62
42
66
57
33
55
63
41
65
56
32
56
64
40
64
55
31
57
65
39
63
54
30
58
66
38
62
53
29
59
67
37
61
52
28
60
68
36
60
51
27
61
69
35
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
62
63
64
65
66
67
68
69
70
71
72
71
70
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
59
39
25
33
47
67
60
40
24
32
48
68
61
41
23
31
49
69
62
42
22
30
50
70
63
43
21
29
51
71
64
44
20
28
52
72
65
45
19
27
53
73
66
46
18
26
54
74
67
47
17
25
55
75
68
48
16
24
56
76
69
49
15
23
57
77
70
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
146
158
162
168
164
152
145
157
161
167
163
151
144
156
160
166
162
150
143
155
159
165
161
149
142
154
158
164
160
148
141
153
157
163
159
147
140
152
156
162
158
146
139
151
155
161
157
145
138
150
154
160
156
144
137
149
153
159
155
143
136
148
152
158
154
142
135
147
151
139
140
141
142
143
144
145
146
147
148
147
146
145
157
153
141
134
146
150
138
144
156
152
140
133
145
149
137
143
155
151
139
132
144
148
136
142
154
150
138
131
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
135
141
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
137
130
134
146
134
140
152
140
136
129
133
145
133
139
151
139
135
128
132
144
132
138
150
138
134
127
131
143
131
137
149
137
133
126
130
142
130
136
148
136
132
125
129
141
129
135
147
135
131
124
128
140
128
134
146
134
130
123
127
139
127
133
145
133
129
122
126
138
126
132
144
132
128
121
125
137
125
131
143
131
127
120
124
136
124
130
142
130
126
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
135
134
133
132
131
130
129
128
127
126
125
124
123
129
130
131
132
133
134
135
136
137
138
139
140
141
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
110
122
128
116
109
121
127
115
108
120
126
114
107
119
125
113
106
118
124
112
105
117
123
111
104
116
122
110
103
115
121
109
102
114
120
108
101
113
119
107
100
112
118
106
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
102
103
104
105
100
86
98
104
92
106
101
85
97
103
91
107
102
84
96
102
90
108
103
83
95
101
89
109
104
82
94
100
88
110
105
81
93
99
87
111
106
80
92
98
86
112
119
118
117
116
115
114
113
112
111
110
109
108
107
79
91
97
85
113
114
115
116
117
118
119
120
121
122
122
121
120
78
90
96
84
77
89
95
83
76
88
94
82
75
87
93
81
74
86
92
80
73
74
75
76
77
78
79
80
81
82
83
84
85
91
90
89
88
87
86
85
84
83
82
81
80
79
72
84
90
78
71
83
89
77
70
82
88
76
69
81
87
75
68
80
86
74
67
79
85
73
90
89
88
87
86
85
84
83
82
81
80
79
78
66
78
84
72
84
85
86
87
88
89
90
91
92
93
93
92
91
77
65
77
83
71
83
76
64
76
82
70
82
75
63
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
69
81
74
62
62
68
68
80
73
61
61
67
67
79
72
60
60
66
66
78
71
70
69
68
67
66
65
64
63
62
61
60
59
59
65
65
66
67
68
69
70
71
72
73
74
75
76
77
70
58
58
64
64
76
69
57
57
63
63
75
68
56
56
62
62
74
67
55
55
61
61
73
66
54
54
60
60
72
65
53
53
59
59
71
64
52
52
58
58
70
63
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
69
62
38
52
58
44
68
61
37
53
59
43
67
60
36
54
60
42
66
59
35
55
61
41
65
58
34
56
62
40
64
57
33
57
63
39
63
56
32
58
64
38
62
55
31
59
65
37
61
54
30
60
66
36
60
53
29
61
67
35
59
52
28
62
68
34
58
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
63
64
65
66
67
68
69
70
71
72
71
70
69
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
60
40
26
32
46
66
61
41
25
31
47
67
62
42
24
30
48
68
63
43
23
29
49
69
64
44
22
28
50
70
65
45
21
27
51
71
66
46
20
26
52
72
67
47
19
25
53
73
68
48
18
24
54
74
69
49
17
23
55
75
70
50
16
22
56
76
71
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
147
159
163
167
163
151
146
158
162
166
162
150
145
157
161
165
161
149
144
156
160
164
160
148
143
155
159
163
159
147
142
154
158
162
158
146
141
153
157
161
157
145
140
152
156
160
156
144
139
151
155
159
155
143
138
150
154
158
154
142
137
149
153
157
153
141
136
148
152
140
141
142
143
144
145
146
147
148
147
146
145
144
156
152
140
135
147
151
139
143
155
151
139
134
146
150
138
142
154
150
138
133
145
149
137
141
153
149
137
132
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
136
140
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
136
131
135
147
135
139
151
139
135
130
134
146
134
138
150
138
134
129
133
145
133
137
149
137
133
128
132
144
132
136
148
136
132
127
131
143
131
135
147
135
131
126
130
142
130
134
146
134
130
125
129
141
129
133
145
133
129
124
128
140
128
132
144
132
128
123
127
139
127
131
143
131
127
122
126
138
126
130
142
130
126
121
125
137
125
129
141
129
125
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
136
135
134
133
132
131
130
129
128
127
126
125
124
128
129
130
131
132
133
134
135
136
137
138
139
140
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
111
123
127
115
110
122
126
114
109
121
125
113
108
120
124
112
107
119
123
111
106
118
122
110
105
117
121
109
104
116
120
108
103
115
119
107
102
114
118
106
101
113
117
105
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
101
102
103
104
101
87
99
103
91
105
102
86
98
102
90
106
103
85
97
101
89
107
104
84
96
100
88
108
105
83
95
99
87
109
106
82
94
98
86
110
107
81
93
97
85
111
120
119
118
117
116
115
114
113
112
111
110
109
108
80
92
96
84
112
113
114
115
116
117
118
119
120
121
122
122
121
79
91
95
83
78
90
94
82
77
89
93
81
76
88
92
80
75
87
91
79
74
75
76
77
78
79
80
81
82
83
84
85
86
90
89
88
87
86
85
84
83
82
81
80
79
78
73
85
89
77
72
84
88
76
71
83
87
75
70
82
86
74
69
81
85
73
68
80
84
72
91
90
89
88
87
86
85
84
83
82
81
80
79
67
79
83
71
83
84
85
86
87
88
89
90
91
92
93
93
92
78
66
78
82
70
82
77
65
77
81
69
81
76
64
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
68
80
75
63
63
67
67
79
74
62
62
66
66
78
73
61
61
65
65
77
72
71
70
69
68
67
66
65
64
63
62
61
60
60
64
64
65
66
67
68
69
70
71
72
73
74
75
76
71
59
59
63
63
75
70
58
58
62
62
74
69
57
57
61
61
73
68
56
56
60
60
72
67
55
55
59
59
71
66
54
54
58
58
70
65
53
53
57
57
69
64
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
68
63
39
53
57
43
67
62
38
54
58
42
66
61
37
55
59
41
65
60
36
56
60
40
64
59
35
57
61
39
63
58
34
58
62
38
62
57
33
59
63
37
61
56
32
60
64
36
60
55
31
61
65
35
59
54
30
62
66
34
58
53
29
63
67
33
57
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
64
65
66
67
68
69
70
71
72
71
70
69
68
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
61
41
27
31
45
65
62
42
26
30
46
66
63
43
25
29
47
67
64
44
24
28
48
68
65
45
23
27
49
69
66
46
22
26
50
70
67
47
21
25
51
71
68
48
20
24
52
72
69
49
19
23
53
73
70
50
18
22
54
74
71
51
17
21
55
75
72
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
148
160
164
166
162
150
147
159
163
165
161
149
146
158
162
164
160
148
145
157
161
163
159
147
144
156
160
162
158
146
143
155
159
161
157
145
142
154
158
160
156
144
141
153
157
159
155
143
140
152
156
158
154
142
139
151
155
157
153
141
138
150
154
156
152
140
137
149
153
141
142
143
144
145
146
147
148
147
146
145
144
143
155
151
139
136
148
152
140
142
154
150
138
135
147
151
139
141
153
149
137
134
146
150
138
140
152
148
136
133
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
137
139
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
135
132
136
148
136
138
150
138
134
131
135
147
135
137
149
137
133
130
134
146
134
136
148
136
132
129
133
145
133
135
147
135
131
128
132
144
132
134
146
134
130
127
131
143
131
133
145
133
129
126
130
142
130
132
144
132
128
125
129
141
129
131
143
131
127
124
128
140
128
130
142
130
126
123
127
139
127
129
141
129
125
122
126
138
126
128
140
128
124
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
137
136
135
134
133
132
131
130
129
128
127
126
125
127
128
129
130
131
132
133
134
135
136
137
138
139
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
112
124
126
114
111
123
125
113
110
122
124
112
109
121
123
111
108
120
122
110
107
119
121
109
106
118
120
108
105
117
119
107
104
116
118
106
103
115
117
105
102
114
116
104
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
100
101
102
103
102
88
100
102
90
104
103
87
99
101
89
105
104
86
98
100
88
106
105
85
97
99
87
107
106
84
96
98
86
108
107
83
95
97
85
109
108
82
94
96
84
110
121
120
119
118
117
116
115
114
113
112
111
110
109
81
93
95
83
111
112
113
114
115
116
117
118
119
120
121
122
122
80
92
94
82
79
91
93
81
78
90
92
80
77
89
91
79
76
88
90
78
75
76
77
78
79
80
81
82
83
84
85
86
87
89
88
87
86
85
84
83
82
81
80
79
78
77
74
86
88
76
73
85
87
75
72
84
86
74
71
83
85
73
70
82
84
72
69
81
83
71
92
91
90
89
88
87
86
85
84
83
82
81
80
68
80
82
70
82
83
84
85
86
87
88
89
90
91
92
93
93
79
67
79
81
69
81
78
66
78
80
68
80
77
65
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
67
79
76
64
64
66
66
78
75
63
63
65
65
77
74
62
62
64
64
76
73
72
71
70
69
68
67
66
65
64
63
62
61
61
63
63
64
65
66
67
68
69
70
71
72
73
74
75
72
60
60
62
62
74
71
59
59
61
61
73
70
58
58
60
60
72
69
57
57
59
59
71
68
56
56
58
58
70
67
55
55
57
57
69
66
54
54
56
56
68
65
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
67
64
40
54
56
42
66
63
39
55
57
41
65
62
38
56
58
40
64
61
37
57
59
39
63
60
36
58
60
38
62
59
35
59
61
37
61
58
34
60
62
36
60
57
33
61
63
35
59
56
32
62
64
34
58
55
31
63
65
33
57
54
30
64
66
32
56
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
65
66
67
68
69
70
71
72
71
70
69
68
67
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
62
42
28
30
44
64
63
43
27
29
45
65
64
44
26
28
46
66
65
45
25
27
47
67
66
46
24
26
48
68
67
47
23
25
49
69
68
48
22
24
50
70
69
49
21
23
51
71
70
50
20
22
52
72
71
51
19
21
53
73
72
52
18
20
54
74
73
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
161
165
165
161
149
148
160
164
164
160
148
147
159
163
163
159
147
146
158
162
162
158
146
145
157
161
161
157
145
144
156
160
160
156
144
143
155
159
159
155
143
142
154
158
158
154
142
141
153
157
157
153
141
140
152
156
156
152
140
139
151
155
155
151
139
138
150
154
142
143
144
145
146
147
148
147
146
145
144
143
142
154
150
138
137
149
153
141
141
153
149
137
136
148
152
140
140
152
148
136
135
147
151
139
139
151
147
135
134
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
138
138
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
134
133
137
149
137
137
149
137
133
132
136
148
136
136
148
136
132
131
135
147
135
135
147
135
131
130
134
146
134
134
146
134
130
129
133
145
133
133
145
133
129
128
132
144
132
132
144
132
128
127
131
143
131
131
143
131
127
126
130
142
130
130
142
130
126
125
129
141
129
129
141
129
125
124
128
140
128
128
140
128
124
123
127
139
127
127
139
127
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
138
137
136
135
134
133
132
131
130
129
128
127
126
126
127
128
129
130
131
132
133
134
135
136
137
138
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
113
125
125
113
112
124
124
112
111
123
123
111
110
122
122
110
109
121
121
109
108
120
120
108
107
119
119
107
106
118
118
106
105
117
117
105
104
116
116
104
103
115
115
103
102
101
100
99
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
99
100
101
102
103
89
101
101
89
103
104
88
100
100
88
104
105
87
99
99
87
105
106
86
98
98
86
106
107
85
97
97
85
107
108
84
96
96
84
108
109
83
95
95
83
109
122
121
120
119
118
117
116
115
114
113
112
111
110
82
94
94
82
110
111
112
113
114
115
116
117
118
119
120
121
122
81
93
93
81
80
92
92
80
79
91
91
79
78
90
90
78
77
89
89
77
76
77
78
79
80
81
82
83
84
85
86
87
88
88
87
86
85
84
83
82
81
80
79
78
77
76
75
87
87
75
74
86
86
74
73
85
85
73
72
84
84
72
71
83
83
71
70
82
82
70
93
92
91
90
89
88
87
86
85
84
83
82
81
69
81
81
69
81
82
83
84
85
86
87
88
89
90
91
92
93
80
68
80
80
68
80
79
67
79
79
67
79
78
66
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
66
78
77
65
65
65
65
77
76
64
64
64
64
76
75
63
63
63
63
75
74
73
72
71
70
69
68
67
66
65
64
63
62
62
62
62
63
64
65
66
67
68
69
70
71
72
73
74
73
61
61
61
61
73
72
60
60
60
60
72
71
59
59
59
59
71
70
58
58
58
58
70
69
57
57
57
57
69
68
56
56
56
56
68
67
55
55
55
55
67
66
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
66
65
41
55
55
41
65
64
40
56
56
40
64
63
39
57
57
39
63
62
38
58
58
38
62
61
37
59
59
37
61
60
36
60
60
36
60
59
35
61
61
35
59
58
34
62
62
34
58
57
33
63
63
33
57
56
32
64
64
32
56
55
31
65
65
31
55
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
66
67
68
69
70
71
72
71
70
69
68
67
66
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
43
29
29
43
63
64
44
28
28
44
64
65
45
27
27
45
65
66
46
26
26
46
66
67
47
25
25
47
67
68
48
24
24
48
68
69
49
23
23
49
69
70
50
22
22
50
70
71
51
21
21
51
71
72
52
20
20
52
72
73
53
19
19
53
73
74
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
150
162
166
164
160
148
149
161
165
163
159
147
148
160
164
162
158
146
147
159
163
161
157
145
146
158
162
160
156
144
145
157
161
159
155
143
144
156
160
158
154
142
143
155
159
157
153
141
142
154
158
156
152
140
141
153
157
155
151
139
140
152
156
154
150
138
139
151
155
143
144
145
146
147
148
147
146
145
144
143
142
141
153
149
137
138
150
154
142
140
152
148
136
137
149
153
141
139
151
147
135
136
148
152
140
138
150
146
134
135
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
139
137
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
133
134
138
150
138
136
148
136
132
133
137
149
137
135
147
135
131
132
136
148
136
134
146
134
130
131
135
147
135
133
145
133
129
130
134
146
134
132
144
132
128
129
133
145
133
131
143
131
127
128
132
144
132
130
142
130
126
127
131
143
131
129
141
129
125
126
130
142
130
128
140
128
124
125
129
141
129
127
139
127
123
124
128
140
128
126
138
126
122
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
139
138
137
136
135
134
133
132
131
130
129
128
127
125
126
127
128
129
130
131
132
133
134
135
136
137
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
114
126
124
112
113
125
123
111
112
124
122
110
111
123
121
109
110
122
120
108
109
121
119
107
108
120
118
106
107
119
117
105
106
118
116
104
105
117
115
103
104
116
114
102
103
102
101
100
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
104
90
102
100
88
102
105
89
101
99
87
103
106
88
100
98
86
104
107
87
99
97
85
105
108
86
98
96
84
106
109
85
97
95
83
107
110
84
96
94
82
108
122
122
121
120
119
118
117
116
115
114
113
112
111
83
95
93
81
109
110
111
112
113
114
115
116
117
118
119
120
121
82
94
92
80
81
93
91
79
80
92
90
78
79
91
89
77
78
90
88
76
77
78
79
80
81
82
83
84
85
86
87
88
89
87
86
85
84
83
82
81
80
79
78
77
76
75
76
88
86
74
75
87
85
73
74
86
84
72
73
85
83
71
72
84
82
70
71
83
81
69
93
93
92
91
90
89
88
87
86
85
84
83
82
70
82
80
68
80
81
82
83
84
85
86
87
88
89
90
91
92
81
69
81
79
67
79
80
68
80
78
66
78
79
67
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
65
77
78
66
66
64
64
76
77
65
65
63
63
75
76
64
64
62
62
74
75
74
73
72
71
70
69
68
67
66
65
64
63
63
61
61
62
63
64
65
66
67
68
69
70
71
72
73
74
62
62
60
60
72
73
61
61
59
59
71
72
60
60
58
58
70
71
59
59
57
57
69
70
58
58
56
56
68
69
57
57
55
55
67
68
56
56
54
54
66
67
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
65
66
42
56
54
40
64
65
41
57
55
39
63
64
40
58
56
38
62
63
39
59
57
37
61
62
38
60
58
36
60
61
37
61
59
35
59
60
36
62
60
34
58
59
35
63
61
33
57
58
34
64
62
32
56
57
33
65
63
31
55
56
32
66
64
30
54
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
67
68
69
70
71
72
71
70
69
68
67
66
65
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
64
44
30
28
42
62
65
45
29
27
43
63
66
46
28
26
44
64
67
47
27
25
45
65
68
48
26
24
46
66
69
49
25
23
47
67
70
50
24
22
48
68
71
51
23
21
49
69
72
52
22
20
50
70
73
53
21
19
51
71
74
54
20
18
52
72
75
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
151
163
167
163
159
147
150
162
166
162
158
146
149
161
165
161
157
145
148
160
164
160
156
144
147
159
163
159
155
143
146
158
162
158
154
142
145
157
161
157
153
141
144
156
160
156
152
140
143
155
159
155
151
139
142
154
158
154
150
138
141
153
157
153
149
137
140
152
156
144
145
146
147
148
147
146
145
144
143
142
141
140
152
148
136
139
151
155
143
139
151
147
135
138
150
154
142
138
150
146
134
137
149
153
141
137
149
145
133
136
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
140
136
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
132
135
139
151
139
135
147
135
131
134
138
150
138
134
146
134
130
133
137
149
137
133
145
133
129
132
136
148
136
132
144
132
128
131
135
147
135
131
143
131
127
130
134
146
134
130
142
130
126
129
133
145
133
129
141
129
125
128
132
144
132
128
140
128
124
127
131
143
131
127
139
127
123
126
130
142
130
126
138
126
122
125
129
141
129
125
137
125
121
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
140
139
138
137
136
135
134
133
132
131
130
129
128
124
125
126
127
128
129
130
131
132
133
134
135
136
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
115
127
123
111
114
126
122
110
113
125
121
109
112
124
120
108
111
123
119
107
110
122
118
106
109
121
117
105
108
120
116
104
107
119
115
103
106
118
114
102
105
117
113
101
104
103
102
101
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
105
91
103
99
87
101
106
90
102
98
86
102
107
89
101
97
85
103
108
88
100
96
84
104
109
87
99
95
83
105
110
86
98
94
82
106
111
85
97
93
81
107
121
122
122
121
120
119
118
117
116
115
114
113
112
84
96
92
80
108
109
110
111
112
113
114
115
116
117
118
119
120
83
95
91
79
82
94
90
78
81
93
89
77
80
92
88
76
79
91
87
75
78
79
80
81
82
83
84
85
86
87
88
89
90
86
85
84
83
82
81
80
79
78
77
76
75
74
77
89
85
73
76
88
84
72
75
87
83
71
74
86
82
70
73
85
81
69
72
84
80
68
92
93
93
92
91
90
89
88
87
86
85
84
83
71
83
79
67
79
80
81
82
83
84
85
86
87
88
89
90
91
82
70
82
78
66
78
81
69
81
77
65
77
80
68
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
64
76
79
67
67
63
63
75
78
66
66
62
62
74
77
65
65
61
61
73
76
75
74
73
72
71
70
69
68
67
66
65
64
64
60
60
61
62
63
64
65
66
67
68
69
70
71
72
75
63
63
59
59
71
74
62
62
58
58
70
73
61
61
57
57
69
72
60
60
56
56
68
71
59
59
55
55
67
70
58
58
54
54
66
69
57
57
53
53
65
68
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
64
67
43
57
53
39
63
66
42
58
54
38
62
65
41
59
55
37
61
64
40
60
56
36
60
63
39
61
57
35
59
62
38
62
58
34
58
61
37
63
59
33
57
60
36
64
60
32
56
59
35
65
61
31
55
58
34
66
62
30
54
57
33
67
63
29
53
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
68
69
70
71
72
71
70
69
68
67
66
65
64
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
65
45
31
27
41
61
66
46
30
26
42
62
67
47
29
25
43
63
68
48
28
24
44
64
69
49
27
23
45
65
70
50
26
22
46
66
71
51
25
21
47
67
72
52
24
20
48
68
73
53
23
19
49
69
74
54
22
18
50
70
75
55
21
17
51
71
76
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
152
164
168
162
158
146
151
163
167
161
157
145
150
162
166
160
156
144
149
161
165
159
155
143
148
160
164
158
154
142
147
159
163
157
153
141
146
158
162
156
152
140
145
157
161
155
151
139
144
156
160
154
150
138
143
155
159
153
149
137
142
154
158
152
148
136
141
153
157
145
146
147
148
147
146
145
144
143
142
141
140
139
151
147
135
140
152
156
144
138
150
146
134
139
151
155
143
137
149
145
133
138
150
154
142
136
148
144
132
137
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
141
135
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
131
136
140
152
140
134
146
134
130
135
139
151
139
133
145
133
129
134
138
150
138
132
144
132
128
133
137
149
137
131
143
131
127
132
136
148
136
130
142
130
126
131
135
147
135
129
141
129
125
130
134
146
134
128
140
128
124
129
133
145
133
127
139
127
123
128
132
144
132
126
138
126
122
127
131
143
131
125
137
125
121
126
130
142
130
124
136
124
120
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
141
140
139
138
137
136
135
134
133
132
131
130
129
123
124
125
126
127
128
129
130
131
132
133
134
135
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
116
128
122
110
115
127
121
109
114
126
120
108
113
125
119
107
112
124
118
106
111
123
117
105
110
122
116
104
109
121
115
103
108
120
114
102
107
119
113
101
106
118
112
100
105
104
103
102
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
106
92
104
98
86
100
107
91
103
97
85
101
108
90
102
96
84
102
109
89
101
95
83
103
110
88
100
94
82
104
111
87
99
93
81
105
112
86
98
92
80
106
120
121
122
122
121
120
119
118
117
116
115
114
113
85
97
91
79
107
108
109
110
111
112
113
114
115
116
117
118
119
84
96
90
78
83
95
89
77
82
94
88
76
81
93
87
75
80
92
86
74
79
80
81
82
83
84
85
86
87
88
89
90
91
85
84
83
82
81
80
79
78
77
76
75
74
73
78
90
84
72
77
89
83
71
76
88
82
70
75
87
81
69
74
86
80
68
73
85
79
67
91
92
93
93
92
91
90
89
88
87
86
85
84
72
84
78
66
78
79
80
81
82
83
84
85
86
87
88
89
90
83
71
83
77
65
77
82
70
82
76
64
76
81
69
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
63
75
80
68
68
62
62
74
79
67
67
61
61
73
78
66
66
60
60
72
77
76
75
74
73
72
71
70
69
68
67
66
65
65
59
59
60
61
62
63
64
65
66
67
68
69
70
71
76
64
64
58
58
70
75
63
63
57
57
69
74
62
62
56
56
68
73
61
61
55
55
67
72
60
60
54
54
66
71
59
59
53
53
65
70
58
58
52
52
64
69
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
63
68
44
58
52
38
62
67
43
59
53
37
61
66
42
60
54
36
60
65
41
61
55
35
59
64
40
62
56
34
58
63
39
63
57
33
57
62
38
64
58
32
56
61
37
65
59
31
55
60
36
66
60
30
54
59
35
67
61
29
53
58
34
68
62
28
52
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
40
39
38
37
36
35
34
33
69
70
71
72
71
70
69
68
67
66
65
64
63
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
66
46
32
26
40
60
67
47
31
25
41
61
68
48
30
24
42
62
69
49
29
23
43
63
70
50
28
22
44
64
71
51
27
21
45
65
72
52
26
20
46
66
73
53
25
19
47
67
74
54
24
18
48
68
75
55
23
17
49
69
76
56
22
16
50
70
77
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
153
165
169
161
157
145
152
164
168
160
156
144
151
163
167
159
155
143
150
162
166
158
154
142
149
161
165
157
153
141
148
160
164
156
152
140
147
159
163
155
151
139
146
158
162
154
150
138
145
157
161
153
149
137
144
156
160
152
148
136
143
155
159
151
147
135
142
154
158
146
147
148
147
146
145
144
143
142
141
140
139
138
150
146
134
141
153
157
145
137
149
145
133
140
152
156
144
136
148
144
132
139
151
155
143
135
147
143
131
138
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
142
134
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
130
137
141
153
141
133
145
133
129
136
140
152
140
132
144
132
128
135
139
151
139
131
143
131
127
134
138
150
138
130
142
130
126
133
137
149
137
129
141
129
125
132
136
148
136
128
140
128
124
131
135
147
135
127
139
127
123
130
134
146
134
126
138
126
122
129
133
145
133
125
137
125
121
128
132
144
132
124
136
124
120
127
131
143
131
123
135
123
119
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
142
141
140
139
138
137
136
135
134
133
132
131
130
122
123
124
125
126
127
128
129
130
131
132
133
134
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
117
129
121
109
116
128
120
108
115
127
119
107
114
126
118
106
113
125
117
105
112
124
116
104
111
123
115
103
110
122
114
102
109
121
113
101
108
120
112
100
107
119
111
99
106
105
104
103
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
107
93
105
97
85
99
108
92
104
96
84
100
109
91
103
95
83
101
110
90
102
94
82
102
111
89
101
93
81
103
112
88
100
92
80
104
113
87
99
91
79
105
119
120
121
122
122
121
120
119
118
117
116
115
114
86
98
90
78
106
107
108
109
110
111
112
113
114
115
116
117
118
85
97
89
77
84
96
88
76
83
95
87
75
82
94
86
74
81
93
85
73
80
81
82
83
84
85
86
87
88
89
90
91
92
84
83
82
81
80
79
78
77
76
75
74
73
72
79
91
83
71
78
90
82
70
77
89
81
69
76
88
80
68
75
87
79
67
74
86
78
66
90
91
92
93
93
92
91
90
89
88
87
86
85
73
85
77
65
77
78
79
80
81
82
83
84
85
86
87
88
89
84
72
84
76
64
76
83
71
83
75
63
75
82
70
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
62
74
81
69
69
61
61
73
80
68
68
60
60
72
79
67
67
59
59
71
78
77
76
75
74
73
72
71
70
69
68
67
66
66
58
58
59
60
61
62
63
64
65
66
67
68
69
70
77
65
65
57
57
69
76
64
64
56
56
68
75
63
63
55
55
67
74
62
62
54
54
66
73
61
61
53
53
65
72
60
60
52
52
64
71
59
59
51
51
63
70
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
62
69
45
59
51
37
61
68
44
60
52
36
60
67
43
61
53
35
59
66
42
62
54
34
58
65
41
63
55
33
57
64
40
64
56
32
56
63
39
65
57
31
55
62
38
66
58
30
54
61
37
67
59
29
53
60
36
68
60
28
52
59
35
69
61
27
51
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
40
39
38
37
36
35
34
70
71
72
71
70
69
68
67
66
65
64
63
62
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
67
47
33
25
39
59
68
48
32
24
40
60
69
49
31
23
41
61
70
50
30
22
42
62
71
51
29
21
43
63
72
52
28
20
44
64
73
53
27
19
45
65
74
54
26
18
46
66
75
55
25
17
47
67
76
56
24
16
48
68
77
57
23
15
49
69
78
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
154
166
170
160
156
144
153
165
169
159
155
143
152
164
168
158
154
142
151
163
167
157
153
141
150
162
166
156
152
140
149
161
165
155
151
139
148
160
164
154
150
138
147
159
163
153
149
137
146
158
162
152
148
136
145
157
161
151
147
135
144
156
160
150
146
134
143
155
159
147
148
147
146
145
144
143
142
141
140
139
138
137
149
145
133
142
154
158
146
136
148
144
132
141
153
157
145
135
147
143
131
140
152
156
144
134
146
142
130
139
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
143
133
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
129
138
142
154
142
132
144
132
128
137
141
153
141
131
143
131
127
136
140
152
140
130
142
130
126
135
139
151
139
129
141
129
125
134
138
150
138
128
140
128
124
133
137
149
137
127
139
127
123
132
136
148
136
126
138
126
122
131
135
147
135
125
137
125
121
130
134
146
134
124
136
124
120
129
133
145
133
123
135
123
119
128
132
144
132
122
134
122
118
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
143
142
141
140
139
138
137
136
135
134
133
132
131
121
122
123
124
125
126
127
128
129
130
131
132
133
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
130
120
108
117
129
119
107
116
128
118
106
115
127
117
105
114
126
116
104
113
125
115
103
112
124
114
102
111
123
113
101
110
122
112
100
109
121
111
99
108
120
110
98
107
106
105
104
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
108
94
106
96
84
98
109
93
105
95
83
99
110
92
104
94
82
100
111
91
103
93
81
101
112
90
102
92
80
102
113
89
101
91
79
103
114
88
100
90
78
104
118
119
120
121
122
122
121
120
119
118
117
116
115
87
99
89
77
105
106
107
108
109
110
111
112
113
114
115
116
117
86
98
88
76
85
97
87
75
84
96
86
74
83
95
85
73
82
94
84
72
81
82
83
84
85
86
87
88
89
90
91
92
93
83
82
81
80
79
78
77
76
75
74
73
72
71
80
92
82
70
79
91
81
69
78
90
80
68
77
89
79
67
76
88
78
66
75
87
77
65
89
90
91
92
93
93
92
91
90
89
88
87
86
74
86
76
64
76
77
78
79
80
81
82
83
84
85
86
87
88
85
73
85
75
63
75
84
72
84
74
62
74
83
71
83
82
81
80
79
78
77
76
75
74
73
72
71
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
61
73
82
70
70
60
60
72
81
69
69
59
59
71
80
68
68
58
58
70
79
78
77
76
75
74
73
72
71
70
69
68
67
67
57
57
58
59
60
61
62
63
64
65
66
67
68
69
78
66
66
56
56
68
77
65
65
55
55
67
76
64
64
54
54
66
75
63
63
53
53
65
74
62
62
52
52
64
73
61
61
51
51
63
72
60
60
50
50
62
71
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
61
70
46
60
50
36
60
69
45
61
51
35
59
68
44
62
52
34
58
67
43
63
53
33
57
66
42
64
54
32
56
65
41
65
55
31
55
64
40
66
56
30
54
63
39
67
57
29
53
62
38
68
58
28
52
61
37
69
59
27
51
60
36
70
60
26
50
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
40
39
38
37
36
35
71
72
71
70
69
68
67
66
65
64
63
62
61
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
68
48
34
24
38
58
69
49
33
23
39
59
70
50
32
22
40
60
71
51
31
21
41
61
72
52
30
20
42
62
73
53
29
19
43
63
74
54
28
18
44
64
75
55
27
17
45
65
76
56
26
16
46
66
77
57
25
15
47
67
78
58
24
14
48
68
79
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
155
167
171
159
155
143
154
166
170
158
154
142
153
165
169
157
153
141
152
164
168
156
152
140
151
163
167
155
151
139
150
162
166
154
150
138
149
161
165
153
149
137
148
160
164
152
148
136
147
159
163
151
147
135
146
158
162
150
146
134
145
157
161
149
145
133
144
156
160
148
147
146
145
144
143
142
141
140
139
138
137
136
148
144
132
143
155
159
147
135
147
143
131
142
154
158
146
134
146
142
130
141
153
157
145
133
145
141
129
140
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
144
132
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
128
139
143
155
143
131
143
131
127
138
142
154
142
130
142
130
126
137
141
153
141
129
141
129
125
136
140
152
140
128
140
128
124
135
139
151
139
127
139
127
123
134
138
150
138
126
138
126
122
133
137
149
137
125
137
125
121
132
136
148
136
124
136
124
120
131
135
147
135
123
135
123
119
130
134
146
134
122
134
122
118
129
133
145
133
121
133
121
117
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
144
143
142
141
140
139
138
137
136
135
134
133
132
120
121
122
123
124
125
126
127
128
129
130
131
132
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
119
131
119
107
118
130
118
106
117
129
117
105
116
128
116
104
115
127
115
103
114
126
114
102
113
125
113
101
112
124
112
100
111
123
111
99
110
122
110
98
109
121
109
97
108
107
106
105
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
109
95
107
95
83
97
110
94
106
94
82
98
111
93
105
93
81
99
112
92
104
92
80
100
113
91
103
91
79
101
114
90
102
90
78
102
115
89
101
89
77
103
117
118
119
120
121
122
122
121
120
119
118
117
116
88
100
88
76
104
105
106
107
108
109
110
111
112
113
114
115
116
87
99
87
75
86
98
86
74
85
97
85
73
84
96
84
72
83
95
83
71
82
83
84
85
86
87
88
89
90
91
92
93
94
82
81
80
79
78
77
76
75
74
73
72
71
70
81
93
81
69
80
92
80
68
79
91
79
67
78
90
78
66
77
89
77
65
76
88
76
64
88
89
90
91
92
93
93
92
91
90
89
88
87
75
87
75
63
75
76
77
78
79
80
81
82
83
84
85
86
87
86
74
86
74
62
74
85
73
85
73
61
73
84
72
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
60
72
83
71
71
59
59
71
82
70
70
58
58
70
81
69
69
57
57
69
80
79
78
77
76
75
74
73
72
71
70
69
68
68
56
56
57
58
59
60
61
62
63
64
65
66
67
68
79
67
67
55
55
67
78
66
66
54
54
66
77
65
65
53
53
65
76
64
64
52
52
64
75
63
63
51
51
63
74
62
62
50
50
62
73
61
61
49
49
61
72
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
60
71
47
61
49
35
59
70
46
62
50
34
58
69
45
63
51
33
57
68
44
64
52
32
56
67
43
65
53
31
55
66
42
66
54
30
54
65
41
67
55
29
53
64
40
68
56
28
52
63
39
69
57
27
51
62
38
70
58
26
50
61
37
71
59
25
49
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
40
39
38
37
36
72
71
70
69
68
67
66
65
64
63
62
61
60
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
69
49
35
23
37
57
70
50
34
22
38
58
71
51
33
21
39
59
72
52
32
20
40
60
73
53
31
19
41
61
74
54
30
18
42
62
75
55
29
17
43
63
76
56
28
16
44
64
77
57
27
15
45
65
78
58
26
14
46
66
79
59
25
13
47
67
80
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
156
168
170
158
154
142
155
167
169
157
153
141
154
166
168
156
152
140
153
165
167
155
151
139
152
164
166
154
150
138
151
163
165
153
149
137
150
162
164
152
148
136
149
161
163
151
147
135
148
160
162
150
146
134
147
159
161
149
145
133
146
158
160
148
144
132
145
157
159
147
146
145
144
143
142
141
140
139
138
137
136
135
147
143
131
144
156
158
146
134
146
142
130
143
155
157
145
133
145
141
129
142
154
156
144
132
144
140
128
141
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
155
143
131
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
127
140
144
154
142
130
142
130
126
139
143
153
141
129
141
129
125
138
142
152
140
128
140
128
124
137
141
151
139
127
139
127
123
136
140
150
138
126
138
126
122
135
139
149
137
125
137
125
121
134
138
148
136
124
136
124
120
133
137
147
135
123
135
123
119
132
136
146
134
122
134
122
118
131
135
145
133
121
133
121
117
130
134
144
132
120
132
120
116
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
143
142
141
140
139
138
137
136
135
134
133
132
131
119
120
121
122
123
124
125
126
127
128
129
130
131
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
120
130
118
106
119
129
117
105
118
128
116
104
117
127
115
103
116
126
114
102
115
125
113
101
114
124
112
100
113
123
111
99
112
122
110
98
111
121
109
97
110
120
108
96
109
108
107
106
105
104
103
102
101
100
99
98
97
107
108
109
110
111
112
113
114
115
116
117
118
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
110
96
106
94
82
96
111
95
105
93
81
97
112
94
104
92
80
98
113
93
103
91
79
99
114
92
102
90
78
100
115
91
101
89
77
101
116
90
100
88
76
102
116
117
118
119
120
121
122
122
121
120
119
118
117
89
99
87
75
103
104
105
106
107
108
109
110
111
112
113
114
115
88
98
86
74
87
97
85
73
86
96
84
72
85
95
83
71
84
94
82
70
83
84
85
86
87
88
89
90
91
92
93
94
93
81
80
79
78
77
76
75
74
73
72
71
70
69
82
92
80
68
81
91
79
67
80
90
78
66
79
89
77
65
78
88
76
64
77
87
75
63
87
88
89
90
91
92
93
93
92
91
90
89
88
76
86
74
62
74
75
76
77
78
79
80
81
82
83
84
85
86
87
75
85
73
61
73
86
74
84
72
60
72
85
73
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
59
71
84
72
72
58
58
70
83
71
71
57
57
69
82
70
70
56
56
68
81
80
79
78
77
76
75
74
73
72
71
70
69
69
55
55
56
57
58
59
60
61
62
63
64
65
66
67
80
68
68
54
54
66
79
67
67
53
53
65
78
66
66
52
52
64
77
65
65
51
51
63
76
64
64
50
50
62
75
63
63
49
49
61
74
62
62
48
48
60
73
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
59
72
48
62
48
34
58
71
47
63
49
33
57
70
46
64
50
32
56
69
45
65
51
31
55
68
44
66
52
30
54
67
43
67
53
29
53
66
42
68
54
28
52
65
41
69
55
27
51
64
40
70
56
26
50
63
39
71
57
25
49
62
38
72
58
24
48
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
40
39
38
37
71
70
69
68
67
66
65
64
63
62
61
60
59
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
70
50
36
22
36
56
71
51
35
21
37
57
72
52
34
20
38
58
73
53
33
19
39
59
74
54
32
18
40
60
75
55
31
17
41
61
76
56
30
16
42
62
77
57
29
15
43
63
78
58
28
14
44
64
79
59
27
13
45
65
80
60
26
12
46
66
81
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
157
169
169
157
153
141
156
168
168
156
152
140
155
167
167
155
151
139
154
166
166
154
150
138
153
165
165
153
149
137
152
164
164
152
148
136
151
163
163
151
147
135
150
162
162
150
146
134
149
161
161
149
145
133
148
160
160
148
144
132
147
159
159
147
143
131
146
158
158
146
145
144
143
142
141
140
139
138
137
136
135
134
146
142
130
145
157
157
145
133
145
141
129
144
156
156
144
132
144
140
128
143
155
155
143
131
143
139
127
142
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
155
154
142
130
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
126
141
145
153
141
129
141
129
125
140
144
152
140
128
140
128
124
139
143
151
139
127
139
127
123
138
142
150
138
126
138
126
122
137
141
149
137
125
137
125
121
136
140
148
136
124
136
124
120
135
139
147
135
123
135
123
119
134
138
146
134
122
134
122
118
133
137
145
133
121
133
121
117
132
136
144
132
120
132
120
116
131
135
143
131
119
131
119
115
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
142
141
140
139
138
137
136
135
134
133
132
131
130
118
119
120
121
122
123
124
125
126
127
128
129
130
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
121
129
117
105
120
128
116
104
119
127
115
103
118
126
114
102
117
125
113
101
116
124
112
100
115
123
111
99
114
122
110
98
113
121
109
97
112
120
108
96
111
119
107
95
110
109
108
107
106
105
104
103
102
101
100
99
98
106
107
108
109
110
111
112
113
114
115
116
117
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
111
97
105
93
81
95
112
96
104
92
80
96
113
95
103
91
79
97
114
94
102
90
78
98
115
93
101
89
77
99
116
92
100
88
76
100
117
91
99
87
75
101
115
116
117
118
119
120
121
122
122
121
120
119
118
90
98
86
74
102
103
104
105
106
107
108
109
110
111
112
113
114
89
97
85
73
88
96
84
72
87
95
83
71
86
94
82
70
85
93
81
69
84
85
86
87
88
89
90
91
92
93
94
93
92
80
79
78
77
76
75
74
73
72
71
70
69
68
83
91
79
67
82
90
78
66
81
89
77
65
80
88
76
64
79
87
75
63
78
86
74
62
86
87
88
89
90
91
92
93
93
92
91
90
89
77
85
73
61
73
74
75
76
77
78
79
80
81
82
83
84
85
88
76
84
72
60
72
87
75
83
71
59
71
86
74
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
58
70
85
73
71
57
57
69
84
72
72
56
56
68
83
71
71
55
55
67
82
81
80
79
78
77
76
75
74
73
72
71
70
70
54
54
55
56
57
58
59
60
61
62
63
64
65
66
81
69
69
53
53
65
80
68
68
52
52
64
79
67
67
51
51
63
78
66
66
50
50
62
77
65
65
49
49
61
76
64
64
48
48
60
75
63
63
47
47
59
74
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
58
73
49
63
47
33
57
72
48
64
48
32
56
71
47
65
49
31
55
70
46
66
50
30
54
69
45
67
51
29
53
68
44
68
52
28
52
67
43
69
53
27
51
66
42
70
54
26
50
65
41
71
55
25
49
64
40
72
56
24
48
63
39
71
57
23
47
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
40
39
38
70
69
68
67
66
65
64
63
62
61
60
59
58
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
71
51
37
21
35
55
72
52
36
20
36
56
73
53
35
19
37
57
74
54
34
18
38
58
75
55
33
17
39
59
76
56
32
16
40
60
77
57
31
15
41
61
78
58
30
14
42
62
79
59
29
13
43
63
80
60
28
12
44
64
81
61
27
11
45
65
82
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
158
170
168
156
152
140
157
169
167
155
151
139
156
168
166
154
150
138
155
167
165
153
149
137
154
166
164
152
148
136
153
165
163
151
147
135
152
164
162
150
146
134
151
163
161
149
145
133
150
162
160
148
144
132
149
161
159
147
143
131
148
160
158
146
142
130
147
159
157
145
144
143
142
141
140
139
138
137
136
135
134
133
145
141
129
146
158
156
144
132
144
140
128
145
157
155
143
131
143
139
127
144
156
154
142
130
142
138
126
143
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
155
154
153
141
129
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
125
142
146
152
140
128
140
128
124
141
145
151
139
127
139
127
123
140
144
150
138
126
138
126
122
139
143
149
137
125
137
125
121
138
142
148
136
124
136
124
120
137
141
147
135
123
135
123
119
136
140
146
134
122
134
122
118
135
139
145
133
121
133
121
117
134
138
144
132
120
132
120
116
133
137
143
131
119
131
119
115
132
136
142
130
118
130
118
114
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
141
140
139
138
137
136
135
134
133
132
131
130
129
117
118
119
120
121
122
123
124
125
126
127
128
129
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
122
128
116
104
121
127
115
103
120
126
114
102
119
125
113
101
118
124
112
100
117
123
111
99
116
122
110
98
115
121
109
97
114
120
108
96
113
119
107
95
112
118
106
94
111
110
109
108
107
106
105
104
103
102
101
100
99
105
106
107
108
109
110
111
112
113
114
115
116
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
112
98
104
92
80
94
113
97
103
91
79
95
114
96
102
90
78
96
115
95
101
89
77
97
116
94
100
88
76
98
117
93
99
87
75
99
118
92
98
86
74
100
114
115
116
117
118
119
120
121
122
122
121
120
119
91
97
85
73
101
102
103
104
105
106
107
108
109
110
111
112
113
90
96
84
72
89
95
83
71
88
94
82
70
87
93
81
69
86
92
80
68
85
86
87
88
89
90
91
92
93
94
93
92
91
79
78
77
76
75
74
73
72
71
70
69
68
67
84
90
78
66
83
89
77
65
82
88
76
64
81
87
75
63
80
86
74
62
79
85
73
61
85
86
87
88
89
90
91
92
93
93
92
91
90
78
84
72
60
72
73
74
75
76
77
78
79
80
81
82
83
84
89
77
83
71
59
71
88
76
82
70
58
70
87
75
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
57
69
86
74
70
56
56
68
85
73
71
55
55
67
84
72
72
54
54
66
83
82
81
80
79
78
77
76
75
74
73
72
71
71
53
53
54
55
56
57
58
59
60
61
62
63
64
65
82
70
70
52
52
64
81
69
69
51
51
63
80
68
68
50
50
62
79
67
67
49
49
61
78
66
66
48
48
60
77
65
65
47
47
59
76
64
64
46
46
58
75
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
57
74
50
64
46
32
56
73
49
65
47
31
55
72
48
66
48
30
54
71
47
67
49
29
53
70
46
68
50
28
52
69
45
69
51
27
51
68
44
70
52
26
50
67
43
71
53
25
49
66
42
72
54
24
48
65
41
71
55
23
47
64
40
70
56
22
46
71
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
40
39
69
68
67
66
65
64
63
62
61
60
59
58
57
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
72
52
38
20
34
54
73
53
37
19
35
55
74
54
36
18
36
56
75
55
35
17
37
57
76
56
34
16
38
58
77
57
33
15
39
59
78
58
32
14
40
60
79
59
31
13
41
61
80
60
30
12
42
62
81
61
29
11
43
63
82
62
28
10
44
64
83
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
159
171
167
155
151
139
158
170
166
154
150
138
157
169
165
153
149
137
156
168
164
152
148
136
155
167
163
151
147
135
154
166
162
150
146
134
153
165
161
149
145
133
152
164
160
148
144
132
151
163
159
147
143
131
150
162
158
146
142
130
149
161
157
145
141
129
148
160
156
144
143
142
141
140
139
138
137
136
135
134
133
132
144
140
128
147
159
155
143
131
143
139
127
146
158
154
142
130
142
138
126
145
157
153
141
129
141
137
125
144
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
155
154
153
152
140
128
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
124
143
147
151
139
127
139
127
123
142
146
150
138
126
138
126
122
141
145
149
137
125
137
125
121
140
144
148
136
124
136
124
120
139
143
147
135
123
135
123
119
138
142
146
134
122
134
122
118
137
141
145
133
121
133
121
117
136
140
144
132
120
132
120
116
135
139
143
131
119
131
119
115
134
138
142
130
118
130
118
114
133
137
141
129
117
129
117
113
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
140
139
138
137
136
135
134
133
132
131
130
129
128
116
117
118
119
120
121
122
123
124
125
126
127
128
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
123
127
115
103
122
126
114
102
121
125
113
101
120
124
112
100
119
123
111
99
118
122
110
98
117
121
109
97
116
120
108
96
115
119
107
95
114
118
106
94
113
117
105
93
112
111
110
109
108
107
106
105
104
103
102
101
100
104
105
106
107
108
109
110
111
112
113
114
115
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
113
99
103
91
79
93
114
98
102
90
78
94
115
97
101
89
77
95
116
96
100
88
76
96
117
95
99
87
75
97
118
94
98
86
74
98
119
93
97
85
73
99
113
114
115
116
117
118
119
120
121
122
122
121
120
92
96
84
72
100
101
102
103
104
105
106
107
108
109
110
111
112
91
95
83
71
90
94
82
70
89
93
81
69
88
92
80
68
87
91
79
67
86
87
88
89
90
91
92
93
94
93
92
91
90
78
77
76
75
74
73
72
71
70
69
68
67
66
85
89
77
65
84
88
76
64
83
87
75
63
82
86
74
62
81
85
73
61
80
84
72
60
84
85
86
87
88
89
90
91
92
93
93
92
91
79
83
71
59
71
72
73
74
75
76
77
78
79
80
81
82
83
90
78
82
70
58
70
89
77
81
69
57
69
88
76
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
56
68
87
75
69
55
55
67
86
74
70
54
54
66
85
73
71
53
53
65
84
83
82
81
80
79
78
77
76
75
74
73
72
72
52
52
53
54
55
56
57
58
59
60
61
62
63
64
83
71
71
51
51
63
82
70
70
50
50
62
81
69
69
49
49
61
80
68
68
48
48
60
79
67
67
47
47
59
78
66
66
46
46
58
77
65
65
45
45
57
76
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
56
75
51
65
45
31
55
74
50
66
46
30
54
73
49
67
47
29
53
72
48
68
48
28
52
71
47
69
49
27
51
70
46
70
50
26
50
69
45
71
51
25
49
68
44
72
52
24
48
67
43
71
53
23
47
66
42
70
54
22
46
65
41
69
55
21
45
72
71
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
40
68
67
66
65
64
63
62
61
60
59
58
57
56
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
73
53
39
19
33
53
74
54
38
18
34
54
75
55
37
17
35
55
76
56
36
16
36
56
77
57
35
15
37
57
78
58
34
14
38
58
79
59
33
13
39
59
80
60
32
12
40
60
81
61
31
11
41
61
82
62
30
10
42
62
83
63
29
9
43
63
84
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
160
172
166
154
150
138
159
171
165
153
149
137
158
170
164
152
148
136
157
169
163
151
147
135
156
168
162
150
146
134
155
167
161
149
145
133
154
166
160
148
144
132
153
165
159
147
143
131
152
164
158
146
142
130
151
163
157
145
141
129
150
162
156
144
140
128
149
161
155
143
142
141
140
139
138
137
136
135
134
133
132
131
143
139
127
148
160
154
142
130
142
138
126
147
159
153
141
129
141
137
125
146
158
152
140
128
140
136
124
145
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
155
154
153
152
151
139
127
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
123
144
148
150
138
126
138
126
122
143
147
149
137
125
137
125
121
142
146
148
136
124
136
124
120
141
145
147
135
123
135
123
119
140
144
146
134
122
134
122
118
139
143
145
133
121
133
121
117
138
142
144
132
120
132
120
116
137
141
143
131
119
131
119
115
136
140
142
130
118
130
118
114
135
139
141
129
117
129
117
113
134
138
140
128
116
128
116
112
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
139
138
137
136
135
134
133
132
131
130
129
128
127
115
116
117
118
119
120
121
122
123
124
125
126
127
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
124
126
114
102
123
125
113
101
122
124
112
100
121
123
111
99
120
122
110
98
119
121
109
97
118
120
108
96
117
119
107
95
116
118
106
94
115
117
105
93
114
116
104
92
113
112
111
110
109
108
107
106
105
104
103
102
101
103
104
105
106
107
108
109
110
111
112
113
114
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
80
81
82
83
84
85
86
87
88
89
90
91
114
100
102
90
78
92
115
99
101
89
77
93
116
98
100
88
76
94
117
97
99
87
75
95
118
96
98
86
74
96
119
95
97
85
73
97
120
94
96
84
72
98
112
113
114
115
116
117
118
119
120
121
122
122
121
93
95
83
71
99
100
101
102
103
104
105
106
107
108
109
110
111
92
94
82
70
91
93
81
69
90
92
80
68
89
91
79
67
88
90
78
66
87
88
89
90
91
92
93
94
93
92
91
90
89
77
76
75
74
73
72
71
70
69
68
67
66
65
86
88
76
64
85
87
75
63
84
86
74
62
83
85
73
61
82
84
72
60
81
83
71
59
83
84
85
86
87
88
89
90
91
92
93
93
92
80
82
70
58
70
71
72
73
74
75
76
77
78
79
80
81
82
91
79
81
69
57
69
90
78
80
68
56
68
89
77
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
55
67
88
76
68
54
54
66
87
75
69
53
53
65
86
74
70
52
52
64
85
84
83
82
81
80
79
78
77
76
75
74
73
71
51
51
52
53
54
55
56
57
58
59
60
61
62
63
84
72
72
50
50
62
83
71
71
49
49
61
82
70
70
48
48
60
81
69
69
47
47
59
80
68
68
46
46
58
79
67
67
45
45
57
78
66
66
44
44
56
77
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
55
76
52
66
44
30
54
75
51
67
45
29
53
74
50
68
46
28
52
73
49
69
47
27
51
72
48
70
48
26
50
71
47
71
49
25
49
70
46
72
50
24
48
69
45
71
51
23
47
68
44
70
52
22
46
67
43
69
53
21
45
66
42
68
54
20
44
73
72
71
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
67
66
65
64
63
62
61
60
59
58
57
56
55
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
74
54
40
18
32
52
75
55
39
17
33
53
76
56
38
16
34
54
77
57
37
15
35
55
78
58
36
14
36
56
79
59
35
13
37
57
80
60
34
12
38
58
81
61
33
11
39
59
82
62
32
10
40
60
83
63
31
9
41
61
84
64
30
8
42
62
85
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
161
173
165
153
149
137
160
172
164
152
148
136
159
171
163
151
147
135
158
170
162
150
146
134
157
169
161
149
145
133
156
168
160
148
144
132
155
167
159
147
143
131
154
166
158
146
142
130
153
165
157
145
141
129
152
164
156
144
140
128
151
163
155
143
139
127
150
162
154
142
141
140
139
138
137
136
135
134
133
132
131
130
142
138
126
149
161
153
141
129
141
137
125
148
160
152
140
128
140
136
124
147
159
151
139
127
139
135
123
146
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
155
154
153
152
151
150
138
126
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
122
145
149
149
137
125
137
125
121
144
148
148
136
124
136
124
120
143
147
147
135
123
135
123
119
142
146
146
134
122
134
122
118
141
145
145
133
121
133
121
117
140
144
144
132
120
132
120
116
139
143
143
131
119
131
119
115
138
142
142
130
118
130
118
114
137
141
141
129
117
129
117
113
136
140
140
128
116
128
116
112
135
139
139
127
115
127
115
111
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
138
137
136
135
134
133
132
131
130
129
128
127
126
114
115
116
117
118
119
120
121
122
123
124
125
126
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
125
125
113
101
124
124
112
100
123
123
111
99
122
122
110
98
121
121
109
97
120
120
108
96
119
119
107
95
118
118
106
94
117
117
105
93
116
116
104
92
115
115
103
91
114
113
112
111
110
109
108
107
106
105
104
103
102
102
103
104
105
106
107
108
109
110
111
112
113
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
79
80
81
82
83
84
85
86
87
88
89
90
115
101
101
89
77
91
116
100
100
88
76
92
117
99
99
87
75
93
118
98
98
86
74
94
119
97
97
85
73
95
120
96
96
84
72
96
121
95
95
83
71
97
111
112
113
114
115
116
117
118
119
120
121
122
122
94
94
82
70
98
99
100
101
102
103
104
105
106
107
108
109
110
93
93
81
69
92
92
80
68
91
91
79
67
90
90
78
66
89
89
77
65
88
89
90
91
92
93
94
93
92
91
90
89
88
76
75
74
73
72
71
70
69
68
67
66
65
64
87
87
75
63
86
86
74
62
85
85
73
61
84
84
72
60
83
83
71
59
82
82
70
58
82
83
84
85
86
87
88
89
90
91
92
93
93
81
81
69
57
69
70
71
72
73
74
75
76
77
78
79
80
81
92
80
80
68
56
68
91
79
79
67
55
67
90
78
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
54
66
89
77
67
53
53
65
88
76
68
52
52
64
87
75
69
51
51
63
86
85
84
83
82
81
80
79
78
77
76
75
74
70
50
50
51
52
53
54
55
56
57
58
59
60
61
62
85
73
71
49
49
61
84
72
72
48
48
60
83
71
71
47
47
59
82
70
70
46
46
58
81
69
69
45
45
57
80
68
68
44
44
56
79
67
67
43
43
55
78
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
54
77
53
67
43
29
53
76
52
68
44
28
52
75
51
69
45
27
51
74
50
70
46
26
50
73
49
71
47
25
49
72
48
72
48
24
48
71
47
71
49
23
47
70
46
70
50
22
46
69
45
69
51
21
45
68
44
68
52
20
44
67
43
67
53
19
43
74
73
72
71
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
66
65
64
63
62
61
60
59
58
57
56
55
54
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
75
55
41
17
31
51
76
56
40
16
32
52
77
57
39
15
33
53
78
58
38
14
34
54
79
59
37
13
35
55
80
60
36
12
36
56
81
61
35
11
37
57
82
62
34
10
38
58
83
63
33
9
39
59
84
64
32
8
40
60
85
65
31
7
41
61
86
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
162
174
164
152
148
136
161
173
163
151
147
135
160
172
162
150
146
134
159
171
161
149
145
133
158
170
160
148
144
132
157
169
159
147
143
131
156
168
158
146
142
130
155
167
157
145
141
129
154
166
156
144
140
128
153
165
155
143
139
127
152
164
154
142
138
126
151
163
153
141
140
139
138
137
136
135
134
133
132
131
130
129
141
137
125
150
162
152
140
128
140
136
124
149
161
151
139
127
139
135
123
148
160
150
138
126
138
134
122
147
159
158
157
156
155
154
153
152
151
152
153
154
155
156
155
154
153
152
151
150
149
137
125
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
121
146
150
148
136
124
136
124
120
145
149
147
135
123
135
123
119
144
148
146
134
122
134
122
118
143
147
145
133
121
133
121
117
142
146
144
132
120
132
120
116
141
145
143
131
119
131
119
115
140
144
142
130
118
130
118
114
139
143
141
129
117
129
117
113
138
142
140
128
116
128
116
112
137
141
139
127
115
127
115
111
136
140
138
126
114
126
114
110
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
137
136
135
134
133
132
131
130
129
128
127
126
125
113
114
115
116
117
118
119
120
121
122
123
124
125
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
126
124
112
100
125
123
111
99
124
122
110
98
123
121
109
97
122
120
108
96
121
119
107
95
120
118
106
94
119
117
105
93
118
116
104
92
117
115
103
91
116
114
102
90
115
114
113
112
111
110
109
108
107
106
105
104
103
101
102
103
104
105
106
107
108
109
110
111
112
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
78
79
80
81
82
83
84
85
86
87
88
89
116
102
100
88
76
90
117
101
99
87
75
91
118
100
98
86
74
92
119
99
97
85
73
93
120
98
96
84
72
94
121
97
95
83
71
95
122
96
94
82
70
96
110
111
112
113
114
115
116
117
118
119
120
121
122
95
93
81
69
97
98
99
100
101
102
103
104
105
106
107
108
109
94
92
80
68
93
91
79
67
92
90
78
66
91
89
77
65
90
88
76
64
89
90
91
92
93
94
93
92
91
90
89
88
87
75
74
73
72
71
70
69
68
67
66
65
64
63
88
86
74
62
87
85
73
61
86
84
72
60
85
83
71
59
84
82
70
58
83
81
69
57
81
82
83
84
85
86
87
88
89
90
91
92
93
82
80
68
56
68
69
70
71
72
73
74
75
76
77
78
79
80
93
81
79
67
55
67
92
80
78
66
54
66
91
79
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
53
65
90
78
66
52
52
64
89
77
67
51
51
63
88
76
68
50
50
62
87
86
85
84
83
82
81
80
79
78
77
76
75
69
49
49
50
51
52
53
54
55
56
57
58
59
60
61
86
74
70
48
48
60
85
73
71
47
47
59
84
72
72
46
46
58
83
71
71
45
45
57
82
70
70
44
44
56
81
69
69
43
43
55
80
68
68
42
42
54
79
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
53
78
54
68
42
28
52
77
53
69
43
27
51
76
52
70
44
26
50
75
51
71
45
25
49
74
50
72
46
24
48
73
49
71
47
23
47
72
48
70
48
22
46
71
47
69
49
21
45
70
46
68
50
20
44
69
45
67
51
19
43
68
44
66
52
18
42
75
74
73
72
71
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
65
64
63
62
61
60
59
58
57
56
55
54
53
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
76
56
42
16
30
50
77
57
41
15
31
51
78
58
40
14
32
52
79
59
39
13
33
53
80
60
38
12
34
54
81
61
37
11
35
55
82
62
36
10
36
56
83
63
35
9
37
57
84
64
34
8
38
58
85
65
33
7
39
59
86
66
32
6
40
60
87
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
163
175
163
151
147
135
162
174
162
150
146
134
161
173
161
149
145
133
160
172
160
148
144
132
159
171
159
147
143
131
158
170
158
146
142
130
157
169
157
145
141
129
156
168
156
144
140
128
155
167
155
143
139
127
154
166
154
142
138
126
153
165
153
141
137
125
152
164
152
140
139
138
137
136
135
134
133
132
131
130
129
128
140
136
124
151
163
151
139
127
139
135
123
150
162
150
138
126
138
134
122
149
161
149
137
125
137
133
121
148
160
159
158
157
156
155
154
153
152
153
154
155
156
155
154
153
152
151
150
149
148
136
124
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
120
147
151
147
135
123
135
123
119
146
150
146
134
122
134
122
118
145
149
145
133
121
133
121
117
144
148
144
132
120
132
120
116
143
147
143
131
119
131
119
115
142
146
142
130
118
130
118
114
141
145
141
129
117
129
117
113
140
144
140
128
116
128
116
112
139
143
139
127
115
127
115
111
138
142
138
126
114
126
114
110
137
141
137
125
113
125
113
109
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
136
135
134
133
132
131
130
129
128
127
126
125
124
112
113
114
115
116
117
118
119
120
121
122
123
124
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
127
123
111
99
126
122
110
98
125
121
109
97
124
120
108
96
123
119
107
95
122
118
106
94
121
117
105
93
120
116
104
92
119
115
103
91
118
114
102
90
117
113
101
89
116
115
114
113
112
111
110
109
108
107
106
105
104
100
101
102
103
104
105
106
107
108
109
110
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
77
78
79
80
81
82
83
84
85
86
87
88
117
103
99
87
75
89
118
102
98
86
74
90
119
101
97
85
73
91
120
100
96
84
72
92
121
99
95
83
71
93
122
98
94
82
70
94
122
97
93
81
69
95
109
110
111
112
113
114
115
116
117
118
119
120
121
96
92
80
68
96
97
98
99
100
101
102
103
104
105
106
107
108
95
91
79
67
94
90
78
66
93
89
77
65
92
88
76
64
91
87
75
63
90
91
92
93
94
93
92
91
90
89
88
87
86
74
73
72
71
70
69
68
67
66
65
64
63
62
89
85
73
61
88
84
72
60
87
83
71
59
86
82
70
58
85
81
69
57
84
80
68
56
80
81
82
83
84
85
86
87
88
89
90
91
92
83
79
67
55
67
68
69
70
71
72
73
74
75
76
77
78
79
93
82
78
66
54
66
93
81
77
65
53
65
92
80
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
52
64
91
79
65
51
51
63
90
78
66
50
50
62
89
77
67
49
49
61
88
87
86
85
84
83
82
81
80
79
78
77
76
68
48
48
49
50
51
52
53
54
55
56
57
58
59
60
87
75
69
47
47
59
86
74
70
46
46
58
85
73
71
45
45
57
84
72
72
44
44
56
83
71
71
43
43
55
82
70
70
42
42
54
81
69
69
41
41
53
80
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
52
79
55
69
41
27
51
78
54
70
42
26
50
77
53
71
43
25
49
76
52
72
44
24
48
75
51
71
45
23
47
74
50
70
46
22
46
73
49
69
47
21
45
72
48
68
48
20
44
71
47
67
49
19
43
70
46
66
50
18
42
69
45
65
51
17
41
76
75
74
73
72
71
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
64
63
62
61
60
59
58
57
56
55
54
53
52
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
77
57
43
15
29
49
78
58
42
14
30
50
79
59
41
13
31
51
80
60
40
12
32
52
81
61
39
11
33
53
82
62
38
10
34
54
83
63
37
9
35
55
84
64
36
8
36
56
85
65
35
7
37
57
86
66
34
6
38
58
87
67
33
5
39
59
88
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
164
176
162
150
146
134
163
175
161
149
145
133
162
174
160
148
144
132
161
173
159
147
143
131
160
172
158
146
142
130
159
171
157
145
141
129
158
170
156
144
140
128
157
169
155
143
139
127
156
168
154
142
138
126
155
167
153
141
137
125
154
166
152
140
136
124
153
165
151
139
138
137
136
135
134
133
132
131
130
129
128
127
139
135
123
152
164
150
138
126
138
134
122
151
163
149
137
125
137
133
121
150
162
148
136
124
136
132
120
149
161
160
159
158
157
156
155
154
153
154
155
156
155
154
153
152
151
150
149
148
147
135
123
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
119
148
152
146
134
122
134
122
118
147
151
145
133
121
133
121
117
146
150
144
132
120
132
120
116
145
149
143
131
119
131
119
115
144
148
142
130
118
130
118
114
143
147
141
129
117
129
117
113
142
146
140
128
116
128
116
112
141
145
139
127
115
127
115
111
140
144
138
126
114
126
114
110
139
143
137
125
113
125
113
109
138
142
136
124
112
124
112
108
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
135
134
133
132
131
130
129
128
127
126
125
124
123
111
112
113
114
115
116
117
118
119
120
121
122
123
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
128
122
110
98
127
121
109
97
126
120
108
96
125
119
107
95
124
118
106
94
123
117
105
93
122
116
104
92
121
115
103
91
120
114
102
90
119
113
101
89
118
112
100
88
117
116
115
114
113
112
111
110
109
108
107
106
105
99
100
101
102
103
104
105
106
107
108
109
110
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
76
77
78
79
80
81
82
83
84
85
86
87
118
104
98
86
74
88
119
103
97
85
73
89
120
102
96
84
72
90
121
101
95
83
71
91
122
100
94
82
70
92
122
99
93
81
69
93
121
98
92
80
68
94
108
109
110
111
112
113
114
115
116
117
118
119
120
97
91
79
67
95
96
97
98
99
100
101
102
103
104
105
106
107
96
90
78
66
95
89
77
65
94
88
76
64
93
87
75
63
92
86
74
62
91
92
93
94
93
92
91
90
89
88
87
86
85
73
72
71
70
69
68
67
66
65
64
63
62
61
90
84
72
60
89
83
71
59
88
82
70
58
87
81
69
57
86
80
68
56
85
79
67
55
79
80
81
82
83
84
85
86
87
88
89
90
91
84
78
66
54
66
67
68
69
70
71
72
73
74
75
76
77
78
92
83
77
65
53
65
93
82
76
64
52
64
93
81
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
51
63
92
80
64
50
50
62
91
79
65
49
49
61
90
78
66
48
48
60
89
88
87
86
85
84
83
82
81
80
79
78
77
67
47
47
48
49
50
51
52
53
54
55
56
57
58
59
88
76
68
46
46
58
87
75
69
45
45
57
86
74
70
44
44
56
85
73
71
43
43
55
84
72
72
42
42
54
83
71
71
41
41
53
82
70
70
40
40
52
81
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
51
80
56
70
40
26
50
79
55
71
41
25
49
78
54
72
42
24
48
77
53
71
43
23
47
76
52
70
44
22
46
75
51
69
45
21
45
74
50
68
46
20
44
73
49
67
47
19
43
72
48
66
48
18
42
71
47
65
49
17
41
70
46
64
50
16
40
77
76
75
74
73
72
71
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
63
62
61
60
59
58
57
56
55
54
53
52
51
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
78
58
44
14
28
48
79
59
43
13
29
49
80
60
42
12
30
50
81
61
41
11
31
51
82
62
40
10
32
52
83
63
39
9
33
53
84
64
38
8
34
54
85
65
37
7
35
55
86
66
36
6
36
56
87
67
35
5
37
57
88
68
34
4
38
58
89
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
165
177
161
149
145
133
164
176
160
148
144
132
163
175
159
147
143
131
162
174
158
146
142
130
161
173
157
145
141
129
160
172
156
144
140
128
159
171
155
143
139
127
158
170
154
142
138
126
157
169
153
141
137
125
156
168
152
140
136
124
155
167
151
139
135
123
154
166
150
138
137
136
135
134
133
132
131
130
129
128
127
126
138
134
122
153
165
149
137
125
137
133
121
152
164
148
136
124
136
132
120
151
163
147
135
123
135
131
119
150
162
161
160
159
158
157
156
155
154
155
156
155
154
153
152
151
150
149
148
147
146
134
122
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
118
149
153
145
133
121
133
121
117
148
152
144
132
120
132
120
116
147
151
143
131
119
131
119
115
146
150
142
130
118
130
118
114
145
149
141
129
117
129
117
113
144
148
140
128
116
128
116
112
143
147
139
127
115
127
115
111
142
146
138
126
114
126
114
110
141
145
137
125
113
125
113
109
140
144
136
124
112
124
112
108
139
143
135
123
111
123
111
107
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
134
133
132
131
130
129
128
127
126
125
124
123
122
110
111
112
113
114
115
116
117
118
119
120
121
122
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
129
121
109
97
128
120
108
96
127
119
107
95
126
118
106
94
125
117
105
93
124
116
104
92
123
115
103
91
122
114
102
90
121
113
101
89
120
112
100
88
119
111
99
87
118
117
116
115
114
113
112
111
110
109
108
107
106
98
99
100
101
102
103
104
105
106
107
108
109
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
75
76
77
78
79
80
81
82
83
84
85
86
119
105
97
85
73
87
120
104
96
84
72
88
121
103
95
83
71
89
122
102
94
82
70
90
122
101
93
81
69
91
121
100
92
80
68
92
120
99
91
79
67
93
107
108
109
110
111
112
113
114
115
116
117
118
119
98
90
78
66
94
95
96
97
98
99
100
101
102
103
104
105
106
97
89
77
65
96
88
76
64
95
87
75
63
94
86
74
62
93
85
73
61
92
93
94
93
92
91
90
89
88
87
86
85
84
72
71
70
69
68
67
66
65
64
63
62
61
60
91
83
71
59
90
82
70
58
89
81
69
57
88
80
68
56
87
79
67
55
86
78
66
54
78
79
80
81
82
83
84
85
86
87
88
89
90
85
77
65
53
65
66
67
68
69
70
71
72
73
74
75
76
77
91
84
76
64
52
64
92
83
75
63
51
63
93
82
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
50
62
93
81
63
49
49
61
92
80
64
48
48
60
91
79
65
47
47
59
90
89
88
87
86
85
84
83
82
81
80
79
78
66
46
46
47
48
49
50
51
52
53
54
55
56
57
58
89
77
67
45
45
57
88
76
68
44
44
56
87
75
69
43
43
55
86
74
70
42
42
54
85
73
71
41
41
53
84
72
72
40
40
52
83
71
71
39
39
51
82
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
50
81
57
71
39
25
49
80
56
72
40
24
48
79
55
71
41
23
47
78
54
70
42
22
46
77
53
69
43
21
45
76
52
68
44
20
44
75
51
67
45
19
43
74
50
66
46
18
42
73
49
65
47
17
41
72
48
64
48
16
40
71
47
63
49
15
39
78
77
76
75
74
73
72
71
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
62
61
60
59
58
57
56
55
54
53
52
51
50
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
79
59
45
13
27
47
80
60
44
12
28
48
81
61
43
11
29
49
82
62
42
10
30
50
83
63
41
9
31
51
84
64
40
8
32
52
85
65
39
7
33
53
86
66
38
6
34
54
87
67
37
5
35
55
88
68
36
4
36
56
89
69
35
3
37
57
90
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
166
178
160
148
144
132
165
177
159
147
143
131
164
176
158
146
142
130
163
175
157
145
141
129
162
174
156
144
140
128
161
173
155
143
139
127
160
172
154
142
138
126
159
171
153
141
137
125
158
170
152
140
136
124
157
169
151
139
135
123
156
168
150
138
134
122
155
167
149
137
136
135
134
133
132
131
130
129
128
127
126
125
137
133
121
154
166
148
136
124
136
132
120
153
165
147
135
123
135
131
119
152
164
146
134
122
134
130
118
151
163
162
161
160
159
158
157
156
155
156
155
154
153
152
151
150
149
148
147
146
145
133
121
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
117
150
154
144
132
120
132
120
116
149
153
143
131
119
131
119
115
148
152
142
130
118
130
118
114
147
151
141
129
117
129
117
113
146
150
140
128
116
128
116
112
145
149
139
127
115
127
115
111
144
148
138
126
114
126
114
110
143
147
137
125
113
125
113
109
142
146
136
124
112
124
112
108
141
145
135
123
111
123
111
107
140
144
134
122
110
122
110
106
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
133
132
131
130
129
128
127
126
125
124
123
122
121
109
110
111
112
113
114
115
116
117
118
119
120
121
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
130
120
108
96
129
119
107
95
128
118
106
94
127
117
105
93
126
116
104
92
125
115
103
91
124
114
102
90
123
113
101
89
122
112
100
88
121
111
99
87
120
110
98
86
119
118
117
116
115
114
113
112
111
110
109
108
107
97
98
99
100
101
102
103
104
105
106
107
108
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
74
75
76
77
78
79
80
81
82
83
84
85
120
106
96
84
72
86
121
105
95
83
71
87
122
104
94
82
70
88
122
103
93
81
69
89
121
102
92
80
68
90
120
101
91
79
67
91
119
100
90
78
66
92
106
107
108
109
110
111
112
113
114
115
116
117
118
99
89
77
65
93
94
95
96
97
98
99
100
101
102
103
104
105
98
88
76
64
97
87
75
63
96
86
74
62
95
85
73
61
94
84
72
60
93
94
93
92
91
90
89
88
87
86
85
84
83
71
70
69
68
67
66
65
64
63
62
61
60
59
92
82
70
58
91
81
69
57
90
80
68
56
89
79
67
55
88
78
66
54
87
77
65
53
77
78
79
80
81
82
83
84
85
86
87
88
89
86
76
64
52
64
65
66
67
68
69
70
71
72
73
74
75
76
90
85
75
63
51
63
91
84
74
62
50
62
92
83
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
49
61
93
82
62
48
48
60
93
81
63
47
47
59
92
80
64
46
46
58
91
90
89
88
87
86
85
84
83
82
81
80
79
65
45
45
46
47
48
49
50
51
52
53
54
55
56
57
90
78
66
44
44
56
89
77
67
43
43
55
88
76
68
42
42
54
87
75
69
41
41
53
86
74
70
40
40
52
85
73
71
39
39
51
84
72
72
38
38
50
83
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
49
82
58
72
38
24
48
81
57
71
39
23
47
80
56
70
40
22
46
79
55
69
41
21
45
78
54
68
42
20
44
77
53
67
43
19
43
76
52
66
44
18
42
75
51
65
45
17
41
74
50
64
46
16
40
73
49
63
47
15
39
72
48
62
48
14
38
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
61
60
59
58
57
56
55
54
53
52
51
50
49
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
80
60
46
12
26
46
81
61
45
11
27
47
82
62
44
10
28
48
83
63
43
9
29
49
84
64
42
8
30
50
85
65
41
7
31
51
86
66
40
6
32
52
87
67
39
5
33
53
88
68
38
4
34
54
89
69
37
3
35
55
90
70
36
2
36
56
91
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
167
179
159
147
143
131
166
178
158
146
142
130
165
177
157
145
141
129
164
176
156
144
140
128
163
175
155
143
139
127
162
174
154
142
138
126
161
173
153
141
137
125
160
172
152
140
136
124
159
171
151
139
135
123
158
170
150
138
134
122
157
169
149
137
133
121
156
168
148
136
135
134
133
132
131
130
129
128
127
126
125
124
136
132
120
155
167
147
135
123
135
131
119
154
166
146
134
122
134
130
118
153
165
145
133
121
133
129
117
152
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
132
120
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
116
151
155
143
131
119
131
119
115
150
154
142
130
118
130
118
114
149
153
141
129
117
129
117
113
148
152
140
128
116
128
116
112
147
151
139
127
115
127
115
111
146
150
138
126
114
126
114
110
145
149
137
125
113
125
113
109
144
148
136
124
112
124
112
108
143
147
135
123
111
123
111
107
142
146
134
122
110
122
110
106
141
145
133
121
109
121
109
105
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
132
131
130
129
128
127
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
117
118
119
120
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
131
119
107
95
130
118
106
94
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
73
74
75
76
77
78
79
80
81
82
83
84
121
107
95
83
71
85
122
106
94
82
70
86
122
105
93
81
69
87
121
104
92
80
68
88
120
103
91
79
67
89
119
102
90
78
66
90
118
101
89
77
65
91
105
106
107
108
109
110
111
112
113
114
115
116
117
100
88
76
64
92
93
94
95
96
97
98
99
100
101
102
103
104
99
87
75
63
98
86
74
62
97
85
73
61
96
84
72
60
95
83
71
59
94
93
92
91
90
89
88
87
86
85
84
83
82
70
69
68
67
66
65
64
63
62
61
60
59
58
93
81
69
57
92
80
68
56
91
79
67
55
90
78
66
54
89
77
65
53
88
76
64
52
76
77
78
79
80
81
82
83
84
85
86
87
88
87
75
63
51
63
64
65
66
67
68
69
70
71
72
73
74
75
89
86
74
62
50
62
90
85
73
61
49
61
91
84
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
48
60
92
83
61
47
47
59
93
82
62
46
46
58
93
81
63
45
45
57
92
91
90
89
88
87
86
85
84
83
82
81
80
64
44
44
45
46
47
48
49
50
51
52
53
54
55
56
91
79
65
43
43
55
90
78
66
42
42
54
89
77
67
41
41
53
88
76
68
40
40
52
87
75
69
39
39
51
86
74
70
38
38
50
85
73
71
37
37
49
84
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
48
83
59
71
37
23
47
82
58
70
38
22
46
81
57
69
39
21
45
80
56
68
40
20
44
79
55
67
41
19
43
78
54
66
42
18
42
77
53
65
43
17
41
76
52
64
44
16
40
75
51
63
45
15
39
74
50
62
46
14
38
73
49
61
47
13
37
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
60
59
58
57
56
55
54
53
52
51
50
49
48
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
81
61
47
11
25
45
82
62
46
10
26
46
83
63
45
9
27
47
84
64
44
8
28
48
85
65
43
7
29
49
86
66
42
6
30
50
87
67
41
5
31
51
88
68
40
4
32
52
89
69
39
3
33
53
90
70
38
2
34
54
91
71
37
1
35
55
92
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
179
191
171
159
155
143
178
190
170
158
154
142
177
189
169
157
153
141
176
188
168
156
152
140
175
187
167
155
151
139
174
186
166
154
150
138
173
185
165
153
149
137
172
184
164
152
148
136
171
183
163
151
147
135
170
182
162
150
146
134
169
181
161
149
145
133
168
180
160
148
147
146
145
144
143
142
141
140
139
138
137
136
148
144
132
167
179
159
147
135
147
143
131
166
178
158
146
134
146
142
130
165
177
157
145
133
145
141
129
164
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
144
132
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
128
163
167
155
143
131
143
131
127
162
166
154
142
130
142
130
126
161
165
153
141
129
141
129
125
160
164
152
140
128
140
128
124
159
163
151
139
127
139
127
123
158
162
150
138
126
138
126
122
157
161
149
137
125
137
125
121
156
160
148
136
124
136
124
120
155
159
147
135
123
135
123
119
154
158
146
134
122
134
122
118
153
157
145
133
121
133
121
117
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
144
143
142
141
140
139
138
137
136
135
134
133
132
120
121
122
123
124
125
126
127
128
129
130
131
132
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
143
131
119
107
142
130
118
106
141
129
117
105
140
128
116
104
139
127
115
103
138
126
114
102
137
125
113
101
136
124
112
100
135
123
111
99
134
122
110
98
133
121
109
97
132
131
130
129
128
127
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
117
118
119
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
133
119
107
95
83
97
134
118
106
94
82
98
134
117
105
93
81
99
133
116
104
92
80
100
132
115
103
91
79
101
131
114
102
90
78
102
130
113
101
89
77
103
117
118
119
120
121
122
123
124
125
126
127
128
129
112
100
88
76
104
105
106
107
108
109
110
111
112
113
114
115
116
111
99
87
75
110
98
86
74
109
97
85
73
108
96
84
72
107
95
83
71
106
105
104
103
102
101
100
99
98
97
96
95
94
82
81
80
79
78
77
76
75
74
73
72
71
70
107
93
81
69
107
92
80
68
106
91
79
67
105
90
78
66
104
89
77
65
103
88
76
64
64
65
66
67
68
69
70
71
72
73
74
75
76
102
87
75
63
51
52
53
54
55
56
57
58
59
60
61
62
63
77
101
86
74
62
50
78
100
85
73
61
49
79
99
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
60
48
80
98
73
59
59
47
81
97
74
58
58
46
82
96
75
57
57
45
83
84
85
86
87
88
89
90
91
92
93
94
95
76
56
56
55
54
53
52
51
50
49
48
47
46
45
44
84
96
77
55
55
43
85
97
78
54
54
42
86
98
79
53
53
41
87
99
80
52
52
40
88
100
81
51
51
39
89
101
82
50
50
38
90
102
83
49
49
37
91
103
104
105
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
36
92
95
83
49
35
35
93
94
82
50
34
34
94
93
81
51
33
33
95
92
80
52
32
32
96
91
79
53
31
31
97
90
78
54
30
30
98
89
77
55
29
29
99
88
76
56
28
28
100
87
75
57
27
27
101
86
74
58
26
26
102
85
73
59
25
25
111
110
109
108
107
106
105
104
103
104
105
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
72
71
70
69
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
112
97
83
25
11
33
113
98
82
26
10
34
114
99
81
27
9
35
115
100
80
28
8
36
116
101
79
29
7
37
117
102
78
30
6
38
118
103
77
31
5
39
119
104
76
32
4
40
120
105
75
33
3
41
121
106
74
34
2
42
122
107
73
35
1
43
123
116
115
114
113
112
111
110
109
108
72
71
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
40
39
38
37
36
0
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
180
192
172
160
156
144
179
191
171
159
155
143
178
190
170
158
154
142
177
189
169
157
153
141
176
188
168
156
152
140
175
187
167
155
151
139
174
186
166
154
150
138
173
185
165
153
149
137
172
184
164
152
148
136
171
183
163
151
147
135
170
182
162
150
146
134
169
181
161
149
148
147
146
145
144
143
142
141
140
139
138
137
149
145
133
168
180
160
148
136
148
144
132
167
179
159
147
135
147
143
131
166
178
158
146
134
146
142
130
165
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
145
133
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
129
164
168
156
144
132
144
132
128
163
167
155
143
131
143
131
127
162
166
154
142
130
142
130
126
161
165
153
141
129
141
129
125
160
164
152
140
128
140
128
124
159
163
151
139
127
139
127
123
158
162
150
138
126
138
126
122
157
161
149
137
125
137
125
121
156
160
148
136
124
136
124
120
155
159
147
135
123
135
123
119
154
158
146
134
122
134
122
118
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
145
144
143
142
141
140
139
138
137
136
135
134
133
121
122
123
124
125
126
127
128
129
130
131
132
133
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
144
132
120
108
143
131
119
107
142
130
118
106
141
129
117
105
140
128
116
104
139
127
115
103
138
126
114
102
137
125
113
101
136
124
112
100
135
123
111
99
134
122
110
98
133
132
131
130
129
128
127
126
125
124
123
122
121
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
134
120
108
96
84
98
135
119
107
95
83
99
135
118
106
94
82
100
134
117
105
93
81
101
133
116
104
92
80
102
132
115
103
91
79
103
131
114
102
90
78
104
118
119
120
121
122
123
124
125
126
127
128
129
130
113
101
89
77
105
106
107
108
109
110
111
112
113
114
115
116
117
112
100
88
76
111
99
87
75
110
98
86
74
109
97
85
73
108
96
84
72
107
106
105
104
103
102
101
100
99
98
97
96
95
83
82
81
80
79
78
77
76
75
74
73
72
71
108
94
82
70
108
93
81
69
107
92
80
68
106
91
79
67
105
90
78
66
104
89
77
65
65
66
67
68
69
70
71
72
73
74
75
76
77
103
88
76
64
52
53
54
55
56
57
58
59
60
61
62
63
64
78
102
87
75
63
51
79
101
86
74
62
50
80
100
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
61
49
81
99
74
60
60
48
82
98
75
59
59
47
83
97
76
58
58
46
84
85
86
87
88
89
90
91
92
93
94
95
96
77
57
57
56
55
54
53
52
51
50
49
48
47
46
45
85
97
78
56
56
44
86
98
79
55
55
43
87
99
80
54
54
42
88
100
81
53
53
41
89
101
82
52
52
40
90
102
83
51
51
39
91
103
84
50
50
38
92
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
37
93
96
84
50
36
36
94
95
83
51
35
35
95
94
82
52
34
34
96
93
81
53
33
33
97
92
80
54
32
32
98
91
79
55
31
31
99
90
78
56
30
30
100
89
77
57
29
29
101
88
76
58
28
28
102
87
75
59
27
27
103
86
74
60
26
26
112
111
110
109
108
107
106
105
104
105
106
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
113
98
84
26
12
34
114
99
83
27
11
35
115
100
82
28
10
36
116
101
81
29
9
37
117
102
80
30
8
38
118
103
79
31
7
39
119
104
78
32
6
40
120
105
77
33
5
41
121
106
76
34
4
42
122
107
75
35
3
43
123
108
74
36
2
44
124
117
116
115
114
113
112
111
110
109
73
72
71
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
40
39
38
37
1
0
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
181
193
173
161
157
145
180
192
172
160
156
144
179
191
171
159
155
143
178
190
170
158
154
142
177
189
169
157
153
141
176
188
168
156
152
140
175
187
167
155
151
139
174
186
166
154
150
138
173
185
165
153
149
137
172
184
164
152
148
136
171
183
163
151
147
135
170
182
162
150
149
148
147
146
145
144
143
142
141
140
139
138
150
146
134
169
181
161
149
137
149
145
133
168
180
160
148
136
148
144
132
167
179
159
147
135
147
143
131
166
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
146
134
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
130
165
169
157
145
133
145
133
129
164
168
156
144
132
144
132
128
163
167
155
143
131
143
131
127
162
166
154
142
130
142
130
126
161
165
153
141
129
141
129
125
160
164
152
140
128
140
128
124
159
163
151
139
127
139
127
123
158
162
150
138
126
138
126
122
157
161
149
137
125
137
125
121
156
160
148
136
124
136
124
120
155
159
147
135
123
135
123
119
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
146
145
144
143
142
141
140
139
138
137
136
135
134
122
123
124
125
126
127
128
129
130
131
132
133
134
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
145
133
121
109
144
132
120
108
143
131
119
107
142
130
118
106
141
129
117
105
140
128
116
104
139
127
115
103
138
126
114
102
137
125
113
101
136
124
112
100
135
123
111
99
134
133
132
131
130
129
128
127
126
125
124
123
122
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
135
121
109
97
85
99
136
120
108
96
84
100
136
119
107
95
83
101
135
118
106
94
82
102
134
117
105
93
81
103
133
116
104
92
80
104
132
115
103
91
79
105
119
120
121
122
123
124
125
126
127
128
129
130
131
114
102
90
78
106
107
108
109
110
111
112
113
114
115
116
117
118
113
101
89
77
112
100
88
76
111
99
87
75
110
98
86
74
109
97
85
73
108
107
106
105
104
103
102
101
100
99
98
97
96
84
83
82
81
80
79
78
77
76
75
74
73
72
109
95
83
71
109
94
82
70
108
93
81
69
107
92
80
68
106
91
79
67
105
90
78
66
66
67
68
69
70
71
72
73
74
75
76
77
78
104
89
77
65
53
54
55
56
57
58
59
60
61
62
63
64
65
79
103
88
76
64
52
80
102
87
75
63
51
81
101
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
62
50
82
100
75
61
61
49
83
99
76
60
60
48
84
98
77
59
59
47
85
86
87
88
89
90
91
92
93
94
95
96
97
78
58
58
57
56
55
54
53
52
51
50
49
48
47
46
86
98
79
57
57
45
87
99
80
56
56
44
88
100
81
55
55
43
89
101
82
54
54
42
90
102
83
53
53
41
91
103
84
52
52
40
92
104
85
51
51
39
93
105
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
38
94
97
85
51
37
37
95
96
84
52
36
36
96
95
83
53
35
35
97
94
82
54
34
34
98
93
81
55
33
33
99
92
80
56
32
32
100
91
79
57
31
31
101
90
78
58
30
30
102
89
77
59
29
29
103
88
76
60
28
28
104
87
75
61
27
27
113
112
111
110
109
108
107
106
105
106
107
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
114
99
85
27
13
35
115
100
84
28
12
36
116
101
83
29
11
37
117
102
82
30
10
38
118
103
81
31
9
39
119
104
80
32
8
40
120
105
79
33
7
41
121
106
78
34
6
42
122
107
77
35
5
43
123
108
76
36
4
44
124
109
75
37
3
43
125
118
117
116
115
114
113
112
111
110
74
73
72
71
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
40
39
38
2
1
0
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
182
194
174
162
158
146
181
193
173
161
157
145
180
192
172
160
156
144
179
191
171
159
155
143
178
190
170
158
154
142
177
189
169
157
153
141
176
188
168
156
152
140
175
187
167
155
151
139
174
186
166
154
150
138
173
185
165
153
149
137
172
184
164
152
148
136
171
183
163
151
150
149
148
147
146
145
144
143
142
141
140
139
151
147
135
170
182
162
150
138
150
146
134
169
181
161
149
137
149
145
133
168
180
160
148
136
148
144
132
167
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
147
135
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
131
166
170
158
146
134
146
134
130
165
169
157
145
133
145
133
129
164
168
156
144
132
144
132
128
163
167
155
143
131
143
131
127
162
166
154
142
130
142
130
126
161
165
153
141
129
141
129
125
160
164
152
140
128
140
128
124
159
163
151
139
127
139
127
123
158
162
150
138
126
138
126
122
157
161
149
137
125
137
125
121
156
160
148
136
124
136
124
120
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
147
146
145
144
143
142
141
140
139
138
137
136
135
123
124
125
126
127
128
129
130
131
132
133
134
135
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
146
134
122
110
145
133
121
109
144
132
120
108
143
131
119
107
142
130
118
106
141
129
117
105
140
128
116
104
139
127
115
103
138
126
114
102
137
125
113
101
136
124
112
100
135
134
133
132
131
130
129
128
127
126
125
124
123
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
136
122
110
98
86
100
137
121
109
97
85
101
137
120
108
96
84
102
136
119
107
95
83
103
135
118
106
94
82
104
134
117
105
93
81
105
133
116
104
92
80
106
120
121
122
123
124
125
126
127
128
129
130
131
132
115
103
91
79
107
108
109
110
111
112
113
114
115
116
117
118
119
114
102
90
78
113
101
89
77
112
100
88
76
111
99
87
75
110
98
86
74
109
108
107
106
105
104
103
102
101
100
99
98
97
85
84
83
82
81
80
79
78
77
76
75
74
73
110
96
84
72
110
95
83
71
109
94
82
70
108
93
81
69
107
92
80
68
106
91
79
67
67
68
69
70
71
72
73
74
75
76
77
78
79
105
90
78
66
54
55
56
57
58
59
60
61
62
63
64
65
66
80
104
89
77
65
53
81
103
88
76
64
52
82
102
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
63
51
83
101
76
62
62
50
84
100
77
61
61
49
85
99
78
60
60
48
86
87
88
89
90
91
92
93
94
95
96
97
98
79
59
59
58
57
56
55
54
53
52
51
50
49
48
47
87
99
80
58
58
46
88
100
81
57
57
45
89
101
82
56
56
44
90
102
83
55
55
43
91
103
84
54
54
42
92
104
85
53
53
41
93
105
86
52
52
40
94
106
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
39
95
98
86
52
38
38
96
97
85
53
37
37
97
96
84
54
36
36
98
95
83
55
35
35
99
94
82
56
34
34
100
93
81
57
33
33
101
92
80
58
32
32
102
91
79
59
31
31
103
90
78
60
30
30
104
89
77
61
29
29
105
88
76
62
28
28
114
113
112
111
110
109
108
107
106
107
108
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
75
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
115
100
86
28
14
36
116
101
85
29
13
37
117
102
84
30
12
38
118
103
83
31
11
39
119
104
82
32
10
40
120
105
81
33
9
41
121
106
80
34
8
42
122
107
79
35
7
43
123
108
78
36
6
44
124
109
77
37
5
43
125
110
76
38
4
42
126
119
118
117
116
115
114
113
112
111
75
74
73
72
71
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
40
39
3
2
1
0
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
183
195
175
163
159
147
182
194
174
162
158
146
181
193
173
161
157
145
180
192
172
160
156
144
179
191
171
159
155
143
178
190
170
158
154
142
177
189
169
157
153
141
176
188
168
156
152
140
175
187
167
155
151
139
174
186
166
154
150
138
173
185
165
153
149
137
172
184
164
152
151
150
149
148
147
146
145
144
143
142
141
140
152
148
136
171
183
163
151
139
151
147
135
170
182
162
150
138
150
146
134
169
181
161
149
137
149
145
133
168
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
148
136
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
132
167
171
159
147
135
147
135
131
166
170
158
146
134
146
134
130
165
169
157
145
133
145
133
129
164
168
156
144
132
144
132
128
163
167
155
143
131
143
131
127
162
166
154
142
130
142
130
126
161
165
153
141
129
141
129
125
160
164
152
140
128
140
128
124
159
163
151
139
127
139
127
123
158
162
150
138
126
138
126
122
157
161
149
137
125
137
125
121
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
148
147
146
145
144
143
142
141
140
139
138
137
136
124
125
126
127
128
129
130
131
132
133
134
135
136
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
147
135
123
111
146
134
122
110
145
133
121
109
144
132
120
108
143
131
119
107
142
130
118
106
141
129
117
105
140
128
116
104
139
127
115
103
138
126
114
102
137
125
113
101
136
135
134
133
132
131
130
129
128
127
126
125
124
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
137
123
111
99
87
101
138
122
110
98
86
102
138
121
109
97
85
103
137
120
108
96
84
104
136
119
107
95
83
105
135
118
106
94
82
106
134
117
105
93
81
107
121
122
123
124
125
126
127
128
129
130
131
132
133
116
104
92
80
108
109
110
111
112
113
114
115
116
117
118
119
120
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
99
87
75
110
109
108
107
106
105
104
103
102
101
100
99
98
86
85
84
83
82
81
80
79
78
77
76
75
74
111
97
85
73
111
96
84
72
110
95
83
71
109
94
82
70
108
93
81
69
107
92
80
68
68
69
70
71
72
73
74
75
76
77
78
79
80
106
91
79
67
55
56
57
58
59
60
61
62
63
64
65
66
67
81
105
90
78
66
54
82
104
89
77
65
53
83
103
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
64
52
84
102
77
63
63
51
85
101
78
62
62
50
86
100
79
61
61
49
87
88
89
90
91
92
93
94
95
96
97
98
99
80
60
60
59
58
57
56
55
54
53
52
51
50
49
48
88
100
81
59
59
47
89
101
82
58
58
46
90
102
83
57
57
45
91
103
84
56
56
44
92
104
85
55
55
43
93
105
86
54
54
42
94
106
87
53
53
41
95
107
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
40
96
99
87
53
39
39
97
98
86
54
38
38
98
97
85
55
37
37
99
96
84
56
36
36
100
95
83
57
35
35
101
94
82
58
34
34
102
93
81
59
33
33
103
92
80
60
32
32
104
91
79
61
31
31
105
90
78
62
30
30
106
89
77
63
29
29
115
114
113
112
111
110
109
108
107
108
109
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
76
75
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
116
101
87
29
15
37
117
102
86
30
14
38
118
103
85
31
13
39
119
104
84
32
12
40
120
105
83
33
11
41
121
106
82
34
10
42
122
107
81
35
9
43
123
108
80
36
8
44
124
109
79
37
7
43
125
110
78
38
6
42
126
111
77
39
5
41
127
120
119
118
117
116
115
114
113
112
76
75
74
73
72
71
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
40
4
3
2
1
0
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
184
196
176
164
160
148
183
195
175
163
159
147
182
194
174
162
158
146
181
193
173
161
157
145
180
192
172
160
156
144
179
191
171
159
155
143
178
190
170
158
154
142
177
189
169
157
153
141
176
188
168
156
152
140
175
187
167
155
151
139
174
186
166
154
150
138
173
185
165
153
152
151
150
149
148
147
146
145
144
143
142
141
153
149
137
172
184
164
152
140
152
148
136
171
183
163
151
139
151
147
135
170
182
162
150
138
150
146
134
169
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
149
137
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
133
168
172
160
148
136
148
136
132
167
171
159
147
135
147
135
131
166
170
158
146
134
146
134
130
165
169
157
145
133
145
133
129
164
168
156
144
132
144
132
128
163
167
155
143
131
143
131
127
162
166
154
142
130
142
130
126
161
165
153
141
129
141
129
125
160
164
152
140
128
140
128
124
159
163
151
139
127
139
127
123
158
162
150
138
126
138
126
122
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
149
148
147
146
145
144
143
142
141
140
139
138
137
125
126
127
128
129
130
131
132
133
134
135
136
137
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
148
136
124
112
147
135
123
111
146
134
122
110
145
133
121
109
144
132
120
108
143
131
119
107
142
130
118
106
141
129
117
105
140
128
116
104
139
127
115
103
138
126
114
102
137
136
135
134
133
132
131
130
129
128
127
126
125
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
138
124
112
100
88
102
139
123
111
99
87
103
139
122
110
98
86
104
138
121
109
97
85
105
137
120
108
96
84
106
136
119
107
95
83
107
135
118
106
94
82
108
122
123
124
125
126
127
128
129
130
131
132
133
134
117
105
93
81
109
110
111
112
113
114
115
116
117
118
119
120
121
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
100
88
76
111
110
109
108
107
106
105
104
103
102
101
100
99
87
86
85
84
83
82
81
80
79
78
77
76
75
112
98
86
74
112
97
85
73
111
96
84
72
110
95
83
71
109
94
82
70
108
93
81
69
69
70
71
72
73
74
75
76
77
78
79
80
81
107
92
80
68
56
57
58
59
60
61
62
63
64
65
66
67
68
82
106
91
79
67
55
83
105
90
78
66
54
84
104
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
65
53
85
103
78
64
64
52
86
102
79
63
63
51
87
101
80
62
62
50
88
89
90
91
92
93
94
95
96
97
98
99
100
81
61
61
60
59
58
57
56
55
54
53
52
51
50
49
89
101
82
60
60
48
90
102
83
59
59
47
91
103
84
58
58
46
92
104
85
57
57
45
93
105
86
56
56
44
94
106
87
55
55
43
95
107
88
54
54
42
96
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
41
97
100
88
54
40
40
98
99
87
55
39
39
99
98
86
56
38
38
100
97
85
57
37
37
101
96
84
58
36
36
102
95
83
59
35
35
103
94
82
60
34
34
104
93
81
61
33
33
105
92
80
62
32
32
106
91
79
63
31
31
107
90
78
64
30
30
116
115
114
113
112
111
110
109
108
109
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
77
76
75
74
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
117
102
88
30
16
38
118
103
87
31
15
39
119
104
86
32
14
40
120
105
85
33
13
41
121
106
84
34
12
42
122
107
83
35
11
43
123
108
82
36
10
44
124
109
81
37
9
43
125
110
80
38
8
42
126
111
79
39
7
41
127
112
78
40
6
40
128
121
120
119
118
117
116
115
114
113
77
76
75
74
73
72
71
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
5
4
3
2
1
0
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
185
197
177
165
161
149
184
196
176
164
160
148
183
195
175
163
159
147
182
194
174
162
158
146
181
193
173
161
157
145
180
192
172
160
156
144
179
191
171
159
155
143
178
190
170
158
154
142
177
189
169
157
153
141
176
188
168
156
152
140
175
187
167
155
151
139
174
186
166
154
153
152
151
150
149
148
147
146
145
144
143
142
154
150
138
173
185
165
153
141
153
149
137
172
184
164
152
140
152
148
136
171
183
163
151
139
151
147
135
170
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
150
138
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
134
169
173
161
149
137
149
137
133
168
172
160
148
136
148
136
132
167
171
159
147
135
147
135
131
166
170
158
146
134
146
134
130
165
169
157
145
133
145
133
129
164
168
156
144
132
144
132
128
163
167
155
143
131
143
131
127
162
166
154
142
130
142
130
126
161
165
153
141
129
141
129
125
160
164
152
140
128
140
128
124
159
163
151
139
127
139
127
123
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
150
149
148
147
146
145
144
143
142
141
140
139
138
126
127
128
129
130
131
132
133
134
135
136
137
138
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
149
137
125
113
148
136
124
112
147
135
123
111
146
134
122
110
145
133
121
109
144
132
120
108
143
131
119
107
142
130
118
106
141
129
117
105
140
128
116
104
139
127
115
103
138
137
136
135
134
133
132
131
130
129
128
127
126
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
99
100
101
102
139
125
113
101
89
103
140
124
112
100
88
104
140
123
111
99
87
105
139
122
110
98
86
106
138
121
109
97
85
107
137
120
108
96
84
108
136
119
107
95
83
109
123
124
125
126
127
128
129
130
131
132
133
134
135
118
106
94
82
110
111
112
113
114
115
116
117
118
119
120
121
122
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
101
89
77
112
111
110
109
108
107
106
105
104
103
102
101
100
88
87
86
85
84
83
82
81
80
79
78
77
76
113
99
87
75
113
98
86
74
112
97
85
73
111
96
84
72
110
95
83
71
109
94
82
70
70
71
72
73
74
75
76
77
78
79
80
81
82
108
93
81
69
57
58
59
60
61
62
63
64
65
66
67
68
69
83
107
92
80
68
56
84
106
91
79
67
55
85
105
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
66
54
86
104
79
65
65
53
87
103
80
64
64
52
88
102
81
63
63
51
89
90
91
92
93
94
95
96
97
98
99
100
101
82
62
62
61
60
59
58
57
56
55
54
53
52
51
50
90
102
83
61
61
49
91
103
84
60
60
48
92
104
85
59
59
47
93
105
86
58
58
46
94
106
87
57
57
45
95
107
88
56
56
44
96
108
89
55
55
43
97
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
42
98
101
89
55
41
41
99
100
88
56
40
40
100
99
87
57
39
39
101
98
86
58
38
38
102
97
85
59
37
37
103
96
84
60
36
36
104
95
83
61
35
35
105
94
82
62
34
34
106
93
81
63
33
33
107
92
80
64
32
32
108
91
79
65
31
31
117
116
115
114
113
112
111
110
109
110
111
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
78
77
76
75
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
118
103
89
31
17
39
119
104
88
32
16
40
120
105
87
33
15
41
121
106
86
34
14
42
122
107
85
35
13
43
123
108
84
36
12
44
124
109
83
37
11
43
125
110
82
38
10
42
126
111
81
39
9
41
127
112
80
40
8
40
128
113
79
41
7
39
129
122
121
120
119
118
117
116
115
114
78
77
76
75
74
73
72
71
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
6
5
4
3
2
1
0
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
186
198
178
166
162
150
185
197
177
165
161
149
184
196
176
164
160
148
183
195
175
163
159
147
182
194
174
162
158
146
181
193
173
161
157
145
180
192
172
160
156
144
179
191
171
159
155
143
178
190
170
158
154
142
177
189
169
157
153
141
176
188
168
156
152
140
175
187
167
155
154
153
152
151
150
149
148
147
146
145
144
143
155
151
139
174
186
166
154
142
154
150
138
173
185
165
153
141
153
149
137
172
184
164
152
140
152
148
136
171
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
151
139
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
135
170
174
162
150
138
150
138
134
169
173
161
149
137
149
137
133
168
172
160
148
136
148
136
132
167
171
159
147
135
147
135
131
166
170
158
146
134
146
134
130
165
169
157
145
133
145
133
129
164
168
156
144
132
144
132
128
163
167
155
143
131
143
131
127
162
166
154
142
130
142
130
126
161
165
153
141
129
141
129
125
160
164
152
140
128
140
128
124
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
151
150
149
148
147
146
145
144
143
142
141
140
139
127
128
129
130
131
132
133
134
135
136
137
138
139
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
150
138
126
114
149
137
125
113
148
136
124
112
147
135
123
111
146
134
122
110
145
133
121
109
144
132
120
108
143
131
119
107
142
130
118
106
141
129
117
105
140
128
116
104
139
138
137
136
135
134
133
132
131
130
129
128
127
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
100
101
102
103
140
126
114
102
90
104
141
125
113
101
89
105
141
124
112
100
88
106
140
123
111
99
87
107
139
122
110
98
86
108
138
121
109
97
85
109
137
120
108
96
84
110
124
125
126
127
128
129
130
131
132
133
134
135
136
119
107
95
83
111
112
113
114
115
116
117
118
119
120
121
122
123
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
102
90
78
113
112
111
110
109
108
107
106
105
104
103
102
101
89
88
87
86
85
84
83
82
81
80
79
78
77
114
100
88
76
114
99
87
75
113
98
86
74
112
97
85
73
111
96
84
72
110
95
83
71
71
72
73
74
75
76
77
78
79
80
81
82
83
109
94
82
70
58
59
60
61
62
63
64
65
66
67
68
69
70
84
108
93
81
69
57
85
107
92
80
68
56
86
106
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
67
55
87
105
80
66
66
54
88
104
81
65
65
53
89
103
82
64
64
52
90
91
92
93
94
95
96
97
98
99
100
101
102
83
63
63
62
61
60
59
58
57
56
55
54
53
52
51
91
103
84
62
62
50
92
104
85
61
61
49
93
105
86
60
60
48
94
106
87
59
59
47
95
107
88
58
58
46
96
108
89
57
57
45
97
109
90
56
56
44
98
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
43
99
102
90
56
42
42
100
101
89
57
41
41
101
100
88
58
40
40
102
99
87
59
39
39
103
98
86
60
38
38
104
97
85
61
37
37
105
96
84
62
36
36
106
95
83
63
35
35
107
94
82
64
34
34
108
93
81
65
33
33
109
92
80
66
32
32
118
117
116
115
114
113
112
111
110
111
112
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
79
78
77
76
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
119
104
90
32
18
40
120
105
89
33
17
41
121
106
88
34
16
42
122
107
87
35
15
43
123
108
86
36
14
44
124
109
85
37
13
43
125
110
84
38
12
42
126
111
83
39
11
41
127
112
82
40
10
40
128
113
81
41
9
39
129
114
80
42
8
38
130
123
122
121
120
119
118
117
116
115
79
78
77
76
75
74
73
72
71
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
7
6
5
4
3
2
1
0
188
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
187
199
179
167
163
151
186
198
178
166
162
150
185
197
177
165
161
149
184
196
176
164
160
148
183
195
175
163
159
147
182
194
174
162
158
146
181
193
173
161
157
145
180
192
172
160
156
144
179
191
171
159
155
143
178
190
170
158
154
142
177
189
169
157
153
141
176
188
168
156
155
154
153
152
151
150
149
148
147
146
145
144
156
152
140
175
187
167
155
143
155
151
139
174
186
166
154
142
154
150
138
173
185
165
153
141
153
149
137
172
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
152
140
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
136
171
175
163
151
139
151
139
135
170
174
162
150
138
150
138
134
169
173
161
149
137
149
137
133
168
172
160
148
136
148
136
132
167
171
159
147
135
147
135
131
166
170
158
146
134
146
134
130
165
169
157
145
133
145
133
129
164
168
156
144
132
144
132
128
163
167
155
143
131
143
131
127
162
166
154
142
130
142
130
126
161
165
153
141
129
141
129
125
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
152
151
150
149
148
147
146
145
144
143
142
141
140
128
129
130
131
132
133
134
135
136
137
138
139
140
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
151
139
127
115
150
138
126
114
149
137
125
113
148
136
124
112
147
135
123
111
146
134
122
110
145
133
121
109
144
132
120
108
143
131
119
107
142
130
118
106
141
129
117
105
140
139
138
137
136
135
134
133
132
131
130
129
128
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
101
102
103
104
141
127
115
103
91
105
142
126
114
102
90
106
142
125
113
101
89
107
141
124
112
100
88
108
140
123
111
99
87
109
139
122
110
98
86
110
138
121
109
97
85
111
125
126
127
128
129
130
131
132
133
134
135
136
137
120
108
96
84
112
113
114
115
116
117
118
119
120
121
122
123
124
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
103
91
79
114
113
112
111
110
109
108
107
106
105
104
103
102
90
89
88
87
86
85
84
83
82
81
80
79
78
115
101
89
77
115
100
88
76
114
99
87
75
113
98
86
74
112
97
85
73
111
96
84
72
72
73
74
75
76
77
78
79
80
81
82
83
84
110
95
83
71
59
60
61
62
63
64
65
66
67
68
69
70
71
85
109
94
82
70
58
86
108
93
81
69
57
87
107
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
68
56
88
106
81
67
67
55
89
105
82
66
66
54
90
104
83
65
65
53
91
92
93
94
95
96
97
98
99
100
101
102
103
84
64
64
63
62
61
60
59
58
57
56
55
54
53
52
92
104
85
63
63
51
93
105
86
62
62
50
94
106
87
61
61
49
95
107
88
60
60
48
96
108
89
59
59
47
97
109
90
58
58
46
98
110
91
57
57
45
99
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
44
100
103
91
57
43
43
101
102
90
58
42
42
102
101
89
59
41
41
103
100
88
60
40
40
104
99
87
61
39
39
105
98
86
62
38
38
106
97
85
63
37
37
107
96
84
64
36
36
108
95
83
65
35
35
109
94
82
66
34
34
110
93
81
67
33
33
119
118
117
116
115
114
113
112
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
79
78
77
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
120
105
91
33
19
41
121
106
90
34
18
42
122
107
89
35
17
43
123
108
88
36
16
44
124
109
87
37
15
43
125
110
86
38
14
42
126
111
85
39
13
41
127
112
84
40
12
40
128
113
83
41
11
39
129
114
82
42
10
38
130
115
81
43
9
37
131
124
123
122
121
120
119
118
117
116
80
79
78
77
76
75
74
73
72
71
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
8
7
6
5
4
3
2
1
0
179
180
181
182
183
184
185
186
187
188
189
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
178
187
167
155
151
139
177
186
166
154
150
138
176
185
165
153
149
137
175
184
164
152
148
136
174
183
163
151
147
135
173
182
162
150
146
134
172
181
161
149
145
133
171
180
160
148
144
132
170
179
159
147
143
131
169
178
158
146
142
130
168
177
157
145
141
129
167
176
156
144
143
142
141
140
139
138
137
136
135
134
133
132
144
140
128
166
175
155
143
131
143
139
127
165
174
154
142
130
142
138
126
164
173
153
141
129
141
137
125
163
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
140
128
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
124
162
165
151
139
127
139
127
123
161
165
150
138
126
138
126
122
160
164
149
137
125
137
125
121
159
163
148
136
124
136
124
120
158
162
147
135
123
135
123
119
157
161
146
134
122
134
122
118
156
160
145
133
121
133
121
117
155
159
144
132
120
132
120
116
154
158
143
131
119
131
119
115
153
157
142
130
118
130
118
114
152
156
141
129
117
129
117
113
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
140
139
138
137
136
135
134
133
132
131
130
129
128
116
117
118
119
120
121
122
123
124
125
126
127
128
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
142
127
115
103
141
126
114
102
140
125
113
101
139
124
112
100
138
123
111
99
137
122
110
98
136
121
109
97
135
120
108
96
134
119
107
95
133
118
106
94
132
117
105
93
131
130
129
128
127
126
125
124
123
122
121
120
119
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
80
81
82
83
84
85
86
87
88
89
90
91
92
132
118
127
91
79
93
131
117
126
90
78
94
130
116
125
89
77
95
129
115
124
88
76
96
128
114
123
87
75
97
127
113
122
86
74
98
126
112
121
85
73
99
113
114
115
116
117
118
119
120
121
122
123
124
125
111
120
84
72
100
101
102
103
104
105
106
107
108
109
110
111
112
110
119
83
71
109
118
82
70
108
117
81
69
107
116
80
68
106
115
79
67
105
106
107
108
109
110
111
112
113
114
115
115
114
78
77
76
75
74
73
72
71
70
69
68
67
66
104
113
79
65
103
112
80
64
102
111
81
63
101
110
82
62
100
109
83
61
99
108
84
60
60
61
62
63
64
65
66
67
68
69
70
71
72
98
107
85
59
47
48
49
50
51
52
53
54
55
56
57
58
59
73
97
106
86
58
46
74
96
105
87
57
45
75
95
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
89
88
56
44
76
94
93
79
55
43
77
93
94
78
54
42
78
92
95
77
53
41
79
80
81
82
83
84
85
86
87
88
89
90
91
96
76
52
51
50
49
48
47
46
45
44
43
42
41
40
80
92
97
75
53
39
81
93
98
74
54
38
82
94
99
73
55
37
83
95
100
72
56
36
84
96
101
71
57
35
85
97
102
70
58
34
86
98
103
69
59
33
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
63
62
61
60
32
88
112
103
69
55
31
89
113
102
70
54
30
90
113
101
71
53
29
91
112
100
72
52
28
92
111
99
73
51
27
93
110
98
74
50
26
94
109
97
75
49
25
95
108
96
76
48
24
96
107
95
77
47
23
97
106
94
78
46
22
98
105
93
79
45
21
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
92
91
90
89
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
108
112
103
45
33
11
109
113
102
46
34
10
110
114
101
47
35
9
111
115
100
48
36
8
112
116
99
49
37
7
113
117
98
50
38
6
114
118
97
51
39
5
115
119
96
52
40
4
116
120
95
53
41
3
117
121
94
54
42
2
118
122
93
55
43
1
119
131
130
129
128
127
126
125
124
123
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
44
43
42
41
40
39
38
37
36
0
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
190
189
188
187
186
185
184
183
182
181
180
140
152
156
168
188
179
139
151
155
167
187
178
138
150
154
166
186
177
137
149
153
165
185
176
136
148
152
164
184
175
135
147
151
163
183
174
134
146
150
162
182
173
133
145
149
161
181
172
132
144
148
160
180
171
131
143
147
159
179
170
130
142
146
158
178
169
129
141
145
133
134
135
136
137
138
139
140
141
142
143
144
145
157
177
168
128
140
144
132
144
156
176
167
127
139
143
131
143
155
175
166
126
138
142
130
142
154
174
165
125
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
129
141
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
164
124
128
140
128
140
152
166
163
123
127
139
127
139
151
166
162
122
126
138
126
138
150
165
161
121
125
137
125
137
149
164
160
120
124
136
124
136
148
163
159
119
123
135
123
135
147
162
158
118
122
134
122
134
146
161
157
117
121
133
121
133
145
160
156
116
120
132
120
132
144
159
155
115
119
131
119
131
143
158
154
114
118
130
118
130
142
157
153
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
117
129
128
127
126
125
124
123
122
121
120
119
118
117
129
130
131
132
133
134
135
136
137
138
139
140
141
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
104
116
128
143
103
115
127
142
102
114
126
141
101
113
125
140
100
112
124
139
99
111
123
138
98
110
122
137
97
109
121
136
96
108
120
135
95
107
119
134
94
106
118
133
93
92
91
90
89
88
87
86
85
84
83
82
81
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
120
121
122
123
124
125
126
127
128
129
130
131
132
94
80
92
128
119
133
95
79
91
127
118
132
96
78
90
126
117
131
97
77
89
125
116
130
98
76
88
124
115
129
99
75
87
123
114
128
100
74
86
122
113
127
113
112
111
110
109
108
107
106
105
104
103
102
101
73
85
121
112
126
125
124
123
122
121
120
119
118
117
116
115
114
72
84
120
111
71
83
119
110
70
82
118
109
69
81
117
108
68
80
116
107
67
68
69
70
71
72
73
74
75
76
77
78
79
115
116
116
115
114
113
112
111
110
109
108
107
106
66
80
114
105
65
81
113
104
64
82
112
103
63
83
111
102
62
84
110
101
61
85
109
100
60
59
58
57
56
55
54
53
52
51
50
49
48
60
86
108
99
73
72
71
70
69
68
67
66
65
64
63
62
61
47
59
87
107
98
74
46
58
88
106
97
75
45
57
89
90
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
96
76
44
56
80
94
95
77
43
55
79
95
94
78
42
54
78
96
93
79
41
42
43
44
45
46
47
48
49
50
51
52
53
77
97
92
91
90
89
88
87
86
85
84
83
82
81
80
40
54
76
98
93
81
39
55
75
99
94
82
38
56
74
100
95
83
37
57
73
101
96
84
36
58
72
102
97
85
35
59
71
103
98
86
34
60
70
104
99
87
33
61
62
63
64
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
32
56
70
104
113
89
31
55
71
103
113
90
30
54
72
102
112
91
29
53
73
101
111
92
28
52
74
100
110
93
27
51
75
99
109
94
26
50
76
98
108
95
25
49
77
97
107
96
24
48
78
96
106
97
23
47
79
95
105
98
22
46
80
94
104
99
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
90
91
92
93
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
12
34
46
102
113
109
11
35
47
101
114
110
10
36
48
100
115
111
9
37
49
99
116
112
8
38
50
98
117
113
7
39
51
97
118
114
6
40
52
96
119
115
5
41
53
95
120
116
4
42
54
94
121
117
3
43
55
93
122
118
2
44
56
92
123
119
1
35
36
37
38
39
40
41
42
43
57
58
59
60
61
62
63
64
65
66
67
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
124
125
126
127
128
129
130
131
132
120
0
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
152
164
168
180
200
188
151
163
167
179
199
187
150
162
166
178
198
186
149
161
165
177
197
185
148
160
164
176
196
184
147
159
163
175
195
183
146
158
162
174
194
182
145
157
161
173
193
181
144
156
160
172
192
180
143
155
159
171
191
179
142
154
158
170
190
178
141
153
157
145
146
147
148
149
150
151
152
153
154
155
156
157
169
189
177
140
152
156
144
156
168
188
176
139
151
155
143
155
167
187
175
138
150
154
142
154
166
186
174
137
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
141
153
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
173
136
140
152
140
152
164
176
172
135
139
151
139
151
163
175
171
134
138
150
138
150
162
174
170
133
137
149
137
149
161
173
169
132
136
148
136
148
160
172
168
131
135
147
135
147
159
171
167
130
134
146
134
146
158
170
166
129
133
145
133
145
157
169
165
128
132
144
132
144
156
168
164
127
131
143
131
143
155
167
163
126
130
142
130
142
154
166
162
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
141
140
139
138
137
136
135
134
133
132
131
130
129
141
142
143
144
145
146
147
148
149
150
151
152
153
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
116
128
140
152
115
127
139
151
114
126
138
150
113
125
137
149
112
124
136
148
111
123
135
147
110
122
134
146
109
121
133
145
108
120
132
144
107
119
131
143
106
118
130
142
105
104
103
102
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
129
130
131
132
133
134
135
136
137
138
139
140
141
106
92
104
116
128
142
107
91
103
115
127
143
108
90
102
114
126
143
109
89
101
113
125
142
110
88
100
112
124
141
111
87
99
111
123
140
112
86
98
110
122
139
125
124
123
122
121
120
119
118
117
116
115
114
113
85
97
109
121
138
137
136
135
134
133
132
131
130
129
128
127
126
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
92
104
116
79
80
81
82
83
84
85
86
87
88
89
90
91
103
104
105
106
107
108
109
110
111
112
113
114
115
78
90
102
116
77
89
101
116
76
88
100
115
75
87
99
114
74
86
98
113
73
85
97
112
72
71
70
69
68
67
66
65
64
63
62
61
60
72
84
96
111
85
84
83
82
81
80
79
78
77
76
75
74
73
59
71
83
95
110
86
58
70
82
94
109
87
57
69
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
108
88
56
68
68
82
107
89
55
67
67
83
106
90
54
66
66
84
105
91
53
54
55
56
57
58
59
60
61
62
63
64
65
65
85
104
103
102
101
100
99
98
97
96
95
94
93
92
52
64
64
86
105
93
51
63
63
87
106
94
50
62
62
88
107
95
49
61
61
89
108
96
48
60
60
90
109
97
47
59
59
91
110
98
46
58
58
92
111
99
45
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
93
94
95
96
97
98
99
100
101
102
103
104
103
104
105
106
107
108
109
110
111
112
113
113
112
100
44
44
58
92
102
101
43
43
59
91
101
102
42
42
60
90
100
103
41
41
61
89
99
104
40
40
62
88
98
105
39
39
63
87
97
106
38
38
64
86
96
107
37
37
65
85
95
108
36
36
66
84
94
109
35
35
67
83
93
110
34
34
68
82
92
111
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
73
74
75
76
77
78
79
80
81
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
113
114
115
116
117
118
119
120
42
20
34
90
104
121
43
19
35
89
105
122
44
18
36
88
106
123
43
17
37
87
107
124
42
16
38
86
108
125
41
15
39
85
109
126
40
14
40
84
110
127
39
13
41
83
111
128
38
12
42
82
112
129
37
11
43
81
113
130
36
10
44
80
114
131
35
1
2
3
4
5
6
7
8
9
45
46
47
48
49
50
51
52
53
54
55
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
115
116
117
118
119
120
121
122
123
132
34
0
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
144
156
160
172
168
156
143
155
159
171
167
155
142
154
158
170
166
154
141
153
157
169
165
153
140
152
156
168
164
152
139
151
155
167
163
151
138
150
154
166
162
150
137
149
153
165
161
149
136
148
152
164
160
148
135
147
151
163
159
147
134
146
150
162
158
146
133
145
149
137
138
139
140
141
142
143
144
145
146
147
148
149
161
157
145
132
144
148
136
148
160
156
144
131
143
147
135
147
159
155
143
130
142
146
134
146
158
154
142
129
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
133
145
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
141
128
132
144
132
144
156
144
140
127
131
143
131
143
155
143
139
126
130
142
130
142
154
142
138
125
129
141
129
141
153
141
137
124
128
140
128
140
152
140
136
123
127
139
127
139
151
139
135
122
126
138
126
138
150
138
134
121
125
137
125
137
149
137
133
120
124
136
124
136
148
136
132
119
123
135
123
135
147
135
131
118
122
134
122
134
146
134
130
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
133
132
131
130
129
128
127
126
125
124
123
122
121
133
134
135
136
137
138
139
140
141
142
143
144
145
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
108
120
132
120
107
119
131
119
106
118
130
118
105
117
129
117
104
116
128
116
103
115
127
115
102
114
126
114
101
113
125
113
100
112
124
112
99
111
123
111
98
110
122
110
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
98
84
96
108
96
110
99
83
95
107
95
111
100
82
94
106
94
112
101
81
93
105
93
113
102
80
92
104
92
114
103
79
91
103
91
115
104
78
90
102
90
116
117
116
115
114
113
112
111
110
109
108
107
106
105
77
89
101
89
117
118
119
120
121
122
123
123
122
121
120
119
118
76
88
100
88
75
87
99
87
74
86
98
86
73
85
97
85
72
84
96
84
71
72
73
74
75
76
77
78
79
80
81
82
83
95
94
93
92
91
90
89
88
87
86
85
84
83
70
82
94
82
69
81
93
81
68
80
92
80
67
79
91
79
66
78
90
78
65
77
89
77
88
87
86
85
84
83
82
81
80
79
78
77
76
64
76
88
76
88
89
90
91
92
93
94
94
93
92
91
90
89
75
63
75
87
75
87
74
62
74
86
74
86
73
61
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
73
85
72
60
60
72
72
84
71
59
59
71
71
83
70
58
58
70
70
82
69
68
67
66
65
64
63
62
61
60
59
58
57
57
69
69
70
71
72
73
74
75
76
77
78
79
80
81
68
56
56
68
68
80
67
55
55
67
67
79
66
54
54
66
66
78
65
53
53
65
65
77
64
52
52
64
64
76
63
51
51
63
63
75
62
50
50
62
62
74
61
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
73
60
36
50
62
48
72
59
35
51
63
47
71
58
34
52
64
46
70
57
33
53
65
45
69
56
32
54
66
44
68
55
31
55
67
43
67
54
30
56
68
42
66
53
29
57
69
41
65
52
28
58
70
40
64
51
27
59
71
39
63
50
26
60
72
38
62
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
61
62
63
64
65
66
67
68
69
70
71
72
73
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
58
38
24
36
50
70
59
39
23
35
51
71
60
40
22
34
52
72
61
41
21
33
53
73
62
42
20
32
54
74
63
43
19
31
55
75
64
44
18
30
56
76
65
45
17
29
57
77
66
46
16
28
58
78
67
47
15
27
59
79
68
48
14
26
60
80
67
55
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
61
62
63
64
65
66
67
68
69
81
66
54
0
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
156
168
172
160
156
144
155
167
171
159
155
143
154
166
170
158
154
142
153
165
169
157
153
141
152
164
168
156
152
140
151
163
167
155
151
139
150
162
166
154
150
138
149
161
165
153
149
137
148
160
164
152
148
136
147
159
163
151
147
135
146
158
162
150
146
134
145
157
161
149
148
147
146
145
144
143
142
141
140
139
138
137
149
145
133
144
156
160
148
136
148
144
132
143
155
159
147
135
147
143
131
142
154
158
146
134
146
142
130
141
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
145
133
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
129
140
144
156
144
132
144
132
128
139
143
155
143
131
143
131
127
138
142
154
142
130
142
130
126
137
141
153
141
129
141
129
125
136
140
152
140
128
140
128
124
135
139
151
139
127
139
127
123
134
138
150
138
126
138
126
122
133
137
149
137
125
137
125
121
132
136
148
136
124
136
124
120
131
135
147
135
123
135
123
119
130
134
146
134
122
134
122
118
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
145
144
143
142
141
140
139
138
137
136
135
134
133
121
122
123
124
125
126
127
128
129
130
131
132
133
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
120
132
120
108
119
131
119
107
118
130
118
106
117
129
117
105
116
128
116
104
115
127
115
103
114
126
114
102
113
125
113
101
112
124
112
100
111
123
111
99
110
122
110
98
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
110
96
108
96
84
98
111
95
107
95
83
99
112
94
106
94
82
100
113
93
105
93
81
101
114
92
104
92
80
102
115
91
103
91
79
103
116
90
102
90
78
104
118
119
120
121
122
123
123
122
121
120
119
118
117
89
101
89
77
105
106
107
108
109
110
111
112
113
114
115
116
117
88
100
88
76
87
99
87
75
86
98
86
74
85
97
85
73
84
96
84
72
83
84
85
86
87
88
89
90
91
92
93
94
95
83
82
81
80
79
78
77
76
75
74
73
72
71
82
94
82
70
81
93
81
69
80
92
80
68
79
91
79
67
78
90
78
66
77
89
77
65
89
90
91
92
93
94
94
93
92
91
90
89
88
76
88
76
64
76
77
78
79
80
81
82
83
84
85
86
87
88
87
75
87
75
63
75
86
74
86
74
62
74
85
73
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
61
73
84
72
72
60
60
72
83
71
71
59
59
71
82
70
70
58
58
70
81
80
79
78
77
76
75
74
73
72
71
70
69
69
57
57
58
59
60
61
62
63
64
65
66
67
68
69
80
68
68
56
56
68
79
67
67
55
55
67
78
66
66
54
54
66
77
65
65
53
53
65
76
64
64
52
52
64
75
63
63
51
51
63
74
62
62
50
50
62
73
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
61
72
48
62
50
36
60
71
47
63
51
35
59
70
46
64
52
34
58
69
45
65
53
33
57
68
44
66
54
32
56
67
43
67
55
31
55
66
42
68
56
30
54
65
41
69
57
29
53
64
40
70
58
28
52
63
39
71
59
27
51
62
38
72
60
26
50
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
40
39
38
37
73
72
71
70
69
68
67
66
65
64
63
62
61
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
70
50
36
24
38
58
71
51
35
23
39
59
72
52
34
22
40
60
73
53
33
21
41
61
74
54
32
20
42
62
75
55
31
19
43
63
76
56
30
18
44
64
77
57
29
17
45
65
78
58
28
16
46
66
79
59
27
15
47
67
80
60
26
14
48
68
81
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2
3
4
5
6
7
8
9
10
11
12
13
49
50
51
52
53
54
55
56
55
67
80
68
14
0
189
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
188
200
180
168
164
152
187
199
179
167
163
151
186
198
178
166
162
150
185
197
177
165
161
149
184
196
176
164
160
148
183
195
175
163
159
147
182
194
174
162
158
146
181
193
173
161
157
145
180
192
172
160
156
144
179
191
171
159
155
143
178
190
170
158
154
142
177
189
169
157
156
155
154
153
152
151
150
149
148
147
146
145
157
153
141
176
188
168
156
144
156
152
140
175
187
167
155
143
155
151
139
174
186
166
154
142
154
150
138
173
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
153
141
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
137
172
176
164
152
140
152
140
136
171
175
163
151
139
151
139
135
170
174
162
150
138
150
138
134
169
173
161
149
137
149
137
133
168
172
160
148
136
148
136
132
167
171
159
147
135
147
135
131
166
170
158
146
134
146
134
130
165
169
157
145
133
145
133
129
164
168
156
144
132
144
132
128
163
167
155
143
131
143
131
127
162
166
154
142
130
142
130
126
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
153
152
151
150
149
148
147
146
145
144
143
142
141
129
130
131
132
133
134
135
136
137
138
139
140
141
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
152
140
128
116
151
139
127
115
150
138
126
114
149
137
125
113
148
136
124
112
147
135
123
111
146
134
122
110
145
133
121
109
144
132
120
108
143
131
119
107
142
130
118
106
141
140
139
138
137
136
135
134
133
132
131
130
129
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
102
103
104
105
142
128
116
104
92
106
143
127
115
103
91
107
143
126
114
102
90
108
142
125
113
101
89
109
141
124
112
100
88
110
140
123
111
99
87
111
139
122
110
98
86
112
126
127
128
129
130
131
132
133
134
135
136
137
138
121
109
97
85
113
114
115
116
117
118
119
120
121
122
123
124
125
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
104
92
80
115
114
113
112
111
110
109
108
107
106
105
104
103
91
90
89
88
87
86
85
84
83
82
81
80
79
116
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
113
98
86
74
112
97
85
73
73
74
75
76
77
78
79
80
81
82
83
84
85
111
96
84
72
60
61
62
63
64
65
66
67
68
69
70
71
72
86
110
95
83
71
59
87
109
94
82
70
58
88
108
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
69
57
89
107
82
68
68
56
90
106
83
67
67
55
91
105
84
66
66
54
92
93
94
95
96
97
98
99
100
101
102
103
104
85
65
65
64
63
62
61
60
59
58
57
56
55
54
53
93
105
86
64
64
52
94
106
87
63
63
51
95
107
88
62
62
50
96
108
89
61
61
49
97
109
90
60
60
48
98
110
91
59
59
47
99
111
92
58
58
46
100
112
113
113
112
111
110
109
108
107
106
105
104
103
104
103
102
101
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
45
101
102
92
58
44
44
102
101
91
59
43
43
103
100
90
60
42
42
104
99
89
61
41
41
105
98
88
62
40
40
106
97
87
63
39
39
107
96
86
64
38
38
108
95
85
65
37
37
109
94
84
66
36
36
110
93
83
67
35
35
111
92
82
68
34
34
120
119
118
117
116
115
114
113
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
81
80
79
78
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
121
104
90
34
20
42
122
105
89
35
19
43
123
106
88
36
18
44
124
107
87
37
17
43
125
108
86
38
16
42
126
109
85
39
15
41
127
110
84
40
14
40
128
111
83
41
13
39
129
112
82
42
12
38
130
113
81
43
11
37
131
114
80
44
10
36
132
123
122
121
120
119
118
117
116
115
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
55
54
53
52
51
50
49
48
47
46
45
9
8
7
6
5
4
3
2
1
35
133
122
68
54
0
180
181
182
183
184
185
186
187
188
189
190
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
179
188
168
156
152
140
178
187
167
155
151
139
177
186
166
154
150
138
176
185
165
153
149
137
175
184
164
152
148
136
174
183
163
151
147
135
173
182
162
150
146
134
172
181
161
149
145
133
171
180
160
148
144
132
170
179
159
147
143
131
169
178
158
146
142
130
168
177
157
145
144
143
142
141
140
139
138
137
136
135
134
133
145
141
129
167
176
156
144
132
144
140
128
166
175
155
143
131
143
139
127
165
174
154
142
130
142
138
126
164
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
141
129
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
125
163
166
152
140
128
140
128
124
162
166
151
139
127
139
127
123
161
165
150
138
126
138
126
122
160
164
149
137
125
137
125
121
159
163
148
136
124
136
124
120
158
162
147
135
123
135
123
119
157
161
146
134
122
134
122
118
156
160
145
133
121
133
121
117
155
159
144
132
120
132
120
116
154
158
143
131
119
131
119
115
153
157
142
130
118
130
118
114
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
141
140
139
138
137
136
135
134
133
132
131
130
129
117
118
119
120
121
122
123
124
125
126
127
128
129
117
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
143
128
116
104
142
127
115
103
141
126
114
102
140
125
113
101
139
124
112
100
138
123
111
99
137
122
110
98
136
121
109
97
135
120
108
96
134
119
107
95
133
118
106
94
132
131
130
129
128
127
126
125
124
123
122
121
120
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
81
82
83
84
85
86
87
88
89
90
91
92
93
133
119
128
92
80
94
132
118
127
91
79
95
131
117
126
90
78
96
130
116
125
89
77
97
129
115
124
88
76
98
128
114
123
87
75
99
127
113
122
86
74
100
114
115
116
117
118
119
120
121
122
123
124
125
126
112
121
85
73
101
102
103
104
105
106
107
108
109
110
111
112
113
111
120
84
72
110
119
83
71
109
118
82
70
108
117
81
69
107
116
80
68
106
107
108
109
110
111
112
113
114
115
116
116
115
79
78
77
76
75
74
73
72
71
70
69
68
67
105
114
80
66
104
113
81
65
103
112
82
64
102
111
83
63
101
110
84
62
100
109
85
61
61
62
63
64
65
66
67
68
69
70
71
72
73
99
108
86
60
48
49
50
51
52
53
54
55
56
57
58
59
60
74
98
107
87
59
47
75
97
106
88
58
46
76
96
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
90
89
57
45
77
95
94
80
56
44
78
94
95
79
55
43
79
93
96
78
54
42
80
81
82
83
84
85
86
87
88
89
90
91
92
97
77
53
52
51
50
49
48
47
46
45
44
43
42
41
81
93
98
76
54
40
82
94
99
75
55
39
83
95
100
74
56
38
84
96
101
73
57
37
85
97
102
72
58
36
86
98
103
71
59
35
87
99
104
70
60
34
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
114
113
112
111
110
109
108
107
106
105
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
64
63
62
61
33
89
113
104
70
56
32
90
113
103
71
55
31
91
112
102
72
54
30
92
111
101
73
53
29
93
110
100
74
52
28
94
109
99
75
51
27
95
108
98
76
50
26
96
107
97
77
49
25
97
106
96
78
48
24
98
105
95
79
47
23
99
104
94
80
46
22
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
93
92
91
90
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
109
113
102
46
34
12
110
114
101
47
35
11
111
115
100
48
36
10
112
116
99
49
37
9
113
117
98
50
38
8
114
118
97
51
39
7
115
119
96
52
40
6
116
120
95
53
41
5
117
121
94
54
42
4
118
122
93
55
43
3
119
123
92
56
44
2
120
132
131
130
129
128
127
126
125
124
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
67
66
65
64
63
62
61
60
59
58
57
43
42
41
40
39
38
37
36
35
1
121
133
80
66
34
0
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
191
190
189
188
187
186
185
184
183
182
181
141
153
157
169
189
180
140
152
156
168
188
179
139
151
155
167
187
178
138
150
154
166
186
177
137
149
153
165
185
176
136
148
152
164
184
175
135
147
151
163
183
174
134
146
150
162
182
173
133
145
149
161
181
172
132
144
148
160
180
171
131
143
147
159
179
170
130
142
146
134
135
136
137
138
139
140
141
142
143
144
145
146
158
178
169
129
141
145
133
145
157
177
168
128
140
144
132
144
156
176
167
127
139
143
131
143
155
175
166
126
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
130
142
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
165
125
129
141
129
141
153
167
164
124
128
140
128
140
152
167
163
123
127
139
127
139
151
166
162
122
126
138
126
138
150
165
161
121
125
137
125
137
149
164
160
120
124
136
124
136
148
163
159
119
123
135
123
135
147
162
158
118
122
134
122
134
146
161
157
117
121
133
121
133
145
160
156
116
120
132
120
132
144
159
155
115
119
131
119
131
143
158
154
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
117
118
130
129
128
127
126
125
124
123
122
121
120
119
118
130
131
132
133
134
135
136
137
138
139
140
141
142
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
105
117
129
144
104
116
128
143
103
115
127
142
102
114
126
141
101
113
125
140
100
112
124
139
99
111
123
138
98
110
122
137
97
109
121
136
96
108
120
135
95
107
119
134
94
93
92
91
90
89
88
87
86
85
84
83
82
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
121
122
123
124
125
126
127
128
129
130
131
132
133
95
81
93
129
120
134
96
80
92
128
119
133
97
79
91
127
118
132
98
78
90
126
117
131
99
77
89
125
116
130
100
76
88
124
115
129
101
75
87
123
114
128
114
113
112
111
110
109
108
107
106
105
104
103
102
74
86
122
113
127
126
125
124
123
122
121
120
119
118
117
116
115
73
85
121
112
72
84
120
111
71
83
119
110
70
82
118
109
69
81
117
108
68
69
70
71
72
73
74
75
76
77
78
79
80
116
117
117
116
115
114
113
112
111
110
109
108
107
67
81
115
106
66
82
114
105
65
83
113
104
64
84
112
103
63
85
111
102
62
86
110
101
61
60
59
58
57
56
55
54
53
52
51
50
49
61
87
109
100
74
73
72
71
70
69
68
67
66
65
64
63
62
48
60
88
108
99
75
47
59
89
107
98
76
46
58
90
91
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
97
77
45
57
81
95
96
78
44
56
80
96
95
79
43
55
79
97
94
80
42
43
44
45
46
47
48
49
50
51
52
53
54
78
98
93
92
91
90
89
88
87
86
85
84
83
82
81
41
55
77
99
94
82
40
56
76
100
95
83
39
57
75
101
96
84
38
58
74
102
97
85
37
59
73
103
98
86
36
60
72
104
99
87
35
61
71
105
100
88
34
62
63
64
65
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
33
57
71
105
113
90
32
56
72
104
112
91
31
55
73
103
111
92
30
54
74
102
110
93
29
53
75
101
109
94
28
52
76
100
108
95
27
51
77
99
107
96
26
50
78
98
106
97
25
49
79
97
105
98
24
48
80
96
104
99
23
47
81
95
103
100
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
91
92
93
94
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
13
35
47
101
114
110
12
36
48
100
115
111
11
37
49
99
116
112
10
38
50
98
117
113
9
39
51
97
118
114
8
40
52
96
119
115
7
41
53
95
120
116
6
42
54
94
121
117
5
43
55
93
122
118
4
44
56
92
123
119
3
43
57
91
124
120
2
34
35
36
37
38
39
40
41
42
58
59
60
61
62
63
64
65
66
67
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
125
126
127
128
129
130
131
132
133
121
1
33
65
79
133
122
0
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
153
165
169
181
201
189
152
164
168
180
200
188
151
163
167
179
199
187
150
162
166
178
198
186
149
161
165
177
197
185
148
160
164
176
196
184
147
159
163
175
195
183
146
158
162
174
194
182
145
157
161
173
193
181
144
156
160
172
192
180
143
155
159
171
191
179
142
154
158
146
147
148
149
150
151
152
153
154
155
156
157
158
170
190
178
141
153
157
145
157
169
189
177
140
152
156
144
156
168
188
176
139
151
155
143
155
167
187
175
138
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
142
154
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
174
137
141
153
141
153
165
177
173
136
140
152
140
152
164
176
172
135
139
151
139
151
163
175
171
134
138
150
138
150
162
174
170
133
137
149
137
149
161
173
169
132
136
148
136
148
160
172
168
131
135
147
135
147
159
171
167
130
134
146
134
146
158
170
166
129
133
145
133
145
157
169
165
128
132
144
132
144
156
168
164
127
131
143
131
143
155
167
163
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
142
141
140
139
138
137
136
135
134
133
132
131
130
142
143
144
145
146
147
148
149
150
151
152
153
154
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
117
129
141
153
116
128
140
152
115
127
139
151
114
126
138
150
113
125
137
149
112
124
136
148
111
123
135
147
110
122
134
146
109
121
133
145
108
120
132
144
107
119
131
143
106
105
104
103
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
130
131
132
133
134
135
136
137
138
139
140
141
142
107
93
105
117
129
143
108
92
104
116
128
144
109
91
103
115
127
144
110
90
102
114
126
143
111
89
101
113
125
142
112
88
100
112
124
141
113
87
99
111
123
140
126
125
124
123
122
121
120
119
118
117
116
115
114
86
98
110
122
139
138
137
136
135
134
133
132
131
130
129
128
127
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
93
105
117
80
81
82
83
84
85
86
87
88
89
90
91
92
104
105
106
107
108
109
110
111
112
113
114
115
116
79
91
103
117
78
90
102
117
77
89
101
116
76
88
100
115
75
87
99
114
74
86
98
113
73
72
71
70
69
68
67
66
65
64
63
62
61
73
85
97
112
86
85
84
83
82
81
80
79
78
77
76
75
74
60
72
84
96
111
87
59
71
83
95
110
88
58
70
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
109
89
57
69
69
83
108
90
56
68
68
84
107
91
55
67
67
85
106
92
54
55
56
57
58
59
60
61
62
63
64
65
66
66
86
105
104
103
102
101
100
99
98
97
96
95
94
93
53
65
65
87
106
94
52
64
64
88
107
95
51
63
63
89
108
96
50
62
62
90
109
97
49
61
61
91
110
98
48
60
60
92
111
99
47
59
59
93
112
100
46
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
94
95
96
97
98
99
100
101
102
103
104
103
102
103
104
105
106
107
108
109
110
111
112
113
113
101
45
45
59
93
101
102
44
44
60
92
100
103
43
43
61
91
99
104
42
42
62
90
98
105
41
41
63
89
97
106
40
40
64
88
96
107
39
39
65
87
95
108
38
38
66
86
94
109
37
37
67
85
93
110
36
36
68
84
92
111
35
35
69
83
91
112
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
75
76
77
78
79
80
81
82
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
114
115
116
117
118
119
120
121
43
21
35
89
103
122
44
20
36
88
104
123
43
19
37
87
105
124
42
18
38
86
106
125
41
17
39
85
107
126
40
16
40
84
108
127
39
15
41
83
109
128
38
14
42
82
110
129
37
13
43
81
111
130
36
12
44
80
112
131
35
11
45
79
113
132
34
2
3
4
5
6
7
8
9
10
46
47
48
49
50
51
52
53
54
55
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
114
115
116
117
118
119
120
121
122
133
33
1
53
67
121
133
32
0
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
145
157
161
173
169
157
144
156
160
172
168
156
143
155
159
171
167
155
142
154
158
170
166
154
141
153
157
169
165
153
140
152
156
168
164
152
139
151
155
167
163
151
138
150
154
166
162
150
137
149
153
165
161
149
136
148
152
164
160
148
135
147
151
163
159
147
134
146
150
138
139
140
141
142
143
144
145
146
147
148
149
150
162
158
146
133
145
149
137
149
161
157
145
132
144
148
136
148
160
156
144
131
143
147
135
147
159
155
143
130
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
134
146
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
142
129
133
145
133
145
157
145
141
128
132
144
132
144
156
144
140
127
131
143
131
143
155
143
139
126
130
142
130
142
154
142
138
125
129
141
129
141
153
141
137
124
128
140
128
140
152
140
136
123
127
139
127
139
151
139
135
122
126
138
126
138
150
138
134
121
125
137
125
137
149
137
133
120
124
136
124
136
148
136
132
119
123
135
123
135
147
135
131
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
134
133
132
131
130
129
128
127
126
125
124
123
122
134
135
136
137
138
139
140
141
142
143
144
145
146
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
109
121
133
121
108
120
132
120
107
119
131
119
106
118
130
118
105
117
129
117
104
116
128
116
103
115
127
115
102
114
126
114
101
113
125
113
100
112
124
112
99
111
123
111
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
99
85
97
109
97
111
100
84
96
108
96
112
101
83
95
107
95
113
102
82
94
106
94
114
103
81
93
105
93
115
104
80
92
104
92
116
105
79
91
103
91
117
118
117
116
115
114
113
112
111
110
109
108
107
106
78
90
102
90
118
119
120
121
122
123
124
124
123
122
121
120
119
77
89
101
89
76
88
100
88
75
87
99
87
74
86
98
86
73
85
97
85
72
73
74
75
76
77
78
79
80
81
82
83
84
96
95
94
93
92
91
90
89
88
87
86
85
84
71
83
95
83
70
82
94
82
69
81
93
81
68
80
92
80
67
79
91
79
66
78
90
78
89
88
87
86
85
84
83
82
81
80
79
78
77
65
77
89
77
89
90
91
92
93
94
95
95
94
93
92
91
90
76
64
76
88
76
88
75
63
75
87
75
87
74
62
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
74
86
73
61
61
73
73
85
72
60
60
72
72
84
71
59
59
71
71
83
70
69
68
67
66
65
64
63
62
61
60
59
58
58
70
70
71
72
73
74
75
76
77
78
79
80
81
82
69
57
57
69
69
81
68
56
56
68
68
80
67
55
55
67
67
79
66
54
54
66
66
78
65
53
53
65
65
77
64
52
52
64
64
76
63
51
51
63
63
75
62
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
74
61
37
51
63
49
73
60
36
52
64
48
72
59
35
53
65
47
71
58
34
54
66
46
70
57
33
55
67
45
69
56
32
56
68
44
68
55
31
57
69
43
67
54
30
58
70
42
66
53
29
59
71
41
65
52
28
60
72
40
64
51
27
61
73
39
63
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
62
63
64
65
66
67
68
69
70
71
72
73
74
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
59
39
25
37
51
71
60
40
24
36
52
72
61
41
23
35
53
73
62
42
22
34
54
74
63
43
21
33
55
75
64
44
20
32
56
76
65
45
19
31
57
77
66
46
18
30
58
78
67
47
17
29
59
79
68
48
16
28
60
80
67
49
15
27
61
81
66
54
55
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
62
63
64
65
66
67
68
69
70
82
65
53
1
15
69
81
64
52
0
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
157
169
173
161
157
145
156
168
172
160
156
144
155
167
171
159
155
143
154
166
170
158
154
142
153
165
169
157
153
141
152
164
168
156
152
140
151
163
167
155
151
139
150
162
166
154
150
138
149
161
165
153
149
137
148
160
164
152
148
136
147
159
163
151
147
135
146
158
162
150
149
148
147
146
145
144
143
142
141
140
139
138
150
146
134
145
157
161
149
137
149
145
133
144
156
160
148
136
148
144
132
143
155
159
147
135
147
143
131
142
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
146
134
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
130
141
145
157
145
133
145
133
129
140
144
156
144
132
144
132
128
139
143
155
143
131
143
131
127
138
142
154
142
130
142
130
126
137
141
153
141
129
141
129
125
136
140
152
140
128
140
128
124
135
139
151
139
127
139
127
123
134
138
150
138
126
138
126
122
133
137
149
137
125
137
125
121
132
136
148
136
124
136
124
120
131
135
147
135
123
135
123
119
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
146
145
144
143
142
141
140
139
138
137
136
135
134
122
123
124
125
126
127
128
129
130
131
132
133
134
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
121
133
121
109
120
132
120
108
119
131
119
107
118
130
118
106
117
129
117
105
116
128
116
104
115
127
115
103
114
126
114
102
113
125
113
101
112
124
112
100
111
123
111
99
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
111
97
109
97
85
99
112
96
108
96
84
100
113
95
107
95
83
101
114
94
106
94
82
102
115
93
105
93
81
103
116
92
104
92
80
104
117
91
103
91
79
105
119
120
121
122
123
124
124
123
122
121
120
119
118
90
102
90
78
106
107
108
109
110
111
112
113
114
115
116
117
118
89
101
89
77
88
100
88
76
87
99
87
75
86
98
86
74
85
97
85
73
84
85
86
87
88
89
90
91
92
93
94
95
96
84
83
82
81
80
79
78
77
76
75
74
73
72
83
95
83
71
82
94
82
70
81
93
81
69
80
92
80
68
79
91
79
67
78
90
78
66
90
91
92
93
94
95
95
94
93
92
91
90
89
77
89
77
65
77
78
79
80
81
82
83
84
85
86
87
88
89
88
76
88
76
64
76
87
75
87
75
63
75
86
74
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
62
74
85
73
73
61
61
73
84
72
72
60
60
72
83
71
71
59
59
71
82
81
80
79
78
77
76
75
74
73
72
71
70
70
58
58
59
60
61
62
63
64
65
66
67
68
69
70
81
69
69
57
57
69
80
68
68
56
56
68
79
67
67
55
55
67
78
66
66
54
54
66
77
65
65
53
53
65
76
64
64
52
52
64
75
63
63
51
51
63
74
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
62
73
49
63
51
37
61
72
48
64
52
36
60
71
47
65
53
35
59
70
46
66
54
34
58
69
45
67
55
33
57
68
44
68
56
32
56
67
43
69
57
31
55
66
42
70
58
30
54
65
41
71
59
29
53
64
40
72
60
28
52
63
39
73
61
27
51
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
40
39
38
74
73
72
71
70
69
68
67
66
65
64
63
62
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
71
51
37
25
39
59
72
52
36
24
40
60
73
53
35
23
41
61
74
54
34
22
42
62
75
55
33
21
43
63
76
56
32
20
44
64
77
57
31
19
45
65
78
58
30
18
46
66
79
59
29
17
47
67
80
60
28
16
48
68
81
61
27
15
49
67
82
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
3
4
5
6
7
8
9
10
11
12
13
14
50
51
52
53
54
55
56
55
54
66
81
69
15
1
53
65
80
68
16
0
190
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
189
201
181
169
165
153
188
200
180
168
164
152
187
199
179
167
163
151
186
198
178
166
162
150
185
197
177
165
161
149
184
196
176
164
160
148
183
195
175
163
159
147
182
194
174
162
158
146
181
193
173
161
157
145
180
192
172
160
156
144
179
191
171
159
155
143
178
190
170
158
157
156
155
154
153
152
151
150
149
148
147
146
158
154
142
177
189
169
157
145
157
153
141
176
188
168
156
144
156
152
140
175
187
167
155
143
155
151
139
174
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
154
142
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
138
173
177
165
153
141
153
141
137
172
176
164
152
140
152
140
136
171
175
163
151
139
151
139
135
170
174
162
150
138
150
138
134
169
173
161
149
137
149
137
133
168
172
160
148
136
148
136
132
167
171
159
147
135
147
135
131
166
170
158
146
134
146
134
130
165
169
157
145
133
145
133
129
164
168
156
144
132
144
132
128
163
167
155
143
131
143
131
127
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
154
153
152
151
150
149
148
147
146
145
144
143
142
130
131
132
133
134
135
136
137
138
139
140
141
142
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
153
141
129
117
152
140
128
116
151
139
127
115
150
138
126
114
149
137
125
113
148
136
124
112
147
135
123
111
146
134
122
110
145
133
121
109
144
132
120
108
143
131
119
107
142
141
140
139
138
137
136
135
134
133
132
131
130
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
103
104
105
106
143
129
117
105
93
107
144
128
116
104
92
108
144
127
115
103
91
109
143
126
114
102
90
110
142
125
113
101
89
111
141
124
112
100
88
112
140
123
111
99
87
113
127
128
129
130
131
132
133
134
135
136
137
138
139
122
110
98
86
114
115
116
117
118
119
120
121
122
123
124
125
126
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
105
93
81
116
115
114
113
112
111
110
109
108
107
106
105
104
92
91
90
89
88
87
86
85
84
83
82
81
80
117
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
113
98
86
74
74
75
76
77
78
79
80
81
82
83
84
85
86
112
97
85
73
61
62
63
64
65
66
67
68
69
70
71
72
73
87
111
96
84
72
60
88
110
95
83
71
59
89
109
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
70
58
90
108
83
69
69
57
91
107
84
68
68
56
92
106
85
67
67
55
93
94
95
96
97
98
99
100
101
102
103
104
105
86
66
66
65
64
63
62
61
60
59
58
57
56
55
54
94
106
87
65
65
53
95
107
88
64
64
52
96
108
89
63
63
51
97
109
90
62
62
50
98
110
91
61
61
49
99
111
92
60
60
48
100
112
93
59
59
47
101
113
113
112
111
110
109
108
107
106
105
104
103
102
103
104
103
102
101
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
46
102
101
93
59
45
45
103
100
92
60
44
44
104
99
91
61
43
43
105
98
90
62
42
42
106
97
89
63
41
41
107
96
88
64
40
40
108
95
87
65
39
39
109
94
86
66
38
38
110
93
85
67
37
37
111
92
84
68
36
36
112
91
83
69
35
35
121
120
119
118
117
116
115
114
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
82
81
80
79
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
122
103
89
35
21
43
123
104
88
36
20
44
124
105
87
37
19
43
125
106
86
38
18
42
126
107
85
39
17
41
127
108
84
40
16
40
128
109
83
41
15
39
129
110
82
42
14
38
130
111
81
43
13
37
131
112
80
44
12
36
132
113
79
45
11
35
133
122
121
120
119
118
117
116
115
114
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
55
54
53
52
51
50
49
48
47
46
10
9
8
7
6
5
4
3
2
34
133
121
67
53
1
33
132
120
68
52
0
181
182
183
184
185
186
187
188
189
190
191
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
180
189
169
157
153
141
179
188
168
156
152
140
178
187
167
155
151
139
177
186
166
154
150
138
176
185
165
153
149
137
175
184
164
152
148
136
174
183
163
151
147
135
173
182
162
150
146
134
172
181
161
149
145
133
171
180
160
148
144
132
170
179
159
147
143
131
169
178
158
146
145
144
143
142
141
140
139
138
137
136
135
134
146
142
130
168
177
157
145
133
145
141
129
167
176
156
144
132
144
140
128
166
175
155
143
131
143
139
127
165
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
142
130
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
126
164
167
153
141
129
141
129
125
163
167
152
140
128
140
128
124
162
166
151
139
127
139
127
123
161
165
150
138
126
138
126
122
160
164
149
137
125
137
125
121
159
163
148
136
124
136
124
120
158
162
147
135
123
135
123
119
157
161
146
134
122
134
122
118
156
160
145
133
121
133
121
117
155
159
144
132
120
132
120
116
154
158
143
131
119
131
119
115
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
142
141
140
139
138
137
136
135
134
133
132
131
130
118
119
120
121
122
123
124
125
126
127
128
129
130
118
117
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
144
129
117
105
143
128
116
104
142
127
115
103
141
126
114
102
140
125
113
101
139
124
112
100
138
123
111
99
137
122
110
98
136
121
109
97
135
120
108
96
134
119
107
95
133
132
131
130
129
128
127
126
125
124
123
122
121
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
82
83
84
85
86
87
88
89
90
91
92
93
94
134
120
129
93
81
95
133
119
128
92
80
96
132
118
127
91
79
97
131
117
126
90
78
98
130
116
125
89
77
99
129
115
124
88
76
100
128
114
123
87
75
101
115
116
117
118
119
120
121
122
123
124
125
126
127
113
122
86
74
102
103
104
105
106
107
108
109
110
111
112
113
114
112
121
85
73
111
120
84
72
110
119
83
71
109
118
82
70
108
117
81
69
107
108
109
110
111
112
113
114
115
116
117
117
116
80
79
78
77
76
75
74
73
72
71
70
69
68
106
115
81
67
105
114
82
66
104
113
83
65
103
112
84
64
102
111
85
63
101
110
86
62
62
63
64
65
66
67
68
69
70
71
72
73
74
100
109
87
61
49
50
51
52
53
54
55
56
57
58
59
60
61
75
99
108
88
60
48
76
98
107
89
59
47
77
97
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
91
90
58
46
78
96
95
81
57
45
79
95
96
80
56
44
80
94
97
79
55
43
81
82
83
84
85
86
87
88
89
90
91
92
93
98
78
54
53
52
51
50
49
48
47
46
45
44
43
42
82
94
99
77
55
41
83
95
100
76
56
40
84
96
101
75
57
39
85
97
102
74
58
38
86
98
103
73
59
37
87
99
104
72
60
36
88
100
105
71
61
35
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
115
114
113
112
111
110
109
108
107
106
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
65
64
63
62
34
90
113
105
71
57
33
91
112
104
72
56
32
92
111
103
73
55
31
93
110
102
74
54
30
94
109
101
75
53
29
95
108
100
76
52
28
96
107
99
77
51
27
97
106
98
78
50
26
98
105
97
79
49
25
99
104
96
80
48
24
100
103
95
81
47
23
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
94
93
92
91
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
110
114
101
47
35
13
111
115
100
48
36
12
112
116
99
49
37
11
113
117
98
50
38
10
114
118
97
51
39
9
115
119
96
52
40
8
116
120
95
53
41
7
117
121
94
54
42
6
118
122
93
55
43
5
119
123
92
56
44
4
120
124
91
57
43
3
121
133
132
131
130
129
128
127
126
125
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
67
66
65
64
63
62
61
60
59
58
42
41
40
39
38
37
36
35
34
2
122
133
79
65
33
1
123
132
80
64
32
0
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
192
191
190
189
188
187
186
185
184
183
182
142
154
158
170
190
181
141
153
157
169
189
180
140
152
156
168
188
179
139
151
155
167
187
178
138
150
154
166
186
177
137
149
153
165
185
176
136
148
152
164
184
175
135
147
151
163
183
174
134
146
150
162
182
173
133
145
149
161
181
172
132
144
148
160
180
171
131
143
147
135
136
137
138
139
140
141
142
143
144
145
146
147
159
179
170
130
142
146
134
146
158
178
169
129
141
145
133
145
157
177
168
128
140
144
132
144
156
176
167
127
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
131
143
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
166
126
130
142
130
142
154
168
165
125
129
141
129
141
153
168
164
124
128
140
128
140
152
167
163
123
127
139
127
139
151
166
162
122
126
138
126
138
150
165
161
121
125
137
125
137
149
164
160
120
124
136
124
136
148
163
159
119
123
135
123
135
147
162
158
118
122
134
122
134
146
161
157
117
121
133
121
133
145
160
156
116
120
132
120
132
144
159
155
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
117
118
119
131
130
129
128
127
126
125
124
123
122
121
120
119
131
132
133
134
135
136
137
138
139
140
141
142
143
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
106
118
130
145
105
117
129
144
104
116
128
143
103
115
127
142
102
114
126
141
101
113
125
140
100
112
124
139
99
111
123
138
98
110
122
137
97
109
121
136
96
108
120
135
95
94
93
92
91
90
89
88
87
86
85
84
83
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
122
123
124
125
126
127
128
129
130
131
132
133
134
96
82
94
130
121
135
97
81
93
129
120
134
98
80
92
128
119
133
99
79
91
127
118
132
100
78
90
126
117
131
101
77
89
125
116
130
102
76
88
124
115
129
115
114
113
112
111
110
109
108
107
106
105
104
103
75
87
123
114
128
127
126
125
124
123
122
121
120
119
118
117
116
74
86
122
113
73
85
121
112
72
84
120
111
71
83
119
110
70
82
118
109
69
70
71
72
73
74
75
76
77
78
79
80
81
117
118
118
117
116
115
114
113
112
111
110
109
108
68
82
116
107
67
83
115
106
66
84
114
105
65
85
113
104
64
86
112
103
63
87
111
102
62
61
60
59
58
57
56
55
54
53
52
51
50
62
88
110
101
75
74
73
72
71
70
69
68
67
66
65
64
63
49
61
89
109
100
76
48
60
90
108
99
77
47
59
91
92
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
98
78
46
58
82
96
97
79
45
57
81
97
96
80
44
56
80
98
95
81
43
44
45
46
47
48
49
50
51
52
53
54
55
79
99
94
93
92
91
90
89
88
87
86
85
84
83
82
42
56
78
100
95
83
41
57
77
101
96
84
40
58
76
102
97
85
39
59
75
103
98
86
38
60
74
104
99
87
37
61
73
105
100
88
36
62
72
106
101
89
35
63
64
65
66
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
107
108
109
110
111
112
113
114
115
116
115
114
113
113
112
111
110
109
108
107
106
105
104
103
102
90
34
58
72
106
112
91
33
57
73
105
111
92
32
56
74
104
110
93
31
55
75
103
109
94
30
54
76
102
108
95
29
53
77
101
107
96
28
52
78
100
106
97
27
51
79
99
105
98
26
50
80
98
104
99
25
49
81
97
103
100
24
48
82
96
102
101
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
92
93
94
95
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
14
36
48
100
114
111
13
37
49
99
115
112
12
38
50
98
116
113
11
39
51
97
117
114
10
40
52
96
118
115
9
41
53
95
119
116
8
42
54
94
120
117
7
43
55
93
121
118
6
44
56
92
122
119
5
43
57
91
123
120
4
42
58
90
124
121
3
33
34
35
36
37
38
39
40
41
59
60
61
62
63
64
65
66
67
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
125
126
127
128
129
130
131
132
133
122
2
32
64
78
132
123
1
31
63
79
131
124
0
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
154
166
170
182
202
190
153
165
169
181
201
189
152
164
168
180
200
188
151
163
167
179
199
187
150
162
166
178
198
186
149
161
165
177
197
185
148
160
164
176
196
184
147
159
163
175
195
183
146
158
162
174
194
182
145
157
161
173
193
181
144
156
160
172
192
180
143
155
159
147
148
149
150
151
152
153
154
155
156
157
158
159
171
191
179
142
154
158
146
158
170
190
178
141
153
157
145
157
169
189
177
140
152
156
144
156
168
188
176
139
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
143
155
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
175
138
142
154
142
154
166
178
174
137
141
153
141
153
165
177
173
136
140
152
140
152
164
176
172
135
139
151
139
151
163
175
171
134
138
150
138
150
162
174
170
133
137
149
137
149
161
173
169
132
136
148
136
148
160
172
168
131
135
147
135
147
159
171
167
130
134
146
134
146
158
170
166
129
133
145
133
145
157
169
165
128
132
144
132
144
156
168
164
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
143
142
141
140
139
138
137
136
135
134
133
132
131
143
144
145
146
147
148
149
150
151
152
153
154
155
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
118
130
142
154
117
129
141
153
116
128
140
152
115
127
139
151
114
126
138
150
113
125
137
149
112
124
136
148
111
123
135
147
110
122
134
146
109
121
133
145
108
120
132
144
107
106
105
104
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
131
132
133
134
135
136
137
138
139
140
141
142
143
108
94
106
118
130
144
109
93
105
117
129
145
110
92
104
116
128
145
111
91
103
115
127
144
112
90
102
114
126
143
113
89
101
113
125
142
114
88
100
112
124
141
127
126
125
124
123
122
121
120
119
118
117
116
115
87
99
111
123
140
139
138
137
136
135
134
133
132
131
130
129
128
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
94
106
118
81
82
83
84
85
86
87
88
89
90
91
92
93
105
106
107
108
109
110
111
112
113
114
115
116
117
80
92
104
118
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
87
99
114
74
73
72
71
70
69
68
67
66
65
64
63
62
74
86
98
113
87
86
85
84
83
82
81
80
79
78
77
76
75
61
73
85
97
112
88
60
72
84
96
111
89
59
71
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
110
90
58
70
70
84
109
91
57
69
69
85
108
92
56
68
68
86
107
93
55
56
57
58
59
60
61
62
63
64
65
66
67
67
87
106
105
104
103
102
101
100
99
98
97
96
95
94
54
66
66
88
107
95
53
65
65
89
108
96
52
64
64
90
109
97
51
63
63
91
110
98
50
62
62
92
111
99
49
61
61
93
112
100
48
60
60
94
113
101
47
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
95
96
97
98
99
100
101
102
103
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
102
46
46
60
94
100
103
45
45
61
93
99
104
44
44
62
92
98
105
43
43
63
91
97
106
42
42
64
90
96
107
41
41
65
89
95
108
40
40
66
88
94
109
39
39
67
87
93
110
38
38
68
86
92
111
37
37
69
85
91
112
36
36
70
84
90
113
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
73
74
75
76
77
78
79
80
81
82
83
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
44
22
36
88
102
122
43
21
37
87
103
123
42
20
38
86
104
124
41
19
39
85
105
125
40
18
40
84
106
126
39
17
41
83
107
127
38
16
42
82
108
128
37
15
43
81
109
129
36
14
44
80
110
130
35
13
45
79
111
131
34
12
46
78
112
132
33
3
4
5
6
7
8
9
10
11
47
48
49
50
51
52
53
54
55
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
113
114
115
116
117
118
119
120
121
133
32
2
52
66
120
132
31
1
51
67
119
131
30
0
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
146
158
162
174
170
158
145
157
161
173
169
157
144
156
160
172
168
156
143
155
159
171
167
155
142
154
158
170
166
154
141
153
157
169
165
153
140
152
156
168
164
152
139
151
155
167
163
151
138
150
154
166
162
150
137
149
153
165
161
149
136
148
152
164
160
148
135
147
151
139
140
141
142
143
144
145
146
147
148
149
150
151
163
159
147
134
146
150
138
150
162
158
146
133
145
149
137
149
161
157
145
132
144
148
136
148
160
156
144
131
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
135
147
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
143
130
134
146
134
146
158
146
142
129
133
145
133
145
157
145
141
128
132
144
132
144
156
144
140
127
131
143
131
143
155
143
139
126
130
142
130
142
154
142
138
125
129
141
129
141
153
141
137
124
128
140
128
140
152
140
136
123
127
139
127
139
151
139
135
122
126
138
126
138
150
138
134
121
125
137
125
137
149
137
133
120
124
136
124
136
148
136
132
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
135
134
133
132
131
130
129
128
127
126
125
124
123
135
136
137
138
139
140
141
142
143
144
145
146
147
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
110
122
134
122
109
121
133
121
108
120
132
120
107
119
131
119
106
118
130
118
105
117
129
117
104
116
128
116
103
115
127
115
102
114
126
114
101
113
125
113
100
112
124
112
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
100
86
98
110
98
112
101
85
97
109
97
113
102
84
96
108
96
114
103
83
95
107
95
115
104
82
94
106
94
116
105
81
93
105
93
117
106
80
92
104
92
118
119
118
117
116
115
114
113
112
111
110
109
108
107
79
91
103
91
119
120
121
122
123
124
125
125
124
123
122
121
120
78
90
102
90
77
89
101
89
76
88
100
88
75
87
99
87
74
86
98
86
73
74
75
76
77
78
79
80
81
82
83
84
85
97
96
95
94
93
92
91
90
89
88
87
86
85
72
84
96
84
71
83
95
83
70
82
94
82
69
81
93
81
68
80
92
80
67
79
91
79
90
89
88
87
86
85
84
83
82
81
80
79
78
66
78
90
78
90
91
92
93
94
95
96
96
95
94
93
92
91
77
65
77
89
77
89
76
64
76
88
76
88
75
63
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
75
87
74
62
62
74
74
86
73
61
61
73
73
85
72
60
60
72
72
84
71
70
69
68
67
66
65
64
63
62
61
60
59
59
71
71
72
73
74
75
76
77
78
79
80
81
82
83
70
58
58
70
70
82
69
57
57
69
69
81
68
56
56
68
68
80
67
55
55
67
67
79
66
54
54
66
66
78
65
53
53
65
65
77
64
52
52
64
64
76
63
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
75
62
38
52
64
50
74
61
37
53
65
49
73
60
36
54
66
48
72
59
35
55
67
47
71
58
34
56
68
46
70
57
33
57
69
45
69
56
32
58
70
44
68
55
31
59
71
43
67
54
30
60
72
42
66
53
29
61
73
41
65
52
28
62
74
40
64
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
63
64
65
66
67
68
69
70
71
72
73
74
75
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
60
40
26
38
52
72
61
41
25
37
53
73
62
42
24
36
54
74
63
43
23
35
55
75
64
44
22
34
56
76
65
45
21
33
57
77
66
46
20
32
58
78
67
47
19
31
59
79
68
48
18
30
60
80
67
49
17
29
61
81
66
50
16
28
62
82
65
53
54
55
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
63
64
65
66
67
68
69
70
71
83
64
52
2
16
70
82
63
51
1
17
69
81
62
50
0
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
158
170
174
162
158
146
157
169
173
161
157
145
156
168
172
160
156
144
155
167
171
159
155
143
154
166
170
158
154
142
153
165
169
157
153
141
152
164
168
156
152
140
151
163
167
155
151
139
150
162
166
154
150
138
149
161
165
153
149
137
148
160
164
152
148
136
147
159
163
151
150
149
148
147
146
145
144
143
142
141
140
139
151
147
135
146
158
162
150
138
150
146
134
145
157
161
149
137
149
145
133
144
156
160
148
136
148
144
132
143
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
147
135
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
131
142
146
158
146
134
146
134
130
141
145
157
145
133
145
133
129
140
144
156
144
132
144
132
128
139
143
155
143
131
143
131
127
138
142
154
142
130
142
130
126
137
141
153
141
129
141
129
125
136
140
152
140
128
140
128
124
135
139
151
139
127
139
127
123
134
138
150
138
126
138
126
122
133
137
149
137
125
137
125
121
132
136
148
136
124
136
124
120
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
147
146
145
144
143
142
141
140
139
138
137
136
135
123
124
125
126
127
128
129
130
131
132
133
134
135
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
122
134
122
110
121
133
121
109
120
132
120
108
119
131
119
107
118
130
118
106
117
129
117
105
116
128
116
104
115
127
115
103
114
126
114
102
113
125
113
101
112
124
112
100
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
112
98
110
98
86
100
113
97
109
97
85
101
114
96
108
96
84
102
115
95
107
95
83
103
116
94
106
94
82
104
117
93
105
93
81
105
118
92
104
92
80
106
120
121
122
123
124
125
125
124
123
122
121
120
119
91
103
91
79
107
108
109
110
111
112
113
114
115
116
117
118
119
90
102
90
78
89
101
89
77
88
100
88
76
87
99
87
75
86
98
86
74
85
86
87
88
89
90
91
92
93
94
95
96
97
85
84
83
82
81
80
79
78
77
76
75
74
73
84
96
84
72
83
95
83
71
82
94
82
70
81
93
81
69
80
92
80
68
79
91
79
67
91
92
93
94
95
96
96
95
94
93
92
91
90
78
90
78
66
78
79
80
81
82
83
84
85
86
87
88
89
90
89
77
89
77
65
77
88
76
88
76
64
76
87
75
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
63
75
86
74
74
62
62
74
85
73
73
61
61
73
84
72
72
60
60
72
83
82
81
80
79
78
77
76
75
74
73
72
71
71
59
59
60
61
62
63
64
65
66
67
68
69
70
71
82
70
70
58
58
70
81
69
69
57
57
69
80
68
68
56
56
68
79
67
67
55
55
67
78
66
66
54
54
66
77
65
65
53
53
65
76
64
64
52
52
64
75
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
63
74
50
64
52
38
62
73
49
65
53
37
61
72
48
66
54
36
60
71
47
67
55
35
59
70
46
68
56
34
58
69
45
69
57
33
57
68
44
70
58
32
56
67
43
71
59
31
55
66
42
72
60
30
54
65
41
73
61
29
53
64
40
74
62
28
52
71
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
40
39
75
74
73
72
71
70
69
68
67
66
65
64
63
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
72
52
38
26
40
60
73
53
37
25
41
61
74
54
36
24
42
62
75
55
35
23
43
63
76
56
34
22
44
64
77
57
33
21
45
65
78
58
32
20
46
66
79
59
31
19
47
67
80
60
30
18
48
68
81
61
29
17
49
67
82
62
28
16
50
66
83
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
4
5
6
7
8
9
10
11
12
13
14
15
51
52
53
54
55
56
55
54
53
65
82
70
16
2
52
64
81
69
17
1
51
63
80
68
18
0
191
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
190
202
182
170
166
154
189
201
181
169
165
153
188
200
180
168
164
152
187
199
179
167
163
151
186
198
178
166
162
150
185
197
177
165
161
149
184
196
176
164
160
148
183
195
175
163
159
147
182
194
174
162
158
146
181
193
173
161
157
145
180
192
172
160
156
144
179
191
171
159
158
157
156
155
154
153
152
151
150
149
148
147
159
155
143
178
190
170
158
146
158
154
142
177
189
169
157
145
157
153
141
176
188
168
156
144
156
152
140
175
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
155
143
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
139
174
178
166
154
142
154
142
138
173
177
165
153
141
153
141
137
172
176
164
152
140
152
140
136
171
175
163
151
139
151
139
135
170
174
162
150
138
150
138
134
169
173
161
149
137
149
137
133
168
172
160
148
136
148
136
132
167
171
159
147
135
147
135
131
166
170
158
146
134
146
134
130
165
169
157
145
133
145
133
129
164
168
156
144
132
144
132
128
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
155
154
153
152
151
150
149
148
147
146
145
144
143
131
132
133
134
135
136
137
138
139
140
141
142
143
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
154
142
130
118
153
141
129
117
152
140
128
116
151
139
127
115
150
138
126
114
149
137
125
113
148
136
124
112
147
135
123
111
146
134
122
110
145
133
121
109
144
132
120
108
143
142
141
140
139
138
137
136
135
134
133
132
131
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
104
105
106
107
144
130
118
106
94
108
145
129
117
105
93
109
145
128
116
104
92
110
144
127
115
103
91
111
143
126
114
102
90
112
142
125
113
101
89
113
141
124
112
100
88
114
128
129
130
131
132
133
134
135
136
137
138
139
140
123
111
99
87
115
116
117
118
119
120
121
122
123
124
125
126
127
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
106
94
82
117
116
115
114
113
112
111
110
109
108
107
106
105
93
92
91
90
89
88
87
86
85
84
83
82
81
118
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
114
99
87
75
75
76
77
78
79
80
81
82
83
84
85
86
87
113
98
86
74
62
63
64
65
66
67
68
69
70
71
72
73
74
88
112
97
85
73
61
89
111
96
84
72
60
90
110
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
71
59
91
109
84
70
70
58
92
108
85
69
69
57
93
107
86
68
68
56
94
95
96
97
98
99
100
101
102
103
104
105
106
87
67
67
66
65
64
63
62
61
60
59
58
57
56
55
95
107
88
66
66
54
96
108
89
65
65
53
97
109
90
64
64
52
98
110
91
63
63
51
99
111
92
62
62
50
100
112
93
61
61
49
101
113
94
60
60
48
102
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
103
102
101
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
47
103
100
94
60
46
46
104
99
93
61
45
45
105
98
92
62
44
44
106
97
91
63
43
43
107
96
90
64
42
42
108
95
89
65
41
41
109
94
88
66
40
40
110
93
87
67
39
39
111
92
86
68
38
38
112
91
85
69
37
37
113
90
84
70
36
36
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
83
82
81
80
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
122
102
88
36
22
44
123
103
87
37
21
43
124
104
86
38
20
42
125
105
85
39
19
41
126
106
84
40
18
40
127
107
83
41
17
39
128
108
82
42
16
38
129
109
81
43
15
37
130
110
80
44
14
36
131
111
79
45
13
35
132
112
78
46
12
34
133
121
120
119
118
117
116
115
114
113
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
33
132
120
66
52
2
32
131
119
67
51
1
31
130
118
68
50
0
182
183
184
185
186
187
188
189
190
191
192
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
181
190
170
158
154
142
180
189
169
157
153
141
179
188
168
156
152
140
178
187
167
155
151
139
177
186
166
154
150
138
176
185
165
153
149
137
175
184
164
152
148
136
174
183
163
151
147
135
173
182
162
150
146
134
172
181
161
149
145
133
171
180
160
148
144
132
170
179
159
147
146
145
144
143
142
141
140
139
138
137
136
135
147
143
131
169
178
158
146
134
146
142
130
168
177
157
145
133
145
141
129
167
176
156
144
132
144
140
128
166
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
143
131
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
127
165
168
154
142
130
142
130
126
164
168
153
141
129
141
129
125
163
167
152
140
128
140
128
124
162
166
151
139
127
139
127
123
161
165
150
138
126
138
126
122
160
164
149
137
125
137
125
121
159
163
148
136
124
136
124
120
158
162
147
135
123
135
123
119
157
161
146
134
122
134
122
118
156
160
145
133
121
133
121
117
155
159
144
132
120
132
120
116
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
143
142
141
140
139
138
137
136
135
134
133
132
131
119
120
121
122
123
124
125
126
127
128
129
130
131
119
118
117
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
145
130
118
106
144
129
117
105
143
128
116
104
142
127
115
103
141
126
114
102
140
125
113
101
139
124
112
100
138
123
111
99
137
122
110
98
136
121
109
97
135
120
108
96
134
133
132
131
130
129
128
127
126
125
124
123
122
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
83
84
85
86
87
88
89
90
91
92
93
94
95
135
121
130
94
82
96
134
120
129
93
81
97
133
119
128
92
80
98
132
118
127
91
79
99
131
117
126
90
78
100
130
116
125
89
77
101
129
115
124
88
76
102
116
117
118
119
120
121
122
123
124
125
126
127
128
114
123
87
75
103
104
105
106
107
108
109
110
111
112
113
114
115
113
122
86
74
112
121
85
73
111
120
84
72
110
119
83
71
109
118
82
70
108
109
110
111
112
113
114
115
116
117
118
118
117
81
80
79
78
77
76
75
74
73
72
71
70
69
107
116
82
68
106
115
83
67
105
114
84
66
104
113
85
65
103
112
86
64
102
111
87
63
63
64
65
66
67
68
69
70
71
72
73
74
75
101
110
88
62
50
51
52
53
54
55
56
57
58
59
60
61
62
76
100
109
89
61
49
77
99
108
90
60
48
78
98
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
92
91
59
47
79
97
96
82
58
46
80
96
97
81
57
45
81
95
98
80
56
44
82
83
84
85
86
87
88
89
90
91
92
93
94
99
79
55
54
53
52
51
50
49
48
47
46
45
44
43
83
95
100
78
56
42
84
96
101
77
57
41
85
97
102
76
58
40
86
98
103
75
59
39
87
99
104
74
60
38
88
100
105
73
61
37
89
101
106
72
62
36
90
102
103
104
105
106
107
108
109
110
111
112
113
113
114
115
116
115
114
113
112
111
110
109
108
107
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
66
65
64
63
35
91
112
106
72
58
34
92
111
105
73
57
33
93
110
104
74
56
32
94
109
103
75
55
31
95
108
102
76
54
30
96
107
101
77
53
29
97
106
100
78
52
28
98
105
99
79
51
27
99
104
98
80
50
26
100
103
97
81
49
25
101
102
96
82
48
24
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
95
94
93
92
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
111
114
100
48
36
14
112
115
99
49
37
13
113
116
98
50
38
12
114
117
97
51
39
11
115
118
96
52
40
10
116
119
95
53
41
9
117
120
94
54
42
8
118
121
93
55
43
7
119
122
92
56
44
6
120
123
91
57
43
5
121
124
90
58
42
4
122
133
132
131
130
129
128
127
126
125
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
67
66
65
64
63
62
61
60
59
41
40
39
38
37
36
35
34
33
3
123
132
78
64
32
2
124
131
79
63
31
1
125
130
80
62
30
0
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
193
192
191
190
189
188
187
186
185
184
183
143
155
159
171
191
182
142
154
158
170
190
181
141
153
157
169
189
180
140
152
156
168
188
179
139
151
155
167
187
178
138
150
154
166
186
177
137
149
153
165
185
176
136
148
152
164
184
175
135
147
151
163
183
174
134
146
150
162
182
173
133
145
149
161
181
172
132
144
148
136
137
138
139
140
141
142
143
144
145
146
147
148
160
180
171
131
143
147
135
147
159
179
170
130
142
146
134
146
158
178
169
129
141
145
133
145
157
177
168
128
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
132
144
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
167
127
131
143
131
143
155
169
166
126
130
142
130
142
154
169
165
125
129
141
129
141
153
168
164
124
128
140
128
140
152
167
163
123
127
139
127
139
151
166
162
122
126
138
126
138
150
165
161
121
125
137
125
137
149
164
160
120
124
136
124
136
148
163
159
119
123
135
123
135
147
162
158
118
122
134
122
134
146
161
157
117
121
133
121
133
145
160
156
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
117
118
119
120
132
131
130
129
128
127
126
125
124
123
122
121
120
132
133
134
135
136
137
138
139
140
141
142
143
144
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
107
119
131
146
106
118
130
145
105
117
129
144
104
116
128
143
103
115
127
142
102
114
126
141
101
113
125
140
100
112
124
139
99
111
123
138
98
110
122
137
97
109
121
136
96
95
94
93
92
91
90
89
88
87
86
85
84
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
123
124
125
126
127
128
129
130
131
132
133
134
135
97
83
95
131
122
136
98
82
94
130
121
135
99
81
93
129
120
134
100
80
92
128
119
133
101
79
91
127
118
132
102
78
90
126
117
131
103
77
89
125
116
130
116
115
114
113
112
111
110
109
108
107
106
105
104
76
88
124
115
129
128
127
126
125
124
123
122
121
120
119
118
117
75
87
123
114
74
86
122
113
73
85
121
112
72
84
120
111
71
83
119
110
70
71
72
73
74
75
76
77
78
79
80
81
82
118
119
119
118
117
116
115
114
113
112
111
110
109
69
83
117
108
68
84
116
107
67
85
115
106
66
86
114
105
65
87
113
104
64
88
112
103
63
62
61
60
59
58
57
56
55
54
53
52
51
63
89
111
102
76
75
74
73
72
71
70
69
68
67
66
65
64
50
62
90
110
101
77
49
61
91
109
100
78
48
60
92
93
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
99
79
47
59
83
97
98
80
46
58
82
98
97
81
45
57
81
99
96
82
44
45
46
47
48
49
50
51
52
53
54
55
56
80
100
95
94
93
92
91
90
89
88
87
86
85
84
83
43
57
79
101
96
84
42
58
78
102
97
85
41
59
77
103
98
86
40
60
76
104
99
87
39
61
75
105
100
88
38
62
74
106
101
89
37
63
73
107
102
90
36
64
65
66
67
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
108
109
110
111
112
113
114
115
116
115
114
113
112
113
113
112
111
110
109
108
107
106
105
104
103
91
35
59
73
107
111
92
34
58
74
106
110
93
33
57
75
105
109
94
32
56
76
104
108
95
31
55
77
103
107
96
30
54
78
102
106
97
29
53
79
101
105
98
28
52
80
100
104
99
27
51
81
99
103
100
26
50
82
98
102
101
25
49
83
97
101
102
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
93
94
95
96
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
15
37
49
99
113
112
14
38
50
98
114
113
13
39
51
97
115
114
12
40
52
96
116
115
11
41
53
95
117
116
10
42
54
94
118
117
9
43
55
93
119
118
8
44
56
92
120
119
7
43
57
91
121
120
6
42
58
90
122
121
5
41
59
89
123
122
4
32
33
34
35
36
37
38
39
40
60
61
62
63
64
65
66
67
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
124
125
126
127
128
129
130
131
132
123
3
31
63
77
131
124
2
30
62
78
130
125
1
29
61
79
129
126
0
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
203
202
201
200
199
198
197
196
195
194
193
192
155
167
171
183
203
191
154
166
170
182
202
190
153
165
169
181
201
189
152
164
168
180
200
188
151
163
167
179
199
187
150
162
166
178
198
186
149
161
165
177
197
185
148
160
164
176
196
184
147
159
163
175
195
183
146
158
162
174
194
182
145
157
161
173
193
181
144
156
160
148
149
150
151
152
153
154
155
156
157
158
159
160
172
192
180
143
155
159
147
159
171
191
179
142
154
158
146
158
170
190
178
141
153
157
145
157
169
189
177
140
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
144
156
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
176
139
143
155
143
155
167
179
175
138
142
154
142
154
166
178
174
137
141
153
141
153
165
177
173
136
140
152
140
152
164
176
172
135
139
151
139
151
163
175
171
134
138
150
138
150
162
174
170
133
137
149
137
149
161
173
169
132
136
148
136
148
160
172
168
131
135
147
135
147
159
171
167
130
134
146
134
146
158
170
166
129
133
145
133
145
157
169
165
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
144
143
142
141
140
139
138
137
136
135
134
133
132
144
145
146
147
148
149
150
151
152
153
154
155
156
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
119
131
143
155
118
130
142
154
117
129
141
153
116
128
140
152
115
127
139
151
114
126
138
150
113
125
137
149
112
124
136
148
111
123
135
147
110
122
134
146
109
121
133
145
108
107
106
105
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
132
133
134
135
136
137
138
139
140
141
142
143
144
109
95
107
119
131
145
110
94
106
118
130
146
111
93
105
117
129
146
112
92
104
116
128
145
113
91
103
115
127
144
114
90
102
114
126
143
115
89
101
113
125
142
128
127
126
125
124
123
122
121
120
119
118
117
116
88
100
112
124
141
140
139
138
137
136
135
134
133
132
131
130
129
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
95
107
119
82
83
84
85
86
87
88
89
90
91
92
93
94
106
107
108
109
110
111
112
113
114
115
116
117
118
81
93
105
119
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
88
100
115
75
74
73
72
71
70
69
68
67
66
65
64
63
75
87
99
114
88
87
86
85
84
83
82
81
80
79
78
77
76
62
74
86
98
113
89
61
73
85
97
112
90
60
72
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
111
91
59
71
71
85
110
92
58
70
70
86
109
93
57
69
69
87
108
94
56
57
58
59
60
61
62
63
64
65
66
67
68
68
88
107
106
105
104
103
102
101
100
99
98
97
96
95
55
67
67
89
108
96
54
66
66
90
109
97
53
65
65
91
110
98
52
64
64
92
111
99
51
63
63
93
112
100
50
62
62
94
113
101
49
61
61
95
113
102
48
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
96
97
98
99
100
101
102
103
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
103
47
47
61
95
99
104
46
46
62
94
98
105
45
45
63
93
97
106
44
44
64
92
96
107
43
43
65
91
95
108
42
42
66
90
94
109
41
41
67
89
93
110
40
40
68
88
92
111
39
39
69
87
91
112
38
38
70
86
90
113
37
37
71
85
89
113
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
72
73
74
75
76
77
78
79
80
81
82
83
84
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
43
23
37
87
101
121
42
22
38
86
102
122
41
21
39
85
103
123
40
20
40
84
104
124
39
19
41
83
105
125
38
18
42
82
106
126
37
17
43
81
107
127
36
16
44
80
108
128
35
15
45
79
109
129
34
14
46
78
110
130
33
13
47
77
111
131
32
4
5
6
7
8
9
10
11
12
48
49
50
51
52
53
54
55
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
112
113
114
115
116
117
118
119
120
132
31
3
51
65
119
131
30
2
50
66
118
130
29
1
49
67
117
129
28
0
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
147
159
163
175
171
159
146
158
162
174
170
158
145
157
161
173
169
157
144
156
160
172
168
156
143
155
159
171
167
155
142
154
158
170
166
154
141
153
157
169
165
153
140
152
156
168
164
152
139
151
155
167
163
151
138
150
154
166
162
150
137
149
153
165
161
149
136
148
152
140
141
142
143
144
145
146
147
148
149
150
151
152
164
160
148
135
147
151
139
151
163
159
147
134
146
150
138
150
162
158
146
133
145
149
137
149
161
157
145
132
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
136
148
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
144
131
135
147
135
147
159
147
143
130
134
146
134
146
158
146
142
129
133
145
133
145
157
145
141
128
132
144
132
144
156
144
140
127
131
143
131
143
155
143
139
126
130
142
130
142
154
142
138
125
129
141
129
141
153
141
137
124
128
140
128
140
152
140
136
123
127
139
127
139
151
139
135
122
126
138
126
138
150
138
134
121
125
137
125
137
149
137
133
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
136
135
134
133
132
131
130
129
128
127
126
125
124
136
137
138
139
140
141
142
143
144
145
146
147
148
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
111
123
135
123
110
122
134
122
109
121
133
121
108
120
132
120
107
119
131
119
106
118
130
118
105
117
129
117
104
116
128
116
103
115
127
115
102
114
126
114
101
113
125
113
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
101
87
99
111
99
113
102
86
98
110
98
114
103
85
97
109
97
115
104
84
96
108
96
116
105
83
95
107
95
117
106
82
94
106
94
118
107
81
93
105
93
119
120
119
118
117
116
115
114
113
112
111
110
109
108
80
92
104
92
120
121
122
123
124
125
126
126
125
124
123
122
121
79
91
103
91
78
90
102
90
77
89
101
89
76
88
100
88
75
87
99
87
74
75
76
77
78
79
80
81
82
83
84
85
86
98
97
96
95
94
93
92
91
90
89
88
87
86
73
85
97
85
72
84
96
84
71
83
95
83
70
82
94
82
69
81
93
81
68
80
92
80
91
90
89
88
87
86
85
84
83
82
81
80
79
67
79
91
79
91
92
93
94
95
96
97
97
96
95
94
93
92
78
66
78
90
78
90
77
65
77
89
77
89
76
64
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
76
88
75
63
63
75
75
87
74
62
62
74
74
86
73
61
61
73
73
85
72
71
70
69
68
67
66
65
64
63
62
61
60
60
72
72
73
74
75
76
77
78
79
80
81
82
83
84
71
59
59
71
71
83
70
58
58
70
70
82
69
57
57
69
69
81
68
56
56
68
68
80
67
55
55
67
67
79
66
54
54
66
66
78
65
53
53
65
65
77
64
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
76
63
39
53
65
51
75
62
38
54
66
50
74
61
37
55
67
49
73
60
36
56
68
48
72
59
35
57
69
47
71
58
34
58
70
46
70
57
33
59
71
45
69
56
32
60
72
44
68
55
31
61
73
43
67
54
30
62
74
42
66
53
29
63
75
41
65
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
64
65
66
67
68
69
70
71
72
73
74
75
76
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
61
41
27
39
53
73
62
42
26
38
54
74
63
43
25
37
55
75
64
44
24
36
56
76
65
45
23
35
57
77
66
46
22
34
58
78
67
47
21
33
59
79
68
48
20
32
60
80
67
49
19
31
61
81
66
50
18
30
62
82
65
51
17
29
63
83
64
52
53
54
55
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
64
65
66
67
68
69
70
71
72
84
63
51
3
17
71
83
62
50
2
18
70
82
61
49
1
19
69
81
60
48
0
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
159
171
175
163
159
147
158
170
174
162
158
146
157
169
173
161
157
145
156
168
172
160
156
144
155
167
171
159
155
143
154
166
170
158
154
142
153
165
169
157
153
141
152
164
168
156
152
140
151
163
167
155
151
139
150
162
166
154
150
138
149
161
165
153
149
137
148
160
164
152
151
150
149
148
147
146
145
144
143
142
141
140
152
148
136
147
159
163
151
139
151
147
135
146
158
162
150
138
150
146
134
145
157
161
149
137
149
145
133
144
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
148
136
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
132
143
147
159
147
135
147
135
131
142
146
158
146
134
146
134
130
141
145
157
145
133
145
133
129
140
144
156
144
132
144
132
128
139
143
155
143
131
143
131
127
138
142
154
142
130
142
130
126
137
141
153
141
129
141
129
125
136
140
152
140
128
140
128
124
135
139
151
139
127
139
127
123
134
138
150
138
126
138
126
122
133
137
149
137
125
137
125
121
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
148
147
146
145
144
143
142
141
140
139
138
137
136
124
125
126
127
128
129
130
131
132
133
134
135
136
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
123
135
123
111
122
134
122
110
121
133
121
109
120
132
120
108
119
131
119
107
118
130
118
106
117
129
117
105
116
128
116
104
115
127
115
103
114
126
114
102
113
125
113
101
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
113
99
111
99
87
101
114
98
110
98
86
102
115
97
109
97
85
103
116
96
108
96
84
104
117
95
107
95
83
105
118
94
106
94
82
106
119
93
105
93
81
107
121
122
123
124
125
126
126
125
124
123
122
121
120
92
104
92
80
108
109
110
111
112
113
114
115
116
117
118
119
120
91
103
91
79
90
102
90
78
89
101
89
77
88
100
88
76
87
99
87
75
86
87
88
89
90
91
92
93
94
95
96
97
98
86
85
84
83
82
81
80
79
78
77
76
75
74
85
97
85
73
84
96
84
72
83
95
83
71
82
94
82
70
81
93
81
69
80
92
80
68
92
93
94
95
96
97
97
96
95
94
93
92
91
79
91
79
67
79
80
81
82
83
84
85
86
87
88
89
90
91
90
78
90
78
66
78
89
77
89
77
65
77
88
76
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
64
76
87
75
75
63
63
75
86
74
74
62
62
74
85
73
73
61
61
73
84
83
82
81
80
79
78
77
76
75
74
73
72
72
60
60
61
62
63
64
65
66
67
68
69
70
71
72
83
71
71
59
59
71
82
70
70
58
58
70
81
69
69
57
57
69
80
68
68
56
56
68
79
67
67
55
55
67
78
66
66
54
54
66
77
65
65
53
53
65
76
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
64
75
51
65
53
39
63
74
50
66
54
38
62
73
49
67
55
37
61
72
48
68
56
36
60
71
47
69
57
35
59
70
46
70
58
34
58
69
45
71
59
33
57
68
44
72
60
32
56
67
43
73
61
31
55
66
42
74
62
30
54
65
41
75
63
29
53
72
71
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
40
76
75
74
73
72
71
70
69
68
67
66
65
64
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
73
53
39
27
41
61
74
54
38
26
42
62
75
55
37
25
43
63
76
56
36
24
44
64
77
57
35
23
45
65
78
58
34
22
46
66
79
59
33
21
47
67
80
60
32
20
48
68
81
61
31
19
49
67
82
62
30
18
50
66
83
63
29
17
51
65
84
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
5
6
7
8
9
10
11
12
13
14
15
16
52
53
54
55
56
55
54
53
52
64
83
71
17
3
51
63
82
70
18
2
50
62
81
69
19
1
49
61
80
68
20
0
192
193
194
195
196
197
198
199
200
201
202
203
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
191
203
183
171
167
155
190
202
182
170
166
154
189
201
181
169
165
153
188
200
180
168
164
152
187
199
179
167
163
151
186
198
178
166
162
150
185
197
177
165
161
149
184
196
176
164
160
148
183
195
175
163
159
147
182
194
174
162
158
146
181
193
173
161
157
145
180
192
172
160
159
158
157
156
155
154
153
152
151
150
149
148
160
156
144
179
191
171
159
147
159
155
143
178
190
170
158
146
158
154
142
177
189
169
157
145
157
153
141
176
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
156
144
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
140
175
179
167
155
143
155
143
139
174
178
166
154
142
154
142
138
173
177
165
153
141
153
141
137
172
176
164
152
140
152
140
136
171
175
163
151
139
151
139
135
170
174
162
150
138
150
138
134
169
173
161
149
137
149
137
133
168
172
160
148
136
148
136
132
167
171
159
147
135
147
135
131
166
170
158
146
134
146
134
130
165
169
157
145
133
145
133
129
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
156
155
154
153
152
151
150
149
148
147
146
145
144
132
133
134
135
136
137
138
139
140
141
142
143
144
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
155
143
131
119
154
142
130
118
153
141
129
117
152
140
128
116
151
139
127
115
150
138
126
114
149
137
125
113
148
136
124
112
147
135
123
111
146
134
122
110
145
133
121
109
144
143
142
141
140
139
138
137
136
135
134
133
132
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
145
131
119
107
95
109
146
130
118
106
94
110
146
129
117
105
93
111
145
128
116
104
92
112
144
127
115
103
91
113
143
126
114
102
90
114
142
125
113
101
89
115
129
130
131
132
133
134
135
136
137
138
139
140
141
124
112
100
88
116
117
118
119
120
121
122
123
124
125
126
127
128
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
107
95
83
118
117
116
115
114
113
112
111
110
109
108
107
106
94
93
92
91
90
89
88
87
86
85
84
83
82
119
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
115
100
88
76
76
77
78
79
80
81
82
83
84
85
86
87
88
114
99
87
75
63
64
65
66
67
68
69
70
71
72
73
74
75
89
113
98
86
74
62
90
112
97
85
73
61
91
111
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
72
60
92
110
85
71
71
59
93
109
86
70
70
58
94
108
87
69
69
57
95
96
97
98
99
100
101
102
103
104
105
106
107
88
68
68
67
66
65
64
63
62
61
60
59
58
57
56
96
108
89
67
67
55
97
109
90
66
66
54
98
110
91
65
65
53
99
111
92
64
64
52
100
112
93
63
63
51
101
113
94
62
62
50
102
113
95
61
61
49
103
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
103
102
101
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
48
104
99
95
61
47
47
105
98
94
62
46
46
106
97
93
63
45
45
107
96
92
64
44
44
108
95
91
65
43
43
109
94
90
66
42
42
110
93
89
67
41
41
111
92
88
68
40
40
112
91
87
69
39
39
113
90
86
70
38
38
113
89
85
71
37
37
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
84
83
82
81
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
121
101
87
37
23
43
122
102
86
38
22
42
123
103
85
39
21
41
124
104
84
40
20
40
125
105
83
41
19
39
126
106
82
42
18
38
127
107
81
43
17
37
128
108
80
44
16
36
129
109
79
45
15
35
130
110
78
46
14
34
131
111
77
47
13
33
132
120
119
118
117
116
115
114
113
112
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
32
131
119
65
51
3
31
130
118
66
50
2
30
129
117
67
49
1
29
128
116
68
48
0
183
184
185
186
187
188
189
190
191
192
193
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
182
191
171
159
155
143
181
190
170
158
154
142
180
189
169
157
153
141
179
188
168
156
152
140
178
187
167
155
151
139
177
186
166
154
150
138
176
185
165
153
149
137
175
184
164
152
148
136
174
183
163
151
147
135
173
182
162
150
146
134
172
181
161
149
145
133
171
180
160
148
147
146
145
144
143
142
141
140
139
138
137
136
148
144
132
170
179
159
147
135
147
143
131
169
178
158
146
134
146
142
130
168
177
157
145
133
145
141
129
167
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
144
132
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
128
166
169
155
143
131
143
131
127
165
169
154
142
130
142
130
126
164
168
153
141
129
141
129
125
163
167
152
140
128
140
128
124
162
166
151
139
127
139
127
123
161
165
150
138
126
138
126
122
160
164
149
137
125
137
125
121
159
163
148
136
124
136
124
120
158
162
147
135
123
135
123
119
157
161
146
134
122
134
122
118
156
160
145
133
121
133
121
117
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
144
143
142
141
140
139
138
137
136
135
134
133
132
120
121
122
123
124
125
126
127
128
129
130
131
132
120
119
118
117
116
115
114
113
112
111
110
109
108
109
110
111
112
113
114
115
116
146
131
119
107
145
130
118
106
144
129
117
105
143
128
116
104
142
127
115
103
141
126
114
102
140
125
113
101
139
124
112
100
138
123
111
99
137
122
110
98
136
121
109
97
135
134
133
132
131
130
129
128
127
126
125
124
123
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
84
85
86
87
88
89
90
91
92
93
94
95
96
136
122
131
95
83
97
135
121
130
94
82
98
134
120
129
93
81
99
133
119
128
92
80
100
132
118
127
91
79
101
131
117
126
90
78
102
130
116
125
89
77
103
117
118
119
120
121
122
123
124
125
126
127
128
129
115
124
88
76
104
105
106
107
108
109
110
111
112
113
114
115
116
114
123
87
75
113
122
86
74
112
121
85
73
111
120
84
72
110
119
83
71
109
110
111
112
113
114
115
116
117
118
119
119
118
82
81
80
79
78
77
76
75
74
73
72
71
70
108
117
83
69
107
116
84
68
106
115
85
67
105
114
86
66
104
113
87
65
103
112
88
64
64
65
66
67
68
69
70
71
72
73
74
75
76
102
111
89
63
51
52
53
54
55
56
57
58
59
60
61
62
63
77
101
110
90
62
50
78
100
109
91
61
49
79
99
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
93
92
60
48
80
98
97
83
59
47
81
97
98
82
58
46
82
96
99
81
57
45
83
84
85
86
87
88
89
90
91
92
93
94
95
100
80
56
55
54
53
52
51
50
49
48
47
46
45
44
84
96
101
79
57
43
85
97
102
78
58
42
86
98
103
77
59
41
87
99
104
76
60
40
88
100
105
75
61
39
89
101
106
74
62
38
90
102
107
73
63
37
91
103
104
105
106
107
108
109
110
111
112
113
113
112
113
114
115
116
115
114
113
112
111
110
109
108
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
67
66
65
64
36
92
111
107
73
59
35
93
110
106
74
58
34
94
109
105
75
57
33
95
108
104
76
56
32
96
107
103
77
55
31
97
106
102
78
54
30
98
105
101
79
53
29
99
104
100
80
52
28
100
103
99
81
51
27
101
102
98
82
50
26
102
101
97
83
49
25
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
96
95
94
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
112
113
99
49
37
15
113
114
98
50
38
14
114
115
97
51
39
13
115
116
96
52
40
12
116
117
95
53
41
11
117
118
94
54
42
10
118
119
93
55
43
9
119
120
92
56
44
8
120
121
91
57
43
7
121
122
90
58
42
6
122
123
89
59
41
5
123
132
131
130
129
128
127
126
125
124
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
67
66
65
64
63
62
61
60
40
39
38
37
36
35
34
33
32
4
124
131
77
63
31
3
125
130
78
62
30
2
126
129
79
61
29
1
127
128
80
60
28
0
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
194
193
192
191
190
189
188
187
186
185
184
144
156
160
172
192
183
143
155
159
171
191
182
142
154
158
170
190
181
141
153
157
169
189
180
140
152
156
168
188
179
139
151
155
167
187
178
138
150
154
166
186
177
137
149
153
165
185
176
136
148
152
164
184
175
135
147
151
163
183
174
134
146
150
162
182
173
133
145
149
137
138
139
140
141
142
143
144
145
146
147
148
149
161
181
172
132
144
148
136
148
160
180
171
131
143
147
135
147
159
179
170
130
142
146
134
146
158
178
169
129
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
133
145
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
168
128
132
144
132
144
156
170
167
127
131
143
131
143
155
170
166
126
130
142
130
142
154
169
165
125
129
141
129
141
153
168
164
124
128
140
128
140
152
167
163
123
127
139
127
139
151
166
162
122
126
138
126
138
150
165
161
121
125
137
125
137
149
164
160
120
124
136
124
136
148
163
159
119
123
135
123
135
147
162
158
118
122
134
122
134
146
161
157
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
118
119
120
121
133
132
131
130
129
128
127
126
125
124
123
122
121
133
134
135
136
137
138
139
140
141
142
143
144
145
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
108
120
132
147
107
119
131
146
106
118
130
145
105
117
129
144
104
116
128
143
103
115
127
142
102
114
126
141
101
113
125
140
100
112
124
139
99
111
123
138
98
110
122
137
97
96
95
94
93
92
91
90
89
88
87
86
85
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
124
125
126
127
128
129
130
131
132
133
134
135
136
98
84
96
132
123
137
99
83
95
131
122
136
100
82
94
130
121
135
101
81
93
129
120
134
102
80
92
128
119
133
103
79
91
127
118
132
104
78
90
126
117
131
117
116
115
114
113
112
111
110
109
108
107
106
105
77
89
125
116
130
129
128
127
126
125
124
123
122
121
120
119
118
76
88
124
115
75
87
123
114
74
86
122
113
73
85
121
112
72
84
120
111
71
72
73
74
75
76
77
78
79
80
81
82
83
119
120
120
119
118
117
116
115
114
113
112
111
110
70
84
118
109
69
85
117
108
68
86
116
107
67
87
115
106
66
88
114
105
65
89
113
104
64
63
62
61
60
59
58
57
56
55
54
53
52
64
90
112
103
77
76
75
74
73
72
71
70
69
68
67
66
65
51
63
91
111
102
78
50
62
92
110
101
79
49
61
93
94
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
100
80
48
60
84
98
99
81
47
59
83
99
98
82
46
58
82
100
97
83
45
46
47
48
49
50
51
52
53
54
55
56
57
81
101
96
95
94
93
92
91
90
89
88
87
86
85
84
44
58
80
102
97
85
43
59
79
103
98
86
42
60
78
104
99
87
41
61
77
105
100
88
40
62
76
106
101
89
39
63
75
107
102
90
38
64
74
108
103
91
37
65
66
67
68
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
109
110
111
112
113
114
115
116
115
114
113
112
111
112
113
113
112
111
110
109
108
107
106
105
104
92
36
60
74
108
110
93
35
59
75
107
109
94
34
58
76
106
108
95
33
57
77
105
107
96
32
56
78
104
106
97
31
55
79
103
105
98
30
54
80
102
104
99
29
53
81
101
103
100
28
52
82
100
102
101
27
51
83
99
101
102
26
50
84
98
100
103
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
94
95
96
97
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
16
38
50
98
112
113
15
39
51
97
113
114
14
40
52
96
114
115
13
41
53
95
115
116
12
42
54
94
116
117
11
43
55
93
117
118
10
44
56
92
118
119
9
43
57
91
119
120
8
42
58
90
120
121
7
41
59
89
121
122
6
40
60
88
122
123
5
31
32
33
34
35
36
37
38
39
61
62
63
64
65
66
67
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
123
124
125
126
127
128
129
130
131
124
4
30
62
76
130
125
3
29
61
77
129
126
2
28
60
78
128
127
1
27
59
79
127
128
0
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
204
203
202
201
200
199
198
197
196
195
194
193
156
168
172
184
204
192
155
167
171
183
203
191
154
166
170
182
202
190
153
165
169
181
201
189
152
164
168
180
200
188
151
163
167
179
199
187
150
162
166
178
198
186
149
161
165
177
197
185
148
160
164
176
196
184
147
159
163
175
195
183
146
158
162
174
194
182
145
157
161
149
150
151
152
153
154
155
156
157
158
159
160
161
173
193
181
144
156
160
148
160
172
192
180
143
155
159
147
159
171
191
179
142
154
158
146
158
170
190
178
141
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
145
157
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
177
140
144
156
144
156
168
180
176
139
143
155
143
155
167
179
175
138
142
154
142
154
166
178
174
137
141
153
141
153
165
177
173
136
140
152
140
152
164
176
172
135
139
151
139
151
163
175
171
134
138
150
138
150
162
174
170
133
137
149
137
149
161
173
169
132
136
148
136
148
160
172
168
131
135
147
135
147
159
171
167
130
134
146
134
146
158
170
166
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
145
144
143
142
141
140
139
138
137
136
135
134
133
145
146
147
148
149
150
151
152
153
154
155
156
157
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
120
132
144
156
119
131
143
155
118
130
142
154
117
129
141
153
116
128
140
152
115
127
139
151
114
126
138
150
113
125
137
149
112
124
136
148
111
123
135
147
110
122
134
146
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
133
134
135
136
137
138
139
140
141
142
143
144
145
110
96
108
120
132
146
111
95
107
119
131
147
112
94
106
118
130
147
113
93
105
117
129
146
114
92
104
116
128
145
115
91
103
115
127
144
116
90
102
114
126
143
129
128
127
126
125
124
123
122
121
120
119
118
117
89
101
113
125
142
141
140
139
138
137
136
135
134
133
132
131
130
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
84
85
86
87
88
89
90
91
92
93
94
95
107
108
109
110
111
112
113
114
115
116
117
118
119
82
94
106
120
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
89
101
116
76
75
74
73
72
71
70
69
68
67
66
65
64
76
88
100
115
89
88
87
86
85
84
83
82
81
80
79
78
77
63
75
87
99
114
90
62
74
86
98
113
91
61
73
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
112
92
60
72
72
86
111
93
59
71
71
87
110
94
58
70
70
88
109
95
57
58
59
60
61
62
63
64
65
66
67
68
69
69
89
108
107
106
105
104
103
102
101
100
99
98
97
96
56
68
68
90
109
97
55
67
67
91
110
98
54
66
66
92
111
99
53
65
65
93
112
100
52
64
64
94
113
101
51
63
63
95
113
102
50
62
62
96
112
103
49
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
97
98
99
100
101
102
103
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
104
48
48
62
96
98
105
47
47
63
95
97
106
46
46
64
94
96
107
45
45
65
93
95
108
44
44
66
92
94
109
43
43
67
91
93
110
42
42
68
90
92
111
41
41
69
89
91
112
40
40
70
88
90
113
39
39
71
87
89
113
38
38
72
86
88
112
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
82
83
84
85
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
42
24
38
86
100
120
41
23
39
85
101
121
40
22
40
84
102
122
39
21
41
83
103
123
38
20
42
82
104
124
37
19
43
81
105
125
36
18
44
80
106
126
35
17
45
79
107
127
34
16
46
78
108
128
33
15
47
77
109
129
32
14
48
76
110
130
31
5
6
7
8
9
10
11
12
13
49
50
51
52
53
54
55
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
111
112
113
114
115
116
117
118
119
131
30
4
50
64
118
130
29
3
49
65
117
129
28
2
48
66
116
128
27
1
47
67
115
127
26
0
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
148
160
164
176
172
160
147
159
163
175
171
159
146
158
162
174
170
158
145
157
161
173
169
157
144
156
160
172
168
156
143
155
159
171
167
155
142
154
158
170
166
154
141
153
157
169
165
153
140
152
156
168
164
152
139
151
155
167
163
151
138
150
154
166
162
150
137
149
153
141
142
143
144
145
146
147
148
149
150
151
152
153
165
161
149
136
148
152
140
152
164
160
148
135
147
151
139
151
163
159
147
134
146
150
138
150
162
158
146
133
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
137
149
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
145
132
136
148
136
148
160
148
144
131
135
147
135
147
159
147
143
130
134
146
134
146
158
146
142
129
133
145
133
145
157
145
141
128
132
144
132
144
156
144
140
127
131
143
131
143
155
143
139
126
130
142
130
142
154
142
138
125
129
141
129
141
153
141
137
124
128
140
128
140
152
140
136
123
127
139
127
139
151
139
135
122
126
138
126
138
150
138
134
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
137
136
135
134
133
132
131
130
129
128
127
126
125
137
138
139
140
141
142
143
144
145
146
147
148
149
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
112
124
136
124
111
123
135
123
110
122
134
122
109
121
133
121
108
120
132
120
107
119
131
119
106
118
130
118
105
117
129
117
104
116
128
116
103
115
127
115
102
114
126
114
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
102
88
100
112
100
114
103
87
99
111
99
115
104
86
98
110
98
116
105
85
97
109
97
117
106
84
96
108
96
118
107
83
95
107
95
119
108
82
94
106
94
120
121
120
119
118
117
116
115
114
113
112
111
110
109
81
93
105
93
121
122
123
124
125
126
127
127
126
125
124
123
122
80
92
104
92
79
91
103
91
78
90
102
90
77
89
101
89
76
88
100
88
75
76
77
78
79
80
81
82
83
84
85
86
87
99
98
97
96
95
94
93
92
91
90
89
88
87
74
86
98
86
73
85
97
85
72
84
96
84
71
83
95
83
70
82
94
82
69
81
93
81
92
91
90
89
88
87
86
85
84
83
82
81
80
68
80
92
80
92
93
94
95
96
97
98
98
97
96
95
94
93
79
67
79
91
79
91
78
66
78
90
78
90
77
65
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
77
89
76
64
64
76
76
88
75
63
63
75
75
87
74
62
62
74
74
86
73
72
71
70
69
68
67
66
65
64
63
62
61
61
73
73
74
75
76
77
78
79
80
81
82
83
84
85
72
60
60
72
72
84
71
59
59
71
71
83
70
58
58
70
70
82
69
57
57
69
69
81
68
56
56
68
68
80
67
55
55
67
67
79
66
54
54
66
66
78
65
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
77
64
40
54
66
52
76
63
39
55
67
51
75
62
38
56
68
50
74
61
37
57
69
49
73
60
36
58
70
48
72
59
35
59
71
47
71
58
34
60
72
46
70
57
33
61
73
45
69
56
32
62
74
44
68
55
31
63
75
43
67
54
30
64
76
42
66
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
65
66
67
68
69
70
71
72
73
74
75
76
77
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
62
42
28
40
54
74
63
43
27
39
55
75
64
44
26
38
56
76
65
45
25
37
57
77
66
46
24
36
58
78
67
47
23
35
59
79
68
48
22
34
60
80
67
49
21
33
61
81
66
50
20
32
62
82
65
51
19
31
63
83
64
52
18
30
64
84
63
51
52
53
54
55
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
65
66
67
68
69
70
71
72
73
85
62
50
4
18
72
84
61
49
3
19
71
83
60
48
2
20
70
82
59
47
1
21
69
81
58
46
0
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
160
172
176
164
160
148
159
171
175
163
159
147
158
170
174
162
158
146
157
169
173
161
157
145
156
168
172
160
156
144
155
167
171
159
155
143
154
166
170
158
154
142
153
165
169
157
153
141
152
164
168
156
152
140
151
163
167
155
151
139
150
162
166
154
150
138
149
161
165
153
152
151
150
149
148
147
146
145
144
143
142
141
153
149
137
148
160
164
152
140
152
148
136
147
159
163
151
139
151
147
135
146
158
162
150
138
150
146
134
145
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
149
137
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
133
144
148
160
148
136
148
136
132
143
147
159
147
135
147
135
131
142
146
158
146
134
146
134
130
141
145
157
145
133
145
133
129
140
144
156
144
132
144
132
128
139
143
155
143
131
143
131
127
138
142
154
142
130
142
130
126
137
141
153
141
129
141
129
125
136
140
152
140
128
140
128
124
135
139
151
139
127
139
127
123
134
138
150
138
126
138
126
122
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
149
148
147
146
145
144
143
142
141
140
139
138
137
125
126
127
128
129
130
131
132
133
134
135
136
137
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
124
136
124
112
123
135
123
111
122
134
122
110
121
133
121
109
120
132
120
108
119
131
119
107
118
130
118
106
117
129
117
105
116
128
116
104
115
127
115
103
114
126
114
102
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
114
100
112
100
88
102
115
99
111
99
87
103
116
98
110
98
86
104
117
97
109
97
85
105
118
96
108
96
84
106
119
95
107
95
83
107
120
94
106
94
82
108
122
123
124
125
126
127
127
126
125
124
123
122
121
93
105
93
81
109
110
111
112
113
114
115
116
117
118
119
120
121
92
104
92
80
91
103
91
79
90
102
90
78
89
101
89
77
88
100
88
76
87
88
89
90
91
92
93
94
95
96
97
98
99
87
86
85
84
83
82
81
80
79
78
77
76
75
86
98
86
74
85
97
85
73
84
96
84
72
83
95
83
71
82
94
82
70
81
93
81
69
93
94
95
96
97
98
98
97
96
95
94
93
92
80
92
80
68
80
81
82
83
84
85
86
87
88
89
90
91
92
91
79
91
79
67
79
90
78
90
78
66
78
89
77
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
65
77
88
76
76
64
64
76
87
75
75
63
63
75
86
74
74
62
62
74
85
84
83
82
81
80
79
78
77
76
75
74
73
73
61
61
62
63
64
65
66
67
68
69
70
71
72
73
84
72
72
60
60
72
83
71
71
59
59
71
82
70
70
58
58
70
81
69
69
57
57
69
80
68
68
56
56
68
79
67
67
55
55
67
78
66
66
54
54
66
77
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
65
76
52
66
54
40
64
75
51
67
55
39
63
74
50
68
56
38
62
73
49
69
57
37
61
72
48
70
58
36
60
71
47
71
59
35
59
70
46
72
60
34
58
69
45
73
61
33
57
68
44
74
62
32
56
67
43
75
63
31
55
66
42
76
64
30
54
73
72
71
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
77
76
75
74
73
72
71
70
69
68
67
66
65
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
74
54
40
28
42
62
75
55
39
27
43
63
76
56
38
26
44
64
77
57
37
25
45
65
78
58
36
24
46
66
79
59
35
23
47
67
80
60
34
22
48
68
81
61
33
21
49
67
82
62
32
20
50
66
83
63
31
19
51
65
84
64
30
18
52
64
85
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
6
7
8
9
10
11
12
13
14
15
16
17
53
54
55
56
55
54
53
52
51
63
84
72
18
4
50
62
83
71
19
3
49
61
82
70
20
2
48
60
81
69
21
1
47
59
80
68
22
0
193
194
195
196
197
198
199
200
201
202
203
204
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
192
204
184
172
168
156
191
203
183
171
167
155
190
202
182
170
166
154
189
201
181
169
165
153
188
200
180
168
164
152
187
199
179
167
163
151
186
198
178
166
162
150
185
197
177
165
161
149
184
196
176
164
160
148
183
195
175
163
159
147
182
194
174
162
158
146
181
193
173
161
160
159
158
157
156
155
154
153
152
151
150
149
161
157
145
180
192
172
160
148
160
156
144
179
191
171
159
147
159
155
143
178
190
170
158
146
158
154
142
177
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
157
145
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
141
176
180
168
156
144
156
144
140
175
179
167
155
143
155
143
139
174
178
166
154
142
154
142
138
173
177
165
153
141
153
141
137
172
176
164
152
140
152
140
136
171
175
163
151
139
151
139
135
170
174
162
150
138
150
138
134
169
173
161
149
137
149
137
133
168
172
160
148
136
148
136
132
167
171
159
147
135
147
135
131
166
170
158
146
134
146
134
130
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
157
156
155
154
153
152
151
150
149
148
147
146
145
133
134
135
136
137
138
139
140
141
142
143
144
145
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
156
144
132
120
155
143
131
119
154
142
130
118
153
141
129
117
152
140
128
116
151
139
127
115
150
138
126
114
149
137
125
113
148
136
124
112
147
135
123
111
146
134
122
110
145
144
143
142
141
140
139
138
137
136
135
134
133
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
146
132
120
108
96
110
147
131
119
107
95
111
147
130
118
106
94
112
146
129
117
105
93
113
145
128
116
104
92
114
144
127
115
103
91
115
143
126
114
102
90
116
130
131
132
133
134
135
136
137
138
139
140
141
142
125
113
101
89
117
118
119
120
121
122
123
124
125
126
127
128
129
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
119
118
117
116
115
114
113
112
111
110
109
108
107
95
94
93
92
91
90
89
88
87
86
85
84
83
120
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
116
101
89
77
77
78
79
80
81
82
83
84
85
86
87
88
89
115
100
88
76
64
65
66
67
68
69
70
71
72
73
74
75
76
90
114
99
87
75
63
91
113
98
86
74
62
92
112
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
73
61
93
111
86
72
72
60
94
110
87
71
71
59
95
109
88
70
70
58
96
97
98
99
100
101
102
103
104
105
106
107
108
89
69
69
68
67
66
65
64
63
62
61
60
59
58
57
97
109
90
68
68
56
98
110
91
67
67
55
99
111
92
66
66
54
100
112
93
65
65
53
101
113
94
64
64
52
102
113
95
63
63
51
103
112
96
62
62
50
104
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
103
102
101
100
99
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
49
105
98
96
62
48
48
106
97
95
63
47
47
107
96
94
64
46
46
108
95
93
65
45
45
109
94
92
66
44
44
110
93
91
67
43
43
111
92
90
68
42
42
112
91
89
69
41
41
113
90
88
70
40
40
113
89
87
71
39
39
112
88
86
72
38
38
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
85
84
83
82
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
120
100
86
38
24
42
121
101
85
39
23
41
122
102
84
40
22
40
123
103
83
41
21
39
124
104
82
42
20
38
125
105
81
43
19
37
126
106
80
44
18
36
127
107
79
45
17
35
128
108
78
46
16
34
129
109
77
47
15
33
130
110
76
48
14
32
131
119
118
117
116
115
114
113
112
111
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
31
130
118
64
50
4
30
129
117
65
49
3
29
128
116
66
48
2
28
127
115
67
47
1
27
126
114
68
46
0
184
185
186
187
188
189
190
191
192
193
194
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
183
192
172
160
156
144
182
191
171
159
155
143
181
190
170
158
154
142
180
189
169
157
153
141
179
188
168
156
152
140
178
187
167
155
151
139
177
186
166
154
150
138
176
185
165
153
149
137
175
184
164
152
148
136
174
183
163
151
147
135
173
182
162
150
146
134
172
181
161
149
148
147
146
145
144
143
142
141
140
139
138
137
149
145
133
171
180
160
148
136
148
144
132
170
179
159
147
135
147
143
131
169
178
158
146
134
146
142
130
168
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
145
133
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
129
167
170
156
144
132
144
132
128
166
170
155
143
131
143
131
127
165
169
154
142
130
142
130
126
164
168
153
141
129
141
129
125
163
167
152
140
128
140
128
124
162
166
151
139
127
139
127
123
161
165
150
138
126
138
126
122
160
164
149
137
125
137
125
121
159
163
148
136
124
136
124
120
158
162
147
135
123
135
123
119
157
161
146
134
122
134
122
118
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
145
144
143
142
141
140
139
138
137
136
135
134
133
121
122
123
124
125
126
127
128
129
130
131
132
133
121
120
119
118
117
116
115
114
113
112
111
110
109
110
111
112
113
114
115
116
117
147
132
120
108
146
131
119
107
145
130
118
106
144
129
117
105
143
128
116
104
142
127
115
103
141
126
114
102
140
125
113
101
139
124
112
100
138
123
111
99
137
122
110
98
136
135
134
133
132
131
130
129
128
127
126
125
124
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
85
86
87
88
89
90
91
92
93
94
95
96
97
137
123
132
96
84
98
136
122
131
95
83
99
135
121
130
94
82
100
134
120
129
93
81
101
133
119
128
92
80
102
132
118
127
91
79
103
131
117
126
90
78
104
118
119
120
121
122
123
124
125
126
127
128
129
130
116
125
89
77
105
106
107
108
109
110
111
112
113
114
115
116
117
115
124
88
76
114
123
87
75
113
122
86
74
112
121
85
73
111
120
84
72
110
111
112
113
114
115
116
117
118
119
120
120
119
83
82
81
80
79
78
77
76
75
74
73
72
71
109
118
84
70
108
117
85
69
107
116
86
68
106
115
87
67
105
114
88
66
104
113
89
65
65
66
67
68
69
70
71
72
73
74
75
76
77
103
112
90
64
52
53
54
55
56
57
58
59
60
61
62
63
64
78
102
111
91
63
51
79
101
110
92
62
50
80
100
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
94
93
61
49
81
99
98
84
60
48
82
98
99
83
59
47
83
97
100
82
58
46
84
85
86
87
88
89
90
91
92
93
94
95
96
101
81
57
56
55
54
53
52
51
50
49
48
47
46
45
85
97
102
80
58
44
86
98
103
79
59
43
87
99
104
78
60
42
88
100
105
77
61
41
89
101
106
76
62
40
90
102
107
75
63
39
91
103
108
74
64
38
92
104
105
106
107
108
109
110
111
112
113
113
112
111
112
113
114
115
116
115
114
113
112
111
110
109
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
68
67
66
65
37
93
110
108
74
60
36
94
109
107
75
59
35
95
108
106
76
58
34
96
107
105
77
57
33
97
106
104
78
56
32
98
105
103
79
55
31
99
104
102
80
54
30
100
103
101
81
53
29
101
102
100
82
52
28
102
101
99
83
51
27
103
100
98
84
50
26
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
97
96
95
94
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
113
112
98
50
38
16
114
113
97
51
39
15
115
114
96
52
40
14
116
115
95
53
41
13
117
116
94
54
42
12
118
117
93
55
43
11
119
118
92
56
44
10
120
119
91
57
43
9
121
120
90
58
42
8
122
121
89
59
41
7
123
122
88
60
40
6
124
131
130
129
128
127
126
125
124
123
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
67
66
65
64
63
62
61
39
38
37
36
35
34
33
32
31
5
125
130
76
62
30
4
126
129
77
61
29
3
127
128
78
60
28
2
128
127
79
59
27
1
129
126
80
58
26
0
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
195
194
193
192
191
190
189
188
187
186
185
145
157
161
173
193
184
144
156
160
172
192
183
143
155
159
171
191
182
142
154
158
170
190
181
141
153
157
169
189
180
140
152
156
168
188
179
139
151
155
167
187
178
138
150
154
166
186
177
137
149
153
165
185
176
136
148
152
164
184
175
135
147
151
163
183
174
134
146
150
138
139
140
141
142
143
144
145
146
147
148
149
150
162
182
173
133
145
149
137
149
161
181
172
132
144
148
136
148
160
180
171
131
143
147
135
147
159
179
170
130
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
134
146
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
169
129
133
145
133
145
157
171
168
128
132
144
132
144
156
171
167
127
131
143
131
143
155
170
166
126
130
142
130
142
154
169
165
125
129
141
129
141
153
168
164
124
128
140
128
140
152
167
163
123
127
139
127
139
151
166
162
122
126
138
126
138
150
165
161
121
125
137
125
137
149
164
160
120
124
136
124
136
148
163
159
119
123
135
123
135
147
162
158
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
119
120
121
122
134
133
132
131
130
129
128
127
126
125
124
123
122
134
135
136
137
138
139
140
141
142
143
144
145
146
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
109
121
133
148
108
120
132
147
107
119
131
146
106
118
130
145
105
117
129
144
104
116
128
143
103
115
127
142
102
114
126
141
101
113
125
140
100
112
124
139
99
111
123
138
98
97
96
95
94
93
92
91
90
89
88
87
86
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
125
126
127
128
129
130
131
132
133
134
135
136
137
99
85
97
133
124
138
100
84
96
132
123
137
101
83
95
131
122
136
102
82
94
130
121
135
103
81
93
129
120
134
104
80
92
128
119
133
105
79
91
127
118
132
118
117
116
115
114
113
112
111
110
109
108
107
106
78
90
126
117
131
130
129
128
127
126
125
124
123
122
121
120
119
77
89
125
116
76
88
124
115
75
87
123
114
74
86
122
113
73
85
121
112
72
73
74
75
76
77
78
79
80
81
82
83
84
120
121
121
120
119
118
117
116
115
114
113
112
111
71
85
119
110
70
86
118
109
69
87
117
108
68
88
116
107
67
89
115
106
66
90
114
105
65
64
63
62
61
60
59
58
57
56
55
54
53
65
91
113
104
78
77
76
75
74
73
72
71
70
69
68
67
66
52
64
92
112
103
79
51
63
93
111
102
80
50
62
94
95
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
101
81
49
61
85
99
100
82
48
60
84
100
99
83
47
59
83
101
98
84
46
47
48
49
50
51
52
53
54
55
56
57
58
82
102
97
96
95
94
93
92
91
90
89
88
87
86
85
45
59
81
103
98
86
44
60
80
104
99
87
43
61
79
105
100
88
42
62
78
106
101
89
41
63
77
107
102
90
40
64
76
108
103
91
39
65
75
109
104
92
38
66
67
68
69
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
110
111
112
113
114
115
116
115
114
113
112
111
110
111
112
113
113
112
111
110
109
108
107
106
105
93
37
61
75
109
109
94
36
60
76
108
108
95
35
59
77
107
107
96
34
58
78
106
106
97
33
57
79
105
105
98
32
56
80
104
104
99
31
55
81
103
103
100
30
54
82
102
102
101
29
53
83
101
101
102
28
52
84
100
100
103
27
51
85
99
99
104
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
94
95
96
97
98
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
17
39
51
97
111
114
16
40
52
96
112
115
15
41
53
95
113
116
14
42
54
94
114
117
13
43
55
93
115
118
12
44
56
92
116
119
11
43
57
91
117
120
10
42
58
90
118
121
9
41
59
89
119
122
8
40
60
88
120
123
7
39
61
87
121
124
6
30
31
32
33
34
35
36
37
38
62
63
64
65
66
67
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
122
123
124
125
126
127
128
129
130
125
5
29
61
75
129
126
4
28
60
76
128
127
3
27
59
77
127
128
2
26
58
78
126
129
1
25
57
79
125
130
0
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
205
204
203
202
201
200
199
198
197
196
195
194
157
169
173
185
205
193
156
168
172
184
204
192
155
167
171
183
203
191
154
166
170
182
202
190
153
165
169
181
201
189
152
164
168
180
200
188
151
163
167
179
199
187
150
162
166
178
198
186
149
161
165
177
197
185
148
160
164
176
196
184
147
159
163
175
195
183
146
158
162
150
151
152
153
154
155
156
157
158
159
160
161
162
174
194
182
145
157
161
149
161
173
193
181
144
156
160
148
160
172
192
180
143
155
159
147
159
171
191
179
142
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
146
158
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
178
141
145
157
145
157
169
181
177
140
144
156
144
156
168
180
176
139
143
155
143
155
167
179
175
138
142
154
142
154
166
178
174
137
141
153
141
153
165
177
173
136
140
152
140
152
164
176
172
135
139
151
139
151
163
175
171
134
138
150
138
150
162
174
170
133
137
149
137
149
161
173
169
132
136
148
136
148
160
172
168
131
135
147
135
147
159
171
167
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
146
145
144
143
142
141
140
139
138
137
136
135
134
146
147
148
149
150
151
152
153
154
155
156
157
158
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
121
133
145
157
120
132
144
156
119
131
143
155
118
130
142
154
117
129
141
153
116
128
140
152
115
127
139
151
114
126
138
150
113
125
137
149
112
124
136
148
111
123
135
147
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
134
135
136
137
138
139
140
141
142
143
144
145
146
111
97
109
121
133
147
112
96
108
120
132
148
113
95
107
119
131
148
114
94
106
118
130
147
115
93
105
117
129
146
116
92
104
116
128
145
117
91
103
115
127
144
130
129
128
127
126
125
124
123
122
121
120
119
118
90
102
114
126
143
142
141
140
139
138
137
136
135
134
133
132
131
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
85
86
87
88
89
90
91
92
93
94
95
96
108
109
110
111
112
113
114
115
116
117
118
119
120
83
95
107
121
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
90
102
117
77
76
75
74
73
72
71
70
69
68
67
66
65
77
89
101
116
90
89
88
87
86
85
84
83
82
81
80
79
78
64
76
88
100
115
91
63
75
87
99
114
92
62
74
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
113
93
61
73
73
87
112
94
60
72
72
88
111
95
59
71
71
89
110
96
58
59
60
61
62
63
64
65
66
67
68
69
70
70
90
109
108
107
106
105
104
103
102
101
100
99
98
97
57
69
69
91
110
98
56
68
68
92
111
99
55
67
67
93
112
100
54
66
66
94
113
101
53
65
65
95
113
102
52
64
64
96
112
103
51
63
63
97
111
104
50
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
98
99
100
101
102
103
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
105
49
49
63
97
97
106
48
48
64
96
96
107
47
47
65
95
95
108
46
46
66
94
94
109
45
45
67
93
93
110
44
44
68
92
92
111
43
43
69
91
91
112
42
42
70
90
90
113
41
41
71
89
89
113
40
40
72
88
88
112
39
39
73
87
87
111
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
83
84
85
86
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
41
25
39
85
99
119
40
24
40
84
100
120
39
23
41
83
101
121
38
22
42
82
102
122
37
21
43
81
103
123
36
20
44
80
104
124
35
19
45
79
105
125
34
18
46
78
106
126
33
17
47
77
107
127
32
16
48
76
108
128
31
15
49
75
109
129
30
6
7
8
9
10
11
12
13
14
50
51
52
53
54
55
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
110
111
112
113
114
115
116
117
118
130
29
5
49
63
117
129
28
4
48
64
116
128
27
3
47
65
115
127
26
2
46
66
114
126
25
1
45
67
113
125
24
0
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
149
161
165
177
173
161
148
160
164
176
172
160
147
159
163
175
171
159
146
158
162
174
170
158
145
157
161
173
169
157
144
156
160
172
168
156
143
155
159
171
167
155
142
154
158
170
166
154
141
153
157
169
165
153
140
152
156
168
164
152
139
151
155
167
163
151
138
150
154
142
143
144
145
146
147
148
149
150
151
152
153
154
166
162
150
137
149
153
141
153
165
161
149
136
148
152
140
152
164
160
148
135
147
151
139
151
163
159
147
134
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
138
150
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
146
133
137
149
137
149
161
149
145
132
136
148
136
148
160
148
144
131
135
147
135
147
159
147
143
130
134
146
134
146
158
146
142
129
133
145
133
145
157
145
141
128
132
144
132
144
156
144
140
127
131
143
131
143
155
143
139
126
130
142
130
142
154
142
138
125
129
141
129
141
153
141
137
124
128
140
128
140
152
140
136
123
127
139
127
139
151
139
135
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
138
137
136
135
134
133
132
131
130
129
128
127
126
138
139
140
141
142
143
144
145
146
147
148
149
150
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
113
125
137
125
112
124
136
124
111
123
135
123
110
122
134
122
109
121
133
121
108
120
132
120
107
119
131
119
106
118
130
118
105
117
129
117
104
116
128
116
103
115
127
115
102
101
100
99
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
103
89
101
113
101
115
104
88
100
112
100
116
105
87
99
111
99
117
106
86
98
110
98
118
107
85
97
109
97
119
108
84
96
108
96
120
109
83
95
107
95
121
122
121
120
119
118
117
116
115
114
113
112
111
110
82
94
106
94
122
123
124
125
126
127
128
128
127
126
125
124
123
81
93
105
93
80
92
104
92
79
91
103
91
78
90
102
90
77
89
101
89
76
77
78
79
80
81
82
83
84
85
86
87
88
100
99
98
97
96
95
94
93
92
91
90
89
88
75
87
99
87
74
86
98
86
73
85
97
85
72
84
96
84
71
83
95
83
70
82
94
82
93
92
91
90
89
88
87
86
85
84
83
82
81
69
81
93
81
93
94
95
96
97
98
99
99
98
97
96
95
94
80
68
80
92
80
92
79
67
79
91
79
91
78
66
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
78
90
77
65
65
77
77
89
76
64
64
76
76
88
75
63
63
75
75
87
74
73
72
71
70
69
68
67
66
65
64
63
62
62
74
74
75
76
77
78
79
80
81
82
83
84
85
86
73
61
61
73
73
85
72
60
60
72
72
84
71
59
59
71
71
83
70
58
58
70
70
82
69
57
57
69
69
81
68
56
56
68
68
80
67
55
55
67
67
79
66
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
78
65
41
55
67
53
77
64
40
56
68
52
76
63
39
57
69
51
75
62
38
58
70
50
74
61
37
59
71
49
73
60
36
60
72
48
72
59
35
61
73
47
71
58
34
62
74
46
70
57
33
63
75
45
69
56
32
64
76
44
68
55
31
65
77
43
67
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
66
67
68
69
70
71
72
73
74
75
76
77
78
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
63
43
29
41
55
75
64
44
28
40
56
76
65
45
27
39
57
77
66
46
26
38
58
78
67
47
25
37
59
79
68
48
24
36
60
80
67
49
23
35
61
81
66
50
22
34
62
82
65
51
21
33
63
83
64
52
20
32
64
84
63
53
19
31
65
85
62
50
51
52
53
54
55
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
66
67
68
69
70
71
72
73
74
86
61
49
5
19
73
85
60
48
4
20
72
84
59
47
3
21
71
83
58
46
2
22
70
82
57
45
1
23
69
81
56
44
0
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
161
173
177
165
161
149
160
172
176
164
160
148
159
171
175
163
159
147
158
170
174
162
158
146
157
169
173
161
157
145
156
168
172
160
156
144
155
167
171
159
155
143
154
166
170
158
154
142
153
165
169
157
153
141
152
164
168
156
152
140
151
163
167
155
151
139
150
162
166
154
153
152
151
150
149
148
147
146
145
144
143
142
154
150
138
149
161
165
153
141
153
149
137
148
160
164
152
140
152
148
136
147
159
163
151
139
151
147
135
146
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
150
138
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
134
145
149
161
149
137
149
137
133
144
148
160
148
136
148
136
132
143
147
159
147
135
147
135
131
142
146
158
146
134
146
134
130
141
145
157
145
133
145
133
129
140
144
156
144
132
144
132
128
139
143
155
143
131
143
131
127
138
142
154
142
130
142
130
126
137
141
153
141
129
141
129
125
136
140
152
140
128
140
128
124
135
139
151
139
127
139
127
123
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
150
149
148
147
146
145
144
143
142
141
140
139
138
126
127
128
129
130
131
132
133
134
135
136
137
138
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
125
137
125
113
124
136
124
112
123
135
123
111
122
134
122
110
121
133
121
109
120
132
120
108
119
131
119
107
118
130
118
106
117
129
117
105
116
128
116
104
115
127
115
103
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
99
100
101
102
115
101
113
101
89
103
116
100
112
100
88
104
117
99
111
99
87
105
118
98
110
98
86
106
119
97
109
97
85
107
120
96
108
96
84
108
121
95
107
95
83
109
123
124
125
126
127
128
128
127
126
125
124
123
122
94
106
94
82
110
111
112
113
114
115
116
117
118
119
120
121
122
93
105
93
81
92
104
92
80
91
103
91
79
90
102
90
78
89
101
89
77
88
89
90
91
92
93
94
95
96
97
98
99
100
88
87
86
85
84
83
82
81
80
79
78
77
76
87
99
87
75
86
98
86
74
85
97
85
73
84
96
84
72
83
95
83
71
82
94
82
70
94
95
96
97
98
99
99
98
97
96
95
94
93
81
93
81
69
81
82
83
84
85
86
87
88
89
90
91
92
93
92
80
92
80
68
80
91
79
91
79
67
79
90
78
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
66
78
89
77
77
65
65
77
88
76
76
64
64
76
87
75
75
63
63
75
86
85
84
83
82
81
80
79
78
77
76
75
74
74
62
62
63
64
65
66
67
68
69
70
71
72
73
74
85
73
73
61
61
73
84
72
72
60
60
72
83
71
71
59
59
71
82
70
70
58
58
70
81
69
69
57
57
69
80
68
68
56
56
68
79
67
67
55
55
67
78
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
66
77
53
67
55
41
65
76
52
68
56
40
64
75
51
69
57
39
63
74
50
70
58
38
62
73
49
71
59
37
61
72
48
72
60
36
60
71
47
73
61
35
59
70
46
74
62
34
58
69
45
75
63
33
57
68
44
76
64
32
56
67
43
77
65
31
55
74
73
72
71
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
78
77
76
75
74
73
72
71
70
69
68
67
66
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
75
55
41
29
43
63
76
56
40
28
44
64
77
57
39
27
45
65
78
58
38
26
46
66
79
59
37
25
47
67
80
60
36
24
48
68
81
61
35
23
49
67
82
62
34
22
50
66
83
63
33
21
51
65
84
64
32
20
52
64
85
65
31
19
53
63
86
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
7
8
9
10
11
12
13
14
15
16
17
18
54
55
56
55
54
53
52
51
50
62
85
73
19
5
49
61
84
72
20
4
48
60
83
71
21
3
47
59
82
70
22
2
46
58
81
69
23
1
45
57
80
68
24
0
194
195
196
197
198
199
200
201
202
203
204
205
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
193
205
185
173
169
157
192
204
184
172
168
156
191
203
183
171
167
155
190
202
182
170
166
154
189
201
181
169
165
153
188
200
180
168
164
152
187
199
179
167
163
151
186
198
178
166
162
150
185
197
177
165
161
149
184
196
176
164
160
148
183
195
175
163
159
147
182
194
174
162
161
160
159
158
157
156
155
154
153
152
151
150
162
158
146
181
193
173
161
149
161
157
145
180
192
172
160
148
160
156
144
179
191
171
159
147
159
155
143
178
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
158
146
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
142
177
181
169
157
145
157
145
141
176
180
168
156
144
156
144
140
175
179
167
155
143
155
143
139
174
178
166
154
142
154
142
138
173
177
165
153
141
153
141
137
172
176
164
152
140
152
140
136
171
175
163
151
139
151
139
135
170
174
162
150
138
150
138
134
169
173
161
149
137
149
137
133
168
172
160
148
136
148
136
132
167
171
159
147
135
147
135
131
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
158
157
156
155
154
153
152
151
150
149
148
147
146
134
135
136
137
138
139
140
141
142
143
144
145
146
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
157
145
133
121
156
144
132
120
155
143
131
119
154
142
130
118
153
141
129
117
152
140
128
116
151
139
127
115
150
138
126
114
149
137
125
113
148
136
124
112
147
135
123
111
146
145
144
143
142
141
140
139
138
137
136
135
134
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
147
133
121
109
97
111
148
132
120
108
96
112
148
131
119
107
95
113
147
130
118
106
94
114
146
129
117
105
93
115
145
128
116
104
92
116
144
127
115
103
91
117
131
132
133
134
135
136
137
138
139
140
141
142
143
126
114
102
90
118
119
120
121
122
123
124
125
126
127
128
129
130
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
119
118
117
116
115
114
113
112
111
110
109
108
96
95
94
93
92
91
90
89
88
87
86
85
84
121
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
117
102
90
78
78
79
80
81
82
83
84
85
86
87
88
89
90
116
101
89
77
65
66
67
68
69
70
71
72
73
74
75
76
77
91
115
100
88
76
64
92
114
99
87
75
63
93
113
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
74
62
94
112
87
73
73
61
95
111
88
72
72
60
96
110
89
71
71
59
97
98
99
100
101
102
103
104
105
106
107
108
109
90
70
70
69
68
67
66
65
64
63
62
61
60
59
58
98
110
91
69
69
57
99
111
92
68
68
56
100
112
93
67
67
55
101
113
94
66
66
54
102
113
95
65
65
53
103
112
96
64
64
52
104
111
97
63
63
51
105
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
103
102
101
100
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
50
106
97
97
63
49
49
107
96
96
64
48
48
108
95
95
65
47
47
109
94
94
66
46
46
110
93
93
67
45
45
111
92
92
68
44
44
112
91
91
69
43
43
113
90
90
70
42
42
113
89
89
71
41
41
112
88
88
72
40
40
111
87
87
73
39
39
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
86
85
84
83
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
119
99
85
39
25
41
120
100
84
40
24
40
121
101
83
41
23
39
122
102
82
42
22
38
123
103
81
43
21
37
124
104
80
44
20
36
125
105
79
45
19
35
126
106
78
46
18
34
127
107
77
47
17
33
128
108
76
48
16
32
129
109
75
49
15
31
130
118
117
116
115
114
113
112
111
110
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
30
129
117
63
49
5
29
128
116
64
48
4
28
127
115
65
47
3
27
126
114
66
46
2
26
125
113
67
45
1
25
124
112
68
44
0
185
186
187
188
189
190
191
192
193
194
195
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
184
193
173
161
157
145
183
192
172
160
156
144
182
191
171
159
155
143
181
190
170
158
154
142
180
189
169
157
153
141
179
188
168
156
152
140
178
187
167
155
151
139
177
186
166
154
150
138
176
185
165
153
149
137
175
184
164
152
148
136
174
183
163
151
147
135
173
182
162
150
149
148
147
146
145
144
143
142
141
140
139
138
150
146
134
172
181
161
149
137
149
145
133
171
180
160
148
136
148
144
132
170
179
159
147
135
147
143
131
169
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
146
134
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
130
168
171
157
145
133
145
133
129
167
171
156
144
132
144
132
128
166
170
155
143
131
143
131
127
165
169
154
142
130
142
130
126
164
168
153
141
129
141
129
125
163
167
152
140
128
140
128
124
162
166
151
139
127
139
127
123
161
165
150
138
126
138
126
122
160
164
149
137
125
137
125
121
159
163
148
136
124
136
124
120
158
162
147
135
123
135
123
119
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
146
145
144
143
142
141
140
139
138
137
136
135
134
122
123
124
125
126
127
128
129
130
131
132
133
134
122
121
120
119
118
117
116
115
114
113
112
111
110
111
112
113
114
115
116
117
118
148
133
121
109
147
132
120
108
146
131
119
107
145
130
118
106
144
129
117
105
143
128
116
104
142
127
115
103
141
126
114
102
140
125
113
101
139
124
112
100
138
123
111
99
137
136
135
134
133
132
131
130
129
128
127
126
125
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
86
87
88
89
90
91
92
93
94
95
96
97
98
138
124
133
97
85
99
137
123
132
96
84
100
136
122
131
95
83
101
135
121
130
94
82
102
134
120
129
93
81
103
133
119
128
92
80
104
132
118
127
91
79
105
119
120
121
122
123
124
125
126
127
128
129
130
131
117
126
90
78
106
107
108
109
110
111
112
113
114
115
116
117
118
116
125
89
77
115
124
88
76
114
123
87
75
113
122
86
74
112
121
85
73
111
112
113
114
115
116
117
118
119
120
121
121
120
84
83
82
81
80
79
78
77
76
75
74
73
72
110
119
85
71
109
118
86
70
108
117
87
69
107
116
88
68
106
115
89
67
105
114
90
66
66
67
68
69
70
71
72
73
74
75
76
77
78
104
113
91
65
53
54
55
56
57
58
59
60
61
62
63
64
65
79
103
112
92
64
52
80
102
111
93
63
51
81
101
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
95
94
62
50
82
100
99
85
61
49
83
99
100
84
60
48
84
98
101
83
59
47
85
86
87
88
89
90
91
92
93
94
95
96
97
102
82
58
57
56
55
54
53
52
51
50
49
48
47
46
86
98
103
81
59
45
87
99
104
80
60
44
88
100
105
79
61
43
89
101
106
78
62
42
90
102
107
77
63
41
91
103
108
76
64
40
92
104
109
75
65
39
93
105
106
107
108
109
110
111
112
113
113
112
111
110
111
112
113
114
115
116
115
114
113
112
111
110
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
69
68
67
66
38
94
109
109
75
61
37
95
108
108
76
60
36
96
107
107
77
59
35
97
106
106
78
58
34
98
105
105
79
57
33
99
104
104
80
56
32
100
103
103
81
55
31
101
102
102
82
54
30
102
101
101
83
53
29
103
100
100
84
52
28
104
99
99
85
51
27
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
98
97
96
95
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
114
111
97
51
39
17
115
112
96
52
40
16
116
113
95
53
41
15
117
114
94
54
42
14
118
115
93
55
43
13
119
116
92
56
44
12
120
117
91
57
43
11
121
118
90
58
42
10
122
119
89
59
41
9
123
120
88
60
40
8
124
121
87
61
39
7
125
130
129
128
127
126
125
124
123
122
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
67
66
65
64
63
62
38
37
36
35
34
33
32
31
30
6
126
129
75
61
29
5
127
128
76
60
28
4
128
127
77
59
27
3
129
126
78
58
26
2
130
125
79
57
25
1
131
124
80
56
24
0
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
196
195
194
193
192
191
190
189
188
187
186
146
158
162
174
194
185
145
157
161
173
193
184
144
156
160
172
192
183
143
155
159
171
191
182
142
154
158
170
190
181
141
153
157
169
189
180
140
152
156
168
188
179
139
151
155
167
187
178
138
150
154
166
186
177
137
149
153
165
185
176
136
148
152
164
184
175
135
147
151
139
140
141
142
143
144
145
146
147
148
149
150
151
163
183
174
134
146
150
138
150
162
182
173
133
145
149
137
149
161
181
172
132
144
148
136
148
160
180
171
131
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
135
147
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
170
130
134
146
134
146
158
172
169
129
133
145
133
145
157
172
168
128
132
144
132
144
156
171
167
127
131
143
131
143
155
170
166
126
130
142
130
142
154
169
165
125
129
141
129
141
153
168
164
124
128
140
128
140
152
167
163
123
127
139
127
139
151
166
162
122
126
138
126
138
150
165
161
121
125
137
125
137
149
164
160
120
124
136
124
136
148
163
159
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
120
121
122
123
135
134
133
132
131
130
129
128
127
126
125
124
123
135
136
137
138
139
140
141
142
143
144
145
146
147
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
110
122
134
149
109
121
133
148
108
120
132
147
107
119
131
146
106
118
130
145
105
117
129
144
104
116
128
143
103
115
127
142
102
114
126
141
101
113
125
140
100
112
124
139
99
98
97
96
95
94
93
92
91
90
89
88
87
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
126
127
128
129
130
131
132
133
134
135
136
137
138
100
86
98
134
125
139
101
85
97
133
124
138
102
84
96
132
123
137
103
83
95
131
122
136
104
82
94
130
121
135
105
81
93
129
120
134
106
80
92
128
119
133
119
118
117
116
115
114
113
112
111
110
109
108
107
79
91
127
118
132
131
130
129
128
127
126
125
124
123
122
121
120
78
90
126
117
77
89
125
116
76
88
124
115
75
87
123
114
74
86
122
113
73
74
75
76
77
78
79
80
81
82
83
84
85
121
122
122
121
120
119
118
117
116
115
114
113
112
72
86
120
111
71
87
119
110
70
88
118
109
69
89
117
108
68
90
116
107
67
91
115
106
66
65
64
63
62
61
60
59
58
57
56
55
54
66
92
114
105
79
78
77
76
75
74
73
72
71
70
69
68
67
53
65
93
113
104
80
52
64
94
112
103
81
51
63
95
96
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
102
82
50
62
86
100
101
83
49
61
85
101
100
84
48
60
84
102
99
85
47
48
49
50
51
52
53
54
55
56
57
58
59
83
103
98
97
96
95
94
93
92
91
90
89
88
87
86
46
60
82
104
99
87
45
61
81
105
100
88
44
62
80
106
101
89
43
63
79
107
102
90
42
64
78
108
103
91
41
65
77
109
104
92
40
66
76
110
105
93
39
67
68
69
70
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
111
112
113
114
115
116
115
114
113
112
111
110
109
110
111
112
113
113
112
111
110
109
108
107
106
94
38
62
76
110
108
95
37
61
77
109
107
96
36
60
78
108
106
97
35
59
79
107
105
98
34
58
80
106
104
99
33
57
81
105
103
100
32
56
82
104
102
101
31
55
83
103
101
102
30
54
84
102
100
103
29
53
85
101
99
104
28
52
86
100
98
105
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
94
95
96
97
98
99
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
18
40
52
96
110
115
17
41
53
95
111
116
16
42
54
94
112
117
15
43
55
93
113
118
14
44
56
92
114
119
13
43
57
91
115
120
12
42
58
90
116
121
11
41
59
89
117
122
10
40
60
88
118
123
9
39
61
87
119
124
8
38
62
86
120
125
7
29
30
31
32
33
34
35
36
37
63
64
65
66
67
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
121
122
123
124
125
126
127
128
129
126
6
28
60
74
128
127
5
27
59
75
127
128
4
26
58
76
126
129
3
25
57
77
125
130
2
24
56
78
124
131
1
23
55
79
123
132
0
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
206
205
204
203
202
201
200
199
198
197
196
195
158
170
174
186
206
194
157
169
173
185
205
193
156
168
172
184
204
192
155
167
171
183
203
191
154
166
170
182
202
190
153
165
169
181
201
189
152
164
168
180
200
188
151
163
167
179
199
187
150
162
166
178
198
186
149
161
165
177
197
185
148
160
164
176
196
184
147
159
163
151
152
153
154
155
156
157
158
159
160
161
162
163
175
195
183
146
158
162
150
162
174
194
182
145
157
161
149
161
173
193
181
144
156
160
148
160
172
192
180
143
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
147
159
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
179
142
146
158
146
158
170
182
178
141
145
157
145
157
169
181
177
140
144
156
144
156
168
180
176
139
143
155
143
155
167
179
175
138
142
154
142
154
166
178
174
137
141
153
141
153
165
177
173
136
140
152
140
152
164
176
172
135
139
151
139
151
163
175
171
134
138
150
138
150
162
174
170
133
137
149
137
149
161
173
169
132
136
148
136
148
160
172
168
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
147
146
145
144
143
142
141
140
139
138
137
136
135
147
148
149
150
151
152
153
154
155
156
157
158
159
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
122
134
146
158
121
133
145
157
120
132
144
156
119
131
143
155
118
130
142
154
117
129
141
153
116
128
140
152
115
127
139
151
114
126
138
150
113
125
137
149
112
124
136
148
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
135
136
137
138
139
140
141
142
143
144
145
146
147
112
98
110
122
134
148
113
97
109
121
133
149
114
96
108
120
132
149
115
95
107
119
131
148
116
94
106
118
130
147
117
93
105
117
129
146
118
92
104
116
128
145
131
130
129
128
127
126
125
124
123
122
121
120
119
91
103
115
127
144
143
142
141
140
139
138
137
136
135
134
133
132
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
86
87
88
89
90
91
92
93
94
95
96
97
109
110
111
112
113
114
115
116
117
118
119
120
121
84
96
108
122
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
91
103
118
78
77
76
75
74
73
72
71
70
69
68
67
66
78
90
102
117
91
90
89
88
87
86
85
84
83
82
81
80
79
65
77
89
101
116
92
64
76
88
100
115
93
63
75
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
114
94
62
74
74
88
113
95
61
73
73
89
112
96
60
72
72
90
111
97
59
60
61
62
63
64
65
66
67
68
69
70
71
71
91
110
109
108
107
106
105
104
103
102
101
100
99
98
58
70
70
92
111
99
57
69
69
93
112
100
56
68
68
94
113
101
55
67
67
95
113
102
54
66
66
96
112
103
53
65
65
97
111
104
52
64
64
98
110
105
51
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
99
100
101
102
103
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
106
50
50
64
98
96
107
49
49
65
97
95
108
48
48
66
96
94
109
47
47
67
95
93
110
46
46
68
94
92
111
45
45
69
93
91
112
44
44
70
92
90
113
43
43
71
91
89
113
42
42
72
90
88
112
41
41
73
89
87
111
40
40
74
88
86
110
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
84
85
86
87
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
40
26
40
84
98
118
39
25
41
83
99
119
38
24
42
82
100
120
37
23
43
81
101
121
36
22
44
80
102
122
35
21
45
79
103
123
34
20
46
78
104
124
33
19
47
77
105
125
32
18
48
76
106
126
31
17
49
75
107
127
30
16
50
74
108
128
29
7
8
9
10
11
12
13
14
15
51
52
53
54
55
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
109
110
111
112
113
114
115
116
117
129
28
6
48
62
116
128
27
5
47
63
115
127
26
4
46
64
114
126
25
3
45
65
113
125
24
2
44
66
112
124
23
1
43
67
111
123
22
0
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
150
162
166
178
174
162
149
161
165
177
173
161
148
160
164
176
172
160
147
159
163
175
171
159
146
158
162
174
170
158
145
157
161
173
169
157
144
156
160
172
168
156
143
155
159
171
167
155
142
154
158
170
166
154
141
153
157
169
165
153
140
152
156
168
164
152
139
151
155
143
144
145
146
147
148
149
150
151
152
153
154
155
167
163
151
138
150
154
142
154
166
162
150
137
149
153
141
153
165
161
149
136
148
152
140
152
164
160
148
135
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
139
151
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
147
134
138
150
138
150
162
150
146
133
137
149
137
149
161
149
145
132
136
148
136
148
160
148
144
131
135
147
135
147
159
147
143
130
134
146
134
146
158
146
142
129
133
145
133
145
157
145
141
128
132
144
132
144
156
144
140
127
131
143
131
143
155
143
139
126
130
142
130
142
154
142
138
125
129
141
129
141
153
141
137
124
128
140
128
140
152
140
136
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
139
138
137
136
135
134
133
132
131
130
129
128
127
139
140
141
142
143
144
145
146
147
148
149
150
151
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
114
126
138
126
113
125
137
125
112
124
136
124
111
123
135
123
110
122
134
122
109
121
133
121
108
120
132
120
107
119
131
119
106
118
130
118
105
117
129
117
104
116
128
116
103
102
101
100
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
104
90
102
114
102
116
105
89
101
113
101
117
106
88
100
112
100
118
107
87
99
111
99
119
108
86
98
110
98
120
109
85
97
109
97
121
110
84
96
108
96
122
123
122
121
120
119
118
117
116
115
114
113
112
111
83
95
107
95
123
124
125
126
127
128
129
129
128
127
126
125
124
82
94
106
94
81
93
105
93
80
92
104
92
79
91
103
91
78
90
102
90
77
78
79
80
81
82
83
84
85
86
87
88
89
101
100
99
98
97
96
95
94
93
92
91
90
89
76
88
100
88
75
87
99
87
74
86
98
86
73
85
97
85
72
84
96
84
71
83
95
83
94
93
92
91
90
89
88
87
86
85
84
83
82
70
82
94
82
94
95
96
97
98
99
100
100
99
98
97
96
95
81
69
81
93
81
93
80
68
80
92
80
92
79
67
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
79
91
78
66
66
78
78
90
77
65
65
77
77
89
76
64
64
76
76
88
75
74
73
72
71
70
69
68
67
66
65
64
63
63
75
75
76
77
78
79
80
81
82
83
84
85
86
87
74
62
62
74
74
86
73
61
61
73
73
85
72
60
60
72
72
84
71
59
59
71
71
83
70
58
58
70
70
82
69
57
57
69
69
81
68
56
56
68
68
80
67
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
79
66
42
56
68
54
78
65
41
57
69
53
77
64
40
58
70
52
76
63
39
59
71
51
75
62
38
60
72
50
74
61
37
61
73
49
73
60
36
62
74
48
72
59
35
63
75
47
71
58
34
64
76
46
70
57
33
65
77
45
69
56
32
66
78
44
68
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
67
68
69
70
71
72
73
74
75
76
77
78
79
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
64
44
30
42
56
76
65
45
29
41
57
77
66
46
28
40
58
78
67
47
27
39
59
79
68
48
26
38
60
80
67
49
25
37
61
81
66
50
24
36
62
82
65
51
23
35
63
83
64
52
22
34
64
84
63
53
21
33
65
85
62
54
20
32
66
86
61
49
50
51
52
53
54
55
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
67
68
69
70
71
72
73
74
75
87
60
48
6
20
74
86
59
47
5
21
73
85
58
46
4
22
72
84
57
45
3
23
71
83
56
44
2
24
70
82
55
43
1
25
69
81
54
42
0
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
162
174
178
166
162
150
161
173
177
165
161
149
160
172
176
164
160
148
159
171
175
163
159
147
158
170
174
162
158
146
157
169
173
161
157
145
156
168
172
160
156
144
155
167
171
159
155
143
154
166
170
158
154
142
153
165
169
157
153
141
152
164
168
156
152
140
151
163
167
155
154
153
152
151
150
149
148
147
146
145
144
143
155
151
139
150
162
166
154
142
154
150
138
149
161
165
153
141
153
149
137
148
160
164
152
140
152
148
136
147
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
151
139
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
135
146
150
162
150
138
150
138
134
145
149
161
149
137
149
137
133
144
148
160
148
136
148
136
132
143
147
159
147
135
147
135
131
142
146
158
146
134
146
134
130
141
145
157
145
133
145
133
129
140
144
156
144
132
144
132
128
139
143
155
143
131
143
131
127
138
142
154
142
130
142
130
126
137
141
153
141
129
141
129
125
136
140
152
140
128
140
128
124
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
151
150
149
148
147
146
145
144
143
142
141
140
139
127
128
129
130
131
132
133
134
135
136
137
138
139
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
126
138
126
114
125
137
125
113
124
136
124
112
123
135
123
111
122
134
122
110
121
133
121
109
120
132
120
108
119
131
119
107
118
130
118
106
117
129
117
105
116
128
116
104
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
100
101
102
103
116
102
114
102
90
104
117
101
113
101
89
105
118
100
112
100
88
106
119
99
111
99
87
107
120
98
110
98
86
108
121
97
109
97
85
109
122
96
108
96
84
110
124
125
126
127
128
129
129
128
127
126
125
124
123
95
107
95
83
111
112
113
114
115
116
117
118
119
120
121
122
123
94
106
94
82
93
105
93
81
92
104
92
80
91
103
91
79
90
102
90
78
89
90
91
92
93
94
95
96
97
98
99
100
101
89
88
87
86
85
84
83
82
81
80
79
78
77
88
100
88
76
87
99
87
75
86
98
86
74
85
97
85
73
84
96
84
72
83
95
83
71
95
96
97
98
99
100
100
99
98
97
96
95
94
82
94
82
70
82
83
84
85
86
87
88
89
90
91
92
93
94
93
81
93
81
69
81
92
80
92
80
68
80
91
79
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
67
79
90
78
78
66
66
78
89
77
77
65
65
77
88
76
76
64
64
76
87
86
85
84
83
82
81
80
79
78
77
76
75
75
63
63
64
65
66
67
68
69
70
71
72
73
74
75
86
74
74
62
62
74
85
73
73
61
61
73
84
72
72
60
60
72
83
71
71
59
59
71
82
70
70
58
58
70
81
69
69
57
57
69
80
68
68
56
56
68
79
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
67
78
54
68
56
42
66
77
53
69
57
41
65
76
52
70
58
40
64
75
51
71
59
39
63
74
50
72
60
38
62
73
49
73
61
37
61
72
48
74
62
36
60
71
47
75
63
35
59
70
46
76
64
34
58
69
45
77
65
33
57
68
44
78
66
32
56
75
74
73
72
71
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
79
78
77
76
75
74
73
72
71
70
69
68
67
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
76
56
42
30
44
64
77
57
41
29
45
65
78
58
40
28
46
66
79
59
39
27
47
67
80
60
38
26
48
68
81
61
37
25
49
67
82
62
36
24
50
66
83
63
35
23
51
65
84
64
34
22
52
64
85
65
33
21
53
63
86
66
32
20
54
62
87
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
8
9
10
11
12
13
14
15
16
17
18
19
55
56
55
54
53
52
51
50
49
61
86
74
20
6
48
60
85
73
21
5
47
59
84
72
22
4
46
58
83
71
23
3
45
57
82
70
24
2
44
56
81
69
25
1
43
55
80
68
26
0
195
196
197
198
199
200
201
202
203
204
205
206
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
194
206
186
174
170
158
193
205
185
173
169
157
192
204
184
172
168
156
191
203
183
171
167
155
190
202
182
170
166
154
189
201
181
169
165
153
188
200
180
168
164
152
187
199
179
167
163
151
186
198
178
166
162
150
185
197
177
165
161
149
184
196
176
164
160
148
183
195
175
163
162
161
160
159
158
157
156
155
154
153
152
151
163
159
147
182
194
174
162
150
162
158
146
181
193
173
161
149
161
157
145
180
192
172
160
148
160
156
144
179
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
159
147
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
143
178
182
170
158
146
158
146
142
177
181
169
157
145
157
145
141
176
180
168
156
144
156
144
140
175
179
167
155
143
155
143
139
174
178
166
154
142
154
142
138
173
177
165
153
141
153
141
137
172
176
164
152
140
152
140
136
171
175
163
151
139
151
139
135
170
174
162
150
138
150
138
134
169
173
161
149
137
149
137
133
168
172
160
148
136
148
136
132
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
159
158
157
156
155
154
153
152
151
150
149
148
147
135
136
137
138
139
140
141
142
143
144
145
146
147
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
158
146
134
122
157
145
133
121
156
144
132
120
155
143
131
119
154
142
130
118
153
141
129
117
152
140
128
116
151
139
127
115
150
138
126
114
149
137
125
113
148
136
124
112
147
146
145
144
143
142
141
140
139
138
137
136
135
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
148
134
122
110
98
112
149
133
121
109
97
113
149
132
120
108
96
114
148
131
119
107
95
115
147
130
118
106
94
116
146
129
117
105
93
117
145
128
116
104
92
118
132
133
134
135
136
137
138
139
140
141
142
143
144
127
115
103
91
119
120
121
122
123
124
125
126
127
128
129
130
131
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
120
119
118
117
116
115
114
113
112
111
110
109
97
96
95
94
93
92
91
90
89
88
87
86
85
122
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
118
103
91
79
79
80
81
82
83
84
85
86
87
88
89
90
91
117
102
90
78
66
67
68
69
70
71
72
73
74
75
76
77
78
92
116
101
89
77
65
93
115
100
88
76
64
94
114
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
75
63
95
113
88
74
74
62
96
112
89
73
73
61
97
111
90
72
72
60
98
99
100
101
102
103
104
105
106
107
108
109
110
91
71
71
70
69
68
67
66
65
64
63
62
61
60
59
99
111
92
70
70
58
100
112
93
69
69
57
101
113
94
68
68
56
102
113
95
67
67
55
103
112
96
66
66
54
104
111
97
65
65
53
105
110
98
64
64
52
106
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
103
102
101
100
99
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
51
107
96
98
64
50
50
108
95
97
65
49
49
109
94
96
66
48
48
110
93
95
67
47
47
111
92
94
68
46
46
112
91
93
69
45
45
113
90
92
70
44
44
113
89
91
71
43
43
112
88
90
72
42
42
111
87
89
73
41
41
110
86
88
74
40
40
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
87
86
85
84
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
118
98
84
40
26
40
119
99
83
41
25
39
120
100
82
42
24
38
121
101
81
43
23
37
122
102
80
44
22
36
123
103
79
45
21
35
124
104
78
46
20
34
125
105
77
47
19
33
126
106
76
48
18
32
127
107
75
49
17
31
128
108
74
50
16
30
129
117
116
115
114
113
112
111
110
109
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
29
128
116
62
48
6
28
127
115
63
47
5
27
126
114
64
46
4
26
125
113
65
45
3
25
124
112
66
44
2
24
123
111
67
43
1
23
122
110
68
42
0
186
187
188
189
190
191
192
193
194
195
196
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
147
185
194
174
162
158
146
184
193
173
161
157
145
183
192
172
160
156
144
182
191
171
159
155
143
181
190
170
158
154
142
180
189
169
157
153
141
179
188
168
156
152
140
178
187
167
155
151
139
177
186
166
154
150
138
176
185
165
153
149
137
175
184
164
152
148
136
174
183
163
151
150
149
148
147
146
145
144
143
142
141
140
139
151
147
135
173
182
162
150
138
150
146
134
172
181
161
149
137
149
145
133
171
180
160
148
136
148
144
132
170
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
147
135
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
131
169
172
158
146
134
146
134
130
168
172
157
145
133
145
133
129
167
171
156
144
132
144
132
128
166
170
155
143
131
143
131
127
165
169
154
142
130
142
130
126
164
168
153
141
129
141
129
125
163
167
152
140
128
140
128
124
162
166
151
139
127
139
127
123
161
165
150
138
126
138
126
122
160
164
149
137
125
137
125
121
159
163
148
136
124
136
124
120
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
147
146
145
144
143
142
141
140
139
138
137
136
135
123
124
125
126
127
128
129
130
131
132
133
134
135
123
122
121
120
119
118
117
116
115
114
113
112
111
112
113
114
115
116
117
118
119
149
134
122
110
148
133
121
109
147
132
120
108
146
131
119
107
145
130
118
106
144
129
117
105
143
128
116
104
142
127
115
103
141
126
114
102
140
125
113
101
139
124
112
100
138
137
136
135
134
133
132
131
130
129
128
127
126
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
87
88
89
90
91
92
93
94
95
96
97
98
99
139
125
134
98
86
100
138
124
133
97
85
101
137
123
132
96
84
102
136
122
131
95
83
103
135
121
130
94
82
104
134
120
129
93
81
105
133
119
128
92
80
106
120
121
122
123
124
125
126
127
128
129
130
131
132
118
127
91
79
107
108
109
110
111
112
113
114
115
116
117
118
119
117
126
90
78
116
125
89
77
115
124
88
76
114
123
87
75
113
122
86
74
112
113
114
115
116
117
118
119
120
121
122
122
121
85
84
83
82
81
80
79
78
77
76
75
74
73
111
120
86
72
110
119
87
71
109
118
88
70
108
117
89
69
107
116
90
68
106
115
91
67
67
68
69
70
71
72
73
74
75
76
77
78
79
105
114
92
66
54
55
56
57
58
59
60
61
62
63
64
65
66
80
104
113
93
65
53
81
103
112
94
64
52
82
102
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
96
95
63
51
83
101
100
86
62
50
84
100
101
85
61
49
85
99
102
84
60
48
86
87
88
89
90
91
92
93
94
95
96
97
98
103
83
59
58
57
56
55
54
53
52
51
50
49
48
47
87
99
104
82
60
46
88
100
105
81
61
45
89
101
106
80
62
44
90
102
107
79
63
43
91
103
108
78
64
42
92
104
109
77
65
41
93
105
110
76
66
40
94
106
107
108
109
110
111
112
113
113
112
111
110
109
110
111
112
113
114
115
116
115
114
113
112
111
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
70
69
68
67
39
95
108
110
76
62
38
96
107
109
77
61
37
97
106
108
78
60
36
98
105
107
79
59
35
99
104
106
80
58
34
100
103
105
81
57
33
101
102
104
82
56
32
102
101
103
83
55
31
103
100
102
84
54
30
104
99
101
85
53
29
105
98
100
86
52
28
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
99
98
97
96
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
115
110
96
52
40
18
116
111
95
53
41
17
117
112
94
54
42
16
118
113
93
55
43
15
119
114
92
56
44
14
120
115
91
57
43
13
121
116
90
58
42
12
122
117
89
59
41
11
123
118
88
60
40
10
124
119
87
61
39
9
125
120
86
62
38
8
126
129
128
127
126
125
124
123
122
121
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
67
66
65
64
63
37
36
35
34
33
32
31
30
29
7
127
128
74
60
28
6
128
127
75
59
27
5
129
126
76
58
26
4
130
125
77
57
25
3
131
124
78
56
24
2
132
123
79
55
23
1
133
122
80
54
22
0
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
197
196
195
194
193
192
191
190
189
188
187
147
159
163
175
195
186
146
158
162
174
194
185
145
157
161
173
193
184
144
156
160
172
192
183
143
155
159
171
191
182
142
154
158
170
190
181
141
153
157
169
189
180
140
152
156
168
188
179
139
151
155
167
187
178
138
150
154
166
186
177
137
149
153
165
185
176
136
148
152
140
141
142
143
144
145
146
147
148
149
150
151
152
164
184
175
135
147
151
139
151
163
183
174
134
146
150
138
150
162
182
173
133
145
149
137
149
161
181
172
132
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
136
148
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
171
131
135
147
135
147
159
173
170
130
134
146
134
146
158
173
169
129
133
145
133
145
157
172
168
128
132
144
132
144
156
171
167
127
131
143
131
143
155
170
166
126
130
142
130
142
154
169
165
125
129
141
129
141
153
168
164
124
128
140
128
140
152
167
163
123
127
139
127
139
151
166
162
122
126
138
126
138
150
165
161
121
125
137
125
137
149
164
160
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
121
122
123
124
136
135
134
133
132
131
130
129
128
127
126
125
124
136
137
138
139
140
141
142
143
144
145
146
147
148
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
111
123
135
150
110
122
134
149
109
121
133
148
108
120
132
147
107
119
131
146
106
118
130
145
105
117
129
144
104
116
128
143
103
115
127
142
102
114
126
141
101
113
125
140
100
99
98
97
96
95
94
93
92
91
90
89
88
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
127
128
129
130
131
132
133
134
135
136
137
138
139
101
87
99
135
126
140
102
86
98
134
125
139
103
85
97
133
124
138
104
84
96
132
123
137
105
83
95
131
122
136
106
82
94
130
121
135
107
81
93
129
120
134
120
119
118
117
116
115
114
113
112
111
110
109
108
80
92
128
119
133
132
131
130
129
128
127
126
125
124
123
122
121
79
91
127
118
78
90
126
117
77
89
125
116
76
88
124
115
75
87
123
114
74
75
76
77
78
79
80
81
82
83
84
85
86
122
123
123
122
121
120
119
118
117
116
115
114
113
73
87
121
112
72
88
120
111
71
89
119
110
70
90
118
109
69
91
117
108
68
92
116
107
67
66
65
64
63
62
61
60
59
58
57
56
55
67
93
115
106
80
79
78
77
76
75
74
73
72
71
70
69
68
54
66
94
114
105
81
53
65
95
113
104
82
52
64
96
97
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
103
83
51
63
87
101
102
84
50
62
86
102
101
85
49
61
85
103
100
86
48
49
50
51
52
53
54
55
56
57
58
59
60
84
104
99
98
97
96
95
94
93
92
91
90
89
88
87
47
61
83
105
100
88
46
62
82
106
101
89
45
63
81
107
102
90
44
64
80
108
103
91
43
65
79
109
104
92
42
66
78
110
105
93
41
67
77
111
106
94
40
68
69
70
71
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
112
113
114
115
116
115
114
113
112
111
110
109
108
109
110
111
112
113
113
112
111
110
109
108
107
95
39
63
77
111
107
96
38
62
78
110
106
97
37
61
79
109
105
98
36
60
80
108
104
99
35
59
81
107
103
100
34
58
82
106
102
101
33
57
83
105
101
102
32
56
84
104
100
103
31
55
85
103
99
104
30
54
86
102
98
105
29
53
87
101
97
106
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
94
95
96
97
98
99
100
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
19
41
53
95
109
116
18
42
54
94
110
117
17
43
55
93
111
118
16
44
56
92
112
119
15
43
57
91
113
120
14
42
58
90
114
121
13
41
59
89
115
122
12
40
60
88
116
123
11
39
61
87
117
124
10
38
62
86
118
125
9
37
63
85
119
126
8
28
29
30
31
32
33
34
35
36
64
65
66
67
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
120
121
122
123
124
125
126
127
128
127
7
27
59
73
127
128
6
26
58
74
126
129
5
25
57
75
125
130
4
24
56
76
124
131
3
23
55
77
123
132
2
22
54
78
122
133
1
21
53
79
121
133
0
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
207
206
205
204
203
202
201
200
199
198
197
196
159
171
175
187
207
195
158
170
174
186
206
194
157
169
173
185
205
193
156
168
172
184
204
192
155
167
171
183
203
191
154
166
170
182
202
190
153
165
169
181
201
189
152
164
168
180
200
188
151
163
167
179
199
187
150
162
166
178
198
186
149
161
165
177
197
185
148
160
164
152
153
154
155
156
157
158
159
160
161
162
163
164
176
196
184
147
159
163
151
163
175
195
183
146
158
162
150
162
174
194
182
145
157
161
149
161
173
193
181
144
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
148
160
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
180
143
147
159
147
159
171
183
179
142
146
158
146
158
170
182
178
141
145
157
145
157
169
181
177
140
144
156
144
156
168
180
176
139
143
155
143
155
167
179
175
138
142
154
142
154
166
178
174
137
141
153
141
153
165
177
173
136
140
152
140
152
164
176
172
135
139
151
139
151
163
175
171
134
138
150
138
150
162
174
170
133
137
149
137
149
161
173
169
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
148
147
146
145
144
143
142
141
140
139
138
137
136
148
149
150
151
152
153
154
155
156
157
158
159
160
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
123
135
147
159
122
134
146
158
121
133
145
157
120
132
144
156
119
131
143
155
118
130
142
154
117
129
141
153
116
128
140
152
115
127
139
151
114
126
138
150
113
125
137
149
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
136
137
138
139
140
141
142
143
144
145
146
147
148
113
99
111
123
135
149
114
98
110
122
134
150
115
97
109
121
133
150
116
96
108
120
132
149
117
95
107
119
131
148
118
94
106
118
130
147
119
93
105
117
129
146
132
131
130
129
128
127
126
125
124
123
122
121
120
92
104
116
128
145
144
143
142
141
140
139
138
137
136
135
134
133
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
99
111
123
86
87
88
89
90
91
92
93
94
95
96
97
98
110
111
112
113
114
115
116
117
118
119
120
121
122
85
97
109
123
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
92
104
119
79
78
77
76
75
74
73
72
71
70
69
68
67
79
91
103
118
92
91
90
89
88
87
86
85
84
83
82
81
80
66
78
90
102
117
93
65
77
89
101
116
94
64
76
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
115
95
63
75
75
89
114
96
62
74
74
90
113
97
61
73
73
91
112
98
60
61
62
63
64
65
66
67
68
69
70
71
72
72
92
111
110
109
108
107
106
105
104
103
102
101
100
99
59
71
71
93
112
100
58
70
70
94
113
101
57
69
69
95
113
102
56
68
68
96
112
103
55
67
67
97
111
104
54
66
66
98
110
105
53
65
65
99
109
106
52
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
100
101
102
103
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
51
51
65
99
95
108
50
50
66
98
94
109
49
49
67
97
93
110
48
48
68
96
92
111
47
47
69
95
91
112
46
46
70
94
90
113
45
45
71
93
89
113
44
44
72
92
88
112
43
43
73
91
87
111
42
42
74
90
86
110
41
41
75
89
85
109
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
85
86
87
88
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
39
27
41
83
97
117
38
26
42
82
98
118
37
25
43
81
99
119
36
24
44
80
100
120
35
23
45
79
101
121
34
22
46
78
102
122
33
21
47
77
103
123
32
20
48
76
104
124
31
19
49
75
105
125
30
18
50
74
106
126
29
17
51
73
107
127
28
8
9
10
11
12
13
14
15
16
52
53
54
55
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
108
109
110
111
112
113
114
115
116
128
27
7
47
61
115
127
26
6
46
62
114
126
25
5
45
63
113
125
24
4
44
64
112
124
23
3
43
65
111
123
22
2
42
66
110
122
21
1
41
67
109
121
20
0
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
151
163
167
179
175
163
150
162
166
178
174
162
149
161
165
177
173
161
148
160
164
176
172
160
147
159
163
175
171
159
146
158
162
174
170
158
145
157
161
173
169
157
144
156
160
172
168
156
143
155
159
171
167
155
142
154
158
170
166
154
141
153
157
169
165
153
140
152
156
144
145
146
147
148
149
150
151
152
153
154
155
156
168
164
152
139
151
155
143
155
167
163
151
138
150
154
142
154
166
162
150
137
149
153
141
153
165
161
149
136
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
140
152
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
148
135
139
151
139
151
163
151
147
134
138
150
138
150
162
150
146
133
137
149
137
149
161
149
145
132
136
148
136
148
160
148
144
131
135
147
135
147
159
147
143
130
134
146
134
146
158
146
142
129
133
145
133
145
157
145
141
128
132
144
132
144
156
144
140
127
131
143
131
143
155
143
139
126
130
142
130
142
154
142
138
125
129
141
129
141
153
141
137
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
140
139
138
137
136
135
134
133
132
131
130
129
128
140
141
142
143
144
145
146
147
148
149
150
151
152
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
115
127
139
127
114
126
138
126
113
125
137
125
112
124
136
124
111
123
135
123
110
122
134
122
109
121
133
121
108
120
132
120
107
119
131
119
106
118
130
118
105
117
129
117
104
103
102
101
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
113
114
115
116
105
91
103
115
103
117
106
90
102
114
102
118
107
89
101
113
101
119
108
88
100
112
100
120
109
87
99
111
99
121
110
86
98
110
98
122
111
85
97
109
97
123
124
123
122
121
120
119
118
117
116
115
114
113
112
84
96
108
96
124
125
126
127
128
129
130
130
129
128
127
126
125
83
95
107
95
82
94
106
94
81
93
105
93
80
92
104
92
79
91
103
91
78
79
80
81
82
83
84
85
86
87
88
89
90
102
101
100
99
98
97
96
95
94
93
92
91
90
77
89
101
89
76
88
100
88
75
87
99
87
74
86
98
86
73
85
97
85
72
84
96
84
95
94
93
92
91
90
89
88
87
86
85
84
83
71
83
95
83
95
96
97
98
99
100
101
101
100
99
98
97
96
82
70
82
94
82
94
81
69
81
93
81
93
80
68
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
80
92
79
67
67
79
79
91
78
66
66
78
78
90
77
65
65
77
77
89
76
75
74
73
72
71
70
69
68
67
66
65
64
64
76
76
77
78
79
80
81
82
83
84
85
86
87
88
75
63
63
75
75
87
74
62
62
74
74
86
73
61
61
73
73
85
72
60
60
72
72
84
71
59
59
71
71
83
70
58
58
70
70
82
69
57
57
69
69
81
68
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
80
67
43
57
69
55
79
66
42
58
70
54
78
65
41
59
71
53
77
64
40
60
72
52
76
63
39
61
73
51
75
62
38
62
74
50
74
61
37
63
75
49
73
60
36
64
76
48
72
59
35
65
77
47
71
58
34
66
78
46
70
57
33
67
79
45
69
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
68
69
70
71
72
73
74
75
76
77
78
79
80
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
65
45
31
43
57
77
66
46
30
42
58
78
67
47
29
41
59
79
68
48
28
40
60
80
67
49
27
39
61
81
66
50
26
38
62
82
65
51
25
37
63
83
64
52
24
36
64
84
63
53
23
35
65
85
62
54
22
34
66
86
61
55
21
33
67
87
60
48
49
50
51
52
53
54
55
56
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
68
69
70
71
72
73
74
75
76
88
59
47
7
21
75
87
58
46
6
22
74
86
57
45
5
23
73
85
56
44
4
24
72
84
55
43
3
25
71
83
54
42
2
26
70
82
53
41
1
27
69
81
52
40
0
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
163
175
179
167
163
151
162
174
178
166
162
150
161
173
177
165
161
149
160
172
176
164
160
148
159
171
175
163
159
147
158
170
174
162
158
146
157
169
173
161
157
145
156
168
172
160
156
144
155
167
171
159
155
143
154
166
170
158
154
142
153
165
169
157
153
141
152
164
168
156
155
154
153
152
151
150
149
148
147
146
145
144
156
152
140
151
163
167
155
143
155
151
139
150
162
166
154
142
154
150
138
149
161
165
153
141
153
149
137
148
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
152
140
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
136
147
151
163
151
139
151
139
135
146
150
162
150
138
150
138
134
145
149
161
149
137
149
137
133
144
148
160
148
136
148
136
132
143
147
159
147
135
147
135
131
142
146
158
146
134
146
134
130
141
145
157
145
133
145
133
129
140
144
156
144
132
144
132
128
139
143
155
143
131
143
131
127
138
142
154
142
130
142
130
126
137
141
153
141
129
141
129
125
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
152
151
150
149
148
147
146
145
144
143
142
141
140
128
129
130
131
132
133
134
135
136
137
138
139
140
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
127
139
127
115
126
138
126
114
125
137
125
113
124
136
124
112
123
135
123
111
122
134
122
110
121
133
121
109
120
132
120
108
119
131
119
107
118
130
118
106
117
129
117
105
116
115
114
113
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
125
126
127
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
101
102
103
104
117
103
115
103
91
105
118
102
114
102
90
106
119
101
113
101
89
107
120
100
112
100
88
108
121
99
111
99
87
109
122
98
110
98
86
110
123
97
109
97
85
111
125
126
127
128
129
130
130
129
128
127
126
125
124
96
108
96
84
112
113
114
115
116
117
118
119
120
121
122
123
124
95
107
95
83
94
106
94
82
93
105
93
81
92
104
92
80
91
103
91
79
90
91
92
93
94
95
96
97
98
99
100
101
102
90
89
88
87
86
85
84
83
82
81
80
79
78
89
101
89
77
88
100
88
76
87
99
87
75
86
98
86
74
85
97
85
73
84
96
84
72
96
97
98
99
100
101
101
100
99
98
97
96
95
83
95
83
71
83
84
85
86
87
88
89
90
91
92
93
94
95
94
82
94
82
70
82
93
81
93
81
69
81
92
80
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
68
80
91
79
79
67
67
79
90
78
78
66
66
78
89
77
77
65
65
77
88
87
86
85
84
83
82
81
80
79
78
77
76
76
64
64
65
66
67
68
69
70
71
72
73
74
75
76
87
75
75
63
63
75
86
74
74
62
62
74
85
73
73
61
61
73
84
72
72
60
60
72
83
71
71
59
59
71
82
70
70
58
58
70
81
69
69
57
57
69
80
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
68
79
55
69
57
43
67
78
54
70
58
42
66
77
53
71
59
41
65
76
52
72
60
40
64
75
51
73
61
39
63
74
50
74
62
38
62
73
49
75
63
37
61
72
48
76
64
36
60
71
47
77
65
35
59
70
46
78
66
34
58
69
45
79
67
33
57
76
75
74
73
72
71
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
80
79
78
77
76
75
74
73
72
71
70
69
68
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
77
57
43
31
45
65
78
58
42
30
46
66
79
59
41
29
47
67
80
60
40
28
48
68
81
61
39
27
49
67
82
62
38
26
50
66
83
63
37
25
51
65
84
64
36
24
52
64
85
65
35
23
53
63
86
66
34
22
54
62
87
67
33
21
55
61
88
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
9
10
11
12
13
14
15
16
17
18
19
20
56
55
54
53
52
51
50
49
48
60
87
75
21
7
47
59
86
74
22
6
46
58
85
73
23
5
45
57
84
72
24
4
44
56
83
71
25
3
43
55
82
70
26
2
42
54
81
69
27
1
41
53
80
68
28
0
196
197
198
199
200
201
202
203
204
205
206
207
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
195
207
187
175
171
159
194
206
186
174
170
158
193
205
185
173
169
157
192
204
184
172
168
156
191
203
183
171
167
155
190
202
182
170
166
154
189
201
181
169
165
153
188
200
180
168
164
152
187
199
179
167
163
151
186
198
178
166
162
150
185
197
177
165
161
149
184
196
176
164
163
162
161
160
159
158
157
156
155
154
153
152
164
160
148
183
195
175
163
151
163
159
147
182
194
174
162
150
162
158
146
181
193
173
161
149
161
157
145
180
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
160
148
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
144
179
183
171
159
147
159
147
143
178
182
170
158
146
158
146
142
177
181
169
157
145
157
145
141
176
180
168
156
144
156
144
140
175
179
167
155
143
155
143
139
174
178
166
154
142
154
142
138
173
177
165
153
141
153
141
137
172
176
164
152
140
152
140
136
171
175
163
151
139
151
139
135
170
174
162
150
138
150
138
134
169
173
161
149
137
149
137
133
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
160
159
158
157
156
155
154
153
152
151
150
149
148
136
137
138
139
140
141
142
143
144
145
146
147
148
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
159
147
135
123
158
146
134
122
157
145
133
121
156
144
132
120
155
143
131
119
154
142
130
118
153
141
129
117
152
140
128
116
151
139
127
115
150
138
126
114
149
137
125
113
148
147
146
145
144
143
142
141
140
139
138
137
136
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
149
135
123
111
99
113
150
134
122
110
98
114
150
133
121
109
97
115
149
132
120
108
96
116
148
131
119
107
95
117
147
130
118
106
94
118
146
129
117
105
93
119
133
134
135
136
137
138
139
140
141
142
143
144
145
128
116
104
92
120
121
122
123
124
125
126
127
128
129
130
131
132
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
111
99
87
122
121
120
119
118
117
116
115
114
113
112
111
110
98
97
96
95
94
93
92
91
90
89
88
87
86
123
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
119
104
92
80
80
81
82
83
84
85
86
87
88
89
90
91
92
118
103
91
79
67
68
69
70
71
72
73
74
75
76
77
78
79
93
117
102
90
78
66
94
116
101
89
77
65
95
115
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
76
64
96
114
89
75
75
63
97
113
90
74
74
62
98
112
91
73
73
61
99
100
101
102
103
104
105
106
107
108
109
110
111
92
72
72
71
70
69
68
67
66
65
64
63
62
61
60
100
112
93
71
71
59
101
113
94
70
70
58
102
113
95
69
69
57
103
112
96
68
68
56
104
111
97
67
67
55
105
110
98
66
66
54
106
109
99
65
65
53
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
103
102
101
100
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
52
108
95
99
65
51
51
109
94
98
66
50
50
110
93
97
67
49
49
111
92
96
68
48
48
112
91
95
69
47
47
113
90
94
70
46
46
113
89
93
71
45
45
112
88
92
72
44
44
111
87
91
73
43
43
110
86
90
74
42
42
109
85
89
75
41
41
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
88
87
86
85
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
117
97
83
41
27
39
118
98
82
42
26
38
119
99
81
43
25
37
120
100
80
44
24
36
121
101
79
45
23
35
122
102
78
46
22
34
123
103
77
47
21
33
124
104
76
48
20
32
125
105
75
49
19
31
126
106
74
50
18
30
127
107
73
51
17
29
128
116
115
114
113
112
111
110
109
108
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
55
54
53
52
16
15
14
13
12
11
10
9
8
28
127
115
61
47
7
27
126
114
62
46
6
26
125
113
63
45
5
25
124
112
64
44
4
24
123
111
65
43
3
23
122
110
66
42
2
22
121
109
67
41
1
21
120
108
68
40
0
187
188
189
190
191
192
193
194
195
196
197
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
148
186
195
175
163
159
147
185
194
174
162
158
146
184
193
173
161
157
145
183
192
172
160
156
144
182
191
171
159
155
143
181
190
170
158
154
142
180
189
169
157
153
141
179
188
168
156
152
140
178
187
167
155
151
139
177
186
166
154
150
138
176
185
165
153
149
137
175
184
164
152
151
150
149
148
147
146
145
144
143
142
141
140
152
148
136
174
183
163
151
139
151
147
135
173
182
162
150
138
150
146
134
172
181
161
149
137
149
145
133
171
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
148
136
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
132
170
173
159
147
135
147
135
131
169
173
158
146
134
146
134
130
168
172
157
145
133
145
133
129
167
171
156
144
132
144
132
128
166
170
155
143
131
143
131
127
165
169
154
142
130
142
130
126
164
168
153
141
129
141
129
125
163
167
152
140
128
140
128
124
162
166
151
139
127
139
127
123
161
165
150
138
126
138
126
122
160
164
149
137
125
137
125
121
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
148
147
146
145
144
143
142
141
140
139
138
137
136
124
125
126
127
128
129
130
131
132
133
134
135
136
124
123
122
121
120
119
118
117
116
115
114
113
112
113
114
115
116
117
118
119
120
150
135
123
111
149
134
122
110
148
133
121
109
147
132
120
108
146
131
119
107
145
130
118
106
144
129
117
105
143
128
116
104
142
127
115
103
141
126
114
102
140
125
113
101
139
138
137
136
135
134
133
132
131
130
129
128
127
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
88
89
90
91
92
93
94
95
96
97
98
99
100
140
126
135
99
87
101
139
125
134
98
86
102
138
124
133
97
85
103
137
123
132
96
84
104
136
122
131
95
83
105
135
121
130
94
82
106
134
120
129
93
81
107
121
122
123
124
125
126
127
128
129
130
131
132
133
119
128
92
80
108
109
110
111
112
113
114
115
116
117
118
119
120
118
127
91
79
117
126
90
78
116
125
89
77
115
124
88
76
114
123
87
75
113
114
115
116
117
118
119
120
121
122
123
123
122
86
85
84
83
82
81
80
79
78
77
76
75
74
112
121
87
73
111
120
88
72
110
119
89
71
109
118
90
70
108
117
91
69
107
116
92
68
68
69
70
71
72
73
74
75
76
77
78
79
80
106
115
93
67
55
56
57
58
59
60
61
62
63
64
65
66
67
81
105
114
94
66
54
82
104
113
95
65
53
83
103
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
97
96
64
52
84
102
101
87
63
51
85
101
102
86
62
50
86
100
103
85
61
49
87
88
89
90
91
92
93
94
95
96
97
98
99
104
84
60
59
58
57
56
55
54
53
52
51
50
49
48
88
100
105
83
61
47
89
101
106
82
62
46
90
102
107
81
63
45
91
103
108
80
64
44
92
104
109
79
65
43
93
105
110
78
66
42
94
106
111
77
67
41
95
107
108
109
110
111
112
113
113
112
111
110
109
108
109
110
111
112
113
114
115
116
115
114
113
112
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
71
70
69
68
40
96
107
111
77
63
39
97
106
110
78
62
38
98
105
109
79
61
37
99
104
108
80
60
36
100
103
107
81
59
35
101
102
106
82
58
34
102
101
105
83
57
33
103
100
104
84
56
32
104
99
103
85
55
31
105
98
102
86
54
30
106
97
101
87
53
29
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
100
99
98
97
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
116
109
95
53
41
19
117
110
94
54
42
18
118
111
93
55
43
17
119
112
92
56
44
16
120
113
91
57
43
15
121
114
90
58
42
14
122
115
89
59
41
13
123
116
88
60
40
12
124
117
87
61
39
11
125
118
86
62
38
10
126
119
85
63
37
9
127
128
127
126
125
124
123
122
121
120
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
67
66
65
64
36
35
34
33
32
31
30
29
28
8
128
127
73
59
27
7
129
126
74
58
26
6
130
125
75
57
25
5
131
124
76
56
24
4
132
123
77
55
23
3
133
122
78
54
22
2
133
121
79
53
21
1
132
120
80
52
20
0
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
198
197
196
195
194
193
192
191
190
189
188
148
160
164
176
196
187
147
159
163
175
195
186
146
158
162
174
194
185
145
157
161
173
193
184
144
156
160
172
192
183
143
155
159
171
191
182
142
154
158
170
190
181
141
153
157
169
189
180
140
152
156
168
188
179
139
151
155
167
187
178
138
150
154
166
186
177
137
149
153
141
142
143
144
145
146
147
148
149
150
151
152
153
165
185
176
136
148
152
140
152
164
184
175
135
147
151
139
151
163
183
174
134
146
150
138
150
162
182
173
133
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
137
149
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
172
132
136
148
136
148
160
174
171
131
135
147
135
147
159
174
170
130
134
146
134
146
158
173
169
129
133
145
133
145
157
172
168
128
132
144
132
144
156
171
167
127
131
143
131
143
155
170
166
126
130
142
130
142
154
169
165
125
129
141
129
141
153
168
164
124
128
140
128
140
152
167
163
123
127
139
127
139
151
166
162
122
126
138
126
138
150
165
161
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
122
123
124
125
137
136
135
134
133
132
131
130
129
128
127
126
125
137
138
139
140
141
142
143
144
145
146
147
148
149
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
112
124
136
151
111
123
135
150
110
122
134
149
109
121
133
148
108
120
132
147
107
119
131
146
106
118
130
145
105
117
129
144
104
116
128
143
103
115
127
142
102
114
126
141
101
100
99
98
97
96
95
94
93
92
91
90
89
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
128
129
130
131
132
133
134
135
136
137
138
139
140
102
88
100
136
127
141
103
87
99
135
126
140
104
86
98
134
125
139
105
85
97
133
124
138
106
84
96
132
123
137
107
83
95
131
122
136
108
82
94
130
121
135
121
120
119
118
117
116
115
114
113
112
111
110
109
81
93
129
120
134
133
132
131
130
129
128
127
126
125
124
123
122
80
92
128
119
79
91
127
118
78
90
126
117
77
89
125
116
76
88
124
115
75
76
77
78
79
80
81
82
83
84
85
86
87
123
124
124
123
122
121
120
119
118
117
116
115
114
74
88
122
113
73
89
121
112
72
90
120
111
71
91
119
110
70
92
118
109
69
93
117
108
68
67
66
65
64
63
62
61
60
59
58
57
56
68
94
116
107
81
80
79
78
77
76
75
74
73
72
71
70
69
55
67
95
115
106
82
54
66
96
114
105
83
53
65
97
98
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
104
84
52
64
88
102
103
85
51
63
87
103
102
86
50
62
86
104
101
87
49
50
51
52
53
54
55
56
57
58
59
60
61
85
105
100
99
98
97
96
95
94
93
92
91
90
89
88
48
62
84
106
101
89
47
63
83
107
102
90
46
64
82
108
103
91
45
65
81
109
104
92
44
66
80
110
105
93
43
67
79
111
106
94
42
68
78
112
107
95
41
69
70
71
72
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
113
114
115
116
115
114
113
112
111
110
109
108
107
108
109
110
111
112
113
113
112
111
110
109
108
96
40
64
78
112
106
97
39
63
79
111
105
98
38
62
80
110
104
99
37
61
81
109
103
100
36
60
82
108
102
101
35
59
83
107
101
102
34
58
84
106
100
103
33
57
85
105
99
104
32
56
86
104
98
105
31
55
87
103
97
106
30
54
88
102
96
107
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
94
95
96
97
98
99
100
101
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
108
109
110
111
112
113
114
115
116
20
42
54
94
108
117
19
43
55
93
109
118
18
44
56
92
110
119
17
43
57
91
111
120
16
42
58
90
112
121
15
41
59
89
113
122
14
40
60
88
114
123
13
39
61
87
115
124
12
38
62
86
116
125
11
37
63
85
117
126
10
36
64
84
118
127
9
27
28
29
30
31
32
33
34
35
65
66
67
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
119
120
121
122
123
124
125
126
127
128
8
26
58
72
126
129
7
25
57
73
125
130
6
24
56
74
124
131
5
23
55
75
123
132
4
22
54
76
122
133
3
21
53
77
121
133
2
20
52
78
120
132
1
19
51
79
119
131
0
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
208
207
206
205
204
203
202
201
200
199
198
197
160
172
176
188
208
196
159
171
175
187
207
195
158
170
174
186
206
194
157
169
173
185
205
193
156
168
172
184
204
192
155
167
171
183
203
191
154
166
170
182
202
190
153
165
169
181
201
189
152
164
168
180
200
188
151
163
167
179
199
187
150
162
166
178
198
186
149
161
165
153
154
155
156
157
158
159
160
161
162
163
164
165
177
197
185
148
160
164
152
164
176
196
184
147
159
163
151
163
175
195
183
146
158
162
150
162
174
194
182
145
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
149
161
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
181
144
148
160
148
160
172
184
180
143
147
159
147
159
171
183
179
142
146
158
146
158
170
182
178
141
145
157
145
157
169
181
177
140
144
156
144
156
168
180
176
139
143
155
143
155
167
179
175
138
142
154
142
154
166
178
174
137
141
153
141
153
165
177
173
136
140
152
140
152
164
176
172
135
139
151
139
151
163
175
171
134
138
150
138
150
162
174
170
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
149
148
147
146
145
144
143
142
141
140
139
138
137
149
150
151
152
153
154
155
156
157
158
159
160
161
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
124
136
148
160
123
135
147
159
122
134
146
158
121
133
145
157
120
132
144
156
119
131
143
155
118
130
142
154
117
129
141
153
116
128
140
152
115
127
139
151
114
126
138
150
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
137
138
139
140
141
142
143
144
145
146
147
148
149
114
100
112
124
136
150
115
99
111
123
135
151
116
98
110
122
134
151
117
97
109
121
133
150
118
96
108
120
132
149
119
95
107
119
131
148
120
94
106
118
130
147
133
132
131
130
129
128
127
126
125
124
123
122
121
93
105
117
129
146
145
144
143
142
141
140
139
138
137
136
135
134
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
100
112
124
87
88
89
90
91
92
93
94
95
96
97
98
99
111
112
113
114
115
116
117
118
119
120
121
122
123
86
98
110
124
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
93
105
120
80
79
78
77
76
75
74
73
72
71
70
69
68
80
92
104
119
93
92
91
90
89
88
87
86
85
84
83
82
81
67
79
91
103
118
94
66
78
90
102
117
95
65
77
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
116
96
64
76
76
90
115
97
63
75
75
91
114
98
62
74
74
92
113
99
61
62
63
64
65
66
67
68
69
70
71
72
73
73
93
112
111
110
109
108
107
106
105
104
103
102
101
100
60
72
72
94
113
101
59
71
71
95
113
102
58
70
70
96
112
103
57
69
69
97
111
104
56
68
68
98
110
105
55
67
67
99
109
106
54
66
66
100
108
107
53
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
101
102
103
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
52
52
66
100
94
109
51
51
67
99
93
110
50
50
68
98
92
111
49
49
69
97
91
112
48
48
70
96
90
113
47
47
71
95
89
113
46
46
72
94
88
112
45
45
73
93
87
111
44
44
74
92
86
110
43
43
75
91
85
109
42
42
76
90
84
108
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
86
87
88
89
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
38
28
42
82
96
116
37
27
43
81
97
117
36
26
44
80
98
118
35
25
45
79
99
119
34
24
46
78
100
120
33
23
47
77
101
121
32
22
48
76
102
122
31
21
49
75
103
123
30
20
50
74
104
124
29
19
51
73
105
125
28
18
52
72
106
126
27
9
10
11
12
13
14
15
16
17
53
54
55
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
107
108
109
110
111
112
113
114
115
127
26
8
46
60
114
126
25
7
45
61
113
125
24
6
44
62
112
124
23
5
43
63
111
123
22
4
42
64
110
122
21
3
41
65
109
121
20
2
40
66
108
120
19
1
39
67
107
119
18
0
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
152
164
168
180
176
164
151
163
167
179
175
163
150
162
166
178
174
162
149
161
165
177
173
161
148
160
164
176
172
160
147
159
163
175
171
159
146
158
162
174
170
158
145
157
161
173
169
157
144
156
160
172
168
156
143
155
159
171
167
155
142
154
158
170
166
154
141
153
157
145
146
147
148
149
150
151
152
153
154
155
156
157
169
165
153
140
152
156
144
156
168
164
152
139
151
155
143
155
167
163
151
138
150
154
142
154
166
162
150
137
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
141
153
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
149
136
140
152
140
152
164
152
148
135
139
151
139
151
163
151
147
134
138
150
138
150
162
150
146
133
137
149
137
149
161
149
145
132
136
148
136
148
160
148
144
131
135
147
135
147
159
147
143
130
134
146
134
146
158
146
142
129
133
145
133
145
157
145
141
128
132
144
132
144
156
144
140
127
131
143
131
143
155
143
139
126
130
142
130
142
154
142
138
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
141
140
139
138
137
136
135
134
133
132
131
130
129
141
142
143
144
145
146
147
148
149
150
151
152
153
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
116
128
140
128
115
127
139
127
114
126
138
126
113
125
137
125
112
124
136
124
111
123
135
123
110
122
134
122
109
121
133
121
108
120
132
120
107
119
131
119
106
118
130
118
105
104
103
102
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
114
115
116
117
106
92
104
116
104
118
107
91
103
115
103
119
108
90
102
114
102
120
109
89
101
113
101
121
110
88
100
112
100
122
111
87
99
111
99
123
112
86
98
110
98
124
125
124
123
122
121
120
119
118
117
116
115
114
113
85
97
109
97
125
126
127
128
129
130
131
131
130
129
128
127
126
84
96
108
96
83
95
107
95
82
94
106
94
81
93
105
93
80
92
104
92
79
80
81
82
83
84
85
86
87
88
89
90
91
103
102
101
100
99
98
97
96
95
94
93
92
91
78
90
102
90
77
89
101
89
76
88
100
88
75
87
99
87
74
86
98
86
73
85
97
85
96
95
94
93
92
91
90
89
88
87
86
85
84
72
84
96
84
96
97
98
99
100
101
102
102
101
100
99
98
97
83
71
83
95
83
95
82
70
82
94
82
94
81
69
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
81
93
80
68
68
80
80
92
79
67
67
79
79
91
78
66
66
78
78
90
77
76
75
74
73
72
71
70
69
68
67
66
65
65
77
77
78
79
80
81
82
83
84
85
86
87
88
89
76
64
64
76
76
88
75
63
63
75
75
87
74
62
62
74
74
86
73
61
61
73
73
85
72
60
60
72
72
84
71
59
59
71
71
83
70
58
58
70
70
82
69
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
81
68
44
58
70
56
80
67
43
59
71
55
79
66
42
60
72
54
78
65
41
61
73
53
77
64
40
62
74
52
76
63
39
63
75
51
75
62
38
64
76
50
74
61
37
65
77
49
73
60
36
66
78
48
72
59
35
67
79
47
71
58
34
68
80
46
70
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
40
39
38
37
36
35
34
33
69
70
71
72
73
74
75
76
77
78
79
80
81
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
66
46
32
44
58
78
67
47
31
43
59
79
68
48
30
42
60
80
67
49
29
41
61
81
66
50
28
40
62
82
65
51
27
39
63
83
64
52
26
38
64
84
63
53
25
37
65
85
62
54
24
36
66
86
61
55
23
35
67
87
60
56
22
34
68
88
59
47
48
49
50
51
52
53
54
55
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
69
70
71
72
73
74
75
76
77
89
58
46
8
22
76
88
57
45
7
23
75
87
56
44
6
24
74
86
55
43
5
25
73
85
54
42
4
26
72
84
53
41
3
27
71
83
52
40
2
28
70
82
51
39
1
29
69
81
50
38
0
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
164
176
180
168
164
152
163
175
179
167
163
151
162
174
178
166
162
150
161
173
177
165
161
149
160
172
176
164
160
148
159
171
175
163
159
147
158
170
174
162
158
146
157
169
173
161
157
145
156
168
172
160
156
144
155
167
171
159
155
143
154
166
170
158
154
142
153
165
169
157
156
155
154
153
152
151
150
149
148
147
146
145
157
153
141
152
164
168
156
144
156
152
140
151
163
167
155
143
155
151
139
150
162
166
154
142
154
150
138
149
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
153
141
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
137
148
152
164
152
140
152
140
136
147
151
163
151
139
151
139
135
146
150
162
150
138
150
138
134
145
149
161
149
137
149
137
133
144
148
160
148
136
148
136
132
143
147
159
147
135
147
135
131
142
146
158
146
134
146
134
130
141
145
157
145
133
145
133
129
140
144
156
144
132
144
132
128
139
143
155
143
131
143
131
127
138
142
154
142
130
142
130
126
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
153
152
151
150
149
148
147
146
145
144
143
142
141
129
130
131
132
133
134
135
136
137
138
139
140
141
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
128
140
128
116
127
139
127
115
126
138
126
114
125
137
125
113
124
136
124
112
123
135
123
111
122
134
122
110
121
133
121
109
120
132
120
108
119
131
119
107
118
130
118
106
117
116
115
114
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
124
125
126
127
128
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
102
103
104
105
118
104
116
104
92
106
119
103
115
103
91
107
120
102
114
102
90
108
121
101
113
101
89
109
122
100
112
100
88
110
123
99
111
99
87
111
124
98
110
98
86
112
126
127
128
129
130
131
131
130
129
128
127
126
125
97
109
97
85
113
114
115
116
117
118
119
120
121
122
123
124
125
96
108
96
84
95
107
95
83
94
106
94
82
93
105
93
81
92
104
92
80
91
92
93
94
95
96
97
98
99
100
101
102
103
91
90
89
88
87
86
85
84
83
82
81
80
79
90
102
90
78
89
101
89
77
88
100
88
76
87
99
87
75
86
98
86
74
85
97
85
73
97
98
99
100
101
102
102
101
100
99
98
97
96
84
96
84
72
84
85
86
87
88
89
90
91
92
93
94
95
96
95
83
95
83
71
83
94
82
94
82
70
82
93
81
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
69
81
92
80
80
68
68
80
91
79
79
67
67
79
90
78
78
66
66
78
89
88
87
86
85
84
83
82
81
80
79
78
77
77
65
65
66
67
68
69
70
71
72
73
74
75
76
77
88
76
76
64
64
76
87
75
75
63
63
75
86
74
74
62
62
74
85
73
73
61
61
73
84
72
72
60
60
72
83
71
71
59
59
71
82
70
70
58
58
70
81
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
69
80
56
70
58
44
68
79
55
71
59
43
67
78
54
72
60
42
66
77
53
73
61
41
65
76
52
74
62
40
64
75
51
75
63
39
63
74
50
76
64
38
62
73
49
77
65
37
61
72
48
78
66
36
60
71
47
79
67
35
59
70
46
80
68
34
58
77
76
75
74
73
72
71
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
81
80
79
78
77
76
75
74
73
72
71
70
69
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
78
58
44
32
46
66
79
59
43
31
47
67
80
60
42
30
48
68
81
61
41
29
49
67
82
62
40
28
50
66
83
63
39
27
51
65
84
64
38
26
52
64
85
65
37
25
53
63
86
66
36
24
54
62
87
67
35
23
55
61
88
68
34
22
56
60
89
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
10
11
12
13
14
15
16
17
18
19
20
21
55
54
53
52
51
50
49
48
47
59
88
76
22
8
46
58
87
75
23
7
45
57
86
74
24
6
44
56
85
73
25
5
43
55
84
72
26
4
42
54
83
71
27
3
41
53
82
70
28
2
40
52
81
69
29
1
39
51
80
68
30
0
197
198
199
200
201
202
203
204
205
206
207
208
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
196
208
188
176
172
160
195
207
187
175
171
159
194
206
186
174
170
158
193
205
185
173
169
157
192
204
184
172
168
156
191
203
183
171
167
155
190
202
182
170
166
154
189
201
181
169
165
153
188
200
180
168
164
152
187
199
179
167
163
151
186
198
178
166
162
150
185
197
177
165
164
163
162
161
160
159
158
157
156
155
154
153
165
161
149
184
196
176
164
152
164
160
148
183
195
175
163
151
163
159
147
182
194
174
162
150
162
158
146
181
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
161
149
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
145
180
184
172
160
148
160
148
144
179
183
171
159
147
159
147
143
178
182
170
158
146
158
146
142
177
181
169
157
145
157
145
141
176
180
168
156
144
156
144
140
175
179
167
155
143
155
143
139
174
178
166
154
142
154
142
138
173
177
165
153
141
153
141
137
172
176
164
152
140
152
140
136
171
175
163
151
139
151
139
135
170
174
162
150
138
150
138
134
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
161
160
159
158
157
156
155
154
153
152
151
150
149
137
138
139
140
141
142
143
144
145
146
147
148
149
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
160
148
136
124
159
147
135
123
158
146
134
122
157
145
133
121
156
144
132
120
155
143
131
119
154
142
130
118
153
141
129
117
152
140
128
116
151
139
127
115
150
138
126
114
149
148
147
146
145
144
143
142
141
140
139
138
137
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
150
136
124
112
100
114
151
135
123
111
99
115
151
134
122
110
98
116
150
133
121
109
97
117
149
132
120
108
96
118
148
131
119
107
95
119
147
130
118
106
94
120
134
135
136
137
138
139
140
141
142
143
144
145
146
129
117
105
93
121
122
123
124
125
126
127
128
129
130
131
132
133
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
112
100
88
123
122
121
120
119
118
117
116
115
114
113
112
111
99
98
97
96
95
94
93
92
91
90
89
88
87
124
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
120
105
93
81
81
82
83
84
85
86
87
88
89
90
91
92
93
119
104
92
80
68
69
70
71
72
73
74
75
76
77
78
79
80
94
118
103
91
79
67
95
117
102
90
78
66
96
116
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
77
65
97
115
90
76
76
64
98
114
91
75
75
63
99
113
92
74
74
62
100
101
102
103
104
105
106
107
108
109
110
111
112
93
73
73
72
71
70
69
68
67
66
65
64
63
62
61
101
113
94
72
72
60
102
113
95
71
71
59
103
112
96
70
70
58
104
111
97
69
69
57
105
110
98
68
68
56
106
109
99
67
67
55
107
108
100
66
66
54
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
103
102
101
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
53
109
94
100
66
52
52
110
93
99
67
51
51
111
92
98
68
50
50
112
91
97
69
49
49
113
90
96
70
48
48
113
89
95
71
47
47
112
88
94
72
46
46
111
87
93
73
45
45
110
86
92
74
44
44
109
85
91
75
43
43
108
84
90
76
42
42
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
89
88
87
86
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
116
96
82
42
28
38
117
97
81
43
27
37
118
98
80
44
26
36
119
99
79
45
25
35
120
100
78
46
24
34
121
101
77
47
23
33
122
102
76
48
22
32
123
103
75
49
21
31
124
104
74
50
20
30
125
105
73
51
19
29
126
106
72
52
18
28
127
115
114
113
112
111
110
109
108
107
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
55
54
53
17
16
15
14
13
12
11
10
9
27
126
114
60
46
8
26
125
113
61
45
7
25
124
112
62
44
6
24
123
111
63
43
5
23
122
110
64
42
4
22
121
109
65
41
3
21
120
108
66
40
2
20
119
107
67
39
1
19
118
106
68
38
0
188
189
190
191
192
193
194
195
196
197
198
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
149
187
196
176
164
160
148
186
195
175
163
159
147
185
194
174
162
158
146
184
193
173
161
157
145
183
192
172
160
156
144
182
191
171
159
155
143
181
190
170
158
154
142
180
189
169
157
153
141
179
188
168
156
152
140
178
187
167
155
151
139
177
186
166
154
150
138
176
185
165
153
152
151
150
149
148
147
146
145
144
143
142
141
153
149
137
175
184
164
152
140
152
148
136
174
183
163
151
139
151
147
135
173
182
162
150
138
150
146
134
172
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
149
137
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
133
171
174
160
148
136
148
136
132
170
174
159
147
135
147
135
131
169
173
158
146
134
146
134
130
168
172
157
145
133
145
133
129
167
171
156
144
132
144
132
128
166
170
155
143
131
143
131
127
165
169
154
142
130
142
130
126
164
168
153
141
129
141
129
125
163
167
152
140
128
140
128
124
162
166
151
139
127
139
127
123
161
165
150
138
126
138
126
122
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
149
148
147
146
145
144
143
142
141
140
139
138
137
125
126
127
128
129
130
131
132
133
134
135
136
137
125
124
123
122
121
120
119
118
117
116
115
114
113
114
115
116
117
118
119
120
121
151
136
124
112
150
135
123
111
149
134
122
110
148
133
121
109
147
132
120
108
146
131
119
107
145
130
118
106
144
129
117
105
143
128
116
104
142
127
115
103
141
126
114
102
140
139
138
137
136
135
134
133
132
131
130
129
128
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
89
90
91
92
93
94
95
96
97
98
99
100
101
141
127
136
100
88
102
140
126
135
99
87
103
139
125
134
98
86
104
138
124
133
97
85
105
137
123
132
96
84
106
136
122
131
95
83
107
135
121
130
94
82
108
122
123
124
125
126
127
128
129
130
131
132
133
134
120
129
93
81
109
110
111
112
113
114
115
116
117
118
119
120
121
119
128
92
80
118
127
91
79
117
126
90
78
116
125
89
77
115
124
88
76
114
115
116
117
118
119
120
121
122
123
124
124
123
87
86
85
84
83
82
81
80
79
78
77
76
75
113
122
88
74
112
121
89
73
111
120
90
72
110
119
91
71
109
118
92
70
108
117
93
69
69
70
71
72
73
74
75
76
77
78
79
80
81
107
116
94
68
56
57
58
59
60
61
62
63
64
65
66
67
68
82
106
115
95
67
55
83
105
114
96
66
54
84
104
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
98
97
65
53
85
103
102
88
64
52
86
102
103
87
63
51
87
101
104
86
62
50
88
89
90
91
92
93
94
95
96
97
98
99
100
105
85
61
60
59
58
57
56
55
54
53
52
51
50
49
89
101
106
84
62
48
90
102
107
83
63
47
91
103
108
82
64
46
92
104
109
81
65
45
93
105
110
80
66
44
94
106
111
79
67
43
95
107
112
78
68
42
96
108
109
110
111
112
113
113
112
111
110
109
108
107
108
109
110
111
112
113
114
115
116
115
114
113
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
72
71
70
69
41
97
106
112
78
64
40
98
105
111
79
63
39
99
104
110
80
62
38
100
103
109
81
61
37
101
102
108
82
60
36
102
101
107
83
59
35
103
100
106
84
58
34
104
99
105
85
57
33
105
98
104
86
56
32
106
97
103
87
55
31
107
96
102
88
54
30
116
115
114
113
112
111
110
109
108
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
101
100
99
98
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
117
108
94
54
42
20
118
109
93
55
43
19
119
110
92
56
44
18
120
111
91
57
43
17
121
112
90
58
42
16
122
113
89
59
41
15
123
114
88
60
40
14
124
115
87
61
39
13
125
116
86
62
38
12
126
117
85
63
37
11
127
118
84
64
36
10
128
127
126
125
124
123
122
121
120
119
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
67
66
65
35
34
33
32
31
30
29
28
27
9
129
126
72
58
26
8
130
125
73
57
25
7
131
124
74
56
24
6
132
123
75
55
23
5
133
122
76
54
22
4
133
121
77
53
21
3
132
120
78
52
20
2
131
119
79
51
19
1
130
118
80
50
18
0
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
199
198
197
196
195
194
193
192
191
190
189
149
161
165
177
197
188
148
160
164
176
196
187
147
159
163
175
195
186
146
158
162
174
194
185
145
157
161
173
193
184
144
156
160
172
192
183
143
155
159
171
191
182
142
154
158
170
190
181
141
153
157
169
189
180
140
152
156
168
188
179
139
151
155
167
187
178
138
150
154
142
143
144
145
146
147
148
149
150
151
152
153
154
166
186
177
137
149
153
141
153
165
185
176
136
148
152
140
152
164
184
175
135
147
151
139
151
163
183
174
134
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
138
150
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
173
133
137
149
137
149
161
175
172
132
136
148
136
148
160
175
171
131
135
147
135
147
159
174
170
130
134
146
134
146
158
173
169
129
133
145
133
145
157
172
168
128
132
144
132
144
156
171
167
127
131
143
131
143
155
170
166
126
130
142
130
142
154
169
165
125
129
141
129
141
153
168
164
124
128
140
128
140
152
167
163
123
127
139
127
139
151
166
162
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
123
124
125
126
138
137
136
135
134
133
132
131
130
129
128
127
126
138
139
140
141
142
143
144
145
146
147
148
149
150
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
113
125
137
152
112
124
136
151
111
123
135
150
110
122
134
149
109
121
133
148
108
120
132
147
107
119
131
146
106
118
130
145
105
117
129
144
104
116
128
143
103
115
127
142
102
101
100
99
98
97
96
95
94
93
92
91
90
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
129
130
131
132
133
134
135
136
137
138
139
140
141
103
89
101
137
128
142
104
88
100
136
127
141
105
87
99
135
126
140
106
86
98
134
125
139
107
85
97
133
124
138
108
84
96
132
123
137
109
83
95
131
122
136
122
121
120
119
118
117
116
115
114
113
112
111
110
82
94
130
121
135
134
133
132
131
130
129
128
127
126
125
124
123
81
93
129
120
80
92
128
119
79
91
127
118
78
90
126
117
77
89
125
116
76
77
78
79
80
81
82
83
84
85
86
87
88
124
125
125
124
123
122
121
120
119
118
117
116
115
75
89
123
114
74
90
122
113
73
91
121
112
72
92
120
111
71
93
119
110
70
94
118
109
69
68
67
66
65
64
63
62
61
60
59
58
57
69
95
117
108
82
81
80
79
78
77
76
75
74
73
72
71
70
56
68
96
116
107
83
55
67
97
115
106
84
54
66
98
99
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
105
85
53
65
89
103
104
86
52
64
88
104
103
87
51
63
87
105
102
88
50
51
52
53
54
55
56
57
58
59
60
61
62
86
106
101
100
99
98
97
96
95
94
93
92
91
90
89
49
63
85
107
102
90
48
64
84
108
103
91
47
65
83
109
104
92
46
66
82
110
105
93
45
67
81
111
106
94
44
68
80
112
107
95
43
69
79
113
108
96
42
70
71
72
73
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
114
115
116
115
114
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
113
112
111
110
109
97
41
65
79
113
105
98
40
64
80
112
104
99
39
63
81
111
103
100
38
62
82
110
102
101
37
61
83
109
101
102
36
60
84
108
100
103
35
59
85
107
99
104
34
58
86
106
98
105
33
57
87
105
97
106
32
56
88
104
96
107
31
55
89
103
95
108
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
94
95
96
97
98
99
100
101
102
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
109
110
111
112
113
114
115
116
117
21
43
55
93
107
118
20
44
56
92
108
119
19
43
57
91
109
120
18
42
58
90
110
121
17
41
59
89
111
122
16
40
60
88
112
123
15
39
61
87
113
124
14
38
62
86
114
125
13
37
63
85
115
126
12
36
64
84
116
127
11
35
65
83
117
128
10
26
27
28
29
30
31
32
33
34
66
67
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
118
119
120
121
122
123
124
125
126
129
9
25
57
71
125
130
8
24
56
72
124
131
7
23
55
73
123
132
6
22
54
74
122
133
5
21
53
75
121
133
4
20
52
76
120
132
3
19
51
77
119
131
2
18
50
78
118
130
1
17
49
79
117
129
0
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
209
208
207
206
205
204
203
202
201
200
199
198
161
173
177
189
209
197
160
172
176
188
208
196
159
171
175
187
207
195
158
170
174
186
206
194
157
169
173
185
205
193
156
168
172
184
204
192
155
167
171
183
203
191
154
166
170
182
202
190
153
165
169
181
201
189
152
164
168
180
200
188
151
163
167
179
199
187
150
162
166
154
155
156
157
158
159
160
161
162
163
164
165
166
178
198
186
149
161
165
153
165
177
197
185
148
160
164
152
164
176
196
184
147
159
163
151
163
175
195
183
146
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
150
162
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
182
145
149
161
149
161
173
185
181
144
148
160
148
160
172
184
180
143
147
159
147
159
171
183
179
142
146
158
146
158
170
182
178
141
145
157
145
157
169
181
177
140
144
156
144
156
168
180
176
139
143
155
143
155
167
179
175
138
142
154
142
154
166
178
174
137
141
153
141
153
165
177
173
136
140
152
140
152
164
176
172
135
139
151
139
151
163
175
171
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
150
149
148
147
146
145
144
143
142
141
140
139
138
150
151
152
153
154
155
156
157
158
159
160
161
162
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
125
137
149
161
124
136
148
160
123
135
147
159
122
134
146
158
121
133
145
157
120
132
144
156
119
131
143
155
118
130
142
154
117
129
141
153
116
128
140
152
115
127
139
151
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
138
139
140
141
142
143
144
145
146
147
148
149
150
115
101
113
125
137
151
116
100
112
124
136
152
117
99
111
123
135
152
118
98
110
122
134
151
119
97
109
121
133
150
120
96
108
120
132
149
121
95
107
119
131
148
134
133
132
131
130
129
128
127
126
125
124
123
122
94
106
118
130
147
146
145
144
143
142
141
140
139
138
137
136
135
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
101
113
125
88
89
90
91
92
93
94
95
96
97
98
99
100
112
113
114
115
116
117
118
119
120
121
122
123
124
87
99
111
125
86
98
110
125
85
97
109
124
84
96
108
123
83
95
107
122
82
94
106
121
81
80
79
78
77
76
75
74
73
72
71
70
69
81
93
105
120
94
93
92
91
90
89
88
87
86
85
84
83
82
68
80
92
104
119
95
67
79
91
103
118
96
66
78
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
117
97
65
77
77
91
116
98
64
76
76
92
115
99
63
75
75
93
114
100
62
63
64
65
66
67
68
69
70
71
72
73
74
74
94
113
112
111
110
109
108
107
106
105
104
103
102
101
61
73
73
95
113
102
60
72
72
96
112
103
59
71
71
97
111
104
58
70
70
98
110
105
57
69
69
99
109
106
56
68
68
100
108
107
55
67
67
101
107
108
54
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
102
103
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
109
53
53
67
101
93
110
52
52
68
100
92
111
51
51
69
99
91
112
50
50
70
98
90
113
49
49
71
97
89
113
48
48
72
96
88
112
47
47
73
95
87
111
46
46
74
94
86
110
45
45
75
93
85
109
44
44
76
92
84
108
43
43
77
91
83
107
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
87
88
89
90
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
37
29
43
81
95
115
36
28
44
80
96
116
35
27
45
79
97
117
34
26
46
78
98
118
33
25
47
77
99
119
32
24
48
76
100
120
31
23
49
75
101
121
30
22
50
74
102
122
29
21
51
73
103
123
28
20
52
72
104
124
27
19
53
71
105
125
26
10
11
12
13
14
15
16
17
18
54
55
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
106
107
108
109
110
111
112
113
114
126
25
9
45
59
113
125
24
8
44
60
112
124
23
7
43
61
111
123
22
6
42
62
110
122
21
5
41
63
109
121
20
4
40
64
108
120
19
3
39
65
107
119
18
2
38
66
106
118
17
1
37
67
105
117
16
0
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
153
165
169
181
177
165
152
164
168
180
176
164
151
163
167
179
175
163
150
162
166
178
174
162
149
161
165
177
173
161
148
160
164
176
172
160
147
159
163
175
171
159
146
158
162
174
170
158
145
157
161
173
169
157
144
156
160
172
168
156
143
155
159
171
167
155
142
154
158
146
147
148
149
150
151
152
153
154
155
156
157
158
170
166
154
141
153
157
145
157
169
165
153
140
152
156
144
156
168
164
152
139
151
155
143
155
167
163
151
138
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
142
154
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
150
137
141
153
141
153
165
153
149
136
140
152
140
152
164
152
148
135
139
151
139
151
163
151
147
134
138
150
138
150
162
150
146
133
137
149
137
149
161
149
145
132
136
148
136
148
160
148
144
131
135
147
135
147
159
147
143
130
134
146
134
146
158
146
142
129
133
145
133
145
157
145
141
128
132
144
132
144
156
144
140
127
131
143
131
143
155
143
139
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
142
141
140
139
138
137
136
135
134
133
132
131
130
142
143
144
145
146
147
148
149
150
151
152
153
154
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
117
129
141
129
116
128
140
128
115
127
139
127
114
126
138
126
113
125
137
125
112
124
136
124
111
123
135
123
110
122
134
122
109
121
133
121
108
120
132
120
107
119
131
119
106
105
104
103
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
115
116
117
118
107
93
105
117
105
119
108
92
104
116
104
120
109
91
103
115
103
121
110
90
102
114
102
122
111
89
101
113
101
123
112
88
100
112
100
124
113
87
99
111
99
125
126
125
124
123
122
121
120
119
118
117
116
115
114
86
98
110
98
126
127
128
129
130
131
132
132
131
130
129
128
127
85
97
109
97
84
96
108
96
83
95
107
95
82
94
106
94
81
93
105
93
80
81
82
83
84
85
86
87
88
89
90
91
92
104
103
102
101
100
99
98
97
96
95
94
93
92
79
91
103
91
78
90
102
90
77
89
101
89
76
88
100
88
75
87
99
87
74
86
98
86
97
96
95
94
93
92
91
90
89
88
87
86
85
73
85
97
85
97
98
99
100
101
102
103
103
102
101
100
99
98
84
72
84
96
84
96
83
71
83
95
83
95
82
70
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
82
94
81
69
69
81
81
93
80
68
68
80
80
92
79
67
67
79
79
91
78
77
76
75
74
73
72
71
70
69
68
67
66
66
78
78
79
80
81
82
83
84
85
86
87
88
89
90
77
65
65
77
77
89
76
64
64
76
76
88
75
63
63
75
75
87
74
62
62
74
74
86
73
61
61
73
73
85
72
60
60
72
72
84
71
59
59
71
71
83
70
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
82
69
45
59
71
57
81
68
44
60
72
56
80
67
43
61
73
55
79
66
42
62
74
54
78
65
41
63
75
53
77
64
40
64
76
52
76
63
39
65
77
51
75
62
38
66
78
50
74
61
37
67
79
49
73
60
36
68
80
48
72
59
35
69
81
47
71
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
40
39
38
37
36
35
34
70
71
72
73
74
75
76
77
78
79
80
81
82
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
67
47
33
45
59
79
68
48
32
44
60
80
67
49
31
43
61
81
66
50
30
42
62
82
65
51
29
41
63
83
64
52
28
40
64
84
63
53
27
39
65
85
62
54
26
38
66
86
61
55
25
37
67
87
60
56
24
36
68
88
59
55
23
35
69
89
58
46
47
48
49
50
51
52
53
54
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
70
71
72
73
74
75
76
77
78
90
57
45
9
23
77
89
56
44
8
24
76
88
55
43
7
25
75
87
54
42
6
26
74
86
53
41
5
27
73
85
52
40
4
28
72
84
51
39
3
29
71
83
50
38
2
30
70
82
49
37
1
31
69
81
48
36
0
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
165
177
181
169
165
153
164
176
180
168
164
152
163
175
179
167
163
151
162
174
178
166
162
150
161
173
177
165
161
149
160
172
176
164
160
148
159
171
175
163
159
147
158
170
174
162
158
146
157
169
173
161
157
145
156
168
172
160
156
144
155
167
171
159
155
143
154
166
170
158
157
156
155
154
153
152
151
150
149
148
147
146
158
154
142
153
165
169
157
145
157
153
141
152
164
168
156
144
156
152
140
151
163
167
155
143
155
151
139
150
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
154
142
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
138
149
153
165
153
141
153
141
137
148
152
164
152
140
152
140
136
147
151
163
151
139
151
139
135
146
150
162
150
138
150
138
134
145
149
161
149
137
149
137
133
144
148
160
148
136
148
136
132
143
147
159
147
135
147
135
131
142
146
158
146
134
146
134
130
141
145
157
145
133
145
133
129
140
144
156
144
132
144
132
128
139
143
155
143
131
143
131
127
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
154
153
152
151
150
149
148
147
146
145
144
143
142
130
131
132
133
134
135
136
137
138
139
140
141
142
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
129
141
129
117
128
140
128
116
127
139
127
115
126
138
126
114
125
137
125
113
124
136
124
112
123
135
123
111
122
134
122
110
121
133
121
109
120
132
120
108
119
131
119
107
118
117
116
115
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
125
126
127
128
129
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
103
104
105
106
119
105
117
105
93
107
120
104
116
104
92
108
121
103
115
103
91
109
122
102
114
102
90
110
123
101
113
101
89
111
124
100
112
100
88
112
125
99
111
99
87
113
127
128
129
130
131
132
132
131
130
129
128
127
126
98
110
98
86
114
115
116
117
118
119
120
121
122
123
124
125
126
97
109
97
85
96
108
96
84
95
107
95
83
94
106
94
82
93
105
93
81
92
93
94
95
96
97
98
99
100
101
102
103
104
92
91
90
89
88
87
86
85
84
83
82
81
80
91
103
91
79
90
102
90
78
89
101
89
77
88
100
88
76
87
99
87
75
86
98
86
74
98
99
100
101
102
103
103
102
101
100
99
98
97
85
97
85
73
85
86
87
88
89
90
91
92
93
94
95
96
97
96
84
96
84
72
84
95
83
95
83
71
83
94
82
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
70
82
93
81
81
69
69
81
92
80
80
68
68
80
91
79
79
67
67
79
90
89
88
87
86
85
84
83
82
81
80
79
78
78
66
66
67
68
69
70
71
72
73
74
75
76
77
78
89
77
77
65
65
77
88
76
76
64
64
76
87
75
75
63
63
75
86
74
74
62
62
74
85
73
73
61
61
73
84
72
72
60
60
72
83
71
71
59
59
71
82
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
70
81
57
71
59
45
69
80
56
72
60
44
68
79
55
73
61
43
67
78
54
74
62
42
66
77
53
75
63
41
65
76
52
76
64
40
64
75
51
77
65
39
63
74
50
78
66
38
62
73
49
79
67
37
61
72
48
80
68
36
60
71
47
81
69
35
59
78
77
76
75
74
73
72
71
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
82
81
80
79
78
77
76
75
74
73
72
71
70
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
79
59
45
33
47
67
80
60
44
32
48
68
81
61
43
31
49
67
82
62
42
30
50
66
83
63
41
29
51
65
84
64
40
28
52
64
85
65
39
27
53
63
86
66
38
26
54
62
87
67
37
25
55
61
88
68
36
24
56
60
89
69
35
23
55
59
90
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
11
12
13
14
15
16
17
18
19
20
21
22
54
53
52
51
50
49
48
47
46
58
89
77
23
9
45
57
88
76
24
8
44
56
87
75
25
7
43
55
86
74
26
6
42
54
85
73
27
5
41
53
84
72
28
4
40
52
83
71
29
3
39
51
82
70
30
2
38
50
81
69
31
1
37
49
80
68
32
0
198
199
200
201
202
203
204
205
206
207
208
209
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
197
209
189
177
173
161
196
208
188
176
172
160
195
207
187
175
171
159
194
206
186
174
170
158
193
205
185
173
169
157
192
204
184
172
168
156
191
203
183
171
167
155
190
202
182
170
166
154
189
201
181
169
165
153
188
200
180
168
164
152
187
199
179
167
163
151
186
198
178
166
165
164
163
162
161
160
159
158
157
156
155
154
166
162
150
185
197
177
165
153
165
161
149
184
196
176
164
152
164
160
148
183
195
175
163
151
163
159
147
182
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
162
150
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
146
181
185
173
161
149
161
149
145
180
184
172
160
148
160
148
144
179
183
171
159
147
159
147
143
178
182
170
158
146
158
146
142
177
181
169
157
145
157
145
141
176
180
168
156
144
156
144
140
175
179
167
155
143
155
143
139
174
178
166
154
142
154
142
138
173
177
165
153
141
153
141
137
172
176
164
152
140
152
140
136
171
175
163
151
139
151
139
135
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
162
161
160
159
158
157
156
155
154
153
152
151
150
138
139
140
141
142
143
144
145
146
147
148
149
150
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
161
149
137
125
160
148
136
124
159
147
135
123
158
146
134
122
157
145
133
121
156
144
132
120
155
143
131
119
154
142
130
118
153
141
129
117
152
140
128
116
151
139
127
115
150
149
148
147
146
145
144
143
142
141
140
139
138
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
151
137
125
113
101
115
152
136
124
112
100
116
152
135
123
111
99
117
151
134
122
110
98
118
150
133
121
109
97
119
149
132
120
108
96
120
148
131
119
107
95
121
135
136
137
138
139
140
141
142
143
144
145
146
147
130
118
106
94
122
123
124
125
126
127
128
129
130
131
132
133
134
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
113
101
89
124
123
122
121
120
119
118
117
116
115
114
113
112
100
99
98
97
96
95
94
93
92
91
90
89
88
125
111
99
87
125
110
98
86
124
109
97
85
123
108
96
84
122
107
95
83
121
106
94
82
82
83
84
85
86
87
88
89
90
91
92
93
94
120
105
93
81
69
70
71
72
73
74
75
76
77
78
79
80
81
95
119
104
92
80
68
96
118
103
91
79
67
97
117
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
78
66
98
116
91
77
77
65
99
115
92
76
76
64
100
114
93
75
75
63
101
102
103
104
105
106
107
108
109
110
111
112
113
94
74
74
73
72
71
70
69
68
67
66
65
64
63
62
102
113
95
73
73
61
103
112
96
72
72
60
104
111
97
71
71
59
105
110
98
70
70
58
106
109
99
69
69
57
107
108
100
68
68
56
108
107
101
67
67
55
109
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
103
102
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
54
110
93
101
67
53
53
111
92
100
68
52
52
112
91
99
69
51
51
113
90
98
70
50
50
113
89
97
71
49
49
112
88
96
72
48
48
111
87
95
73
47
47
110
86
94
74
46
46
109
85
93
75
45
45
108
84
92
76
44
44
107
83
91
77
43
43
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
90
89
88
87
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
115
95
81
43
29
37
116
96
80
44
28
36
117
97
79
45
27
35
118
98
78
46
26
34
119
99
77
47
25
33
120
100
76
48
24
32
121
101
75
49
23
31
122
102
74
50
22
30
123
103
73
51
21
29
124
104
72
52
20
28
125
105
71
53
19
27
126
114
113
112
111
110
109
108
107
106
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
47
48
49
50
51
52
53
54
55
56
55
54
18
17
16
15
14
13
12
11
10
26
125
113
59
45
9
25
124
112
60
44
8
24
123
111
61
43
7
23
122
110
62
42
6
22
121
109
63
41
5
21
120
108
64
40
4
20
119
107
65
39
3
19
118
106
66
38
2
18
117
105
67
37
1
17
116
104
68
36
0
189
190
191
192
193
194
195
196
197
198
199
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
150
188
197
177
165
161
149
187
196
176
164
160
148
186
195
175
163
159
147
185
194
174
162
158
146
184
193
173
161
157
145
183
192
172
160
156
144
182
191
171
159
155
143
181
190
170
158
154
142
180
189
169
157
153
141
179
188
168
156
152
140
178
187
167
155
151
139
177
186
166
154
153
152
151
150
149
148
147
146
145
144
143
142
154
150
138
176
185
165
153
141
153
149
137
175
184
164
152
140
152
148
136
174
183
163
151
139
151
147
135
173
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
150
138
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
134
172
175
161
149
137
149
137
133
171
175
160
148
136
148
136
132
170
174
159
147
135
147
135
131
169
173
158
146
134
146
134
130
168
172
157
145
133
145
133
129
167
171
156
144
132
144
132
128
166
170
155
143
131
143
131
127
165
169
154
142
130
142
130
126
164
168
153
141
129
141
129
125
163
167
152
140
128
140
128
124
162
166
151
139
127
139
127
123
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
150
149
148
147
146
145
144
143
142
141
140
139
138
126
127
128
129
130
131
132
133
134
135
136
137
138
126
125
124
123
122
121
120
119
118
117
116
115
114
115
116
117
118
119
120
121
122
152
137
125
113
151
136
124
112
150
135
123
111
149
134
122
110
148
133
121
109
147
132
120
108
146
131
119
107
145
130
118
106
144
129
117
105
143
128
116
104
142
127
115
103
141
140
139
138
137
136
135
134
133
132
131
130
129
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
90
91
92
93
94
95
96
97
98
99
100
101
102
142
128
137
101
89
103
141
127
136
100
88
104
140
126
135
99
87
105
139
125
134
98
86
106
138
124
133
97
85
107
137
123
132
96
84
108
136
122
131
95
83
109
123
124
125
126
127
128
129
130
131
132
133
134
135
121
130
94
82
110
111
112
113
114
115
116
117
118
119
120
121
122
120
129
93
81
119
128
92
80
118
127
91
79
117
126
90
78
116
125
89
77
115
116
117
118
119
120
121
122
123
124
125
125
124
88
87
86
85
84
83
82
81
80
79
78
77
76
114
123
89
75
113
122
90
74
112
121
91
73
111
120
92
72
110
119
93
71
109
118
94
70
70
71
72
73
74
75
76
77
78
79
80
81
82
108
117
95
69
57
58
59
60
61
62
63
64
65
66
67
68
69
83
107
116
96
68
56
84
106
115
97
67
55
85
105
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
99
98
66
54
86
104
103
89
65
53
87
103
104
88
64
52
88
102
105
87
63
51
89
90
91
92
93
94
95
96
97
98
99
100
101
106
86
62
61
60
59
58
57
56
55
54
53
52
51
50
90
102
107
85
63
49
91
103
108
84
64
48
92
104
109
83
65
47
93
105
110
82
66
46
94
106
111
81
67
45
95
107
112
80
68
44
96
108
113
79
69
43
97
109
110
111
112
113
113
112
111
110
109
108
107
106
107
108
109
110
111
112
113
114
115
116
115
114
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
73
72
71
70
42
98
105
113
79
65
41
99
104
112
80
64
40
100
103
111
81
63
39
101
102
110
82
62
38
102
101
109
83
61
37
103
100
108
84
60
36
104
99
107
85
59
35
105
98
106
86
58
34
106
97
105
87
57
33
107
96
104
88
56
32
108
95
103
89
55
31
117
116
115
114
113
112
111
110
109
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
102
101
100
99
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
118
107
93
55
43
21
119
108
92
56
44
20
120
109
91
57
43
19
121
110
90
58
42
18
122
111
89
59
41
17
123
112
88
60
40
16
124
113
87
61
39
15
125
114
86
62
38
14
126
115
85
63
37
13
127
116
84
64
36
12
128
117
83
65
35
11
129
126
125
124
123
122
121
120
119
118
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
67
66
34
33
32
31
30
29
28
27
26
10
130
125
71
57
25
9
131
124
72
56
24
8
132
123
73
55
23
7
133
122
74
54
22
6
133
121
75
53
21
5
132
120
76
52
20
4
131
119
77
51
19
3
130
118
78
50
18
2
129
117
79
49
17
1
128
116
80
48
16
0
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
200
199
198
197
196
195
194
193
192
191
190
150
162
166
178
198
189
149
161
165
177
197
188
148
160
164
176
196
187
147
159
163
175
195
186
146
158
162
174
194
185
145
157
161
173
193
184
144
156
160
172
192
183
143
155
159
171
191
182
142
154
158
170
190
181
141
153
157
169
189
180
140
152
156
168
188
179
139
151
155
143
144
145
146
147
148
149
150
151
152
153
154
155
167
187
178
138
150
154
142
154
166
186
177
137
149
153
141
153
165
185
176
136
148
152
140
152
164
184
175
135
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
139
151
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
174
134
138
150
138
150
162
176
173
133
137
149
137
149
161
176
172
132
136
148
136
148
160
175
171
131
135
147
135
147
159
174
170
130
134
146
134
146
158
173
169
129
133
145
133
145
157
172
168
128
132
144
132
144
156
171
167
127
131
143
131
143
155
170
166
126
130
142
130
142
154
169
165
125
129
141
129
141
153
168
164
124
128
140
128
140
152
167
163
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
124
125
126
127
139
138
137
136
135
134
133
132
131
130
129
128
127
139
140
141
142
143
144
145
146
147
148
149
150
151
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
114
126
138
153
113
125
137
152
112
124
136
151
111
123
135
150
110
122
134
149
109
121
133
148
108
120
132
147
107
119
131
146
106
118
130
145
105
117
129
144
104
116
128
143
103
102
101
100
99
98
97
96
95
94
93
92
91
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
130
131
132
133
134
135
136
137
138
139
140
141
142
104
90
102
138
129
143
105
89
101
137
128
142
106
88
100
136
127
141
107
87
99
135
126
140
108
86
98
134
125
139
109
85
97
133
124
138
110
84
96
132
123
137
123
122
121
120
119
118
117
116
115
114
113
112
111
83
95
131
122
136
135
134
133
132
131
130
129
128
127
126
125
124
82
94
130
121
81
93
129
120
80
92
128
119
79
91
127
118
78
90
126
117
77
78
79
80
81
82
83
84
85
86
87
88
89
125
126
126
125
124
123
122
121
120
119
118
117
116
76
90
124
115
75
91
123
114
74
92
122
113
73
93
121
112
72
94
120
111
71
95
119
110
70
69
68
67
66
65
64
63
62
61
60
59
58
70
96
118
109
83
82
81
80
79
78
77
76
75
74
73
72
71
57
69
97
117
108
84
56
68
98
116
107
85
55
67
99
100
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
106
86
54
66
90
104
105
87
53
65
89
105
104
88
52
64
88
106
103
89
51
52
53
54
55
56
57
58
59
60
61
62
63
87
107
102
101
100
99
98
97
96
95
94
93
92
91
90
50
64
86
108
103
91
49
65
85
109
104
92
48
66
84
110
105
93
47
67
83
111
106
94
46
68
82
112
107
95
45
69
81
113
108
96
44
70
80
114
109
97
43
71
72
73
74
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
115
116
115
114
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
113
112
111
110
98
42
66
80
114
104
99
41
65
81
113
103
100
40
64
82
112
102
101
39
63
83
111
101
102
38
62
84
110
100
103
37
61
85
109
99
104
36
60
86
108
98
105
35
59
87
107
97
106
34
58
88
106
96
107
33
57
89
105
95
108
32
56
90
104
94
109
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
94
95
96
97
98
99
100
101
102
103
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
110
111
112
113
114
115
116
117
118
22
44
56
92
106
119
21
43
57
91
107
120
20
42
58
90
108
121
19
41
59
89
109
122
18
40
60
88
110
123
17
39
61
87
111
124
16
38
62
86
112
125
15
37
63
85
113
126
14
36
64
84
114
127
13
35
65
83
115
128
12
34
66
82
116
129
11
25
26
27
28
29
30
31
32
33
67
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
117
118
119
120
121
122
123
124
125
130
10
24
56
70
124
131
9
23
55
71
123
132
8
22
54
72
122
133
7
21
53
73
121
133
6
20
52
74
120
132
5
19
51
75
119
131
4
18
50
76
118
130
3
17
49
77
117
129
2
16
48
78
116
128
1
15
47
79
115
127
0
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
210
209
208
207
206
205
204
203
202
201
200
199
162
174
178
190
210
198
161
173
177
189
209
197
160
172
176
188
208
196
159
171
175
187
207
195
158
170
174
186
206
194
157
169
173
185
205
193
156
168
172
184
204
192
155
167
171
183
203
191
154
166
170
182
202
190
153
165
169
181
201
189
152
164
168
180
200
188
151
163
167
155
156
157
158
159
160
161
162
163
164
165
166
167
179
199
187
150
162
166
154
166
178
198
186
149
161
165
153
165
177
197
185
148
160
164
152
164
176
196
184
147
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
151
163
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
183
146
150
162
150
162
174
186
182
145
149
161
149
161
173
185
181
144
148
160
148
160
172
184
180
143
147
159
147
159
171
183
179
142
146
158
146
158
170
182
178
141
145
157
145
157
169
181
177
140
144
156
144
156
168
180
176
139
143
155
143
155
167
179
175
138
142
154
142
154
166
178
174
137
141
153
141
153
165
177
173
136
140
152
140
152
164
176
172
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
151
150
149
148
147
146
145
144
143
142
141
140
139
151
152
153
154
155
156
157
158
159
160
161
162
163
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
126
138
150
162
125
137
149
161
124
136
148
160
123
135
147
159
122
134
146
158
121
133
145
157
120
132
144
156
119
131
143
155
118
130
142
154
117
129
141
153
116
128
140
152
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
139
140
141
142
143
144
145
146
147
148
149
150
151
116
102
114
126
138
152
117
101
113
125
137
153
118
100
112
124
136
153
119
99
111
123
135
152
120
98
110
122
134
151
121
97
109
121
133
150
122
96
108
120
132
149
135
134
133
132
131
130
129
128
127
126
125
124
123
95
107
119
131
148
147
146
145
144
143
142
141
140
139
138
137
136
94
106
118
130
93
105
117
129
92
104
116
128
91
103
115
127
90
102
114
126
89
90
91
92
93
94
95
96
97
98
99
100
101
113
114
115
116
117
118
119
120
121
122
123
124
125
88
100
112
126
87
99
111
125
86
98
110
124
85
97
109
123
84
96
108
122
83
95
107
121
82
81
80
79
78
77
76
75
74
73
72
71
70
82
94
106
120
95
94
93
92
91
90
89
88
87
86
85
84
83
69
81
93
105
119
96
68
80
92
104
118
97
67
79
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
117
98
66
78
78
92
116
99
65
77
77
93
115
100
64
76
76
94
114
101
63
64
65
66
67
68
69
70
71
72
73
74
75
75
95
113
113
112
111
110
109
108
107
106
105
104
103
102
62
74
74
96
112
103
61
73
73
97
111
104
60
72
72
98
110
105
59
71
71
99
109
106
58
70
70
100
108
107
57
69
69
101
107
108
56
68
68
102
106
109
55
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
103
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
110
54
54
68
102
92
111
53
53
69
101
91
112
52
52
70
100
90
113
51
51
71
99
89
113
50
50
72
98
88
112
49
49
73
97
87
111
48
48
74
96
86
110
47
47
75
95
85
109
46
46
76
94
84
108
45
45
77
93
83
107
44
44
78
92
82
106
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
88
89
90
91
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
36
30
44
80
94
114
35
29
45
79
95
115
34
28
46
78
96
116
33
27
47
77
97
117
32
26
48
76
98
118
31
25
49
75
99
119
30
24
50
74
100
120
29
23
51
73
101
121
28
22
52
72
102
122
27
21
53
71
103
123
26
20
54
70
104
124
25
11
12
13
14
15
16
17
18
19
55
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
105
106
107
108
109
110
111
112
113
125
24
10
44
58
112
124
23
9
43
59
111
123
22
8
42
60
110
122
21
7
41
61
109
121
20
6
40
62
108
120
19
5
39
63
107
119
18
4
38
64
106
118
17
3
37
65
105
117
16
2
36
66
104
116
15
1
35
67
103
115
14
0
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
154
166
170
182
178
166
153
165
169
181
177
165
152
164
168
180
176
164
151
163
167
179
175
163
150
162
166
178
174
162
149
161
165
177
173
161
148
160
164
176
172
160
147
159
163
175
171
159
146
158
162
174
170
158
145
157
161
173
169
157
144
156
160
172
168
156
143
155
159
147
148
149
150
151
152
153
154
155
156
157
158
159
171
167
155
142
154
158
146
158
170
166
154
141
153
157
145
157
169
165
153
140
152
156
144
156
168
164
152
139
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
143
155
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
151
138
142
154
142
154
166
154
150
137
141
153
141
153
165
153
149
136
140
152
140
152
164
152
148
135
139
151
139
151
163
151
147
134
138
150
138
150
162
150
146
133
137
149
137
149
161
149
145
132
136
148
136
148
160
148
144
131
135
147
135
147
159
147
143
130
134
146
134
146
158
146
142
129
133
145
133
145
157
145
141
128
132
144
132
144
156
144
140
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
143
142
141
140
139
138
137
136
135
134
133
132
131
143
144
145
146
147
148
149
150
151
152
153
154
155
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
118
130
142
130
117
129
141
129
116
128
140
128
115
127
139
127
114
126
138
126
113
125
137
125
112
124
136
124
111
123
135
123
110
122
134
122
109
121
133
121
108
120
132
120
107
106
105
104
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
116
117
118
119
108
94
106
118
106
120
109
93
105
117
105
121
110
92
104
116
104
122
111
91
103
115
103
123
112
90
102
114
102
124
113
89
101
113
101
125
114
88
100
112
100
126
127
126
125
124
123
122
121
120
119
118
117
116
115
87
99
111
99
127
128
129
130
131
132
133
133
132
131
130
129
128
86
98
110
98
85
97
109
97
84
96
108
96
83
95
107
95
82
94
106
94
81
82
83
84
85
86
87
88
89
90
91
92
93
105
104
103
102
101
100
99
98
97
96
95
94
93
80
92
104
92
79
91
103
91
78
90
102
90
77
89
101
89
76
88
100
88
75
87
99
87
98
97
96
95
94
93
92
91
90
89
88
87
86
74
86
98
86
98
99
100
101
102
103
104
104
103
102
101
100
99
85
73
85
97
85
97
84
72
84
96
84
96
83
71
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
83
95
82
70
70
82
82
94
81
69
69
81
81
93
80
68
68
80
80
92
79
78
77
76
75
74
73
72
71
70
69
68
67
67
79
79
80
81
82
83
84
85
86
87
88
89
90
91
78
66
66
78
78
90
77
65
65
77
77
89
76
64
64
76
76
88
75
63
63
75
75
87
74
62
62
74
74
86
73
61
61
73
73
85
72
60
60
72
72
84
71
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
83
70
46
60
72
58
82
69
45
61
73
57
81
68
44
62
74
56
80
67
43
63
75
55
79
66
42
64
76
54
78
65
41
65
77
53
77
64
40
66
78
52
76
63
39
67
79
51
75
62
38
68
80
50
74
61
37
69
81
49
73
60
36
70
82
48
72
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
40
39
38
37
36
35
71
72
73
74
75
76
77
78
79
80
81
82
83
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
68
48
34
46
60
80
67
49
33
45
61
81
66
50
32
44
62
82
65
51
31
43
63
83
64
52
30
42
64
84
63
53
29
41
65
85
62
54
28
40
66
86
61
55
27
39
67
87
60
56
26
38
68
88
59
55
25
37
69
89
58
54
24
36
70
90
57
45
46
47
48
49
50
51
52
53
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
71
72
73
74
75
76
77
78
79
91
56
44
10
24
78
90
55
43
9
25
77
89
54
42
8
26
76
88
53
41
7
27
75
87
52
40
6
28
74
86
51
39
5
29
73
85
50
38
4
30
72
84
49
37
3
31
71
83
48
36
2
32
70
82
47
35
1
33
69
81
46
34
0
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
166
178
182
170
166
154
165
177
181
169
165
153
164
176
180
168
164
152
163
175
179
167
163
151
162
174
178
166
162
150
161
173
177
165
161
149
160
172
176
164
160
148
159
171
175
163
159
147
158
170
174
162
158
146
157
169
173
161
157
145
156
168
172
160
156
144
155
167
171
159
158
157
156
155
154
153
152
151
150
149
148
147
159
155
143
154
166
170
158
146
158
154
142
153
165
169
157
145
157
153
141
152
164
168
156
144
156
152
140
151
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
155
143
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
139
150
154
166
154
142
154
142
138
149
153
165
153
141
153
141
137
148
152
164
152
140
152
140
136
147
151
163
151
139
151
139
135
146
150
162
150
138
150
138
134
145
149
161
149
137
149
137
133
144
148
160
148
136
148
136
132
143
147
159
147
135
147
135
131
142
146
158
146
134
146
134
130
141
145
157
145
133
145
133
129
140
144
156
144
132
144
132
128
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
155
154
153
152
151
150
149
148
147
146
145
144
143
131
132
133
134
135
136
137
138
139
140
141
142
143
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
130
142
130
118
129
141
129
117
128
140
128
116
127
139
127
115
126
138
126
114
125
137
125
113
124
136
124
112
123
135
123
111
122
134
122
110
121
133
121
109
120
132
120
108
119
118
117
116
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
126
127
128
129
130
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
104
105
106
107
120
106
118
106
94
108
121
105
117
105
93
109
122
104
116
104
92
110
123
103
115
103
91
111
124
102
114
102
90
112
125
101
113
101
89
113
126
100
112
100
88
114
128
129
130
131
132
133
133
132
131
130
129
128
127
99
111
99
87
115
116
117
118
119
120
121
122
123
124
125
126
127
98
110
98
86
97
109
97
85
96
108
96
84
95
107
95
83
94
106
94
82
93
94
95
96
97
98
99
100
101
102
103
104
105
93
92
91
90
89
88
87
86
85
84
83
82
81
92
104
92
80
91
103
91
79
90
102
90
78
89
101
89
77
88
100
88
76
87
99
87
75
99
100
101
102
103
104
104
103
102
101
100
99
98
86
98
86
74
86
87
88
89
90
91
92
93
94
95
96
97
98
97
85
97
85
73
85
96
84
96
84
72
84
95
83
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
71
83
94
82
82
70
70
82
93
81
81
69
69
81
92
80
80
68
68
80
91
90
89
88
87
86
85
84
83
82
81
80
79
79
67
67
68
69
70
71
72
73
74
75
76
77
78
79
90
78
78
66
66
78
89
77
77
65
65
77
88
76
76
64
64
76
87
75
75
63
63
75
86
74
74
62
62
74
85
73
73
61
61
73
84
72
72
60
60
72
83
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
71
82
58
72
60
46
70
81
57
73
61
45
69
80
56
74
62
44
68
79
55
75
63
43
67
78
54
76
64
42
66
77
53
77
65
41
65
76
52
78
66
40
64
75
51
79
67
39
63
74
50
80
68
38
62
73
49
81
69
37
61
72
48
82
70
36
60
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
83
82
81
80
79
78
77
76
75
74
73
72
71
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
80
60
46
34
48
68
81
61
45
33
49
67
82
62
44
32
50
66
83
63
43
31
51
65
84
64
42
30
52
64
85
65
41
29
53
63
86
66
40
28
54
62
87
67
39
27
55
61
88
68
38
26
56
60
89
69
37
25
55
59
90
70
36
24
54
58
91
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
12
13
14
15
16
17
18
19
20
21
22
23
53
52
51
50
49
48
47
46
45
57
90
78
24
10
44
56
89
77
25
9
43
55
88
76
26
8
42
54
87
75
27
7
41
53
86
74
28
6
40
52
85
73
29
5
39
51
84
72
30
4
38
50
83
71
31
3
37
49
82
70
32
2
36
48
81
69
33
1
35
47
80
68
34
0
199
200
201
202
203
204
205
206
207
208
209
210
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
198
210
190
178
174
162
197
209
189
177
173
161
196
208
188
176
172
160
195
207
187
175
171
159
194
206
186
174
170
158
193
205
185
173
169
157
192
204
184
172
168
156
191
203
183
171
167
155
190
202
182
170
166
154
189
201
181
169
165
153
188
200
180
168
164
152
187
199
179
167
166
165
164
163
162
161
160
159
158
157
156
155
167
163
151
186
198
178
166
154
166
162
150
185
197
177
165
153
165
161
149
184
196
176
164
152
164
160
148
183
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
163
151
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
147
182
186
174
162
150
162
150
146
181
185
173
161
149
161
149
145
180
184
172
160
148
160
148
144
179
183
171
159
147
159
147
143
178
182
170
158
146
158
146
142
177
181
169
157
145
157
145
141
176
180
168
156
144
156
144
140
175
179
167
155
143
155
143
139
174
178
166
154
142
154
142
138
173
177
165
153
141
153
141
137
172
176
164
152
140
152
140
136
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
163
162
161
160
159
158
157
156
155
154
153
152
151
139
140
141
142
143
144
145
146
147
148
149
150
151
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
162
150
138
126
161
149
137
125
160
148
136
124
159
147
135
123
158
146
134
122
157
145
133
121
156
144
132
120
155
143
131
119
154
142
130
118
153
141
129
117
152
140
128
116
151
150
149
148
147
146
145
144
143
142
141
140
139
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
152
138
126
114
102
116
153
137
125
113
101
117
153
136
124
112
100
118
152
135
123
111
99
119
151
134
122
110
98
120
150
133
121
109
97
121
149
132
120
108
96
122
136
137
138
139
140
141
142
143
144
145
146
147
148
131
119
107
95
123
124
125
126
127
128
129
130
131
132
133
134
135
130
118
106
94
129
117
105
93
128
116
104
92
127
115
103
91
126
114
102
90
125
124
123
122
121
120
119
118
117
116
115
114
113
101
100
99
98
97
96
95
94
93
92
91
90
89
126
112
100
88
125
111
99
87
124
110
98
86
123
109
97
85
122
108
96
84
121
107
95
83
83
84
85
86
87
88
89
90
91
92
93
94
95
120
106
94
82
70
71
72
73
74
75
76
77
78
79
80
81
82
96
119
105
93
81
69
97
118
104
92
80
68
98
117
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
79
67
99
116
92
78
78
66
100
115
93
77
77
65
101
114
94
76
76
64
102
103
104
105
106
107
108
109
110
111
112
113
113
95
75
75
74
73
72
71
70
69
68
67
66
65
64
63
103
112
96
74
74
62
104
111
97
73
73
61
105
110
98
72
72
60
106
109
99
71
71
59
107
108
100
70
70
58
108
107
101
69
69
57
109
106
102
68
68
56
110
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
103
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
55
111
92
102
68
54
54
112
91
101
69
53
53
113
90
100
70
52
52
113
89
99
71
51
51
112
88
98
72
50
50
111
87
97
73
49
49
110
86
96
74
48
48
109
85
95
75
47
47
108
84
94
76
46
46
107
83
93
77
45
45
106
82
92
78
44
44
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
91
90
89
88
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
114
94
80
44
30
36
115
95
79
45
29
35
116
96
78
46
28
34
117
97
77
47
27
33
118
98
76
48
26
32
119
99
75
49
25
31
120
100
74
50
24
30
121
101
73
51
23
29
122
102
72
52
22
28
123
103
71
53
21
27
124
104
70
54
20
26
125
113
112
111
110
109
108
107
106
105
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
46
47
48
49
50
51
52
53
54
55
56
55
19
18
17
16
15
14
13
12
11
25
124
112
58
44
10
24
123
111
59
43
9
23
122
110
60
42
8
22
121
109
61
41
7
21
120
108
62
40
6
20
119
107
63
39
5
19
118
106
64
38
4
18
117
105
65
37
3
17
116
104
66
36
2
16
115
103
67
35
1
15
114
102
68
34
0
190
191
192
193
194
195
196
197
198
199
200
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
151
189
198
178
166
162
150
188
197
177
165
161
149
187
196
176
164
160
148
186
195
175
163
159
147
185
194
174
162
158
146
184
193
173
161
157
145
183
192
172
160
156
144
182
191
171
159
155
143
181
190
170
158
154
142
180
189
169
157
153
141
179
188
168
156
152
140
178
187
167
155
154
153
152
151
150
149
148
147
146
145
144
143
155
151
139
177
186
166
154
142
154
150
138
176
185
165
153
141
153
149
137
175
184
164
152
140
152
148
136
174
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
151
139
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
135
173
176
162
150
138
150
138
134
172
176
161
149
137
149
137
133
171
175
160
148
136
148
136
132
170
174
159
147
135
147
135
131
169
173
158
146
134
146
134
130
168
172
157
145
133
145
133
129
167
171
156
144
132
144
132
128
166
170
155
143
131
143
131
127
165
169
154
142
130
142
130
126
164
168
153
141
129
141
129
125
163
167
152
140
128
140
128
124
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
151
150
149
148
147
146
145
144
143
142
141
140
139
127
128
129
130
131
132
133
134
135
136
137
138
139
127
126
125
124
123
122
121
120
119
118
117
116
115
116
117
118
119
120
121
122
123
153
138
126
114
152
137
125
113
151
136
124
112
150
135
123
111
149
134
122
110
148
133
121
109
147
132
120
108
146
131
119
107
145
130
118
106
144
129
117
105
143
128
116
104
142
141
140
139
138
137
136
135
134
133
132
131
130
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
91
92
93
94
95
96
97
98
99
100
101
102
103
143
129
138
102
90
104
142
128
137
101
89
105
141
127
136
100
88
106
140
126
135
99
87
107
139
125
134
98
86
108
138
124
133
97
85
109
137
123
132
96
84
110
124
125
126
127
128
129
130
131
132
133
134
135
136
122
131
95
83
111
112
113
114
115
116
117
118
119
120
121
122
123
121
130
94
82
120
129
93
81
119
128
92
80
118
127
91
79
117
126
90
78
116
117
118
119
120
121
122
123
124
125
126
126
125
89
88
87
86
85
84
83
82
81
80
79
78
77
115
124
90
76
114
123
91
75
113
122
92
74
112
121
93
73
111
120
94
72
110
119
95
71
71
72
73
74
75
76
77
78
79
80
81
82
83
109
118
96
70
58
59
60
61
62
63
64
65
66
67
68
69
70
84
108
117
97
69
57
85
107
116
98
68
56
86
106
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
100
99
67
55
87
105
104
90
66
54
88
104
105
89
65
53
89
103
106
88
64
52
90
91
92
93
94
95
96
97
98
99
100
101
102
107
87
63
62
61
60
59
58
57
56
55
54
53
52
51
91
103
108
86
64
50
92
104
109
85
65
49
93
105
110
84
66
48
94
106
111
83
67
47
95
107
112
82
68
46
96
108
113
81
69
45
97
109
114
80
70
44
98
110
111
112
113
113
112
111
110
109
108
107
106
105
106
107
108
109
110
111
112
113
114
115
116
115
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
74
73
72
71
43
99
104
114
80
66
42
100
103
113
81
65
41
101
102
112
82
64
40
102
101
111
83
63
39
103
100
110
84
62
38
104
99
109
85
61
37
105
98
108
86
60
36
106
97
107
87
59
35
107
96
106
88
58
34
108
95
105
89
57
33
109
94
104
90
56
32
118
117
116
115
114
113
112
111
110
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
103
102
101
100
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
119
106
92
56
44
22
120
107
91
57
43
21
121
108
90
58
42
20
122
109
89
59
41
19
123
110
88
60
40
18
124
111
87
61
39
17
125
112
86
62
38
16
126
113
85
63
37
15
127
114
84
64
36
14
128
115
83
65
35
13
129
116
82
66
34
12
130
125
124
123
122
121
120
119
118
117
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
67
33
32
31
30
29
28
27
26
25
11
131
124
70
56
24
10
132
123
71
55
23
9
133
122
72
54
22
8
133
121
73
53
21
7
132
120
74
52
20
6
131
119
75
51
19
5
130
118
76
50
18
4
129
117
77
49
17
3
128
116
78
48
16
2
127
115
79
47
15
1
126
114
80
46
14
0
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
201
200
199
198
197
196
195
194
193
192
191
151
163
167
179
199
190
150
162
166
178
198
189
149
161
165
177
197
188
148
160
164
176
196
187
147
159
163
175
195
186
146
158
162
174
194
185
145
157
161
173
193
184
144
156
160
172
192
183
143
155
159
171
191
182
142
154
158
170
190
181
141
153
157
169
189
180
140
152
156
144
145
146
147
148
149
150
151
152
153
154
155
156
168
188
179
139
151
155
143
155
167
187
178
138
150
154
142
154
166
186
177
137
149
153
141
153
165
185
176
136
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
140
152
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
175
135
139
151
139
151
163
177
174
134
138
150
138
150
162
177
173
133
137
149
137
149
161
176
172
132
136
148
136
148
160
175
171
131
135
147
135
147
159
174
170
130
134
146
134
146
158
173
169
129
133
145
133
145
157
172
168
128
132
144
132
144
156
171
167
127
131
143
131
143
155
170
166
126
130
142
130
142
154
169
165
125
129
141
129
141
153
168
164
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
125
126
127
128
140
139
138
137
136
135
134
133
132
131
130
129
128
140
141
142
143
144
145
146
147
148
149
150
151
152
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
115
127
139
154
114
126
138
153
113
125
137
152
112
124
136
151
111
123
135
150
110
122
134
149
109
121
133
148
108
120
132
147
107
119
131
146
106
118
130
145
105
117
129
144
104
103
102
101
100
99
98
97
96
95
94
93
92
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
131
132
133
134
135
136
137
138
139
140
141
142
143
105
91
103
139
130
144
106
90
102
138
129
143
107
89
101
137
128
142
108
88
100
136
127
141
109
87
99
135
126
140
110
86
98
134
125
139
111
85
97
133
124
138
124
123
122
121
120
119
118
117
116
115
114
113
112
84
96
132
123
137
136
135
134
133
132
131
130
129
128
127
126
125
83
95
131
122
82
94
130
121
81
93
129
120
80
92
128
119
79
91
127
118
78
79
80
81
82
83
84
85
86
87
88
89
90
126
127
127
126
125
124
123
122
121
120
119
118
117
77
91
125
116
76
92
124
115
75
93
123
114
74
94
122
113
73
95
121
112
72
96
120
111
71
70
69
68
67
66
65
64
63
62
61
60
59
71
97
119
110
84
83
82
81
80
79
78
77
76
75
74
73
72
58
70
98
118
109
85
57
69
99
117
108
86
56
68
100
101
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
107
87
55
67
91
105
106
88
54
66
90
106
105
89
53
65
89
107
104
90
52
53
54
55
56
57
58
59
60
61
62
63
64
88
108
103
102
101
100
99
98
97
96
95
94
93
92
91
51
65
87
109
104
92
50
66
86
110
105
93
49
67
85
111
106
94
48
68
84
112
107
95
47
69
83
113
108
96
46
70
82
114
109
97
45
71
81
115
110
98
44
72
73
74
75
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
116
115
114
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
113
112
111
99
43
67
81
115
103
100
42
66
82
114
102
101
41
65
83
113
101
102
40
64
84
112
100
103
39
63
85
111
99
104
38
62
86
110
98
105
37
61
87
109
97
106
36
60
88
108
96
107
35
59
89
107
95
108
34
58
90
106
94
109
33
57
91
105
93
110
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
92
93
94
95
96
97
98
99
100
101
102
103
104
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
111
112
113
114
115
116
117
118
119
23
43
57
91
105
120
22
42
58
90
106
121
21
41
59
89
107
122
20
40
60
88
108
123
19
39
61
87
109
124
18
38
62
86
110
125
17
37
63
85
111
126
16
36
64
84
112
127
15
35
65
83
113
128
14
34
66
82
114
129
13
33
67
81
115
130
12
24
25
26
27
28
29
30
31
32
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
116
117
118
119
120
121
122
123
124
131
11
23
55
69
123
132
10
22
54
70
122
133
9
21
53
71
121
133
8
20
52
72
120
132
7
19
51
73
119
131
6
18
50
74
118
130
5
17
49
75
117
129
4
16
48
76
116
128
3
15
47
77
115
127
2
14
46
78
114
126
1
13
45
79
113
125
0
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
202
201
200
199
198
197
196
195
194
193
192
152
164
168
180
200
191
151
163
167
179
199
190
150
162
166
178
198
189
149
161
165
177
197
188
148
160
164
176
196
187
147
159
163
175
195
186
146
158
162
174
194
185
145
157
161
173
193
184
144
156
160
172
192
183
143
155
159
171
191
182
142
154
158
170
190
181
141
153
157
145
146
147
148
149
150
151
152
153
154
155
156
157
169
189
180
140
152
156
144
156
168
188
179
139
151
155
143
155
167
187
178
138
150
154
142
154
166
186
177
137
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
141
153
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
176
136
140
152
140
152
164
178
175
135
139
151
139
151
163
178
174
134
138
150
138
150
162
177
173
133
137
149
137
149
161
176
172
132
136
148
136
148
160
175
171
131
135
147
135
147
159
174
170
130
134
146
134
146
158
173
169
129
133
145
133
145
157
172
168
128
132
144
132
144
156
171
167
127
131
143
131
143
155
170
166
126
130
142
130
142
154
169
165
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
126
127
128
129
141
140
139
138
137
136
135
134
133
132
131
130
129
141
142
143
144
145
146
147
148
149
150
151
152
153
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
116
128
140
155
115
127
139
154
114
126
138
153
113
125
137
152
112
124
136
151
111
123
135
150
110
122
134
149
109
121
133
148
108
120
132
147
107
119
131
146
106
118
130
145
105
104
103
102
101
100
99
98
97
96
95
94
93
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
132
133
134
135
136
137
138
139
140
141
142
143
144
106
92
104
138
131
145
107
91
103
137
130
144
108
90
102
136
129
143
109
89
101
135
128
142
110
88
100
134
127
141
111
87
99
133
126
140
112
86
98
132
125
139
125
124
123
122
121
120
119
118
117
116
115
114
113
85
97
131
124
138
137
136
135
134
133
132
131
130
129
128
127
126
84
96
130
123
83
95
129
122
82
94
128
121
81
93
127
120
80
92
126
119
79
80
81
82
83
84
85
86
87
88
89
90
91
125
126
127
127
126
125
124
123
122
121
120
119
118
78
92
124
117
77
93
123
116
76
94
122
115
75
95
121
114
74
96
120
113
73
97
119
112
72
71
70
69
68
67
66
65
64
63
62
61
60
72
98
118
111
85
84
83
82
81
80
79
78
77
76
75
74
73
59
71
99
117
110
86
58
70
100
116
109
87
57
69
101
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
108
88
56
68
90
104
107
89
55
67
89
105
106
90
54
66
88
106
105
91
53
54
55
56
57
58
59
60
61
62
63
64
65
87
107
104
103
102
101
100
99
98
97
96
95
94
93
92
52
66
86
108
105
93
51
67
85
109
106
94
50
68
84
110
107
95
49
69
83
111
108
96
48
70
82
112
109
97
47
71
81
113
110
98
46
72
80
114
111
99
45
73
74
75
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
115
114
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
113
112
100
44
66
80
114
102
101
43
65
81
113
101
102
42
64
82
112
100
103
41
63
83
111
99
104
40
62
84
110
98
105
39
61
85
109
97
106
38
60
86
108
96
107
37
59
87
107
95
108
36
58
88
106
94
109
35
57
89
105
93
110
34
56
90
104
92
111
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
94
95
96
97
98
99
100
101
102
103
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
112
113
114
115
116
117
118
119
120
24
42
56
90
104
121
23
41
57
89
105
122
22
40
58
88
106
123
21
39
59
87
107
124
20
38
60
86
108
125
19
37
61
85
109
126
18
36
62
84
110
127
17
35
63
83
111
128
16
34
64
82
112
129
15
33
65
81
113
130
14
32
66
80
114
131
13
23
24
25
26
27
28
29
30
31
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
115
116
117
118
119
120
121
122
123
132
12
22
54
68
122
133
11
21
53
69
121
133
10
20
52
70
120
132
9
19
51
71
119
131
8
18
50
72
118
130
7
17
49
73
117
129
6
16
48
74
116
128
5
15
47
75
115
127
4
14
46
76
114
126
3
13
45
77
113
125
2
12
44
78
112
124
1
0
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
203
202
201
200
199
198
197
196
195
194
193
153
165
169
181
201
192
152
164
168
180
200
191
151
163
167
179
199
190
150
162
166
178
198
189
149
161
165
177
197
188
148
160
164
176
196
187
147
159
163
175
195
186
146
158
162
174
194
185
145
157
161
173
193
184
144
156
160
172
192
183
143
155
159
171
191
182
142
154
158
146
147
148
149
150
151
152
153
154
155
156
157
158
170
190
181
141
153
157
145
157
169
189
180
140
152
156
144
156
168
188
179
139
151
155
143
155
167
187
178
138
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
142
154
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
177
137
141
153
141
153
165
179
176
136
140
152
140
152
164
179
175
135
139
151
139
151
163
178
174
134
138
150
138
150
162
177
173
133
137
149
137
149
161
176
172
132
136
148
136
148
160
175
171
131
135
147
135
147
159
174
170
130
134
146
134
146
158
173
169
129
133
145
133
145
157
172
168
128
132
144
132
144
156
171
167
127
131
143
131
143
155
170
166
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
127
128
129
130
142
141
140
139
138
137
136
135
134
133
132
131
130
142
143
144
145
146
147
148
149
150
151
152
153
154
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
117
129
141
156
116
128
140
155
115
127
139
154
114
126
138
153
113
125
137
152
112
124
136
151
111
123
135
150
110
122
134
149
109
121
133
148
108
120
132
147
107
119
131
146
106
105
104
103
102
101
100
99
98
97
96
95
94
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
133
134
135
136
137
138
139
140
141
142
143
144
145
107
93
105
137
132
146
108
92
104
136
131
145
109
91
103
135
130
144
110
90
102
134
129
143
111
89
101
133
128
142
112
88
100
132
127
141
113
87
99
131
126
140
126
125
124
123
122
121
120
119
118
117
116
115
114
86
98
130
125
139
138
137
136
135
134
133
132
131
130
129
128
127
85
97
129
124
84
96
128
123
83
95
127
122
82
94
126
121
81
93
125
120
80
81
82
83
84
85
86
87
88
89
90
91
92
124
125
126
127
127
126
125
124
123
122
121
120
119
79
93
123
118
78
94
122
117
77
95
121
116
76
96
120
115
75
97
119
114
74
98
118
113
73
72
71
70
69
68
67
66
65
64
63
62
61
73
99
117
112
86
85
84
83
82
81
80
79
78
77
76
75
74
60
72
100
116
111
87
59
71
101
115
110
88
58
70
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
109
89
57
69
89
103
108
90
56
68
88
104
107
91
55
67
87
105
106
92
54
55
56
57
58
59
60
61
62
63
64
65
66
86
106
105
104
103
102
101
100
99
98
97
96
95
94
93
53
67
85
107
106
94
52
68
84
108
107
95
51
69
83
109
108
96
50
70
82
110
109
97
49
71
81
111
110
98
48
72
80
112
111
99
47
73
79
113
112
100
46
74
75
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
114
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
113
101
45
65
79
113
101
102
44
64
80
112
100
103
43
63
81
111
99
104
42
62
82
110
98
105
41
61
83
109
97
106
40
60
84
108
96
107
39
59
85
107
95
108
38
58
86
106
94
109
37
57
87
105
93
110
36
56
88
104
92
111
35
55
89
103
91
112
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
94
95
96
97
98
99
100
101
102
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
113
114
115
116
117
118
119
120
121
25
41
55
89
103
122
24
40
56
88
104
123
23
39
57
87
105
124
22
38
58
86
106
125
21
37
59
85
107
126
20
36
60
84
108
127
19
35
61
83
109
128
18
34
62
82
110
129
17
33
63
81
111
130
16
32
64
80
112
131
15
31
65
79
113
132
14
22
23
24
25
26
27
28
29
30
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
114
115
116
117
118
119
120
121
122
133
13
21
53
67
121
133
12
20
52
68
120
132
11
19
51
69
119
131
10
18
50
70
118
130
9
17
49
71
117
129
8
16
48
72
116
128
7
15
47
73
115
127
6
14
46
74
114
126
5
13
45
75
113
125
4
12
44
76
112
124
3
11
43
77
111
123
2
1
0
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
204
203
202
201
200
199
198
197
196
195
194
154
166
170
182
202
193
153
165
169
181
201
192
152
164
168
180
200
191
151
163
167
179
199
190
150
162
166
178
198
189
149
161
165
177
197
188
148
160
164
176
196
187
147
159
163
175
195
186
146
158
162
174
194
185
145
157
161
173
193
184
144
156
160
172
192
183
143
155
159
147
148
149
150
151
152
153
154
155
156
157
158
159
171
191
182
142
154
158
146
158
170
190
181
141
153
157
145
157
169
189
180
140
152
156
144
156
168
188
179
139
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
143
155
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
178
138
142
154
142
154
166
180
177
137
141
153
141
153
165
180
176
136
140
152
140
152
164
179
175
135
139
151
139
151
163
178
174
134
138
150
138
150
162
177
173
133
137
149
137
149
161
176
172
132
136
148
136
148
160
175
171
131
135
147
135
147
159
174
170
130
134
146
134
146
158
173
169
129
133
145
133
145
157
172
168
128
132
144
132
144
156
171
167
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
128
129
130
131
143
142
141
140
139
138
137
136
135
134
133
132
131
143
144
145
146
147
148
149
150
151
152
153
154
155
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
118
130
142
157
117
129
141
156
116
128
140
155
115
127
139
154
114
126
138
153
113
125
137
152
112
124
136
151
111
123
135
150
110
122
134
149
109
121
133
148
108
120
132
147
107
106
105
104
103
102
101
100
99
98
97
96
95
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
134
135
136
137
138
139
140
141
142
143
144
145
146
108
94
106
136
133
147
109
93
105
135
132
146
110
92
104
134
131
145
111
91
103
133
130
144
112
90
102
132
129
143
113
89
101
131
128
142
114
88
100
130
127
141
127
126
125
124
123
122
121
120
119
118
117
116
115
87
99
129
126
140
139
138
137
136
135
134
133
132
131
130
129
128
86
98
128
125
85
97
127
124
84
96
126
123
83
95
125
122
82
94
124
121
81
82
83
84
85
86
87
88
89
90
91
92
93
123
124
125
126
127
127
126
125
124
123
122
121
120
80
94
122
119
79
95
121
118
78
96
120
117
77
97
119
116
76
98
118
115
75
99
117
114
74
73
72
71
70
69
68
67
66
65
64
63
62
74
100
116
113
87
86
85
84
83
82
81
80
79
78
77
76
75
61
73
101
115
112
88
60
72
102
114
111
89
59
71
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
110
90
58
70
88
102
109
91
57
69
87
103
108
92
56
68
86
104
107
93
55
56
57
58
59
60
61
62
63
64
65
66
67
85
105
106
105
104
103
102
101
100
99
98
97
96
95
94
54
68
84
106
107
95
53
69
83
107
108
96
52
70
82
108
109
97
51
71
81
109
110
98
50
72
80
110
111
99
49
73
79
111
112
100
48
74
78
112
113
101
47
75
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
102
46
64
78
112
100
103
45
63
79
111
99
104
44
62
80
110
98
105
43
61
81
109
97
106
42
60
82
108
96
107
41
59
83
107
95
108
40
58
84
106
94
109
39
57
85
105
93
110
38
56
86
104
92
111
37
55
87
103
91
112
36
54
88
102
90
113
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
94
95
96
97
98
99
100
101
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
26
40
54
88
102
122
25
39
55
87
103
123
24
38
56
86
104
124
23
37
57
85
105
125
22
36
58
84
106
126
21
35
59
83
107
127
20
34
60
82
108
128
19
33
61
81
109
129
18
32
62
80
110
130
17
31
63
79
111
131
16
30
64
78
112
132
15
21
22
23
24
25
26
27
28
29
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
113
114
115
116
117
118
119
120
121
133
14
20
52
66
120
132
13
19
51
67
119
131
12
18
50
68
118
130
11
17
49
69
117
129
10
16
48
70
116
128
9
15
47
71
115
127
8
14
46
72
114
126
7
13
45
73
113
125
6
12
44
74
112
124
5
11
43
75
111
123
4
10
42
76
110
122
3
2
1
0
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
205
204
203
202
201
200
199
198
197
196
195
155
167
171
183
203
194
154
166
170
182
202
193
153
165
169
181
201
192
152
164
168
180
200
191
151
163
167
179
199
190
150
162
166
178
198
189
149
161
165
177
197
188
148
160
164
176
196
187
147
159
163
175
195
186
146
158
162
174
194
185
145
157
161
173
193
184
144
156
160
148
149
150
151
152
153
154
155
156
157
158
159
160
172
192
183
143
155
159
147
159
171
191
182
142
154
158
146
158
170
190
181
141
153
157
145
157
169
189
180
140
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
144
156
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
179
139
143
155
143
155
167
181
178
138
142
154
142
154
166
181
177
137
141
153
141
153
165
180
176
136
140
152
140
152
164
179
175
135
139
151
139
151
163
178
174
134
138
150
138
150
162
177
173
133
137
149
137
149
161
176
172
132
136
148
136
148
160
175
171
131
135
147
135
147
159
174
170
130
134
146
134
146
158
173
169
129
133
145
133
145
157
172
168
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
144
143
142
141
140
139
138
137
136
135
134
133
132
144
145
146
147
148
149
150
151
152
153
154
155
156
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
119
131
143
158
118
130
142
157
117
129
141
156
116
128
140
155
115
127
139
154
114
126
138
153
113
125
137
152
112
124
136
151
111
123
135
150
110
122
134
149
109
121
133
148
108
107
106
105
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
109
95
107
135
134
148
110
94
106
134
133
147
111
93
105
133
132
146
112
92
104
132
131
145
113
91
103
131
130
144
114
90
102
130
129
143
115
89
101
129
128
142
128
127
126
125
124
123
122
121
120
119
118
117
116
88
100
128
127
141
140
139
138
137
136
135
134
133
132
131
130
129
87
99
127
126
86
98
126
125
85
97
125
124
84
96
124
123
83
95
123
122
82
83
84
85
86
87
88
89
90
91
92
93
94
122
123
124
125
126
127
127
126
125
124
123
122
121
81
95
121
120
80
96
120
119
79
97
119
118
78
98
118
117
77
99
117
116
76
100
116
115
75
74
73
72
71
70
69
68
67
66
65
64
63
75
101
115
114
88
87
86
85
84
83
82
81
80
79
78
77
76
62
74
102
114
113
89
61
73
101
113
112
90
60
72
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
111
91
59
71
87
101
110
92
58
70
86
102
109
93
57
69
85
103
108
94
56
57
58
59
60
61
62
63
64
65
66
67
68
84
104
107
106
105
104
103
102
101
100
99
98
97
96
95
55
69
83
105
108
96
54
70
82
106
109
97
53
71
81
107
110
98
52
72
80
108
111
99
51
73
79
109
112
100
50
74
78
110
113
101
49
75
77
111
113
102
48
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
103
47
63
77
111
99
104
46
62
78
110
98
105
45
61
79
109
97
106
44
60
80
108
96
107
43
59
81
107
95
108
42
58
82
106
94
109
41
57
83
105
93
110
40
56
84
104
92
111
39
55
85
103
91
112
38
54
86
102
90
113
37
53
87
101
89
113
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
94
95
96
97
98
99
100
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
27
39
53
87
101
121
26
38
54
86
102
122
25
37
55
85
103
123
24
36
56
84
104
124
23
35
57
83
105
125
22
34
58
82
106
126
21
33
59
81
107
127
20
32
60
80
108
128
19
31
61
79
109
129
18
30
62
78
110
130
17
29
63
77
111
131
16
20
21
22
23
24
25
26
27
28
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
112
113
114
115
116
117
118
119
120
132
15
19
51
65
119
131
14
18
50
66
118
130
13
17
49
67
117
129
12
16
48
68
116
128
11
15
47
69
115
127
10
14
46
70
114
126
9
13
45
71
113
125
8
12
44
72
112
124
7
11
43
73
111
123
6
10
42
74
110
122
5
9
41
75
109
121
4
3
2
1
0
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
206
205
204
203
202
201
200
199
198
197
196
156
168
172
184
204
195
155
167
171
183
203
194
154
166
170
182
202
193
153
165
169
181
201
192
152
164
168
180
200
191
151
163
167
179
199
190
150
162
166
178
198
189
149
161
165
177
197
188
148
160
164
176
196
187
147
159
163
175
195
186
146
158
162
174
194
185
145
157
161
149
150
151
152
153
154
155
156
157
158
159
160
161
173
193
184
144
156
160
148
160
172
192
183
143
155
159
147
159
171
191
182
142
154
158
146
158
170
190
181
141
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
145
157
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
180
140
144
156
144
156
168
182
179
139
143
155
143
155
167
182
178
138
142
154
142
154
166
181
177
137
141
153
141
153
165
180
176
136
140
152
140
152
164
179
175
135
139
151
139
151
163
178
174
134
138
150
138
150
162
177
173
133
137
149
137
149
161
176
172
132
136
148
136
148
160
175
171
131
135
147
135
147
159
174
170
130
134
146
134
146
158
173
169
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
145
144
143
142
141
140
139
138
137
136
135
134
133
145
146
147
148
149
150
151
152
153
154
155
156
157
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
120
132
144
159
119
131
143
158
118
130
142
157
117
129
141
156
116
128
140
155
115
127
139
154
114
126
138
153
113
125
137
152
112
124
136
151
111
123
135
150
110
122
134
149
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
148
110
96
108
134
135
149
111
95
107
133
134
148
112
94
106
132
133
147
113
93
105
131
132
146
114
92
104
130
131
145
115
91
103
129
130
144
116
90
102
128
129
143
129
128
127
126
125
124
123
122
121
120
119
118
117
89
101
127
128
142
141
140
139
138
137
136
135
134
133
132
131
130
88
100
126
127
87
99
125
126
86
98
124
125
85
97
123
124
84
96
122
123
83
84
85
86
87
88
89
90
91
92
93
94
95
121
122
123
124
125
126
127
127
126
125
124
123
122
82
96
120
121
81
97
119
120
80
98
118
119
79
99
117
118
78
100
116
117
77
101
115
116
76
75
74
73
72
71
70
69
68
67
66
65
64
76
102
114
115
89
88
87
86
85
84
83
82
81
80
79
78
77
63
75
101
113
114
90
62
74
100
112
113
91
61
73
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
92
60
72
86
100
111
93
59
71
85
101
110
94
58
70
84
102
109
95
57
58
59
60
61
62
63
64
65
66
67
68
69
83
103
108
107
106
105
104
103
102
101
100
99
98
97
96
56
70
82
104
109
97
55
71
81
105
110
98
54
72
80
106
111
99
53
73
79
107
112
100
52
74
78
108
113
101
51
75
77
109
113
102
50
76
76
110
112
103
49
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
104
48
62
76
110
98
105
47
61
77
109
97
106
46
60
78
108
96
107
45
59
79
107
95
108
44
58
80
106
94
109
43
57
81
105
93
110
42
56
82
104
92
111
41
55
83
103
91
112
40
54
84
102
90
113
39
53
85
101
89
113
38
52
86
100
88
112
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
94
95
96
97
98
99
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
28
38
52
86
100
120
27
37
53
85
101
121
26
36
54
84
102
122
25
35
55
83
103
123
24
34
56
82
104
124
23
33
57
81
105
125
22
32
58
80
106
126
21
31
59
79
107
127
20
30
60
78
108
128
19
29
61
77
109
129
18
28
62
76
110
130
17
19
20
21
22
23
24
25
26
27
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
111
112
113
114
115
116
117
118
119
131
16
18
50
64
118
130
15
17
49
65
117
129
14
16
48
66
116
128
13
15
47
67
115
127
12
14
46
68
114
126
11
13
45
69
113
125
10
12
44
70
112
124
9
11
43
71
111
123
8
10
42
72
110
122
7
9
41
73
109
121
6
8
40
74
108
120
5
4
3
2
1
0
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
207
206
205
204
203
202
201
200
199
198
197
157
169
173
185
205
196
156
168
172
184
204
195
155
167
171
183
203
194
154
166
170
182
202
193
153
165
169
181
201
192
152
164
168
180
200
191
151
163
167
179
199
190
150
162
166
178
198
189
149
161
165
177
197
188
148
160
164
176
196
187
147
159
163
175
195
186
146
158
162
150
151
152
153
154
155
156
157
158
159
160
161
162
174
194
185
145
157
161
149
161
173
193
184
144
156
160
148
160
172
192
183
143
155
159
147
159
171
191
182
142
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
146
158
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
181
141
145
157
145
157
169
183
180
140
144
156
144
156
168
183
179
139
143
155
143
155
167
182
178
138
142
154
142
154
166
181
177
137
141
153
141
153
165
180
176
136
140
152
140
152
164
179
175
135
139
151
139
151
163
178
174
134
138
150
138
150
162
177
173
133
137
149
137
149
161
176
172
132
136
148
136
148
160
175
171
131
135
147
135
147
159
174
170
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
146
145
144
143
142
141
140
139
138
137
136
135
134
146
147
148
149
150
151
152
153
154
155
156
157
158
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
121
133
145
160
120
132
144
159
119
131
143
158
118
130
142
157
117
129
141
156
116
128
140
155
115
127
139
154
114
126
138
153
113
125
137
152
112
124
136
151
111
123
135
150
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
137
138
139
140
141
142
143
144
145
146
147
148
149
111
97
109
133
136
150
112
96
108
132
135
149
113
95
107
131
134
148
114
94
106
130
133
147
115
93
105
129
132
146
116
92
104
128
131
145
117
91
103
127
130
144
130
129
128
127
126
125
124
123
122
121
120
119
118
90
102
126
129
143
142
141
140
139
138
137
136
135
134
133
132
131
89
101
125
128
88
100
124
127
87
99
123
126
86
98
122
125
85
97
121
124
84
85
86
87
88
89
90
91
92
93
94
95
96
120
121
122
123
124
125
126
127
127
126
125
124
123
83
97
119
122
82
98
118
121
81
99
117
120
80
100
116
119
79
101
115
118
78
102
114
117
77
76
75
74
73
72
71
70
69
68
67
66
65
77
101
113
116
90
89
88
87
86
85
84
83
82
81
80
79
78
64
76
100
112
115
91
63
75
99
111
114
92
62
74
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
113
93
61
73
85
99
112
94
60
72
84
100
111
95
59
71
83
101
110
96
58
59
60
61
62
63
64
65
66
67
68
69
70
82
102
109
108
107
106
105
104
103
102
101
100
99
98
97
57
71
81
103
110
98
56
72
80
104
111
99
55
73
79
105
112
100
54
74
78
106
113
101
53
75
77
107
113
102
52
76
76
108
112
103
51
75
75
109
111
104
50
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
105
49
61
75
109
97
106
48
60
76
108
96
107
47
59
77
107
95
108
46
58
78
106
94
109
45
57
79
105
93
110
44
56
80
104
92
111
43
55
81
103
91
112
42
54
82
102
90
113
41
53
83
101
89
113
40
52
84
100
88
112
39
51
85
99
87
111
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
94
95
96
97
98
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
29
37
51
85
99
119
28
36
52
84
100
120
27
35
53
83
101
121
26
34
54
82
102
122
25
33
55
81
103
123
24
32
56
80
104
124
23
31
57
79
105
125
22
30
58
78
106
126
21
29
59
77
107
127
20
28
60
76
108
128
19
27
61
75
109
129
18
18
19
20
21
22
23
24
25
26
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
110
111
112
113
114
115
116
117
118
130
17
17
49
63
117
129
16
16
48
64
116
128
15
15
47
65
115
127
14
14
46
66
114
126
13
13
45
67
113
125
12
12
44
68
112
124
11
11
43
69
111
123
10
10
42
70
110
122
9
9
41
71
109
121
8
8
40
72
108
120
7
7
39
73
107
119
6
5
4
3
2
1
0
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
208
207
206
205
204
203
202
201
200
199
198
158
170
174
186
206
197
157
169
173
185
205
196
156
168
172
184
204
195
155
167
171
183
203
194
154
166
170
182
202
193
153
165
169
181
201
192
152
164
168
180
200
191
151
163
167
179
199
190
150
162
166
178
198
189
149
161
165
177
197
188
148
160
164
176
196
187
147
159
163
151
152
153
154
155
156
157
158
159
160
161
162
163
175
195
186
146
158
162
150
162
174
194
185
145
157
161
149
161
173
193
184
144
156
160
148
160
172
192
183
143
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
147
159
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
182
142
146
158
146
158
170
184
181
141
145
157
145
157
169
184
180
140
144
156
144
156
168
183
179
139
143
155
143
155
167
182
178
138
142
154
142
154
166
181
177
137
141
153
141
153
165
180
176
136
140
152
140
152
164
179
175
135
139
151
139
151
163
178
174
134
138
150
138
150
162
177
173
133
137
149
137
149
161
176
172
132
136
148
136
148
160
175
171
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
147
146
145
144
143
142
141
140
139
138
137
136
135
147
148
149
150
151
152
153
154
155
156
157
158
159
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
122
134
146
161
121
133
145
160
120
132
144
159
119
131
143
158
118
130
142
157
117
129
141
156
116
128
140
155
115
127
139
154
114
126
138
153
113
125
137
152
112
124
136
151
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
138
139
140
141
142
143
144
145
146
147
148
149
150
112
98
110
132
137
151
113
97
109
131
136
150
114
96
108
130
135
149
115
95
107
129
134
148
116
94
106
128
133
147
117
93
105
127
132
146
118
92
104
126
131
145
131
130
129
128
127
126
125
124
123
122
121
120
119
91
103
125
130
144
143
142
141
140
139
138
137
136
135
134
133
132
90
102
124
129
89
101
123
128
88
100
122
127
87
99
121
126
86
98
120
125
85
86
87
88
89
90
91
92
93
94
95
96
97
119
120
121
122
123
124
125
126
127
127
126
125
124
84
98
118
123
83
99
117
122
82
100
116
121
81
101
115
120
80
102
114
119
79
101
113
118
78
77
76
75
74
73
72
71
70
69
68
67
66
78
100
112
117
91
90
89
88
87
86
85
84
83
82
81
80
79
65
77
99
111
116
92
64
76
98
110
115
93
63
75
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
114
94
62
74
84
98
113
95
61
73
83
99
112
96
60
72
82
100
111
97
59
60
61
62
63
64
65
66
67
68
69
70
71
81
101
110
109
108
107
106
105
104
103
102
101
100
99
98
58
72
80
102
111
99
57
73
79
103
112
100
56
74
78
104
113
101
55
75
77
105
113
102
54
76
76
106
112
103
53
75
75
107
111
104
52
74
74
108
110
105
51
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
106
50
60
74
108
96
107
49
59
75
107
95
108
48
58
76
106
94
109
47
57
77
105
93
110
46
56
78
104
92
111
45
55
79
103
91
112
44
54
80
102
90
113
43
53
81
101
89
113
42
52
82
100
88
112
41
51
83
99
87
111
40
50
84
98
86
110
31
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
94
95
96
97
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
30
36
50
84
98
118
29
35
51
83
99
119
28
34
52
82
100
120
27
33
53
81
101
121
26
32
54
80
102
122
25
31
55
79
103
123
24
30
56
78
104
124
23
29
57
77
105
125
22
28
58
76
106
126
21
27
59
75
107
127
20
26
60
74
108
128
19
17
18
19
20
21
22
23
24
25
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
109
110
111
112
113
114
115
116
117
129
18
16
48
62
116
128
17
15
47
63
115
127
16
14
46
64
114
126
15
13
45
65
113
125
14
12
44
66
112
124
13
11
43
67
111
123
12
10
42
68
110
122
11
9
41
69
109
121
10
8
40
70
108
120
9
7
39
71
107
119
8
6
38
72
106
118
7
6
5
4
3
2
1
0
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
209
208
207
206
205
204
203
202
201
200
199
159
171
175
187
207
198
158
170
174
186
206
197
157
169
173
185
205
196
156
168
172
184
204
195
155
167
171
183
203
194
154
166
170
182
202
193
153
165
169
181
201
192
152
164
168
180
200
191
151
163
167
179
199
190
150
162
166
178
198
189
149
161
165
177
197
188
148
160
164
152
153
154
155
156
157
158
159
160
161
162
163
164
176
196
187
147
159
163
151
163
175
195
186
146
158
162
150
162
174
194
185
145
157
161
149
161
173
193
184
144
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
148
160
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
183
143
147
159
147
159
171
185
182
142
146
158
146
158
170
185
181
141
145
157
145
157
169
184
180
140
144
156
144
156
168
183
179
139
143
155
143
155
167
182
178
138
142
154
142
154
166
181
177
137
141
153
141
153
165
180
176
136
140
152
140
152
164
179
175
135
139
151
139
151
163
178
174
134
138
150
138
150
162
177
173
133
137
149
137
149
161
176
172
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
148
147
146
145
144
143
142
141
140
139
138
137
136
148
149
150
151
152
153
154
155
156
157
158
159
160
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
123
135
147
162
122
134
146
161
121
133
145
160
120
132
144
159
119
131
143
158
118
130
142
157
117
129
141
156
116
128
140
155
115
127
139
154
114
126
138
153
113
125
137
152
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
139
140
141
142
143
144
145
146
147
148
149
150
151
113
99
111
131
138
152
114
98
110
130
137
151
115
97
109
129
136
150
116
96
108
128
135
149
117
95
107
127
134
148
118
94
106
126
133
147
119
93
105
125
132
146
132
131
130
129
128
127
126
125
124
123
122
121
120
92
104
124
131
145
144
143
142
141
140
139
138
137
136
135
134
133
91
103
123
130
90
102
122
129
89
101
121
128
88
100
120
127
87
99
119
126
86
87
88
89
90
91
92
93
94
95
96
97
98
118
119
120
121
122
123
124
125
126
127
127
126
125
85
99
117
124
84
100
116
123
83
101
115
122
82
102
114
121
81
101
113
120
80
100
112
119
79
78
77
76
75
74
73
72
71
70
69
68
67
79
99
111
118
92
91
90
89
88
87
86
85
84
83
82
81
80
66
78
98
110
117
93
65
77
97
109
116
94
64
76
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
115
95
63
75
83
97
114
96
62
74
82
98
113
97
61
73
81
99
112
98
60
61
62
63
64
65
66
67
68
69
70
71
72
80
100
111
110
109
108
107
106
105
104
103
102
101
100
99
59
73
79
101
112
100
58
74
78
102
113
101
57
75
77
103
113
102
56
76
76
104
112
103
55
75
75
105
111
104
54
74
74
106
110
105
53
73
73
107
109
106
52
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
107
51
59
73
107
95
108
50
58
74
106
94
109
49
57
75
105
93
110
48
56
76
104
92
111
47
55
77
103
91
112
46
54
78
102
90
113
45
53
79
101
89
113
44
52
80
100
88
112
43
51
81
99
87
111
42
50
82
98
86
110
41
49
83
97
85
109
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
93
94
95
96
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
31
35
49
83
97
117
30
34
50
82
98
118
29
33
51
81
99
119
28
32
52
80
100
120
27
31
53
79
101
121
26
30
54
78
102
122
25
29
55
77
103
123
24
28
56
76
104
124
23
27
57
75
105
125
22
26
58
74
106
126
21
25
59
73
107
127
20
16
17
18
19
20
21
22
23
24
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
108
109
110
111
112
113
114
115
116
128
19
15
47
61
115
127
18
14
46
62
114
126
17
13
45
63
113
125
16
12
44
64
112
124
15
11
43
65
111
123
14
10
42
66
110
122
13
9
41
67
109
121
12
8
40
68
108
120
11
7
39
69
107
119
10
6
38
70
106
118
9
5
37
71
105
117
8
7
6
5
4
3
2
1
0
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
210
209
208
207
206
205
204
203
202
201
200
160
172
176
188
208
199
159
171
175
187
207
198
158
170
174
186
206
197
157
169
173
185
205
196
156
168
172
184
204
195
155
167
171
183
203
194
154
166
170
182
202
193
153
165
169
181
201
192
152
164
168
180
200
191
151
163
167
179
199
190
150
162
166
178
198
189
149
161
165
153
154
155
156
157
158
159
160
161
162
163
164
165
177
197
188
148
160
164
152
164
176
196
187
147
159
163
151
163
175
195
186
146
158
162
150
162
174
194
185
145
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
149
161
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
184
144
148
160
148
160
172
186
183
143
147
159
147
159
171
186
182
142
146
158
146
158
170
185
181
141
145
157
145
157
169
184
180
140
144
156
144
156
168
183
179
139
143
155
143
155
167
182
178
138
142
154
142
154
166
181
177
137
141
153
141
153
165
180
176
136
140
152
140
152
164
179
175
135
139
151
139
151
163
178
174
134
138
150
138
150
162
177
173
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
149
148
147
146
145
144
143
142
141
140
139
138
137
149
150
151
152
153
154
155
156
157
158
159
160
161
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
124
136
148
163
123
135
147
162
122
134
146
161
121
133
145
160
120
132
144
159
119
131
143
158
118
130
142
157
117
129
141
156
116
128
140
155
115
127
139
154
114
126
138
153
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
140
141
142
143
144
145
146
147
148
149
150
151
152
114
100
112
130
139
153
115
99
111
129
138
152
116
98
110
128
137
151
117
97
109
127
136
150
118
96
108
126
135
149
119
95
107
125
134
148
120
94
106
124
133
147
133
132
131
130
129
128
127
126
125
124
123
122
121
93
105
123
132
146
145
144
143
142
141
140
139
138
137
136
135
134
92
104
122
131
91
103
121
130
90
102
120
129
89
101
119
128
88
100
118
127
87
88
89
90
91
92
93
94
95
96
97
98
99
117
118
119
120
121
122
123
124
125
126
127
127
126
86
100
116
125
85
101
115
124
84
102
114
123
83
101
113
122
82
100
112
121
81
99
111
120
80
79
78
77
76
75
74
73
72
71
70
69
68
80
98
110
119
93
92
91
90
89
88
87
86
85
84
83
82
81
67
79
97
109
118
94
66
78
96
108
117
95
65
77
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
116
96
64
76
82
96
115
97
63
75
81
97
114
98
62
74
80
98
113
99
61
62
63
64
65
66
67
68
69
70
71
72
73
79
99
112
111
110
109
108
107
106
105
104
103
102
101
100
60
74
78
100
113
101
59
75
77
101
113
102
58
76
76
102
112
103
57
75
75
103
111
104
56
74
74
104
110
105
55
73
73
105
109
106
54
72
72
106
108
107
53
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
108
52
58
72
106
94
109
51
57
73
105
93
110
50
56
74
104
92
111
49
55
75
103
91
112
48
54
76
102
90
113
47
53
77
101
89
113
46
52
78
100
88
112
45
51
79
99
87
111
44
50
80
98
86
110
43
49
81
97
85
109
42
48
82
96
84
108
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
92
93
94
95
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
32
34
48
82
96
116
31
33
49
81
97
117
30
32
50
80
98
118
29
31
51
79
99
119
28
30
52
78
100
120
27
29
53
77
101
121
26
28
54
76
102
122
25
27
55
75
103
123
24
26
56
74
104
124
23
25
57
73
105
125
22
24
58
72
106
126
21
15
16
17
18
19
20
21
22
23
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
107
108
109
110
111
112
113
114
115
127
20
14
46
60
114
126
19
13
45
61
113
125
18
12
44
62
112
124
17
11
43
63
111
123
16
10
42
64
110
122
15
9
41
65
109
121
14
8
40
66
108
120
13
7
39
67
107
119
12
6
38
68
106
118
11
5
37
69
105
117
10
4
36
70
104
116
9
8
7
6
5
4
3
2
1
0
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
211
210
209
208
207
206
205
204
203
202
201
161
173
177
189
209
200
160
172
176
188
208
199
159
171
175
187
207
198
158
170
174
186
206
197
157
169
173
185
205
196
156
168
172
184
204
195
155
167
171
183
203
194
154
166
170
182
202
193
153
165
169
181
201
192
152
164
168
180
200
191
151
163
167
179
199
190
150
162
166
154
155
156
157
158
159
160
161
162
163
164
165
166
178
198
189
149
161
165
153
165
177
197
188
148
160
164
152
164
176
196
187
147
159
163
151
163
175
195
186
146
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
150
162
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
185
145
149
161
149
161
173
187
184
144
148
160
148
160
172
187
183
143
147
159
147
159
171
186
182
142
146
158
146
158
170
185
181
141
145
157
145
157
169
184
180
140
144
156
144
156
168
183
179
139
143
155
143
155
167
182
178
138
142
154
142
154
166
181
177
137
141
153
141
153
165
180
176
136
140
152
140
152
164
179
175
135
139
151
139
151
163
178
174
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
150
149
148
147
146
145
144
143
142
141
140
139
138
150
151
152
153
154
155
156
157
158
159
160
161
162
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
125
137
149
164
124
136
148
163
123
135
147
162
122
134
146
161
121
133
145
160
120
132
144
159
119
131
143
158
118
130
142
157
117
129
141
156
116
128
140
155
115
127
139
154
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
141
142
143
144
145
146
147
148
149
150
151
152
153
115
101
113
129
140
154
116
100
112
128
139
153
117
99
111
127
138
152
118
98
110
126
137
151
119
97
109
125
136
150
120
96
108
124
135
149
121
95
107
123
134
148
134
133
132
131
130
129
128
127
126
125
124
123
122
94
106
122
133
147
146
145
144
143
142
141
140
139
138
137
136
135
93
105
121
132
92
104
120
131
91
103
119
130
90
102
118
129
89
101
117
128
88
89
90
91
92
93
94
95
96
97
98
99
100
116
117
118
119
120
121
122
123
124
125
126
127
127
87
101
115
126
86
102
114
125
85
101
113
124
84
100
112
123
83
99
111
122
82
98
110
121
81
80
79
78
77
76
75
74
73
72
71
70
69
81
97
109
120
94
93
92
91
90
89
88
87
86
85
84
83
82
68
80
96
108
119
95
67
79
95
107
118
96
66
78
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
117
97
65
77
81
95
116
98
64
76
80
96
115
99
63
75
79
97
114
100
62
63
64
65
66
67
68
69
70
71
72
73
74
78
98
113
112
111
110
109
108
107
106
105
104
103
102
101
61
75
77
99
113
102
60
76
76
100
112
103
59
75
75
101
111
104
58
74
74
102
110
105
57
73
73
103
109
106
56
72
72
104
108
107
55
71
71
105
107
108
54
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
109
53
57
71
105
93
110
52
56
72
104
92
111
51
55
73
103
91
112
50
54
74
102
90
113
49
53
75
101
89
113
48
52
76
100
88
112
47
51
77
99
87
111
46
50
78
98
86
110
45
49
79
97
85
109
44
48
80
96
84
108
43
47
81
95
83
107
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
91
92
93
94
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
33
33
47
81
95
115
32
32
48
80
96
116
31
31
49
79
97
117
30
30
50
78
98
118
29
29
51
77
99
119
28
28
52
76
100
120
27
27
53
75
101
121
26
26
54
74
102
122
25
25
55
73
103
123
24
24
56
72
104
124
23
23
57
71
105
125
22
14
15
16
17
18
19
20
21
22
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
106
107
108
109
110
111
112
113
114
126
21
13
45
59
113
125
20
12
44
60
112
124
19
11
43
61
111
123
18
10
42
62
110
122
17
9
41
63
109
121
16
8
40
64
108
120
15
7
39
65
107
119
14
6
38
66
106
118
13
5
37
67
105
117
12
4
36
68
104
116
11
3
35
69
103
115
10
9
8
7
6
5
4
3
2
1
0
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
162
174
178
190
210
200
161
173
177
189
209
199
160
172
176
188
208
198
159
171
175
187
207
197
158
170
174
186
206
196
157
169
173
185
205
195
156
168
172
184
204
194
155
167
171
183
203
193
154
166
170
182
202
192
153
165
169
181
201
191
152
164
168
180
200
190
151
163
167
155
156
157
158
159
160
161
162
163
164
165
166
167
179
199
189
150
162
166
154
166
178
198
188
149
161
165
153
165
177
197
187
148
160
164
152
164
176
196
186
147
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
151
163
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
185
146
150
162
150
162
174
188
184
145
149
161
149
161
173
187
183
144
148
160
148
160
172
186
182
143
147
159
147
159
171
185
181
142
146
158
146
158
170
184
180
141
145
157
145
157
169
183
179
140
144
156
144
156
168
182
178
139
143
155
143
155
167
181
177
138
142
154
142
154
166
180
176
137
141
153
141
153
165
179
175
136
140
152
140
152
164
178
174
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
151
150
149
148
147
146
145
144
143
142
141
140
139
151
152
153
154
155
156
157
158
159
160
161
162
163
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
126
138
150
164
125
137
149
163
124
136
148
162
123
135
147
161
122
134
146
160
121
133
145
159
120
132
144
158
119
131
143
157
118
130
142
156
117
129
141
155
116
128
140
154
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
141
142
143
144
145
146
147
148
149
150
151
152
153
116
102
114
128
140
154
117
101
113
127
139
154
118
100
112
126
138
153
119
99
111
125
137
152
120
98
110
124
136
151
121
97
109
123
135
150
122
96
108
122
134
149
135
134
133
132
131
130
129
128
127
126
125
124
123
95
107
121
133
148
147
146
145
144
143
142
141
140
139
138
137
136
94
106
120
132
93
105
119
131
92
104
118
130
91
103
117
129
90
102
116
128
89
90
91
92
93
94
95
96
97
98
99
100
101
115
116
117
118
119
120
121
122
123
124
125
126
127
88
102
114
126
87
101
113
125
86
100
112
124
85
99
111
123
84
98
110
122
83
97
109
121
82
81
80
79
78
77
76
75
74
73
72
71
70
82
96
108
120
95
94
93
92
91
90
89
88
87
86
85
84
83
69
81
95
107
119
96
68
80
94
106
118
97
67
79
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
117
98
66
78
80
94
116
99
65
77
79
95
115
100
64
76
78
96
114
101
63
64
65
66
67
68
69
70
71
72
73
74
75
77
97
113
113
112
111
110
109
108
107
106
105
104
103
102
62
76
76
98
112
103
61
75
75
99
111
104
60
74
74
100
110
105
59
73
73
101
109
106
58
72
72
102
108
107
57
71
71
103
107
108
56
70
70
104
106
109
55
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
110
54
56
70
104
92
111
53
55
71
103
91
112
52
54
72
102
90
113
51
53
73
101
89
113
50
52
74
100
88
112
49
51
75
99
87
111
48
50
76
98
86
110
47
49
77
97
85
109
46
48
78
96
84
108
45
47
79
95
83
107
44
46
80
94
82
106
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
90
91
92
93
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
34
32
46
80
94
114
33
31
47
79
95
115
32
30
48
78
96
116
31
29
49
77
97
117
30
28
50
76
98
118
29
27
51
75
99
119
28
26
52
74
100
120
27
25
53
73
101
121
26
24
54
72
102
122
25
23
55
71
103
123
24
22
56
70
104
124
23
13
14
15
16
17
18
19
20
21
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
105
106
107
108
109
110
111
112
113
125
22
12
44
58
112
124
21
11
43
59
111
123
20
10
42
60
110
122
19
9
41
61
109
121
18
8
40
62
108
120
17
7
39
63
107
119
16
6
38
64
106
118
15
5
37
65
105
117
14
4
36
66
104
116
13
3
35
67
103
115
12
2
34
68
102
114
11
10
9
8
7
6
5
4
3
2
1
0
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
203
202
201
200
199
198
197
196
195
194
193
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
163
175
179
191
211
199
162
174
178
190
210
198
161
173
177
189
209
197
160
172
176
188
208
196
159
171
175
187
207
195
158
170
174
186
206
194
157
169
173
185
205
193
156
168
172
184
204
192
155
167
171
183
203
191
154
166
170
182
202
190
153
165
169
181
201
189
152
164
168
156
157
158
159
160
161
162
163
164
165
166
167
168
180
200
188
151
163
167
155
167
179
199
187
150
162
166
154
166
178
198
186
149
161
165
153
165
177
197
185
148
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
152
164
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
184
147
151
163
151
163
175
187
183
146
150
162
150
162
174
186
182
145
149
161
149
161
173
185
181
144
148
160
148
160
172
184
180
143
147
159
147
159
171
183
179
142
146
158
146
158
170
182
178
141
145
157
145
157
169
181
177
140
144
156
144
156
168
180
176
139
143
155
143
155
167
179
175
138
142
154
142
154
166
178
174
137
141
153
141
153
165
177
173
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
152
151
150
149
148
147
146
145
144
143
142
141
140
152
153
154
155
156
157
158
159
160
161
162
163
164
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
127
139
151
163
126
138
150
162
125
137
149
161
124
136
148
160
123
135
147
159
122
134
146
158
121
133
145
157
120
132
144
156
119
131
143
155
118
130
142
154
117
129
141
153
116
115
114
113
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
140
141
142
143
144
145
146
147
148
149
150
151
152
117
103
115
127
139
153
118
102
114
126
138
154
119
101
113
125
137
154
120
100
112
124
136
153
121
99
111
123
135
152
122
98
110
122
134
151
123
97
109
121
133
150
136
135
134
133
132
131
130
129
128
127
126
125
124
96
108
120
132
149
148
147
146
145
144
143
142
141
140
139
138
137
95
107
119
131
94
106
118
130
93
105
117
129
92
104
116
128
91
103
115
127
90
91
92
93
94
95
96
97
98
99
100
101
102
114
115
116
117
118
119
120
121
122
123
124
125
126
89
101
113
125
88
100
112
124
87
99
111
123
86
98
110
122
85
97
109
121
84
96
108
120
83
82
81
80
79
78
77
76
75
74
73
72
71
83
95
107
119
96
95
94
93
92
91
90
89
88
87
86
85
84
70
82
94
106
118
97
69
81
93
105
117
98
68
80
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
116
99
67
79
79
93
115
100
66
78
78
94
114
101
65
77
77
95
113
102
64
65
66
67
68
69
70
71
72
73
74
75
76
76
96
112
113
113
112
111
110
109
108
107
106
105
104
103
63
75
75
97
111
104
62
74
74
98
110
105
61
73
73
99
109
106
60
72
72
100
108
107
59
71
71
101
107
108
58
70
70
102
106
109
57
69
69
103
105
110
56
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
111
55
55
69
103
91
112
54
54
70
102
90
113
53
53
71
101
89
113
52
52
72
100
88
112
51
51
73
99
87
111
50
50
74
98
86
110
49
49
75
97
85
109
48
48
76
96
84
108
47
47
77
95
83
107
46
46
78
94
82
106
45
45
79
93
81
105
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
89
90
91
92
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
35
31
45
79
93
113
34
30
46
78
94
114
33
29
47
77
95
115
32
28
48
76
96
116
31
27
49
75
97
117
30
26
50
74
98
118
29
25
51
73
99
119
28
24
52
72
100
120
27
23
53
71
101
121
26
22
54
70
102
122
25
21
55
69
103
123
24
12
13
14
15
16
17
18
19
20
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
104
105
106
107
108
109
110
111
112
124
23
11
43
57
111
123
22
10
42
58
110
122
21
9
41
59
109
121
20
8
40
60
108
120
19
7
39
61
107
119
18
6
38
62
106
118
17
5
37
63
105
117
16
4
36
64
104
116
15
3
35
65
103
115
14
2
34
66
102
114
13
1
33
67
101
113
12
11
10
9
8
7
6
5
4
3
2
1
0
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
204
203
202
201
200
199
198
197
196
195
194
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
164
176
180
192
210
198
163
175
179
191
209
197
162
174
178
190
208
196
161
173
177
189
207
195
160
172
176
188
206
194
159
171
175
187
205
193
158
170
174
186
204
192
157
169
173
185
203
191
156
168
172
184
202
190
155
167
171
183
201
189
154
166
170
182
200
188
153
165
169
157
158
159
160
161
162
163
164
165
166
167
168
169
181
199
187
152
164
168
156
168
180
198
186
151
163
167
155
167
179
197
185
150
162
166
154
166
178
196
184
149
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
153
165
177
178
179
180
181
182
183
184
185
186
187
188
187
188
189
190
191
192
193
194
195
183
148
152
164
152
164
176
186
182
147
151
163
151
163
175
185
181
146
150
162
150
162
174
184
180
145
149
161
149
161
173
183
179
144
148
160
148
160
172
182
178
143
147
159
147
159
171
181
177
142
146
158
146
158
170
180
176
141
145
157
145
157
169
179
175
140
144
156
144
156
168
178
174
139
143
155
143
155
167
177
173
138
142
154
142
154
166
176
172
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
153
152
151
150
149
148
147
146
145
144
143
142
141
153
154
155
156
157
158
159
160
161
162
163
164
165
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
128
140
152
162
127
139
151
161
126
138
150
160
125
137
149
159
124
136
148
158
123
135
147
157
122
134
146
156
121
133
145
155
120
132
144
154
119
131
143
153
118
130
142
152
117
116
115
114
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
139
140
141
142
143
144
145
146
147
148
149
150
151
118
104
116
128
138
152
119
103
115
127
137
153
120
102
114
126
136
154
121
101
113
125
135
154
122
100
112
124
134
153
123
99
111
123
133
152
124
98
110
122
132
151
137
136
135
134
133
132
131
130
129
128
127
126
125
97
109
121
131
150
149
148
147
146
145
144
143
142
141
140
139
138
96
108
120
130
95
107
119
129
94
106
118
128
93
105
117
127
92
104
116
126
91
92
93
94
95
96
97
98
99
100
101
102
103
115
116
117
118
119
120
121
122
123
124
125
126
125
90
102
114
124
89
101
113
123
88
100
112
122
87
99
111
121
86
98
110
120
85
97
109
119
84
83
82
81
80
79
78
77
76
75
74
73
72
84
96
108
118
97
96
95
94
93
92
91
90
89
88
87
86
85
71
83
95
107
117
98
70
82
94
106
116
99
69
81
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
115
100
68
80
80
94
114
101
67
79
79
95
113
102
66
78
78
96
112
103
65
66
67
68
69
70
71
72
73
74
75
76
77
77
97
111
112
113
113
112
111
110
109
108
107
106
105
104
64
76
76
98
110
105
63
75
75
99
109
106
62
74
74
100
108
107
61
73
73
101
107
108
60
72
72
102
106
109
59
71
71
103
105
110
58
70
70
104
104
111
57
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
112
56
56
70
104
90
113
55
55
71
103
89
113
54
54
72
102
88
112
53
53
73
101
87
111
52
52
74
100
86
110
51
51
75
99
85
109
50
50
76
98
84
108
49
49
77
97
83
107
48
48
78
96
82
106
47
47
79
95
81
105
46
46
80
94
80
104
37
38
39
40
41
42
43
44
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
90
91
92
93
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
36
32
46
78
92
112
35
31
47
77
93
113
34
30
48
76
94
114
33
29
49
75
95
115
32
28
50
74
96
116
31
27
51
73
97
117
30
26
52
72
98
118
29
25
53
71
99
119
28
24
54
70
100
120
27
23
55
69
101
121
26
22
56
68
102
122
25
13
14
15
16
17
18
19
20
21
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
103
104
105
106
107
108
109
110
111
123
24
12
42
56
110
122
23
11
41
57
109
121
22
10
40
58
108
120
21
9
39
59
107
119
20
8
38
60
106
118
19
7
37
61
105
117
18
6
36
62
104
116
17
5
35
63
103
115
16
4
34
64
102
114
15
3
33
65
101
113
14
2
32
66
100
112
13
12
11
10
9
8
7
6
5
4
3
2
1
0
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
205
204
203
202
201
200
199
198
197
196
195
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
165
177
181
193
209
197
164
176
180
192
208
196
163
175
179
191
207
195
162
174
178
190
206
194
161
173
177
189
205
193
160
172
176
188
204
192
159
171
175
187
203
191
158
170
174
186
202
190
157
169
173
185
201
189
156
168
172
184
200
188
155
167
171
183
199
187
154
166
170
158
159
160
161
162
163
164
165
166
167
168
169
170
182
198
186
153
165
169
157
169
181
197
185
152
164
168
156
168
180
196
184
151
163
167
155
167
179
195
183
150
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
154
166
178
179
180
181
182
183
184
185
186
187
188
187
186
187
188
189
190
191
192
193
194
182
149
153
165
153
165
177
185
181
148
152
164
152
164
176
184
180
147
151
163
151
163
175
183
179
146
150
162
150
162
174
182
178
145
149
161
149
161
173
181
177
144
148
160
148
160
172
180
176
143
147
159
147
159
171
179
175
142
146
158
146
158
170
178
174
141
145
157
145
157
169
177
173
140
144
156
144
156
168
176
172
139
143
155
143
155
167
175
171
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
154
153
152
151
150
149
148
147
146
145
144
143
142
154
155
156
157
158
159
160
161
162
163
164
165
166
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
129
141
153
161
128
140
152
160
127
139
151
159
126
138
150
158
125
137
149
157
124
136
148
156
123
135
147
155
122
134
146
154
121
133
145
153
120
132
144
152
119
131
143
151
118
117
116
115
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
138
139
140
141
142
143
144
145
146
147
148
149
150
119
105
117
129
137
151
120
104
116
128
136
152
121
103
115
127
135
153
122
102
114
126
134
154
123
101
113
125
133
154
124
100
112
124
132
153
125
99
111
123
131
152
138
137
136
135
134
133
132
131
130
129
128
127
126
98
110
122
130
151
150
149
148
147
146
145
144
143
142
141
140
139
97
109
121
129
96
108
120
128
95
107
119
127
94
106
118
126
93
105
117
125
92
93
94
95
96
97
98
99
100
101
102
103
104
116
117
118
119
120
121
122
123
124
125
126
125
124
91
103
115
123
90
102
114
122
89
101
113
121
88
100
112
120
87
99
111
119
86
98
110
118
85
84
83
82
81
80
79
78
77
76
75
74
73
85
97
109
117
98
97
96
95
94
93
92
91
90
89
88
87
86
72
84
96
108
116
99
71
83
95
107
115
100
70
82
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
114
101
69
81
81
95
113
102
68
80
80
96
112
103
67
79
79
97
111
104
66
67
68
69
70
71
72
73
74
75
76
77
78
78
98
110
111
112
113
113
112
111
110
109
108
107
106
105
65
77
77
99
109
106
64
76
76
100
108
107
63
75
75
101
107
108
62
74
74
102
106
109
61
73
73
103
105
110
60
72
72
104
104
111
59
71
71
103
103
112
58
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
113
57
57
71
103
89
113
56
56
72
104
88
112
55
55
73
103
87
111
54
54
74
102
86
110
53
53
75
101
85
109
52
52
76
100
84
108
51
51
77
99
83
107
50
50
78
98
82
106
49
49
79
97
81
105
48
48
80
96
80
104
47
47
81
95
79
103
38
39
40
41
42
43
44
45
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
91
92
93
94
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
37
33
47
77
91
111
36
32
48
76
92
112
35
31
49
75
93
113
34
30
50
74
94
114
33
29
51
73
95
115
32
28
52
72
96
116
31
27
53
71
97
117
30
26
54
70
98
118
29
25
55
69
99
119
28
24
56
68
100
120
27
23
55
67
101
121
26
14
15
16
17
18
19
20
21
22
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
102
103
104
105
106
107
108
109
110
122
25
13
41
55
109
121
24
12
40
56
108
120
23
11
39
57
107
119
22
10
38
58
106
118
21
9
37
59
105
117
20
8
36
60
104
116
19
7
35
61
103
115
18
6
34
62
102
114
17
5
33
63
101
113
16
4
32
64
100
112
15
3
31
65
99
111
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
206
205
204
203
202
201
200
199
198
197
196
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
166
178
182
194
208
196
165
177
181
193
207
195
164
176
180
192
206
194
163
175
179
191
205
193
162
174
178
190
204
192
161
173
177
189
203
191
160
172
176
188
202
190
159
171
175
187
201
189
158
170
174
186
200
188
157
169
173
185
199
187
156
168
172
184
198
186
155
167
171
159
160
161
162
163
164
165
166
167
168
169
170
171
183
197
185
154
166
170
158
170
182
196
184
153
165
169
157
169
181
195
183
152
164
168
156
168
180
194
182
151
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
155
167
179
180
181
182
183
184
185
186
187
188
187
186
185
186
187
188
189
190
191
192
193
181
150
154
166
154
166
178
184
180
149
153
165
153
165
177
183
179
148
152
164
152
164
176
182
178
147
151
163
151
163
175
181
177
146
150
162
150
162
174
180
176
145
149
161
149
161
173
179
175
144
148
160
148
160
172
178
174
143
147
159
147
159
171
177
173
142
146
158
146
158
170
176
172
141
145
157
145
157
169
175
171
140
144
156
144
156
168
174
170
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
155
154
153
152
151
150
149
148
147
146
145
144
143
155
156
157
158
159
160
161
162
163
164
165
166
167
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
130
142
154
160
129
141
153
159
128
140
152
158
127
139
151
157
126
138
150
156
125
137
149
155
124
136
148
154
123
135
147
153
122
134
146
152
121
133
145
151
120
132
144
150
119
118
117
116
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
137
138
139
140
141
142
143
144
145
146
147
148
149
120
106
118
130
136
150
121
105
117
129
135
151
122
104
116
128
134
152
123
103
115
127
133
153
124
102
114
126
132
154
125
101
113
125
131
154
126
100
112
124
130
153
139
138
137
136
135
134
133
132
131
130
129
128
127
99
111
123
129
152
151
150
149
148
147
146
145
144
143
142
141
140
98
110
122
128
97
109
121
127
96
108
120
126
95
107
119
125
94
106
118
124
93
94
95
96
97
98
99
100
101
102
103
104
105
117
118
119
120
121
122
123
124
125
126
125
124
123
92
104
116
122
91
103
115
121
90
102
114
120
89
101
113
119
88
100
112
118
87
99
111
117
86
85
84
83
82
81
80
79
78
77
76
75
74
86
98
110
116
99
98
97
96
95
94
93
92
91
90
89
88
87
73
85
97
109
115
100
72
84
96
108
114
101
71
83
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
113
102
70
82
82
96
112
103
69
81
81
97
111
104
68
80
80
98
110
105
67
68
69
70
71
72
73
74
75
76
77
78
79
79
99
109
110
111
112
113
113
112
111
110
109
108
107
106
66
78
78
100
108
107
65
77
77
101
107
108
64
76
76
102
106
109
63
75
75
103
105
110
62
74
74
104
104
111
61
73
73
103
103
112
60
72
72
102
102
113
59
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
113
58
58
72
102
88
112
57
57
73
103
87
111
56
56
74
104
86
110
55
55
75
103
85
109
54
54
76
102
84
108
53
53
77
101
83
107
52
52
78
100
82
106
51
51
79
99
81
105
50
50
80
98
80
104
49
49
81
97
79
103
48
48
82
96
78
102
39
40
41
42
43
44
45
46
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
92
93
94
95
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
38
34
48
76
90
110
37
33
49
75
91
111
36
32
50
74
92
112
35
31
51
73
93
113
34
30
52
72
94
114
33
29
53
71
95
115
32
28
54
70
96
116
31
27
55
69
97
117
30
26
56
68
98
118
29
25
55
67
99
119
28
24
54
66
100
120
27
15
16
17
18
19
20
21
22
23
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
101
102
103
104
105
106
107
108
109
121
26
14
40
54
108
120
25
13
39
55
107
119
24
12
38
56
106
118
23
11
37
57
105
117
22
10
36
58
104
116
21
9
35
59
103
115
20
8
34
60
102
114
19
7
33
61
101
113
18
6
32
62
100
112
17
5
31
63
99
111
16
4
30
64
98
110
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
207
206
205
204
203
202
201
200
199
198
197
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
167
179
183
195
207
195
166
178
182
194
206
194
165
177
181
193
205
193
164
176
180
192
204
192
163
175
179
191
203
191
162
174
178
190
202
190
161
173
177
189
201
189
160
172
176
188
200
188
159
171
175
187
199
187
158
170
174
186
198
186
157
169
173
185
197
185
156
168
172
160
161
162
163
164
165
166
167
168
169
170
171
172
184
196
184
155
167
171
159
171
183
195
183
154
166
170
158
170
182
194
182
153
165
169
157
169
181
193
181
152
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
156
168
180
181
182
183
184
185
186
187
188
187
186
185
184
185
186
187
188
189
190
191
192
180
151
155
167
155
167
179
183
179
150
154
166
154
166
178
182
178
149
153
165
153
165
177
181
177
148
152
164
152
164
176
180
176
147
151
163
151
163
175
179
175
146
150
162
150
162
174
178
174
145
149
161
149
161
173
177
173
144
148
160
148
160
172
176
172
143
147
159
147
159
171
175
171
142
146
158
146
158
170
174
170
141
145
157
145
157
169
173
169
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
156
155
154
153
152
151
150
149
148
147
146
145
144
156
157
158
159
160
161
162
163
164
165
166
167
168
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
131
143
155
159
130
142
154
158
129
141
153
157
128
140
152
156
127
139
151
155
126
138
150
154
125
137
149
153
124
136
148
152
123
135
147
151
122
134
146
150
121
133
145
149
120
119
118
117
116
115
114
113
112
111
110
109
108
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
136
137
138
139
140
141
142
143
144
145
146
147
148
121
107
119
131
135
149
122
106
118
130
134
150
123
105
117
129
133
151
124
104
116
128
132
152
125
103
115
127
131
153
126
102
114
126
130
154
127
101
113
125
129
154
140
139
138
137
136
135
134
133
132
131
130
129
128
100
112
124
128
153
152
151
150
149
148
147
146
145
144
143
142
141
99
111
123
127
98
110
122
126
97
109
121
125
96
108
120
124
95
107
119
123
94
95
96
97
98
99
100
101
102
103
104
105
106
118
119
120
121
122
123
124
125
126
125
124
123
122
93
105
117
121
92
104
116
120
91
103
115
119
90
102
114
118
89
101
113
117
88
100
112
116
87
86
85
84
83
82
81
80
79
78
77
76
75
87
99
111
115
100
99
98
97
96
95
94
93
92
91
90
89
88
74
86
98
110
114
101
73
85
97
109
113
102
72
84
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
112
103
71
83
83
97
111
104
70
82
82
98
110
105
69
81
81
99
109
106
68
69
70
71
72
73
74
75
76
77
78
79
80
80
100
108
109
110
111
112
113
113
112
111
110
109
108
107
67
79
79
101
107
108
66
78
78
102
106
109
65
77
77
103
105
110
64
76
76
104
104
111
63
75
75
103
103
112
62
74
74
102
102
113
61
73
73
101
101
113
60
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
112
59
59
73
101
87
111
58
58
74
102
86
110
57
57
75
103
85
109
56
56
76
104
84
108
55
55
77
103
83
107
54
54
78
102
82
106
53
53
79
101
81
105
52
52
80
100
80
104
51
51
81
99
79
103
50
50
82
98
78
102
49
49
83
97
77
101
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
93
94
95
96
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
39
35
49
75
89
109
38
34
50
74
90
110
37
33
51
73
91
111
36
32
52
72
92
112
35
31
53
71
93
113
34
30
54
70
94
114
33
29
55
69
95
115
32
28
56
68
96
116
31
27
55
67
97
117
30
26
54
66
98
118
29
25
53
65
99
119
28
16
17
18
19
20
21
22
23
24
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
100
101
102
103
104
105
106
107
108
120
27
15
39
53
107
119
26
14
38
54
106
118
25
13
37
55
105
117
24
12
36
56
104
116
23
11
35
57
103
115
22
10
34
58
102
114
21
9
33
59
101
113
20
8
32
60
100
112
19
7
31
61
99
111
18
6
30
62
98
110
17
5
29
63
97
109
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
208
207
206
205
204
203
202
201
200
199
198
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
168
180
184
196
206
194
167
179
183
195
205
193
166
178
182
194
204
192
165
177
181
193
203
191
164
176
180
192
202
190
163
175
179
191
201
189
162
174
178
190
200
188
161
173
177
189
199
187
160
172
176
188
198
186
159
171
175
187
197
185
158
170
174
186
196
184
157
169
173
161
162
163
164
165
166
167
168
169
170
171
172
173
185
195
183
156
168
172
160
172
184
194
182
155
167
171
159
171
183
193
181
154
166
170
158
170
182
192
180
153
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
157
169
181
182
183
184
185
186
187
188
187
186
185
184
183
184
185
186
187
188
189
190
191
179
152
156
168
156
168
180
182
178
151
155
167
155
167
179
181
177
150
154
166
154
166
178
180
176
149
153
165
153
165
177
179
175
148
152
164
152
164
176
178
174
147
151
163
151
163
175
177
173
146
150
162
150
162
174
176
172
145
149
161
149
161
173
175
171
144
148
160
148
160
172
174
170
143
147
159
147
159
171
173
169
142
146
158
146
158
170
172
168
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
157
156
155
154
153
152
151
150
149
148
147
146
145
157
158
159
160
161
162
163
164
165
166
167
168
169
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
132
144
156
158
131
143
155
157
130
142
154
156
129
141
153
155
128
140
152
154
127
139
151
153
126
138
150
152
125
137
149
151
124
136
148
150
123
135
147
149
122
134
146
148
121
120
119
118
117
116
115
114
113
112
111
110
109
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
135
136
137
138
139
140
141
142
143
144
145
146
147
122
108
120
132
134
148
123
107
119
131
133
149
124
106
118
130
132
150
125
105
117
129
131
151
126
104
116
128
130
152
127
103
115
127
129
153
128
102
114
126
128
154
141
140
139
138
137
136
135
134
133
132
131
130
129
101
113
125
127
154
153
152
151
150
149
148
147
146
145
144
143
142
100
112
124
126
99
111
123
125
98
110
122
124
97
109
121
123
96
108
120
122
95
96
97
98
99
100
101
102
103
104
105
106
107
119
120
121
122
123
124
125
126
125
124
123
122
121
94
106
118
120
93
105
117
119
92
104
116
118
91
103
115
117
90
102
114
116
89
101
113
115
88
87
86
85
84
83
82
81
80
79
78
77
76
88
100
112
114
101
100
99
98
97
96
95
94
93
92
91
90
89
75
87
99
111
113
102
74
86
98
110
112
103
73
85
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
111
104
72
84
84
98
110
105
71
83
83
99
109
106
70
82
82
100
108
107
69
70
71
72
73
74
75
76
77
78
79
80
81
81
101
107
108
109
110
111
112
113
113
112
111
110
109
108
68
80
80
102
106
109
67
79
79
103
105
110
66
78
78
104
104
111
65
77
77
103
103
112
64
76
76
102
102
113
63
75
75
101
101
113
62
74
74
100
100
112
61
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
111
60
60
74
100
86
110
59
59
75
101
85
109
58
58
76
102
84
108
57
57
77
103
83
107
56
56
78
104
82
106
55
55
79
103
81
105
54
54
80
102
80
104
53
53
81
101
79
103
52
52
82
100
78
102
51
51
83
99
77
101
50
50
84
98
76
100
41
42
43
44
45
46
47
48
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
94
95
96
97
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
40
36
50
74
88
108
39
35
51
73
89
109
38
34
52
72
90
110
37
33
53
71
91
111
36
32
54
70
92
112
35
31
55
69
93
113
34
30
56
68
94
114
33
29
55
67
95
115
32
28
54
66
96
116
31
27
53
65
97
117
30
26
52
64
98
118
29
17
18
19
20
21
22
23
24
25
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
99
100
101
102
103
104
105
106
107
119
28
16
38
52
106
118
27
15
37
53
105
117
26
14
36
54
104
116
25
13
35
55
103
115
24
12
34
56
102
114
23
11
33
57
101
113
22
10
32
58
100
112
21
9
31
59
99
111
20
8
30
60
98
110
19
7
29
61
97
109
18
6
28
62
96
108
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
209
208
207
206
205
204
203
202
201
200
199
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
169
181
185
197
205
193
168
180
184
196
204
192
167
179
183
195
203
191
166
178
182
194
202
190
165
177
181
193
201
189
164
176
180
192
200
188
163
175
179
191
199
187
162
174
178
190
198
186
161
173
177
189
197
185
160
172
176
188
196
184
159
171
175
187
195
183
158
170
174
162
163
164
165
166
167
168
169
170
171
172
173
174
186
194
182
157
169
173
161
173
185
193
181
156
168
172
160
172
184
192
180
155
167
171
159
171
183
191
179
154
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
158
170
182
183
184
185
186
187
188
187
186
185
184
183
182
183
184
185
186
187
188
189
190
178
153
157
169
157
169
181
181
177
152
156
168
156
168
180
180
176
151
155
167
155
167
179
179
175
150
154
166
154
166
178
178
174
149
153
165
153
165
177
177
173
148
152
164
152
164
176
176
172
147
151
163
151
163
175
175
171
146
150
162
150
162
174
174
170
145
149
161
149
161
173
173
169
144
148
160
148
160
172
172
168
143
147
159
147
159
171
171
167
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
158
157
156
155
154
153
152
151
150
149
148
147
146
158
159
160
161
162
163
164
165
166
167
168
169
170
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
133
145
157
157
132
144
156
156
131
143
155
155
130
142
154
154
129
141
153
153
128
140
152
152
127
139
151
151
126
138
150
150
125
137
149
149
124
136
148
148
123
135
147
147
122
121
120
119
118
117
116
115
114
113
112
111
110
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
134
135
136
137
138
139
140
141
142
143
144
145
146
123
109
121
133
133
147
124
108
120
132
132
148
125
107
119
131
131
149
126
106
118
130
130
150
127
105
117
129
129
151
128
104
116
128
128
152
129
103
115
127
127
153
142
141
140
139
138
137
136
135
134
133
132
131
130
102
114
126
126
154
154
153
152
151
150
149
148
147
146
145
144
143
101
113
125
125
100
112
124
124
99
111
123
123
98
110
122
122
97
109
121
121
96
97
98
99
100
101
102
103
104
105
106
107
108
120
121
122
123
124
125
126
125
124
123
122
121
120
95
107
119
119
94
106
118
118
93
105
117
117
92
104
116
116
91
103
115
115
90
102
114
114
89
88
87
86
85
84
83
82
81
80
79
78
77
89
101
113
113
102
101
100
99
98
97
96
95
94
93
92
91
90
76
88
100
112
112
103
75
87
99
111
111
104
74
86
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
110
105
73
85
85
99
109
106
72
84
84
100
108
107
71
83
83
101
107
108
70
71
72
73
74
75
76
77
78
79
80
81
82
82
102
106
107
108
109
110
111
112
113
113
112
111
110
109
69
81
81
103
105
110
68
80
80
104
104
111
67
79
79
103
103
112
66
78
78
102
102
113
65
77
77
101
101
113
64
76
76
100
100
112
63
75
75
99
99
111
62
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
110
61
61
75
99
85
109
60
60
76
100
84
108
59
59
77
101
83
107
58
58
78
102
82
106
57
57
79
103
81
105
56
56
80
104
80
104
55
55
81
103
79
103
54
54
82
102
78
102
53
53
83
101
77
101
52
52
84
100
76
100
51
51
85
99
75
99
42
43
44
45
46
47
48
49
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
94
95
96
97
98
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
41
37
51
73
87
107
40
36
52
72
88
108
39
35
53
71
89
109
38
34
54
70
90
110
37
33
55
69
91
111
36
32
56
68
92
112
35
31
55
67
93
113
34
30
54
66
94
114
33
29
53
65
95
115
32
28
52
64
96
116
31
27
51
63
97
117
30
18
19
20
21
22
23
24
25
26
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
98
99
100
101
102
103
104
105
106
118
29
17
37
51
105
117
28
16
36
52
104
116
27
15
35
53
103
115
26
14
34
54
102
114
25
13
33
55
101
113
24
12
32
56
100
112
23
11
31
57
99
111
22
10
30
58
98
110
21
9
29
59
97
109
20
8
28
60
96
108
19
7
27
61
95
107
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
210
209
208
207
206
205
204
203
202
201
200
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
170
182
186
198
204
192
169
181
185
197
203
191
168
180
184
196
202
190
167
179
183
195
201
189
166
178
182
194
200
188
165
177
181
193
199
187
164
176
180
192
198
186
163
175
179
191
197
185
162
174
178
190
196
184
161
173
177
189
195
183
160
172
176
188
194
182
159
171
175
163
164
165
166
167
168
169
170
171
172
173
174
175
187
193
181
158
170
174
162
174
186
192
180
157
169
173
161
173
185
191
179
156
168
172
160
172
184
190
178
155
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
159
171
183
184
185
186
187
188
187
186
185
184
183
182
181
182
183
184
185
186
187
188
189
177
154
158
170
158
170
182
180
176
153
157
169
157
169
181
179
175
152
156
168
156
168
180
178
174
151
155
167
155
167
179
177
173
150
154
166
154
166
178
176
172
149
153
165
153
165
177
175
171
148
152
164
152
164
176
174
170
147
151
163
151
163
175
173
169
146
150
162
150
162
174
172
168
145
149
161
149
161
173
171
167
144
148
160
148
160
172
170
166
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
159
158
157
156
155
154
153
152
151
150
149
148
147
159
160
161
162
163
164
165
166
167
168
169
170
171
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
134
146
158
156
133
145
157
155
132
144
156
154
131
143
155
153
130
142
154
152
129
141
153
151
128
140
152
150
127
139
151
149
126
138
150
148
125
137
149
147
124
136
148
146
123
122
121
120
119
118
117
116
115
114
113
112
111
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
133
134
135
136
137
138
139
140
141
142
143
144
145
124
110
122
134
132
146
125
109
121
133
131
147
126
108
120
132
130
148
127
107
119
131
129
149
128
106
118
130
128
150
129
105
117
129
127
151
130
104
116
128
126
152
143
142
141
140
139
138
137
136
135
134
133
132
131
103
115
127
125
153
154
154
153
152
151
150
149
148
147
146
145
144
102
114
126
124
101
113
125
123
100
112
124
122
99
111
123
121
98
110
122
120
97
98
99
100
101
102
103
104
105
106
107
108
109
121
122
123
124
125
126
125
124
123
122
121
120
119
96
108
120
118
95
107
119
117
94
106
118
116
93
105
117
115
92
104
116
114
91
103
115
113
90
89
88
87
86
85
84
83
82
81
80
79
78
90
102
114
112
103
102
101
100
99
98
97
96
95
94
93
92
91
77
89
101
113
111
104
76
88
100
112
110
105
75
87
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
109
106
74
86
86
100
108
107
73
85
85
101
107
108
72
84
84
102
106
109
71
72
73
74
75
76
77
78
79
80
81
82
83
83
103
105
106
107
108
109
110
111
112
113
113
112
111
110
70
82
82
104
104
111
69
81
81
103
103
112
68
80
80
102
102
113
67
79
79
101
101
113
66
78
78
100
100
112
65
77
77
99
99
111
64
76
76
98
98
110
63
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
109
62
62
76
98
84
108
61
61
77
99
83
107
60
60
78
100
82
106
59
59
79
101
81
105
58
58
80
102
80
104
57
57
81
103
79
103
56
56
82
104
78
102
55
55
83
103
77
101
54
54
84
102
76
100
53
53
85
101
75
99
52
52
86
100
74
98
43
44
45
46
47
48
49
50
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
94
95
96
97
98
99
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
42
38
52
72
86
106
41
37
53
71
87
107
40
36
54
70
88
108
39
35
55
69
89
109
38
34
56
68
90
110
37
33
55
67
91
111
36
32
54
66
92
112
35
31
53
65
93
113
34
30
52
64
94
114
33
29
51
63
95
115
32
28
50
62
96
116
31
19
20
21
22
23
24
25
26
27
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
97
98
99
100
101
102
103
104
105
117
30
18
36
50
104
116
29
17
35
51
103
115
28
16
34
52
102
114
27
15
33
53
101
113
26
14
32
54
100
112
25
13
31
55
99
111
24
12
30
56
98
110
23
11
29
57
97
109
22
10
28
58
96
108
21
9
27
59
95
107
20
8
26
60
94
106
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
171
183
187
199
203
191
170
182
186
198
202
190
169
181
185
197
201
189
168
180
184
196
200
188
167
179
183
195
199
187
166
178
182
194
198
186
165
177
181
193
197
185
164
176
180
192
196
184
163
175
179
191
195
183
162
174
178
190
194
182
161
173
177
189
193
181
160
172
176
164
165
166
167
168
169
170
171
172
173
174
175
176
188
192
180
159
171
175
163
175
187
191
179
158
170
174
162
174
186
190
178
157
169
173
161
173
185
189
177
156
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
160
172
184
185
186
187
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
176
155
159
171
159
171
183
179
175
154
158
170
158
170
182
178
174
153
157
169
157
169
181
177
173
152
156
168
156
168
180
176
172
151
155
167
155
167
179
175
171
150
154
166
154
166
178
174
170
149
153
165
153
165
177
173
169
148
152
164
152
164
176
172
168
147
151
163
151
163
175
171
167
146
150
162
150
162
174
170
166
145
149
161
149
161
173
169
165
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
160
159
158
157
156
155
154
153
152
151
150
149
148
160
161
162
163
164
165
166
167
168
169
170
171
172
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
135
147
159
155
134
146
158
154
133
145
157
153
132
144
156
152
131
143
155
151
130
142
154
150
129
141
153
149
128
140
152
148
127
139
151
147
126
138
150
146
125
137
149
145
124
123
122
121
120
119
118
117
116
115
114
113
112
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
132
133
134
135
136
137
138
139
140
141
142
143
144
125
111
123
135
131
145
126
110
122
134
130
146
127
109
121
133
129
147
128
108
120
132
128
148
129
107
119
131
127
149
130
106
118
130
126
150
131
105
117
129
125
151
144
143
142
141
140
139
138
137
136
135
134
133
132
104
116
128
124
152
153
154
154
153
152
151
150
149
148
147
146
145
103
115
127
123
102
114
126
122
101
113
125
121
100
112
124
120
99
111
123
119
98
99
100
101
102
103
104
105
106
107
108
109
110
122
123
124
125
126
125
124
123
122
121
120
119
118
97
109
121
117
96
108
120
116
95
107
119
115
94
106
118
114
93
105
117
113
92
104
116
112
91
90
89
88
87
86
85
84
83
82
81
80
79
91
103
115
111
104
103
102
101
100
99
98
97
96
95
94
93
92
78
90
102
114
110
105
77
89
101
113
109
106
76
88
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
108
107
75
87
87
101
107
108
74
86
86
102
106
109
73
85
85
103
105
110
72
73
74
75
76
77
78
79
80
81
82
83
84
84
104
104
105
106
107
108
109
110
111
112
113
113
112
111
71
83
83
103
103
112
70
82
82
102
102
113
69
81
81
101
101
113
68
80
80
100
100
112
67
79
79
99
99
111
66
78
78
98
98
110
65
77
77
97
97
109
64
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
108
63
63
77
97
83
107
62
62
78
98
82
106
61
61
79
99
81
105
60
60
80
100
80
104
59
59
81
101
79
103
58
58
82
102
78
102
57
57
83
103
77
101
56
56
84
104
76
100
55
55
85
103
75
99
54
54
86
102
74
98
53
53
87
101
73
97
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
94
95
96
97
98
99
100
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
43
39
53
71
85
105
42
38
54
70
86
106
41
37
55
69
87
107
40
36
56
68
88
108
39
35
55
67
89
109
38
34
54
66
90
110
37
33
53
65
91
111
36
32
52
64
92
112
35
31
51
63
93
113
34
30
50
62
94
114
33
29
49
61
95
115
32
20
21
22
23
24
25
26
27
28
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
96
97
98
99
100
101
102
103
104
116
31
19
35
49
103
115
30
18
34
50
102
114
29
17
33
51
101
113
28
16
32
52
100
112
27
15
31
53
99
111
26
14
30
54
98
110
25
13
29
55
97
109
24
12
28
56
96
108
23
11
27
57
95
107
22
10
26
58
94
106
21
9
25
59
93
105
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
212
211
210
209
208
207
206
205
204
203
202
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
172
184
188
200
202
190
171
183
187
199
201
189
170
182
186
198
200
188
169
181
185
197
199
187
168
180
184
196
198
186
167
179
183
195
197
185
166
178
182
194
196
184
165
177
181
193
195
183
164
176
180
192
194
182
163
175
179
191
193
181
162
174
178
190
192
180
161
173
177
165
166
167
168
169
170
171
172
173
174
175
176
177
189
191
179
160
172
176
164
176
188
190
178
159
171
175
163
175
187
189
177
158
170
174
162
174
186
188
176
157
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
161
173
185
186
187
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
175
156
160
172
160
172
184
178
174
155
159
171
159
171
183
177
173
154
158
170
158
170
182
176
172
153
157
169
157
169
181
175
171
152
156
168
156
168
180
174
170
151
155
167
155
167
179
173
169
150
154
166
154
166
178
172
168
149
153
165
153
165
177
171
167
148
152
164
152
164
176
170
166
147
151
163
151
163
175
169
165
146
150
162
150
162
174
168
164
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
161
160
159
158
157
156
155
154
153
152
151
150
149
161
162
163
164
165
166
167
168
169
170
171
172
173
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
136
148
160
154
135
147
159
153
134
146
158
152
133
145
157
151
132
144
156
150
131
143
155
149
130
142
154
148
129
141
153
147
128
140
152
146
127
139
151
145
126
138
150
144
125
124
123
122
121
120
119
118
117
116
115
114
113
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
131
132
133
134
135
136
137
138
139
140
141
142
143
126
112
124
136
130
144
127
111
123
135
129
145
128
110
122
134
128
146
129
109
121
133
127
147
130
108
120
132
126
148
131
107
119
131
125
149
132
106
118
130
124
150
145
144
143
142
141
140
139
138
137
136
135
134
133
105
117
129
123
151
152
153
154
154
153
152
151
150
149
148
147
146
104
116
128
122
103
115
127
121
102
114
126
120
101
113
125
119
100
112
124
118
99
100
101
102
103
104
105
106
107
108
109
110
111
123
124
125
126
125
124
123
122
121
120
119
118
117
98
110
122
116
97
109
121
115
96
108
120
114
95
107
119
113
94
106
118
112
93
105
117
111
92
91
90
89
88
87
86
85
84
83
82
81
80
92
104
116
110
105
104
103
102
101
100
99
98
97
96
95
94
93
79
91
103
115
109
106
78
90
102
114
108
107
77
89
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
107
108
76
88
88
102
106
109
75
87
87
103
105
110
74
86
86
104
104
111
73
74
75
76
77
78
79
80
81
82
83
84
85
85
103
103
104
105
106
107
108
109
110
111
112
113
113
112
72
84
84
102
102
113
71
83
83
101
101
113
70
82
82
100
100
112
69
81
81
99
99
111
68
80
80
98
98
110
67
79
79
97
97
109
66
78
78
96
96
108
65
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
107
64
64
78
96
82
106
63
63
79
97
81
105
62
62
80
98
80
104
61
61
81
99
79
103
60
60
82
100
78
102
59
59
83
101
77
101
58
58
84
102
76
100
57
57
85
103
75
99
56
56
86
104
74
98
55
55
87
103
73
97
54
54
88
102
72
96
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
94
95
96
97
98
99
100
101
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
44
40
54
70
84
104
43
39
55
69
85
105
42
38
56
68
86
106
41
37
55
67
87
107
40
36
54
66
88
108
39
35
53
65
89
109
38
34
52
64
90
110
37
33
51
63
91
111
36
32
50
62
92
112
35
31
49
61
93
113
34
30
48
60
94
114
33
21
22
23
24
25
26
27
28
29
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
95
96
97
98
99
100
101
102
103
115
32
20
34
48
102
114
31
19
33
49
101
113
30
18
32
50
100
112
29
17
31
51
99
111
28
16
30
52
98
110
27
15
29
53
97
109
26
14
28
54
96
108
25
13
27
55
95
107
24
12
26
56
94
106
23
11
25
57
93
105
22
10
24
58
92
104
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
213
212
211
210
209
208
207
206
205
204
203
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
173
185
189
201
201
189
172
184
188
200
200
188
171
183
187
199
199
187
170
182
186
198
198
186
169
181
185
197
197
185
168
180
184
196
196
184
167
179
183
195
195
183
166
178
182
194
194
182
165
177
181
193
193
181
164
176
180
192
192
180
163
175
179
191
191
179
162
174
178
166
167
168
169
170
171
172
173
174
175
176
177
178
190
190
178
161
173
177
165
177
189
189
177
160
172
176
164
176
188
188
176
159
171
175
163
175
187
187
175
158
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
162
174
186
187
188
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
174
157
161
173
161
173
185
177
173
156
160
172
160
172
184
176
172
155
159
171
159
171
183
175
171
154
158
170
158
170
182
174
170
153
157
169
157
169
181
173
169
152
156
168
156
168
180
172
168
151
155
167
155
167
179
171
167
150
154
166
154
166
178
170
166
149
153
165
153
165
177
169
165
148
152
164
152
164
176
168
164
147
151
163
151
163
175
167
163
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
162
161
160
159
158
157
156
155
154
153
152
151
150
162
163
164
165
166
167
168
169
170
171
172
173
174
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
137
149
161
153
136
148
160
152
135
147
159
151
134
146
158
150
133
145
157
149
132
144
156
148
131
143
155
147
130
142
154
146
129
141
153
145
128
140
152
144
127
139
151
143
126
125
124
123
122
121
120
119
118
117
116
115
114
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
130
131
132
133
134
135
136
137
138
139
140
141
142
127
113
125
137
129
143
128
112
124
136
128
144
129
111
123
135
127
145
130
110
122
134
126
146
131
109
121
133
125
147
132
108
120
132
124
148
133
107
119
131
123
149
146
145
144
143
142
141
140
139
138
137
136
135
134
106
118
130
122
150
151
152
153
154
154
153
152
151
150
149
148
147
105
117
129
121
104
116
128
120
103
115
127
119
102
114
126
118
101
113
125
117
100
101
102
103
104
105
106
107
108
109
110
111
112
124
125
126
125
124
123
122
121
120
119
118
117
116
99
111
123
115
98
110
122
114
97
109
121
113
96
108
120
112
95
107
119
111
94
106
118
110
93
92
91
90
89
88
87
86
85
84
83
82
81
93
105
117
109
106
105
104
103
102
101
100
99
98
97
96
95
94
80
92
104
116
108
107
79
91
103
115
107
108
78
90
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
106
109
77
89
89
103
105
110
76
88
88
104
104
111
75
87
87
103
103
112
74
75
76
77
78
79
80
81
82
83
84
85
86
86
102
102
103
104
105
106
107
108
109
110
111
112
113
113
73
85
85
101
101
113
72
84
84
100
100
112
71
83
83
99
99
111
70
82
82
98
98
110
69
81
81
97
97
109
68
80
80
96
96
108
67
79
79
95
95
107
66
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
106
65
65
79
95
81
105
64
64
80
96
80
104
63
63
81
97
79
103
62
62
82
98
78
102
61
61
83
99
77
101
60
60
84
100
76
100
59
59
85
101
75
99
58
58
86
102
74
98
57
57
87
103
73
97
56
56
88
104
72
96
55
55
89
103
71
95
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
94
95
96
97
98
99
100
101
102
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
45
41
55
69
83
103
44
40
56
68
84
104
43
39
55
67
85
105
42
38
54
66
86
106
41
37
53
65
87
107
40
36
52
64
88
108
39
35
51
63
89
109
38
34
50
62
90
110
37
33
49
61
91
111
36
32
48
60
92
112
35
31
47
59
93
113
34
22
23
24
25
26
27
28
29
30
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
94
95
96
97
98
99
100
101
102
114
33
21
33
47
101
113
32
20
32
48
100
112
31
19
31
49
99
111
30
18
30
50
98
110
29
17
29
51
97
109
28
16
28
52
96
108
27
15
27
53
95
107
26
14
26
54
94
106
25
13
25
55
93
105
24
12
24
56
92
104
23
11
23
57
91
103
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
214
213
212
211
210
209
208
207
206
205
204
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
174
186
190
202
200
188
173
185
189
201
199
187
172
184
188
200
198
186
171
183
187
199
197
185
170
182
186
198
196
184
169
181
185
197
195
183
168
180
184
196
194
182
167
179
183
195
193
181
166
178
182
194
192
180
165
177
181
193
191
179
164
176
180
192
190
178
163
175
179
167
168
169
170
171
172
173
174
175
176
177
178
179
191
189
177
162
174
178
166
178
190
188
176
161
173
177
165
177
189
187
175
160
172
176
164
176
188
186
174
159
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
163
175
187
188
187
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
173
158
162
174
162
174
186
176
172
157
161
173
161
173
185
175
171
156
160
172
160
172
184
174
170
155
159
171
159
171
183
173
169
154
158
170
158
170
182
172
168
153
157
169
157
169
181
171
167
152
156
168
156
168
180
170
166
151
155
167
155
167
179
169
165
150
154
166
154
166
178
168
164
149
153
165
153
165
177
167
163
148
152
164
152
164
176
166
162
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
163
162
161
160
159
158
157
156
155
154
153
152
151
163
164
165
166
167
168
169
170
171
172
173
174
175
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
138
150
162
152
137
149
161
151
136
148
160
150
135
147
159
149
134
146
158
148
133
145
157
147
132
144
156
146
131
143
155
145
130
142
154
144
129
141
153
143
128
140
152
142
127
126
125
124
123
122
121
120
119
118
117
116
115
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
129
130
131
132
133
134
135
136
137
138
139
140
141
128
114
126
138
128
142
129
113
125
137
127
143
130
112
124
136
126
144
131
111
123
135
125
145
132
110
122
134
124
146
133
109
121
133
123
147
134
108
120
132
122
148
147
146
145
144
143
142
141
140
139
138
137
136
135
107
119
131
121
149
150
151
152
153
154
154
153
152
151
150
149
148
106
118
130
120
105
117
129
119
104
116
128
118
103
115
127
117
102
114
126
116
101
102
103
104
105
106
107
108
109
110
111
112
113
125
126
125
124
123
122
121
120
119
118
117
116
115
100
112
124
114
99
111
123
113
98
110
122
112
97
109
121
111
96
108
120
110
95
107
119
109
94
93
92
91
90
89
88
87
86
85
84
83
82
94
106
118
108
107
106
105
104
103
102
101
100
99
98
97
96
95
81
93
105
117
107
108
80
92
104
116
106
109
79
91
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
105
110
78
90
90
104
104
111
77
89
89
103
103
112
76
88
88
102
102
113
75
76
77
78
79
80
81
82
83
84
85
86
87
87
101
101
102
103
104
105
106
107
108
109
110
111
112
113
74
86
86
100
100
112
73
85
85
99
99
111
72
84
84
98
98
110
71
83
83
97
97
109
70
82
82
96
96
108
69
81
81
95
95
107
68
80
80
94
94
106
67
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
105
66
66
80
94
80
104
65
65
81
95
79
103
64
64
82
96
78
102
63
63
83
97
77
101
62
62
84
98
76
100
61
61
85
99
75
99
60
60
86
100
74
98
59
59
87
101
73
97
58
58
88
102
72
96
57
57
89
103
71
95
56
56
90
104
70
94
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
94
95
96
97
98
99
100
101
102
103
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
46
42
56
68
82
102
45
41
55
67
83
103
44
40
54
66
84
104
43
39
53
65
85
105
42
38
52
64
86
106
41
37
51
63
87
107
40
36
50
62
88
108
39
35
49
61
89
109
38
34
48
60
90
110
37
33
47
59
91
111
36
32
46
58
92
112
35
23
24
25
26
27
28
29
30
31
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
93
94
95
96
97
98
99
100
101
113
34
22
32
46
100
112
33
21
31
47
99
111
32
20
30
48
98
110
31
19
29
49
97
109
30
18
28
50
96
108
29
17
27
51
95
107
28
16
26
52
94
106
27
15
25
53
93
105
26
14
24
54
92
104
25
13
23
55
91
103
24
12
22
56
90
102
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
215
214
213
212
211
210
209
208
207
206
205
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
175
187
191
203
199
187
174
186
190
202
198
186
173
185
189
201
197
185
172
184
188
200
196
184
171
183
187
199
195
183
170
182
186
198
194
182
169
181
185
197
193
181
168
180
184
196
192
180
167
179
183
195
191
179
166
178
182
194
190
178
165
177
181
193
189
177
164
176
180
168
169
170
171
172
173
174
175
176
177
178
179
180
192
188
176
163
175
179
167
179
191
187
175
162
174
178
166
178
190
186
174
161
173
177
165
177
189
185
173
160
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
164
176
188
187
186
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
172
159
163
175
163
175
187
175
171
158
162
174
162
174
186
174
170
157
161
173
161
173
185
173
169
156
160
172
160
172
184
172
168
155
159
171
159
171
183
171
167
154
158
170
158
170
182
170
166
153
157
169
157
169
181
169
165
152
156
168
156
168
180
168
164
151
155
167
155
167
179
167
163
150
154
166
154
166
178
166
162
149
153
165
153
165
177
165
161
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
164
163
162
161
160
159
158
157
156
155
154
153
152
164
165
166
167
168
169
170
171
172
173
174
175
176
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
139
151
163
151
138
150
162
150
137
149
161
149
136
148
160
148
135
147
159
147
134
146
158
146
133
145
157
145
132
144
156
144
131
143
155
143
130
142
154
142
129
141
153
141
128
127
126
125
124
123
122
121
120
119
118
117
116
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
128
129
130
131
132
133
134
135
136
137
138
139
140
129
115
127
139
127
141
130
114
126
138
126
142
131
113
125
137
125
143
132
112
124
136
124
144
133
111
123
135
123
145
134
110
122
134
122
146
135
109
121
133
121
147
148
147
146
145
144
143
142
141
140
139
138
137
136
108
120
132
120
148
149
150
151
152
153
154
154
153
152
151
150
149
107
119
131
119
106
118
130
118
105
117
129
117
104
116
128
116
103
115
127
115
102
103
104
105
106
107
108
109
110
111
112
113
114
126
125
124
123
122
121
120
119
118
117
116
115
114
101
113
125
113
100
112
124
112
99
111
123
111
98
110
122
110
97
109
121
109
96
108
120
108
95
94
93
92
91
90
89
88
87
86
85
84
83
95
107
119
107
108
107
106
105
104
103
102
101
100
99
98
97
96
82
94
106
118
106
109
81
93
105
117
105
110
80
92
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
104
111
79
91
91
103
103
112
78
90
90
102
102
113
77
89
89
101
101
113
76
77
78
79
80
81
82
83
84
85
86
87
88
88
100
100
101
102
103
104
105
106
107
108
109
110
111
112
75
87
87
99
99
111
74
86
86
98
98
110
73
85
85
97
97
109
72
84
84
96
96
108
71
83
83
95
95
107
70
82
82
94
94
106
69
81
81
93
93
105
68
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
104
67
67
81
93
79
103
66
66
82
94
78
102
65
65
83
95
77
101
64
64
84
96
76
100
63
63
85
97
75
99
62
62
86
98
74
98
61
61
87
99
73
97
60
60
88
100
72
96
59
59
89
101
71
95
58
58
90
102
70
94
57
57
91
103
69
93
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
92
93
94
95
96
97
98
99
100
101
102
103
104
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
47
43
55
67
81
101
46
42
54
66
82
102
45
41
53
65
83
103
44
40
52
64
84
104
43
39
51
63
85
105
42
38
50
62
86
106
41
37
49
61
87
107
40
36
48
60
88
108
39
35
47
59
89
109
38
34
46
58
90
110
37
33
45
57
91
111
36
24
25
26
27
28
29
30
31
32
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
92
93
94
95
96
97
98
99
100
112
35
23
31
45
99
111
34
22
30
46
98
110
33
21
29
47
97
109
32
20
28
48
96
108
31
19
27
49
95
107
30
18
26
50
94
106
29
17
25
51
93
105
28
16
24
52
92
104
27
15
23
53
91
103
26
14
22
54
90
102
25
13
21
55
89
101
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
214
213
212
211
210
209
208
207
206
205
204
203
204
205
206
207
208
209
210
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
174
186
190
202
198
186
173
185
189
201
197
185
172
184
188
200
196
184
171
183
187
199
195
183
170
182
186
198
194
182
169
181
185
197
193
181
168
180
184
196
192
180
167
179
183
195
191
179
166
178
182
194
190
178
165
177
181
193
189
177
164
176
180
192
188
176
163
175
179
167
168
169
170
171
172
173
174
175
176
177
178
179
191
187
175
162
174
178
166
178
190
186
174
161
173
177
165
177
189
185
173
160
172
176
164
176
188
184
172
159
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
163
175
187
186
185
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
171
158
162
174
162
174
186
174
170
157
161
173
161
173
185
173
169
156
160
172
160
172
184
172
168
155
159
171
159
171
183
171
167
154
158
170
158
170
182
170
166
153
157
169
157
169
181
169
165
152
156
168
156
168
180
168
164
151
155
167
155
167
179
167
163
150
154
166
154
166
178
166
162
149
153
165
153
165
177
165
161
148
152
164
152
164
176
164
160
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
163
162
161
160
159
158
157
156
155
154
153
152
151
163
164
165
166
167
168
169
170
171
172
173
174
175
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
138
150
162
150
137
149
161
149
136
148
160
148
135
147
159
147
134
146
158
146
133
145
157
145
132
144
156
144
131
143
155
143
130
142
154
142
129
141
153
141
128
140
152
140
127
126
125
124
123
122
121
120
119
118
117
116
115
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
127
128
129
130
131
132
133
134
135
136
137
138
139
128
114
126
138
126
140
129
113
125
137
125
141
130
112
124
136
124
142
131
111
123
135
123
143
132
110
122
134
122
144
133
109
121
133
121
145
134
108
120
132
120
146
147
146
145
144
143
142
141
140
139
138
137
136
135
107
119
131
119
147
148
149
150
151
152
153
153
152
151
150
149
148
106
118
130
118
105
117
129
117
104
116
128
116
103
115
127
115
102
114
126
114
101
102
103
104
105
106
107
108
109
110
111
112
113
125
124
123
122
121
120
119
118
117
116
115
114
113
100
112
124
112
99
111
123
111
98
110
122
110
97
109
121
109
96
108
120
108
95
107
119
107
96
95
94
93
92
91
90
89
88
87
86
85
84
94
106
118
106
109
108
107
106
105
104
103
102
101
100
99
98
97
83
93
105
117
105
110
82
92
104
116
104
111
81
91
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
103
112
80
90
90
102
102
113
79
89
89
101
101
113
78
88
88
100
100
112
77
78
79
80
81
82
83
84
85
86
87
88
87
87
99
99
100
101
102
103
104
105
106
107
108
109
110
111
76
86
86
98
98
110
75
85
85
97
97
109
74
84
84
96
96
108
73
83
83
95
95
107
72
82
82
94
94
106
71
81
81
93
93
105
70
80
80
92
92
104
69
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
103
68
66
80
92
78
102
67
65
81
93
77
101
66
64
82
94
76
100
65
63
83
95
75
99
64
62
84
96
74
98
63
61
85
97
73
97
62
60
86
98
72
96
61
59
87
99
71
95
60
58
88
100
70
94
59
57
89
101
69
93
58
56
90
102
68
92
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
55
91
92
93
94
95
96
97
98
99
100
101
102
103
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
48
44
54
66
80
100
47
43
53
65
81
101
46
42
52
64
82
102
45
41
51
63
83
103
44
40
50
62
84
104
43
39
49
61
85
105
42
38
48
60
86
106
41
37
47
59
87
107
40
36
46
58
88
108
39
35
45
57
89
109
38
34
44
56
90
110
37
25
26
27
28
29
30
31
32
33
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
91
92
93
94
95
96
97
98
99
111
36
24
30
44
98
110
35
23
29
45
97
109
34
22
28
46
96
108
33
21
27
47
95
107
32
20
26
48
94
106
31
19
25
49
93
105
30
18
24
50
92
104
29
17
23
51
91
103
28
16
22
52
90
102
27
15
21
53
89
101
26
14
20
54
88
100
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
213
212
211
210
209
208
207
206
205
204
203
202
203
204
205
206
207
208
209
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
173
185
189
201
197
185
172
184
188
200
196
184
171
183
187
199
195
183
170
182
186
198
194
182
169
181
185
197
193
181
168
180
184
196
192
180
167
179
183
195
191
179
166
178
182
194
190
178
165
177
181
193
189
177
164
176
180
192
188
176
163
175
179
191
187
175
162
174
178
166
167
168
169
170
171
172
173
174
175
176
177
178
190
186
174
161
173
177
165
177
189
185
173
160
172
176
164
176
188
184
172
159
171
175
163
175
187
183
171
158
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
162
174
186
185
184
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
170
157
161
173
161
173
185
173
169
156
160
172
160
172
184
172
168
155
159
171
159
171
183
171
167
154
158
170
158
170
182
170
166
153
157
169
157
169
181
169
165
152
156
168
156
168
180
168
164
151
155
167
155
167
179
167
163
150
154
166
154
166
178
166
162
149
153
165
153
165
177
165
161
148
152
164
152
164
176
164
160
147
151
163
151
163
175
163
159
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
162
161
160
159
158
157
156
155
154
153
152
151
150
162
163
164
165
166
167
168
169
170
171
172
173
174
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
137
149
161
149
136
148
160
148
135
147
159
147
134
146
158
146
133
145
157
145
132
144
156
144
131
143
155
143
130
142
154
142
129
141
153
141
128
140
152
140
127
139
151
139
126
125
124
123
122
121
120
119
118
117
116
115
114
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
126
127
128
129
130
131
132
133
134
135
136
137
138
127
113
125
137
125
139
128
112
124
136
124
140
129
111
123
135
123
141
130
110
122
134
122
142
131
109
121
133
121
143
132
108
120
132
120
144
133
107
119
131
119
145
146
145
144
143
142
141
140
139
138
137
136
135
134
106
118
130
118
146
147
148
149
150
151
152
152
151
150
149
148
147
105
117
129
117
104
116
128
116
103
115
127
115
102
114
126
114
101
113
125
113
100
101
102
103
104
105
106
107
108
109
110
111
112
124
123
122
121
120
119
118
117
116
115
114
113
112
99
111
123
111
98
110
122
110
97
109
121
109
96
108
120
108
95
107
119
107
94
106
118
106
97
96
95
94
93
92
91
90
89
88
87
86
85
93
105
117
105
110
109
108
107
106
105
104
103
102
101
100
99
98
84
92
104
116
104
111
83
91
103
115
103
112
82
90
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
102
113
81
89
89
101
101
113
80
88
88
100
100
112
79
87
87
99
99
111
78
79
80
81
82
83
84
85
86
87
88
87
86
86
98
98
99
100
101
102
103
104
105
106
107
108
109
110
77
85
85
97
97
109
76
84
84
96
96
108
75
83
83
95
95
107
74
82
82
94
94
106
73
81
81
93
93
105
72
80
80
92
92
104
71
79
79
91
91
103
70
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
102
69
65
79
91
77
101
68
64
80
92
76
100
67
63
81
93
75
99
66
62
82
94
74
98
65
61
83
95
73
97
64
60
84
96
72
96
63
59
85
97
71
95
62
58
86
98
70
94
61
57
87
99
69
93
60
56
88
100
68
92
59
55
89
101
67
91
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
55
54
90
91
92
93
94
95
96
97
98
99
100
101
102
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
49
45
53
65
79
99
48
44
52
64
80
100
47
43
51
63
81
101
46
42
50
62
82
102
45
41
49
61
83
103
44
40
48
60
84
104
43
39
47
59
85
105
42
38
46
58
86
106
41
37
45
57
87
107
40
36
44
56
88
108
39
35
43
55
89
109
38
26
27
28
29
30
31
32
33
34
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
90
91
92
93
94
95
96
97
98
110
37
25
29
43
97
109
36
24
28
44
96
108
35
23
27
45
95
107
34
22
26
46
94
106
33
21
25
47
93
105
32
20
24
48
92
104
31
19
23
49
91
103
30
18
22
50
90
102
29
17
21
51
89
101
28
16
20
52
88
100
27
15
19
53
87
99
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
212
211
210
209
208
207
206
205
204
203
202
201
202
203
204
205
206
207
208
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
172
184
188
200
196
184
171
183
187
199
195
183
170
182
186
198
194
182
169
181
185
197
193
181
168
180
184
196
192
180
167
179
183
195
191
179
166
178
182
194
190
178
165
177
181
193
189
177
164
176
180
192
188
176
163
175
179
191
187
175
162
174
178
190
186
174
161
173
177
165
166
167
168
169
170
171
172
173
174
175
176
177
189
185
173
160
172
176
164
176
188
184
172
159
171
175
163
175
187
183
171
158
170
174
162
174
186
182
170
157
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
161
173
185
184
183
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
169
156
160
172
160
172
184
172
168
155
159
171
159
171
183
171
167
154
158
170
158
170
182
170
166
153
157
169
157
169
181
169
165
152
156
168
156
168
180
168
164
151
155
167
155
167
179
167
163
150
154
166
154
166
178
166
162
149
153
165
153
165
177
165
161
148
152
164
152
164
176
164
160
147
151
163
151
163
175
163
159
146
150
162
150
162
174
162
158
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
161
160
159
158
157
156
155
154
153
152
151
150
149
161
162
163
164
165
166
167
168
169
170
171
172
173
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
136
148
160
148
135
147
159
147
134
146
158
146
133
145
157
145
132
144
156
144
131
143
155
143
130
142
154
142
129
141
153
141
128
140
152
140
127
139
151
139
126
138
150
138
125
124
123
122
121
120
119
118
117
116
115
114
113
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
125
126
127
128
129
130
131
132
133
134
135
136
137
126
112
124
136
124
138
127
111
123
135
123
139
128
110
122
134
122
140
129
109
121
133
121
141
130
108
120
132
120
142
131
107
119
131
119
143
132
106
118
130
118
144
145
144
143
142
141
140
139
138
137
136
135
134
133
105
117
129
117
145
146
147
148
149
150
151
151
150
149
148
147
146
104
116
128
116
103
115
127
115
102
114
126
114
101
113
125
113
100
112
124
112
99
100
101
102
103
104
105
106
107
108
109
110
111
123
122
121
120
119
118
117
116
115
114
113
112
111
98
110
122
110
97
109
121
109
96
108
120
108
95
107
119
107
94
106
118
106
93
105
117
105
98
97
96
95
94
93
92
91
90
89
88
87
86
92
104
116
104
111
110
109
108
107
106
105
104
103
102
101
100
99
85
91
103
115
103
112
84
90
102
114
102
113
83
89
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
101
113
82
88
88
100
100
112
81
87
87
99
99
111
80
86
86
98
98
110
79
80
81
82
83
84
85
86
87
88
87
86
85
85
97
97
98
99
100
101
102
103
104
105
106
107
108
109
78
84
84
96
96
108
77
83
83
95
95
107
76
82
82
94
94
106
75
81
81
93
93
105
74
80
80
92
92
104
73
79
79
91
91
103
72
78
78
90
90
102
71
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
101
70
64
78
90
76
100
69
63
79
91
75
99
68
62
80
92
74
98
67
61
81
93
73
97
66
60
82
94
72
96
65
59
83
95
71
95
64
58
84
96
70
94
63
57
85
97
69
93
62
56
86
98
68
92
61
55
87
99
67
91
60
54
88
100
66
90
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
55
54
53
89
90
91
92
93
94
95
96
97
98
99
100
101
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
50
46
52
64
78
98
49
45
51
63
79
99
48
44
50
62
80
100
47
43
49
61
81
101
46
42
48
60
82
102
45
41
47
59
83
103
44
40
46
58
84
104
43
39
45
57
85
105
42
38
44
56
86
106
41
37
43
55
87
107
40
36
42
54
88
108
39
27
28
29
30
31
32
33
34
35
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
89
90
91
92
93
94
95
96
97
109
38
26
28
42
96
108
37
25
27
43
95
107
36
24
26
44
94
106
35
23
25
45
93
105
34
22
24
46
92
104
33
21
23
47
91
103
32
20
22
48
90
102
31
19
21
49
89
101
30
18
20
50
88
100
29
17
19
51
87
99
28
16
18
52
86
98
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
201
202
203
204
205
206
207
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
171
183
187
199
195
183
170
182
186
198
194
182
169
181
185
197
193
181
168
180
184
196
192
180
167
179
183
195
191
179
166
178
182
194
190
178
165
177
181
193
189
177
164
176
180
192
188
176
163
175
179
191
187
175
162
174
178
190
186
174
161
173
177
189
185
173
160
172
176
164
165
166
167
168
169
170
171
172
173
174
175
176
188
184
172
159
171
175
163
175
187
183
171
158
170
174
162
174
186
182
170
157
169
173
161
173
185
181
169
156
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
160
172
184
183
182
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
168
155
159
171
159
171
183
171
167
154
158
170
158
170
182
170
166
153
157
169
157
169
181
169
165
152
156
168
156
168
180
168
164
151
155
167
155
167
179
167
163
150
154
166
154
166
178
166
162
149
153
165
153
165
177
165
161
148
152
164
152
164
176
164
160
147
151
163
151
163
175
163
159
146
150
162
150
162
174
162
158
145
149
161
149
161
173
161
157
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
160
159
158
157
156
155
154
153
152
151
150
149
148
160
161
162
163
164
165
166
167
168
169
170
171
172
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
135
147
159
147
134
146
158
146
133
145
157
145
132
144
156
144
131
143
155
143
130
142
154
142
129
141
153
141
128
140
152
140
127
139
151
139
126
138
150
138
125
137
149
137
124
123
122
121
120
119
118
117
116
115
114
113
112
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
124
125
126
127
128
129
130
131
132
133
134
135
136
125
111
123
135
123
137
126
110
122
134
122
138
127
109
121
133
121
139
128
108
120
132
120
140
129
107
119
131
119
141
130
106
118
130
118
142
131
105
117
129
117
143
144
143
142
141
140
139
138
137
136
135
134
133
132
104
116
128
116
144
145
146
147
148
149
150
150
149
148
147
146
145
103
115
127
115
102
114
126
114
101
113
125
113
100
112
124
112
99
111
123
111
98
99
100
101
102
103
104
105
106
107
108
109
110
122
121
120
119
118
117
116
115
114
113
112
111
110
97
109
121
109
96
108
120
108
95
107
119
107
94
106
118
106
93
105
117
105
92
104
116
104
99
98
97
96
95
94
93
92
91
90
89
88
87
91
103
115
103
112
111
110
109
108
107
106
105
104
103
102
101
100
86
90
102
114
102
113
85
89
101
113
101
113
84
88
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
100
112
83
87
87
99
99
111
82
86
86
98
98
110
81
85
85
97
97
109
80
81
82
83
84
85
86
87
88
87
86
85
84
84
96
96
97
98
99
100
101
102
103
104
105
106
107
108
79
83
83
95
95
107
78
82
82
94
94
106
77
81
81
93
93
105
76
80
80
92
92
104
75
79
79
91
91
103
74
78
78
90
90
102
73
77
77
89
89
101
72
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
100
71
63
77
89
75
99
70
62
78
90
74
98
69
61
79
91
73
97
68
60
80
92
72
96
67
59
81
93
71
95
66
58
82
94
70
94
65
57
83
95
69
93
64
56
84
96
68
92
63
55
85
97
67
91
62
54
86
98
66
90
61
53
87
99
65
89
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
55
54
53
52
88
89
90
91
92
93
94
95
96
97
98
99
100
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
51
47
51
63
77
97
50
46
50
62
78
98
49
45
49
61
79
99
48
44
48
60
80
100
47
43
47
59
81
101
46
42
46
58
82
102
45
41
45
57
83
103
44
40
44
56
84
104
43
39
43
55
85
105
42
38
42
54
86
106
41
37
41
53
87
107
40
28
29
30
31
32
33
34
35
36
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
88
89
90
91
92
93
94
95
96
108
39
27
27
41
95
107
38
26
26
42
94
106
37
25
25
43
93
105
36
24
24
44
92
104
35
23
23
45
91
103
34
22
22
46
90
102
33
21
21
47
89
101
32
20
20
48
88
100
31
19
19
49
87
99
30
18
18
50
86
98
29
17
17
51
85
97
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
210
209
208
207
206
205
204
203
202
201
200
199
200
201
202
203
204
205
206
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
170
182
186
198
194
182
169
181
185
197
193
181
168
180
184
196
192
180
167
179
183
195
191
179
166
178
182
194
190
178
165
177
181
193
189
177
164
176
180
192
188
176
163
175
179
191
187
175
162
174
178
190
186
174
161
173
177
189
185
173
160
172
176
188
184
172
159
171
175
163
164
165
166
167
168
169
170
171
172
173
174
175
187
183
171
158
170
174
162
174
186
182
170
157
169
173
161
173
185
181
169
156
168
172
160
172
184
180
168
155
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
159
171
183
182
181
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
167
154
158
170
158
170
182
170
166
153
157
169
157
169
181
169
165
152
156
168
156
168
180
168
164
151
155
167
155
167
179
167
163
150
154
166
154
166
178
166
162
149
153
165
153
165
177
165
161
148
152
164
152
164
176
164
160
147
151
163
151
163
175
163
159
146
150
162
150
162
174
162
158
145
149
161
149
161
173
161
157
144
148
160
148
160
172
160
156
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
159
158
157
156
155
154
153
152
151
150
149
148
147
159
160
161
162
163
164
165
166
167
168
169
170
171
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
134
146
158
146
133
145
157
145
132
144
156
144
131
143
155
143
130
142
154
142
129
141
153
141
128
140
152
140
127
139
151
139
126
138
150
138
125
137
149
137
124
136
148
136
123
122
121
120
119
118
117
116
115
114
113
112
111
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
123
124
125
126
127
128
129
130
131
132
133
134
135
124
110
122
134
122
136
125
109
121
133
121
137
126
108
120
132
120
138
127
107
119
131
119
139
128
106
118
130
118
140
129
105
117
129
117
141
130
104
116
128
116
142
143
142
141
140
139
138
137
136
135
134
133
132
131
103
115
127
115
143
144
145
146
147
148
149
149
148
147
146
145
144
102
114
126
114
101
113
125
113
100
112
124
112
99
111
123
111
98
110
122
110
97
98
99
100
101
102
103
104
105
106
107
108
109
121
120
119
118
117
116
115
114
113
112
111
110
109
96
108
120
108
95
107
119
107
94
106
118
106
93
105
117
105
92
104
116
104
91
103
115
103
100
99
98
97
96
95
94
93
92
91
90
89
88
90
102
114
102
113
112
111
110
109
108
107
106
105
104
103
102
101
87
89
101
113
101
113
86
88
100
112
100
112
85
87
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
99
111
84
86
86
98
98
110
83
85
85
97
97
109
82
84
84
96
96
108
81
82
83
84
85
86
87
88
87
86
85
84
83
83
95
95
96
97
98
99
100
101
102
103
104
105
106
107
80
82
82
94
94
106
79
81
81
93
93
105
78
80
80
92
92
104
77
79
79
91
91
103
76
78
78
90
90
102
75
77
77
89
89
101
74
76
76
88
88
100
73
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
99
72
62
76
88
74
98
71
61
77
89
73
97
70
60
78
90
72
96
69
59
79
91
71
95
68
58
80
92
70
94
67
57
81
93
69
93
66
56
82
94
68
92
65
55
83
95
67
91
64
54
84
96
66
90
63
53
85
97
65
89
62
52
86
98
64
88
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
55
54
53
52
51
87
88
89
90
91
92
93
94
95
96
97
98
99
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
52
48
50
62
76
96
51
47
49
61
77
97
50
46
48
60
78
98
49
45
47
59
79
99
48
44
46
58
80
100
47
43
45
57
81
101
46
42
44
56
82
102
45
41
43
55
83
103
44
40
42
54
84
104
43
39
41
53
85
105
42
38
40
52
86
106
41
29
30
31
32
33
34
35
36
37
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
87
88
89
90
91
92
93
94
95
107
40
28
26
40
94
106
39
27
25
41
93
105
38
26
24
42
92
104
37
25
23
43
91
103
36
24
22
44
90
102
35
23
21
45
89
101
34
22
20
46
88
100
33
21
19
47
87
99
32
20
18
48
86
98
31
19
17
49
85
97
30
18
16
50
84
96
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
209
208
207
206
205
204
203
202
201
200
199
198
199
200
201
202
203
204
205
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
169
181
185
197
193
181
168
180
184
196
192
180
167
179
183
195
191
179
166
178
182
194
190
178
165
177
181
193
189
177
164
176
180
192
188
176
163
175
179
191
187
175
162
174
178
190
186
174
161
173
177
189
185
173
160
172
176
188
184
172
159
171
175
187
183
171
158
170
174
162
163
164
165
166
167
168
169
170
171
172
173
174
186
182
170
157
169
173
161
173
185
181
169
156
168
172
160
172
184
180
168
155
167
171
159
171
183
179
167
154
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
158
170
182
181
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
166
153
157
169
157
169
181
169
165
152
156
168
156
168
180
168
164
151
155
167
155
167
179
167
163
150
154
166
154
166
178
166
162
149
153
165
153
165
177
165
161
148
152
164
152
164
176
164
160
147
151
163
151
163
175
163
159
146
150
162
150
162
174
162
158
145
149
161
149
161
173
161
157
144
148
160
148
160
172
160
156
143
147
159
147
159
171
159
155
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
158
157
156
155
154
153
152
151
150
149
148
147
146
158
159
160
161
162
163
164
165
166
167
168
169
170
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
133
145
157
145
132
144
156
144
131
143
155
143
130
142
154
142
129
141
153
141
128
140
152
140
127
139
151
139
126
138
150
138
125
137
149
137
124
136
148
136
123
135
147
135
122
121
120
119
118
117
116
115
114
113
112
111
110
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
122
123
124
125
126
127
128
129
130
131
132
133
134
123
109
121
133
121
135
124
108
120
132
120
136
125
107
119
131
119
137
126
106
118
130
118
138
127
105
117
129
117
139
128
104
116
128
116
140
129
103
115
127
115
141
142
141
140
139
138
137
136
135
134
133
132
131
130
102
114
126
114
142
143
144
145
146
147
148
148
147
146
145
144
143
101
113
125
113
100
112
124
112
99
111
123
111
98
110
122
110
97
109
121
109
96
97
98
99
100
101
102
103
104
105
106
107
108
120
119
118
117
116
115
114
113
112
111
110
109
108
95
107
119
107
94
106
118
106
93
105
117
105
92
104
116
104
91
103
115
103
90
102
114
102
101
100
99
98
97
96
95
94
93
92
91
90
89
89
101
113
101
113
113
112
111
110
109
108
107
106
105
104
103
102
88
88
100
112
100
112
87
87
99
111
99
111
86
86
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
98
110
85
85
85
97
97
109
84
84
84
96
96
108
83
83
83
95
95
107
82
83
84
85
86
87
88
87
86
85
84
83
82
82
94
94
95
96
97
98
99
100
101
102
103
104
105
106
81
81
81
93
93
105
80
80
80
92
92
104
79
79
79
91
91
103
78
78
78
90
90
102
77
77
77
89
89
101
76
76
76
88
88
100
75
75
75
87
87
99
74
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
98
73
61
75
87
73
97
72
60
76
88
72
96
71
59
77
89
71
95
70
58
78
90
70
94
69
57
79
91
69
93
68
56
80
92
68
92
67
55
81
93
67
91
66
54
82
94
66
90
65
53
83
95
65
89
64
52
84
96
64
88
63
51
85
97
63
87
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
55
54
53
52
51
50
86
87
88
89
90
91
92
93
94
95
96
97
98
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
53
49
49
61
75
95
52
48
48
60
76
96
51
47
47
59
77
97
50
46
46
58
78
98
49
45
45
57
79
99
48
44
44
56
80
100
47
43
43
55
81
101
46
42
42
54
82
102
45
41
41
53
83
103
44
40
40
52
84
104
43
39
39
51
85
105
42
30
31
32
33
34
35
36
37
38
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
86
87
88
89
90
91
92
93
94
106
41
29
25
39
93
105
40
28
24
40
92
104
39
27
23
41
91
103
38
26
22
42
90
102
37
25
21
43
89
101
36
24
20
44
88
100
35
23
19
45
87
99
34
22
18
46
86
98
33
21
17
47
85
97
32
20
16
48
84
96
31
19
15
49
83
95
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
208
207
206
205
204
203
202
201
200
199
198
197
198
199
200
201
202
203
204
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
168
180
184
196
192
180
167
179
183
195
191
179
166
178
182
194
190
178
165
177
181
193
189
177
164
176
180
192
188
176
163
175
179
191
187
175
162
174
178
190
186
174
161
173
177
189
185
173
160
172
176
188
184
172
159
171
175
187
183
171
158
170
174
186
182
170
157
169
173
161
162
163
164
165
166
167
168
169
170
171
172
173
185
181
169
156
168
172
160
172
184
180
168
155
167
171
159
171
183
179
167
154
166
170
158
170
182
178
166
153
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
157
169
181
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
165
152
156
168
156
168
180
168
164
151
155
167
155
167
179
167
163
150
154
166
154
166
178
166
162
149
153
165
153
165
177
165
161
148
152
164
152
164
176
164
160
147
151
163
151
163
175
163
159
146
150
162
150
162
174
162
158
145
149
161
149
161
173
161
157
144
148
160
148
160
172
160
156
143
147
159
147
159
171
159
155
142
146
158
146
158
170
158
154
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
157
156
155
154
153
152
151
150
149
148
147
146
145
157
158
159
160
161
162
163
164
165
166
167
168
169
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
132
144
156
144
131
143
155
143
130
142
154
142
129
141
153
141
128
140
152
140
127
139
151
139
126
138
150
138
125
137
149
137
124
136
148
136
123
135
147
135
122
134
146
134
121
120
119
118
117
116
115
114
113
112
111
110
109
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
121
122
123
124
125
126
127
128
129
130
131
132
133
122
108
120
132
120
134
123
107
119
131
119
135
124
106
118
130
118
136
125
105
117
129
117
137
126
104
116
128
116
138
127
103
115
127
115
139
128
102
114
126
114
140
141
140
139
138
137
136
135
134
133
132
131
130
129
101
113
125
113
141
142
143
144
145
146
147
147
146
145
144
143
142
100
112
124
112
99
111
123
111
98
110
122
110
97
109
121
109
96
108
120
108
95
96
97
98
99
100
101
102
103
104
105
106
107
119
118
117
116
115
114
113
112
111
110
109
108
107
94
106
118
106
93
105
117
105
92
104
116
104
91
103
115
103
90
102
114
102
89
101
113
101
102
101
100
99
98
97
96
95
94
93
92
91
90
88
100
112
100
112
113
113
112
111
110
109
108
107
106
105
104
103
89
87
99
111
99
111
88
86
98
110
98
110
87
85
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
97
109
86
84
84
96
96
108
85
83
83
95
95
107
84
82
82
94
94
106
83
84
85
86
87
88
87
86
85
84
83
82
81
81
93
93
94
95
96
97
98
99
100
101
102
103
104
105
82
80
80
92
92
104
81
79
79
91
91
103
80
78
78
90
90
102
79
77
77
89
89
101
78
76
76
88
88
100
77
75
75
87
87
99
76
74
74
86
86
98
75
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
97
74
60
74
86
72
96
73
59
75
87
71
95
72
58
76
88
70
94
71
57
77
89
69
93
70
56
78
90
68
92
69
55
79
91
67
91
68
54
80
92
66
90
67
53
81
93
65
89
66
52
82
94
64
88
65
51
83
95
63
87
64
50
84
96
62
86
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
55
54
53
52
51
50
49
85
86
87
88
89
90
91
92
93
94
95
96
97
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
54
50
48
60
74
94
53
49
47
59
75
95
52
48
46
58
76
96
51
47
45
57
77
97
50
46
44
56
78
98
49
45
43
55
79
99
48
44
42
54
80
100
47
43
41
53
81
101
46
42
40
52
82
102
45
41
39
51
83
103
44
40
38
50
84
104
43
31
32
33
34
35
36
37
38
39
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
85
86
87
88
89
90
91
92
93
105
42
30
24
38
92
104
41
29
23
39
91
103
40
28
22
40
90
102
39
27
21
41
89
101
38
26
20
42
88
100
37
25
19
43
87
99
36
24
18
44
86
98
35
23
17
45
85
97
34
22
16
46
84
96
33
21
15
47
83
95
32
20
14
48
82
94
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
207
206
205
204
203
202
201
200
199
198
197
196
197
198
199
200
201
202
203
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
167
179
183
195
191
179
166
178
182
194
190
178
165
177
181
193
189
177
164
176
180
192
188
176
163
175
179
191
187
175
162
174
178
190
186
174
161
173
177
189
185
173
160
172
176
188
184
172
159
171
175
187
183
171
158
170
174
186
182
170
157
169
173
185
181
169
156
168
172
160
161
162
163
164
165
166
167
168
169
170
171
172
184
180
168
155
167
171
159
171
183
179
167
154
166
170
158
170
182
178
166
153
165
169
157
169
181
177
165
152
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
156
168
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
164
151
155
167
155
167
179
167
163
150
154
166
154
166
178
166
162
149
153
165
153
165
177
165
161
148
152
164
152
164
176
164
160
147
151
163
151
163
175
163
159
146
150
162
150
162
174
162
158
145
149
161
149
161
173
161
157
144
148
160
148
160
172
160
156
143
147
159
147
159
171
159
155
142
146
158
146
158
170
158
154
141
145
157
145
157
169
157
153
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
156
155
154
153
152
151
150
149
148
147
146
145
144
156
157
158
159
160
161
162
163
164
165
166
167
168
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
131
143
155
143
130
142
154
142
129
141
153
141
128
140
152
140
127
139
151
139
126
138
150
138
125
137
149
137
124
136
148
136
123
135
147
135
122
134
146
134
121
133
145
133
120
119
118
117
116
115
114
113
112
111
110
109
108
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
120
121
122
123
124
125
126
127
128
129
130
131
132
121
107
119
131
119
133
122
106
118
130
118
134
123
105
117
129
117
135
124
104
116
128
116
136
125
103
115
127
115
137
126
102
114
126
114
138
127
101
113
125
113
139
140
139
138
137
136
135
134
133
132
131
130
129
128
100
112
124
112
140
141
142
143
144
145
146
146
145
144
143
142
141
99
111
123
111
98
110
122
110
97
109
121
109
96
108
120
108
95
107
119
107
94
95
96
97
98
99
100
101
102
103
104
105
106
118
117
116
115
114
113
112
111
110
109
108
107
106
93
105
117
105
92
104
116
104
91
103
115
103
90
102
114
102
89
101
113
101
88
100
112
100
103
102
101
100
99
98
97
96
95
94
93
92
91
87
99
111
99
111
112
113
113
112
111
110
109
108
107
106
105
104
90
86
98
110
98
110
89
85
97
109
97
109
88
84
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
96
108
87
83
83
95
95
107
86
82
82
94
94
106
85
81
81
93
93
105
84
85
86
87
88
87
86
85
84
83
82
81
80
80
92
92
93
94
95
96
97
98
99
100
101
102
103
104
83
79
79
91
91
103
82
78
78
90
90
102
81
77
77
89
89
101
80
76
76
88
88
100
79
75
75
87
87
99
78
74
74
86
86
98
77
73
73
85
85
97
76
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
96
75
59
73
85
71
95
74
58
74
86
70
94
73
57
75
87
69
93
72
56
76
88
68
92
71
55
77
89
67
91
70
54
78
90
66
90
69
53
79
91
65
89
68
52
80
92
64
88
67
51
81
93
63
87
66
50
82
94
62
86
65
49
83
95
61
85
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
55
54
53
52
51
50
49
48
84
85
86
87
88
89
90
91
92
93
94
95
96
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
55
51
47
59
73
93
54
50
46
58
74
94
53
49
45
57
75
95
52
48
44
56
76
96
51
47
43
55
77
97
50
46
42
54
78
98
49
45
41
53
79
99
48
44
40
52
80
100
47
43
39
51
81
101
46
42
38
50
82
102
45
41
37
49
83
103
44
32
33
34
35
36
37
38
39
40
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
84
85
86
87
88
89
90
91
92
104
43
31
23
37
91
103
42
30
22
38
90
102
41
29
21
39
89
101
40
28
20
40
88
100
39
27
19
41
87
99
38
26
18
42
86
98
37
25
17
43
85
97
36
24
16
44
84
96
35
23
15
45
83
95
34
22
14
46
82
94
33
21
13
47
81
93
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
206
205
204
203
202
201
200
199
198
197
196
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
166
178
182
194
190
178
165
177
181
193
189
177
164
176
180
192
188
176
163
175
179
191
187
175
162
174
178
190
186
174
161
173
177
189
185
173
160
172
176
188
184
172
159
171
175
187
183
171
158
170
174
186
182
170
157
169
173
185
181
169
156
168
172
184
180
168
155
167
171
159
160
161
162
163
164
165
166
167
168
169
170
171
183
179
167
154
166
170
158
170
182
178
166
153
165
169
157
169
181
177
165
152
164
168
156
168
180
176
164
151
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
155
167
179
178
177
176
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
163
150
154
166
154
166
178
166
162
149
153
165
153
165
177
165
161
148
152
164
152
164
176
164
160
147
151
163
151
163
175
163
159
146
150
162
150
162
174
162
158
145
149
161
149
161
173
161
157
144
148
160
148
160
172
160
156
143
147
159
147
159
171
159
155
142
146
158
146
158
170
158
154
141
145
157
145
157
169
157
153
140
144
156
144
156
168
156
152
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
140
141
142
143
155
154
153
152
151
150
149
148
147
146
145
144
143
155
156
157
158
159
160
161
162
163
164
165
166
167
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
130
142
154
142
129
141
153
141
128
140
152
140
127
139
151
139
126
138
150
138
125
137
149
137
124
136
148
136
123
135
147
135
122
134
146
134
121
133
145
133
120
132
144
132
119
118
117
116
115
114
113
112
111
110
109
108
107
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
119
120
121
122
123
124
125
126
127
128
129
130
131
120
106
118
130
118
132
121
105
117
129
117
133
122
104
116
128
116
134
123
103
115
127
115
135
124
102
114
126
114
136
125
101
113
125
113
137
126
100
112
124
112
138
139
138
137
136
135
134
133
132
131
130
129
128
127
99
111
123
111
139
140
141
142
143
144
145
145
144
143
142
141
140
98
110
122
110
97
109
121
109
96
108
120
108
95
107
119
107
94
106
118
106
93
94
95
96
97
98
99
100
101
102
103
104
105
117
116
115
114
113
112
111
110
109
108
107
106
105
92
104
116
104
91
103
115
103
90
102
114
102
89
101
113
101
88
100
112
100
87
99
111
99
104
103
102
101
100
99
98
97
96
95
94
93
92
86
98
110
98
110
111
112
113
113
112
111
110
109
108
107
106
105
91
85
97
109
97
109
90
84
96
108
96
108
89
83
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
95
107
88
82
82
94
94
106
87
81
81
93
93
105
86
80
80
92
92
104
85
86
87
88
87
86
85
84
83
82
81
80
79
79
91
91
92
93
94
95
96
97
98
99
100
101
102
103
84
78
78
90
90
102
83
77
77
89
89
101
82
76
76
88
88
100
81
75
75
87
87
99
80
74
74
86
86
98
79
73
73
85
85
97
78
72
72
84
84
96
77
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
95
76
58
72
84
70
94
75
57
73
85
69
93
74
56
74
86
68
92
73
55
75
87
67
91
72
54
76
88
66
90
71
53
77
89
65
89
70
52
78
90
64
88
69
51
79
91
63
87
68
50
80
92
62
86
67
49
81
93
61
85
66
48
82
94
60
84
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
55
54
53
52
51
50
49
48
47
83
84
85
86
87
88
89
90
91
92
93
94
95
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
56
52
46
58
72
92
55
51
45
57
73
93
54
50
44
56
74
94
53
49
43
55
75
95
52
48
42
54
76
96
51
47
41
53
77
97
50
46
40
52
78
98
49
45
39
51
79
99
48
44
38
50
80
100
47
43
37
49
81
101
46
42
36
48
82
102
45
33
34
35
36
37
38
39
40
41
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
83
84
85
86
87
88
89
90
91
103
44
32
22
36
90
102
43
31
21
37
89
101
42
30
20
38
88
100
41
29
19
39
87
99
40
28
18
40
86
98
39
27
17
41
85
97
38
26
16
42
84
96
37
25
15
43
83
95
36
24
14
44
82
94
35
23
13
45
81
93
34
22
12
46
80
92
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
205
204
203
202
201
200
199
198
197
196
195
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
165
177
181
193
189
177
164
176
180
192
188
176
163
175
179
191
187
175
162
174
178
190
186
174
161
173
177
189
185
173
160
172
176
188
184
172
159
171
175
187
183
171
158
170
174
186
182
170
157
169
173
185
181
169
156
168
172
184
180
168
155
167
171
183
179
167
154
166
170
158
159
160
161
162
163
164
165
166
167
168
169
170
182
178
166
153
165
169
157
169
181
177
165
152
164
168
156
168
180
176
164
151
163
167
155
167
179
175
163
150
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
154
166
178
177
176
175
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
162
149
153
165
153
165
177
165
161
148
152
164
152
164
176
164
160
147
151
163
151
163
175
163
159
146
150
162
150
162
174
162
158
145
149
161
149
161
173
161
157
144
148
160
148
160
172
160
156
143
147
159
147
159
171
159
155
142
146
158
146
158
170
158
154
141
145
157
145
157
169
157
153
140
144
156
144
156
168
156
152
139
143
155
143
155
167
155
151
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
139
140
141
142
154
153
152
151
150
149
148
147
146
145
144
143
142
154
155
156
157
158
159
160
161
162
163
164
165
166
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
129
141
153
141
128
140
152
140
127
139
151
139
126
138
150
138
125
137
149
137
124
136
148
136
123
135
147
135
122
134
146
134
121
133
145
133
120
132
144
132
119
131
143
131
118
117
116
115
114
113
112
111
110
109
108
107
106
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
118
119
120
121
122
123
124
125
126
127
128
129
130
119
105
117
129
117
131
120
104
116
128
116
132
121
103
115
127
115
133
122
102
114
126
114
134
123
101
113
125
113
135
124
100
112
124
112
136
125
99
111
123
111
137
138
137
136
135
134
133
132
131
130
129
128
127
126
98
110
122
110
138
139
140
141
142
143
144
144
143
142
141
140
139
97
109
121
109
96
108
120
108
95
107
119
107
94
106
118
106
93
105
117
105
92
93
94
95
96
97
98
99
100
101
102
103
104
116
115
114
113
112
111
110
109
108
107
106
105
104
91
103
115
103
90
102
114
102
89
101
113
101
88
100
112
100
87
99
111
99
86
98
110
98
105
104
103
102
101
100
99
98
97
96
95
94
93
85
97
109
97
109
110
111
112
113
113
112
111
110
109
108
107
106
92
84
96
108
96
108
91
83
95
107
95
107
90
82
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
94
106
89
81
81
93
93
105
88
80
80
92
92
104
87
79
79
91
91
103
86
87
88
87
86
85
84
83
82
81
80
79
78
78
90
90
91
92
93
94
95
96
97
98
99
100
101
102
85
77
77
89
89
101
84
76
76
88
88
100
83
75
75
87
87
99
82
74
74
86
86
98
81
73
73
85
85
97
80
72
72
84
84
96
79
71
71
83
83
95
78
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
94
77
57
71
83
69
93
76
56
72
84
68
92
75
55
73
85
67
91
74
54
74
86
66
90
73
53
75
87
65
89
72
52
76
88
64
88
71
51
77
89
63
87
70
50
78
90
62
86
69
49
79
91
61
85
68
48
80
92
60
84
67
47
81
93
59
83
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
55
54
53
52
51
50
49
48
47
46
82
83
84
85
86
87
88
89
90
91
92
93
94
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
57
53
45
57
71
91
56
52
44
56
72
92
55
51
43
55
73
93
54
50
42
54
74
94
53
49
41
53
75
95
52
48
40
52
76
96
51
47
39
51
77
97
50
46
38
50
78
98
49
45
37
49
79
99
48
44
36
48
80
100
47
43
35
47
81
101
46
34
35
36
37
38
39
40
41
42
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
82
83
84
85
86
87
88
89
90
102
45
33
21
35
89
101
44
32
20
36
88
100
43
31
19
37
87
99
42
30
18
38
86
98
41
29
17
39
85
97
40
28
16
40
84
96
39
27
15
41
83
95
38
26
14
42
82
94
37
25
13
43
81
93
36
24
12
44
80
92
35
23
11
45
79
91
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
204
203
202
201
200
199
198
197
196
195
194
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
164
176
180
192
188
176
163
175
179
191
187
175
162
174
178
190
186
174
161
173
177
189
185
173
160
172
176
188
184
172
159
171
175
187
183
171
158
170
174
186
182
170
157
169
173
185
181
169
156
168
172
184
180
168
155
167
171
183
179
167
154
166
170
182
178
166
153
165
169
157
158
159
160
161
162
163
164
165
166
167
168
169
181
177
165
152
164
168
156
168
180
176
164
151
163
167
155
167
179
175
163
150
162
166
154
166
178
174
162
149
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
153
165
177
176
175
174
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
161
148
152
164
152
164
176
164
160
147
151
163
151
163
175
163
159
146
150
162
150
162
174
162
158
145
149
161
149
161
173
161
157
144
148
160
148
160
172
160
156
143
147
159
147
159
171
159
155
142
146
158
146
158
170
158
154
141
145
157
145
157
169
157
153
140
144
156
144
156
168
156
152
139
143
155
143
155
167
155
151
138
142
154
142
154
166
154
150
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
138
139
140
141
153
152
151
150
149
148
147
146
145
144
143
142
141
153
154
155
156
157
158
159
160
161
162
163
164
165
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
128
140
152
140
127
139
151
139
126
138
150
138
125
137
149
137
124
136
148
136
123
135
147
135
122
134
146
134
121
133
145
133
120
132
144
132
119
131
143
131
118
130
142
130
117
116
115
114
113
112
111
110
109
108
107
106
105
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
117
118
119
120
121
122
123
124
125
126
127
128
129
118
104
116
128
116
130
119
103
115
127
115
131
120
102
114
126
114
132
121
101
113
125
113
133
122
100
112
124
112
134
123
99
111
123
111
135
124
98
110
122
110
136
137
136
135
134
133
132
131
130
129
128
127
126
125
97
109
121
109
137
138
139
140
141
142
143
143
142
141
140
139
138
96
108
120
108
95
107
119
107
94
106
118
106
93
105
117
105
92
104
116
104
91
92
93
94
95
96
97
98
99
100
101
102
103
115
114
113
112
111
110
109
108
107
106
105
104
103
90
102
114
102
89
101
113
101
88
100
112
100
87
99
111
99
86
98
110
98
85
97
109
97
106
105
104
103
102
101
100
99
98
97
96
95
94
84
96
108
96
108
109
110
111
112
113
113
112
111
110
109
108
107
93
83
95
107
95
107
92
82
94
106
94
106
91
81
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
93
105
90
80
80
92
92
104
89
79
79
91
91
103
88
78
78
90
90
102
87
88
87
86
85
84
83
82
81
80
79
78
77
77
89
89
90
91
92
93
94
95
96
97
98
99
100
101
86
76
76
88
88
100
85
75
75
87
87
99
84
74
74
86
86
98
83
73
73
85
85
97
82
72
72
84
84
96
81
71
71
83
83
95
80
70
70
82
82
94
79
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
93
78
56
70
82
68
92
77
55
71
83
67
91
76
54
72
84
66
90
75
53
73
85
65
89
74
52
74
86
64
88
73
51
75
87
63
87
72
50
76
88
62
86
71
49
77
89
61
85
70
48
78
90
60
84
69
47
79
91
59
83
68
46
80
92
58
82
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
58
57
56
55
56
55
54
53
52
51
50
49
48
47
46
45
81
82
83
84
85
86
87
88
89
90
91
92
93
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
58
54
44
56
70
90
57
53
43
55
71
91
56
52
42
54
72
92
55
51
41
53
73
93
54
50
40
52
74
94
53
49
39
51
75
95
52
48
38
50
76
96
51
47
37
49
77
97
50
46
36
48
78
98
49
45
35
47
79
99
48
44
34
46
80
100
47
35
36
37
38
39
40
41
42
43
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
81
82
83
84
85
86
87
88
89
101
46
34
20
34
88
100
45
33
19
35
87
99
44
32
18
36
86
98
43
31
17
37
85
97
42
30
16
38
84
96
41
29
15
39
83
95
40
28
14
40
82
94
39
27
13
41
81
93
38
26
12
42
80
92
37
25
11
43
79
91
36
24
10
44
78
90
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
203
202
201
200
199
198
197
196
195
194
193
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
163
175
179
191
187
175
162
174
178
190
186
174
161
173
177
189
185
173
160
172
176
188
184
172
159
171
175
187
183
171
158
170
174
186
182
170
157
169
173
185
181
169
156
168
172
184
180
168
155
167
171
183
179
167
154
166
170
182
178
166
153
165
169
181
177
165
152
164
168
156
157
158
159
160
161
162
163
164
165
166
167
168
180
176
164
151
163
167
155
167
179
175
163
150
162
166
154
166
178
174
162
149
161
165
153
165
177
173
161
148
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
152
164
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
160
147
151
163
151
163
175
163
159
146
150
162
150
162
174
162
158
145
149
161
149
161
173
161
157
144
148
160
148
160
172
160
156
143
147
159
147
159
171
159
155
142
146
158
146
158
170
158
154
141
145
157
145
157
169
157
153
140
144
156
144
156
168
156
152
139
143
155
143
155
167
155
151
138
142
154
142
154
166
154
150
137
141
153
141
153
165
153
149
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
137
138
139
140
152
151
150
149
148
147
146
145
144
143
142
141
140
152
153
154
155
156
157
158
159
160
161
162
163
164
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
127
139
151
139
126
138
150
138
125
137
149
137
124
136
148
136
123
135
147
135
122
134
146
134
121
133
145
133
120
132
144
132
119
131
143
131
118
130
142
130
117
129
141
129
116
115
114
113
112
111
110
109
108
107
106
105
104
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
116
117
118
119
120
121
122
123
124
125
126
127
128
117
103
115
127
115
129
118
102
114
126
114
130
119
101
113
125
113
131
120
100
112
124
112
132
121
99
111
123
111
133
122
98
110
122
110
134
123
97
109
121
109
135
136
135
134
133
132
131
130
129
128
127
126
125
124
96
108
120
108
136
137
138
139
140
141
142
142
141
140
139
138
137
95
107
119
107
94
106
118
106
93
105
117
105
92
104
116
104
91
103
115
103
90
91
92
93
94
95
96
97
98
99
100
101
102
114
113
112
111
110
109
108
107
106
105
104
103
102
89
101
113
101
88
100
112
100
87
99
111
99
86
98
110
98
85
97
109
97
84
96
108
96
107
106
105
104
103
102
101
100
99
98
97
96
95
83
95
107
95
107
108
109
110
111
112
113
113
112
111
110
109
108
94
82
94
106
94
106
93
81
93
105
93
105
92
80
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
92
104
91
79
79
91
91
103
90
78
78
90
90
102
89
77
77
89
89
101
88
87
86
85
84
83
82
81
80
79
78
77
76
76
88
88
89
90
91
92
93
94
95
96
97
98
99
100
87
75
75
87
87
99
86
74
74
86
86
98
85
73
73
85
85
97
84
72
72
84
84
96
83
71
71
83
83
95
82
70
70
82
82
94
81
69
69
81
81
93
80
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
92
79
55
69
81
67
91
78
54
70
82
66
90
77
53
71
83
65
89
76
52
72
84
64
88
75
51
73
85
63
87
74
50
74
86
62
86
73
49
75
87
61
85
72
48
76
88
60
84
71
47
77
89
59
83
70
46
78
90
58
82
69
45
79
91
57
81
60
61
62
63
64
65
66
67
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
80
81
82
83
84
85
86
87
88
89
90
91
92
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
59
55
43
55
69
89
58
54
42
54
70
90
57
53
41
53
71
91
56
52
40
52
72
92
55
51
39
51
73
93
54
50
38
50
74
94
53
49
37
49
75
95
52
48
36
48
76
96
51
47
35
47
77
97
50
46
34
46
78
98
49
45
33
45
79
99
48
36
37
38
39
40
41
42
43
44
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
80
81
82
83
84
85
86
87
88
100
47
35
19
33
87
99
46
34
18
34
86
98
45
33
17
35
85
97
44
32
16
36
84
96
43
31
15
37
83
95
42
30
14
38
82
94
41
29
13
39
81
93
40
28
12
40
80
92
39
27
11
41
79
91
38
26
10
42
78
90
37
25
9
43
77
89
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
162
174
178
190
186
174
161
173
177
189
185
173
160
172
176
188
184
172
159
171
175
187
183
171
158
170
174
186
182
170
157
169
173
185
181
169
156
168
172
184
180
168
155
167
171
183
179
167
154
166
170
182
178
166
153
165
169
181
177
165
152
164
168
180
176
164
151
163
167
155
156
157
158
159
160
161
162
163
164
165
166
167
179
175
163
150
162
166
154
166
178
174
162
149
161
165
153
165
177
173
161
148
160
164
152
164
176
172
160
147
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
151
163
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
159
146
150
162
150
162
174
162
158
145
149
161
149
161
173
161
157
144
148
160
148
160
172
160
156
143
147
159
147
159
171
159
155
142
146
158
146
158
170
158
154
141
145
157
145
157
169
157
153
140
144
156
144
156
168
156
152
139
143
155
143
155
167
155
151
138
142
154
142
154
166
154
150
137
141
153
141
153
165
153
149
136
140
152
140
152
164
152
148
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
136
137
138
139
151
150
149
148
147
146
145
144
143
142
141
140
139
151
152
153
154
155
156
157
158
159
160
161
162
163
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
126
138
150
138
125
137
149
137
124
136
148
136
123
135
147
135
122
134
146
134
121
133
145
133
120
132
144
132
119
131
143
131
118
130
142
130
117
129
141
129
116
128
140
128
115
114
113
112
111
110
109
108
107
106
105
104
103
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
115
116
117
118
119
120
121
122
123
124
125
126
127
116
102
114
126
114
128
117
101
113
125
113
129
118
100
112
124
112
130
119
99
111
123
111
131
120
98
110
122
110
132
121
97
109
121
109
133
122
96
108
120
108
134
135
134
133
132
131
130
129
128
127
126
125
124
123
95
107
119
107
135
136
137
138
139
140
141
141
140
139
138
137
136
94
106
118
106
93
105
117
105
92
104
116
104
91
103
115
103
90
102
114
102
89
90
91
92
93
94
95
96
97
98
99
100
101
113
112
111
110
109
108
107
106
105
104
103
102
101
88
100
112
100
87
99
111
99
86
98
110
98
85
97
109
97
84
96
108
96
83
95
107
95
106
105
104
103
102
101
100
99
98
97
96
95
94
82
94
106
94
106
107
108
109
110
111
112
112
111
110
109
108
107
93
81
93
105
93
105
92
80
92
104
92
104
91
79
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
91
103
90
78
78
90
90
102
89
77
77
89
89
101
88
76
76
88
88
100
87
86
85
84
83
82
81
80
79
78
77
76
75
75
87
87
88
89
90
91
92
93
94
95
96
97
98
99
86
74
74
86
86
98
85
73
73
85
85
97
84
72
72
84
84
96
83
71
71
83
83
95
82
70
70
82
82
94
81
69
69
81
81
93
80
68
68
80
80
92
79
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
91
78
54
68
80
66
90
77
53
69
81
65
89
76
52
70
82
64
88
75
51
71
83
63
87
74
50
72
84
62
86
73
49
73
85
61
85
72
48
74
86
60
84
71
47
75
87
59
83
70
46
76
88
58
82
69
45
77
89
57
81
68
44
78
90
56
80
61
62
63
64
65
66
67
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
79
80
81
82
83
84
85
86
87
88
89
90
91
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
60
56
42
54
68
88
59
55
41
53
69
89
58
54
40
52
70
90
57
53
39
51
71
91
56
52
38
50
72
92
55
51
37
49
73
93
54
50
36
48
74
94
53
49
35
47
75
95
52
48
34
46
76
96
51
47
33
45
77
97
50
46
32
44
78
98
49
37
38
39
40
41
42
43
44
45
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
79
80
81
82
83
84
85
86
87
99
48
36
18
32
86
98
47
35
17
33
85
97
46
34
16
34
84
96
45
33
15
35
83
95
44
32
14
36
82
94
43
31
13
37
81
93
42
30
12
38
80
92
41
29
11
39
79
91
40
28
10
40
78
90
39
27
9
41
77
89
38
26
8
42
76
88
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
161
173
177
189
185
173
160
172
176
188
184
172
159
171
175
187
183
171
158
170
174
186
182
170
157
169
173
185
181
169
156
168
172
184
180
168
155
167
171
183
179
167
154
166
170
182
178
166
153
165
169
181
177
165
152
164
168
180
176
164
151
163
167
179
175
163
150
162
166
154
155
156
157
158
159
160
161
162
163
164
165
166
178
174
162
149
161
165
153
165
177
173
161
148
160
164
152
164
176
172
160
147
159
163
151
163
175
171
159
146
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
150
162
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
158
145
149
161
149
161
173
161
157
144
148
160
148
160
172
160
156
143
147
159
147
159
171
159
155
142
146
158
146
158
170
158
154
141
145
157
145
157
169
157
153
140
144
156
144
156
168
156
152
139
143
155
143
155
167
155
151
138
142
154
142
154
166
154
150
137
141
153
141
153
165
153
149
136
140
152
140
152
164
152
148
135
139
151
139
151
163
151
147
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
135
136
137
138
150
149
148
147
146
145
144
143
142
141
140
139
138
150
151
152
153
154
155
156
157
158
159
160
161
162
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
125
137
149
137
124
136
148
136
123
135
147
135
122
134
146
134
121
133
145
133
120
132
144
132
119
131
143
131
118
130
142
130
117
129
141
129
116
128
140
128
115
127
139
127
114
113
112
111
110
109
108
107
106
105
104
103
102
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
114
115
116
117
118
119
120
121
122
123
124
125
126
115
101
113
125
113
127
116
100
112
124
112
128
117
99
111
123
111
129
118
98
110
122
110
130
119
97
109
121
109
131
120
96
108
120
108
132
121
95
107
119
107
133
134
133
132
131
130
129
128
127
126
125
124
123
122
94
106
118
106
134
135
136
137
138
139
140
140
139
138
137
136
135
93
105
117
105
92
104
116
104
91
103
115
103
90
102
114
102
89
101
113
101
88
89
90
91
92
93
94
95
96
97
98
99
100
112
111
110
109
108
107
106
105
104
103
102
101
100
87
99
111
99
86
98
110
98
85
97
109
97
84
96
108
96
83
95
107
95
82
94
106
94
105
104
103
102
101
100
99
98
97
96
95
94
93
81
93
105
93
105
106
107
108
109
110
111
111
110
109
108
107
106
92
80
92
104
92
104
91
79
91
103
91
103
90
78
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
90
102
89
77
77
89
89
101
88
76
76
88
88
100
87
75
75
87
87
99
86
85
84
83
82
81
80
79
78
77
76
75
74
74
86
86
87
88
89
90
91
92
93
94
95
96
97
98
85
73
73
85
85
97
84
72
72
84
84
96
83
71
71
83
83
95
82
70
70
82
82
94
81
69
69
81
81
93
80
68
68
80
80
92
79
67
67
79
79
91
78
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
90
77
53
67
79
65
89
76
52
68
80
64
88
75
51
69
81
63
87
74
50
70
82
62
86
73
49
71
83
61
85
72
48
72
84
60
84
71
47
73
85
59
83
70
46
74
86
58
82
69
45
75
87
57
81
68
44
76
88
56
80
67
43
77
89
55
79
62
63
64
65
66
67
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
78
79
80
81
82
83
84
85
86
87
88
89
90
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
61
55
41
53
67
87
60
56
40
52
68
88
59
55
39
51
69
89
58
54
38
50
70
90
57
53
37
49
71
91
56
52
36
48
72
92
55
51
35
47
73
93
54
50
34
46
74
94
53
49
33
45
75
95
52
48
32
44
76
96
51
47
31
43
77
97
50
38
39
40
41
42
43
44
45
46
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
78
79
80
81
82
83
84
85
86
98
49
37
17
31
85
97
48
36
16
32
84
96
47
35
15
33
83
95
46
34
14
34
82
94
45
33
13
35
81
93
44
32
12
36
80
92
43
31
11
37
79
91
42
30
10
38
78
90
41
29
9
39
77
89
40
28
8
40
76
88
39
27
7
41
75
87
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
160
172
176
188
184
172
159
171
175
187
183
171
158
170
174
186
182
170
157
169
173
185
181
169
156
168
172
184
180
168
155
167
171
183
179
167
154
166
170
182
178
166
153
165
169
181
177
165
152
164
168
180
176
164
151
163
167
179
175
163
150
162
166
178
174
162
149
161
165
153
154
155
156
157
158
159
160
161
162
163
164
165
177
173
161
148
160
164
152
164
176
172
160
147
159
163
151
163
175
171
159
146
158
162
150
162
174
170
158
145
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
149
161
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
157
144
148
160
148
160
172
160
156
143
147
159
147
159
171
159
155
142
146
158
146
158
170
158
154
141
145
157
145
157
169
157
153
140
144
156
144
156
168
156
152
139
143
155
143
155
167
155
151
138
142
154
142
154
166
154
150
137
141
153
141
153
165
153
149
136
140
152
140
152
164
152
148
135
139
151
139
151
163
151
147
134
138
150
138
150
162
150
146
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
134
135
136
137
149
148
147
146
145
144
143
142
141
140
139
138
137
149
150
151
152
153
154
155
156
157
158
159
160
161
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
124
136
148
136
123
135
147
135
122
134
146
134
121
133
145
133
120
132
144
132
119
131
143
131
118
130
142
130
117
129
141
129
116
128
140
128
115
127
139
127
114
126
138
126
113
112
111
110
109
108
107
106
105
104
103
102
101
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
113
114
115
116
117
118
119
120
121
122
123
124
125
114
100
112
124
112
126
115
99
111
123
111
127
116
98
110
122
110
128
117
97
109
121
109
129
118
96
108
120
108
130
119
95
107
119
107
131
120
94
106
118
106
132
133
132
131
130
129
128
127
126
125
124
123
122
121
93
105
117
105
133
134
135
136
137
138
139
139
138
137
136
135
134
92
104
116
104
91
103
115
103
90
102
114
102
89
101
113
101
88
100
112
100
87
88
89
90
91
92
93
94
95
96
97
98
99
111
110
109
108
107
106
105
104
103
102
101
100
99
86
98
110
98
85
97
109
97
84
96
108
96
83
95
107
95
82
94
106
94
81
93
105
93
104
103
102
101
100
99
98
97
96
95
94
93
92
80
92
104
92
104
105
106
107
108
109
110
110
109
108
107
106
105
91
79
91
103
91
103
90
78
90
102
90
102
89
77
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
89
101
88
76
76
88
88
100
87
75
75
87
87
99
86
74
74
86
86
98
85
84
83
82
81
80
79
78
77
76
75
74
73
73
85
85
86
87
88
89
90
91
92
93
94
95
96
97
84
72
72
84
84
96
83
71
71
83
83
95
82
70
70
82
82
94
81
69
69
81
81
93
80
68
68
80
80
92
79
67
67
79
79
91
78
66
66
78
78
90
77
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
89
76
52
66
78
64
88
75
51
67
79
63
87
74
50
68
80
62
86
73
49
69
81
61
85
72
48
70
82
60
84
71
47
71
83
59
83
70
46
72
84
58
82
69
45
73
85
57
81
68
44
74
86
56
80
67
43
75
87
55
79
66
42
76
88
54
78
63
64
65
66
67
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
77
78
79
80
81
82
83
84
85
86
87
88
89
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
62
54
40
52
66
86
61
55
39
51
67
87
60
56
38
50
68
88
59
55
37
49
69
89
58
54
36
48
70
90
57
53
35
47
71
91
56
52
34
46
72
92
55
51
33
45
73
93
54
50
32
44
74
94
53
49
31
43
75
95
52
48
30
42
76
96
51
39
40
41
42
43
44
45
46
47
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
77
78
79
80
81
82
83
84
85
97
50
38
16
30
84
96
49
37
15
31
83
95
48
36
14
32
82
94
47
35
13
33
81
93
46
34
12
34
80
92
45
33
11
35
79
91
44
32
10
36
78
90
43
31
9
37
77
89
42
30
8
38
76
88
41
29
7
39
75
87
40
28
6
40
74
86
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
159
171
175
187
183
171
158
170
174
186
182
170
157
169
173
185
181
169
156
168
172
184
180
168
155
167
171
183
179
167
154
166
170
182
178
166
153
165
169
181
177
165
152
164
168
180
176
164
151
163
167
179
175
163
150
162
166
178
174
162
149
161
165
177
173
161
148
160
164
152
153
154
155
156
157
158
159
160
161
162
163
164
176
172
160
147
159
163
151
163
175
171
159
146
158
162
150
162
174
170
158
145
157
161
149
161
173
169
157
144
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
148
160
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
156
143
147
159
147
159
171
159
155
142
146
158
146
158
170
158
154
141
145
157
145
157
169
157
153
140
144
156
144
156
168
156
152
139
143
155
143
155
167
155
151
138
142
154
142
154
166
154
150
137
141
153
141
153
165
153
149
136
140
152
140
152
164
152
148
135
139
151
139
151
163
151
147
134
138
150
138
150
162
150
146
133
137
149
137
149
161
149
145
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
133
134
135
136
148
147
146
145
144
143
142
141
140
139
138
137
136
148
149
150
151
152
153
154
155
156
157
158
159
160
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
123
135
147
135
122
134
146
134
121
133
145
133
120
132
144
132
119
131
143
131
118
130
142
130
117
129
141
129
116
128
140
128
115
127
139
127
114
126
138
126
113
125
137
125
112
111
110
109
108
107
106
105
104
103
102
101
100
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
112
113
114
115
116
117
118
119
120
121
122
123
124
113
99
111
123
111
125
114
98
110
122
110
126
115
97
109
121
109
127
116
96
108
120
108
128
117
95
107
119
107
129
118
94
106
118
106
130
119
93
105
117
105
131
132
131
130
129
128
127
126
125
124
123
122
121
120
92
104
116
104
132
133
134
135
136
137
138
138
137
136
135
134
133
91
103
115
103
90
102
114
102
89
101
113
101
88
100
112
100
87
99
111
99
86
87
88
89
90
91
92
93
94
95
96
97
98
110
109
108
107
106
105
104
103
102
101
100
99
98
85
97
109
97
84
96
108
96
83
95
107
95
82
94
106
94
81
93
105
93
80
92
104
92
103
102
101
100
99
98
97
96
95
94
93
92
91
79
91
103
91
103
104
105
106
107
108
109
109
108
107
106
105
104
90
78
90
102
90
102
89
77
89
101
89
101
88
76
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
88
100
87
75
75
87
87
99
86
74
74
86
86
98
85
73
73
85
85
97
84
83
82
81
80
79
78
77
76
75
74
73
72
72
84
84
85
86
87
88
89
90
91
92
93
94
95
96
83
71
71
83
83
95
82
70
70
82
82
94
81
69
69
81
81
93
80
68
68
80
80
92
79
67
67
79
79
91
78
66
66
78
78
90
77
65
65
77
77
89
76
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
88
75
51
65
77
63
87
74
50
66
78
62
86
73
49
67
79
61
85
72
48
68
80
60
84
71
47
69
81
59
83
70
46
70
82
58
82
69
45
71
83
57
81
68
44
72
84
56
80
67
43
73
85
55
79
66
42
74
86
54
78
65
41
75
87
53
77
64
65
66
67
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
40
76
77
78
79
80
81
82
83
84
85
86
87
88
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
63
53
39
51
65
85
62
54
38
50
66
86
61
55
37
49
67
87
60
56
36
48
68
88
59
55
35
47
69
89
58
54
34
46
70
90
57
53
33
45
71
91
56
52
32
44
72
92
55
51
31
43
73
93
54
50
30
42
74
94
53
49
29
41
75
95
52
40
41
42
43
44
45
46
47
48
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
76
77
78
79
80
81
82
83
84
96
51
39
15
29
83
95
50
38
14
30
82
94
49
37
13
31
81
93
48
36
12
32
80
92
47
35
11
33
79
91
46
34
10
34
78
90
45
33
9
35
77
89
44
32
8
36
76
88
43
31
7
37
75
87
42
30
6
38
74
86
41
29
5
39
73
85
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
158
170
174
186
182
170
157
169
173
185
181
169
156
168
172
184
180
168
155
167
171
183
179
167
154
166
170
182
178
166
153
165
169
181
177
165
152
164
168
180
176
164
151
163
167
179
175
163
150
162
166
178
174
162
149
161
165
177
173
161
148
160
164
176
172
160
147
159
163
151
152
153
154
155
156
157
158
159
160
161
162
163
175
171
159
146
158
162
150
162
174
170
158
145
157
161
149
161
173
169
157
144
156
160
148
160
172
168
156
143
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
147
159
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
155
142
146
158
146
158
170
158
154
141
145
157
145
157
169
157
153
140
144
156
144
156
168
156
152
139
143
155
143
155
167
155
151
138
142
154
142
154
166
154
150
137
141
153
141
153
165
153
149
136
140
152
140
152
164
152
148
135
139
151
139
151
163
151
147
134
138
150
138
150
162
150
146
133
137
149
137
149
161
149
145
132
136
148
136
148
160
148
144
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
132
133
134
135
147
146
145
144
143
142
141
140
139
138
137
136
135
147
148
149
150
151
152
153
154
155
156
157
158
159
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
122
134
146
134
121
133
145
133
120
132
144
132
119
131
143
131
118
130
142
130
117
129
141
129
116
128
140
128
115
127
139
127
114
126
138
126
113
125
137
125
112
124
136
124
111
110
109
108
107
106
105
104
103
102
101
100
99
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
111
112
113
114
115
116
117
118
119
120
121
122
123
112
98
110
122
110
124
113
97
109
121
109
125
114
96
108
120
108
126
115
95
107
119
107
127
116
94
106
118
106
128
117
93
105
117
105
129
118
92
104
116
104
130
131
130
129
128
127
126
125
124
123
122
121
120
119
91
103
115
103
131
132
133
134
135
136
137
137
136
135
134
133
132
90
102
114
102
89
101
113
101
88
100
112
100
87
99
111
99
86
98
110
98
85
86
87
88
89
90
91
92
93
94
95
96
97
109
108
107
106
105
104
103
102
101
100
99
98
97
84
96
108
96
83
95
107
95
82
94
106
94
81
93
105
93
80
92
104
92
79
91
103
91
102
101
100
99
98
97
96
95
94
93
92
91
90
78
90
102
90
102
103
104
105
106
107
108
108
107
106
105
104
103
89
77
89
101
89
101
88
76
88
100
88
100
87
75
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
87
99
86
74
74
86
86
98
85
73
73
85
85
97
84
72
72
84
84
96
83
82
81
80
79
78
77
76
75
74
73
72
71
71
83
83
84
85
86
87
88
89
90
91
92
93
94
95
82
70
70
82
82
94
81
69
69
81
81
93
80
68
68
80
80
92
79
67
67
79
79
91
78
66
66
78
78
90
77
65
65
77
77
89
76
64
64
76
76
88
75
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
87
74
50
64
76
62
86
73
49
65
77
61
85
72
48
66
78
60
84
71
47
67
79
59
83
70
46
68
80
58
82
69
45
69
81
57
81
68
44
70
82
56
80
67
43
71
83
55
79
66
42
72
84
54
78
65
41
73
85
53
77
64
40
74
86
52
76
65
66
67
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
40
39
75
76
77
78
79
80
81
82
83
84
85
86
87
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
64
52
38
50
64
84
63
53
37
49
65
85
62
54
36
48
66
86
61
55
35
47
67
87
60
56
34
46
68
88
59
55
33
45
69
89
58
54
32
44
70
90
57
53
31
43
71
91
56
52
30
42
72
92
55
51
29
41
73
93
54
50
28
40
74
94
53
41
42
43
44
45
46
47
48
49
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
75
76
77
78
79
80
81
82
83
95
52
40
14
28
82
94
51
39
13
29
81
93
50
38
12
30
80
92
49
37
11
31
79
91
48
36
10
32
78
90
47
35
9
33
77
89
46
34
8
34
76
88
45
33
7
35
75
87
44
32
6
36
74
86
43
31
5
37
73
85
42
30
4
38
72
84
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
157
169
173
185
181
169
156
168
172
184
180
168
155
167
171
183
179
167
154
166
170
182
178
166
153
165
169
181
177
165
152
164
168
180
176
164
151
163
167
179
175
163
150
162
166
178
174
162
149
161
165
177
173
161
148
160
164
176
172
160
147
159
163
175
171
159
146
158
162
150
151
152
153
154
155
156
157
158
159
160
161
162
174
170
158
145
157
161
149
161
173
169
157
144
156
160
148
160
172
168
156
143
155
159
147
159
171
167
155
142
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
146
158
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
154
141
145
157
145
157
169
157
153
140
144
156
144
156
168
156
152
139
143
155
143
155
167
155
151
138
142
154
142
154
166
154
150
137
141
153
141
153
165
153
149
136
140
152
140
152
164
152
148
135
139
151
139
151
163
151
147
134
138
150
138
150
162
150
146
133
137
149
137
149
161
149
145
132
136
148
136
148
160
148
144
131
135
147
135
147
159
147
143
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
131
132
133
134
146
145
144
143
142
141
140
139
138
137
136
135
134
146
147
148
149
150
151
152
153
154
155
156
157
158
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
121
133
145
133
120
132
144
132
119
131
143
131
118
130
142
130
117
129
141
129
116
128
140
128
115
127
139
127
114
126
138
126
113
125
137
125
112
124
136
124
111
123
135
123
110
109
108
107
106
105
104
103
102
101
100
99
98
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
110
111
112
113
114
115
116
117
118
119
120
121
122
111
97
109
121
109
123
112
96
108
120
108
124
113
95
107
119
107
125
114
94
106
118
106
126
115
93
105
117
105
127
116
92
104
116
104
128
117
91
103
115
103
129
130
129
128
127
126
125
124
123
122
121
120
119
118
90
102
114
102
130
131
132
133
134
135
136
136
135
134
133
132
131
89
101
113
101
88
100
112
100
87
99
111
99
86
98
110
98
85
97
109
97
84
85
86
87
88
89
90
91
92
93
94
95
96
108
107
106
105
104
103
102
101
100
99
98
97
96
83
95
107
95
82
94
106
94
81
93
105
93
80
92
104
92
79
91
103
91
78
90
102
90
101
100
99
98
97
96
95
94
93
92
91
90
89
77
89
101
89
101
102
103
104
105
106
107
107
106
105
104
103
102
88
76
88
100
88
100
87
75
87
99
87
99
86
74
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
86
98
85
73
73
85
85
97
84
72
72
84
84
96
83
71
71
83
83
95
82
81
80
79
78
77
76
75
74
73
72
71
70
70
82
82
83
84
85
86
87
88
89
90
91
92
93
94
81
69
69
81
81
93
80
68
68
80
80
92
79
67
67
79
79
91
78
66
66
78
78
90
77
65
65
77
77
89
76
64
64
76
76
88
75
63
63
75
75
87
74
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
86
73
49
63
75
61
85
72
48
64
76
60
84
71
47
65
77
59
83
70
46
66
78
58
82
69
45
67
79
57
81
68
44
68
80
56
80
67
43
69
81
55
79
66
42
70
82
54
78
65
41
71
83
53
77
64
40
72
84
52
76
63
39
73
85
51
75
66
67
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
40
39
38
74
75
76
77
78
79
80
81
82
83
84
85
86
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
65
51
37
49
63
83
64
52
36
48
64
84
63
53
35
47
65
85
62
54
34
46
66
86
61
55
33
45
67
87
60
56
32
44
68
88
59
55
31
43
69
89
58
54
30
42
70
90
57
53
29
41
71
91
56
52
28
40
72
92
55
51
27
39
73
93
54
42
43
44
45
46
47
48
49
50
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
74
75
76
77
78
79
80
81
82
94
53
41
13
27
81
93
52
40
12
28
80
92
51
39
11
29
79
91
50
38
10
30
78
90
49
37
9
31
77
89
48
36
8
32
76
88
47
35
7
33
75
87
46
34
6
34
74
86
45
33
5
35
73
85
44
32
4
36
72
84
43
31
3
37
71
83
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
156
168
172
184
180
168
155
167
171
183
179
167
154
166
170
182
178
166
153
165
169
181
177
165
152
164
168
180
176
164
151
163
167
179
175
163
150
162
166
178
174
162
149
161
165
177
173
161
148
160
164
176
172
160
147
159
163
175
171
159
146
158
162
174
170
158
145
157
161
149
150
151
152
153
154
155
156
157
158
159
160
161
173
169
157
144
156
160
148
160
172
168
156
143
155
159
147
159
171
167
155
142
154
158
146
158
170
166
154
141
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
145
157
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
153
140
144
156
144
156
168
156
152
139
143
155
143
155
167
155
151
138
142
154
142
154
166
154
150
137
141
153
141
153
165
153
149
136
140
152
140
152
164
152
148
135
139
151
139
151
163
151
147
134
138
150
138
150
162
150
146
133
137
149
137
149
161
149
145
132
136
148
136
148
160
148
144
131
135
147
135
147
159
147
143
130
134
146
134
146
158
146
142
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
130
131
132
133
145
144
143
142
141
140
139
138
137
136
135
134
133
145
146
147
148
149
150
151
152
153
154
155
156
157
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
120
132
144
132
119
131
143
131
118
130
142
130
117
129
141
129
116
128
140
128
115
127
139
127
114
126
138
126
113
125
137
125
112
124
136
124
111
123
135
123
110
122
134
122
109
108
107
106
105
104
103
102
101
100
99
98
97
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
109
110
111
112
113
114
115
116
117
118
119
120
121
110
96
108
120
108
122
111
95
107
119
107
123
112
94
106
118
106
124
113
93
105
117
105
125
114
92
104
116
104
126
115
91
103
115
103
127
116
90
102
114
102
128
129
128
127
126
125
124
123
122
121
120
119
118
117
89
101
113
101
129
130
131
132
133
134
135
135
134
133
132
131
130
88
100
112
100
87
99
111
99
86
98
110
98
85
97
109
97
84
96
108
96
83
84
85
86
87
88
89
90
91
92
93
94
95
107
106
105
104
103
102
101
100
99
98
97
96
95
82
94
106
94
81
93
105
93
80
92
104
92
79
91
103
91
78
90
102
90
77
89
101
89
100
99
98
97
96
95
94
93
92
91
90
89
88
76
88
100
88
100
101
102
103
104
105
106
106
105
104
103
102
101
87
75
87
99
87
99
86
74
86
98
86
98
85
73
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
85
97
84
72
72
84
84
96
83
71
71
83
83
95
82
70
70
82
82
94
81
80
79
78
77
76
75
74
73
72
71
70
69
69
81
81
82
83
84
85
86
87
88
89
90
91
92
93
80
68
68
80
80
92
79
67
67
79
79
91
78
66
66
78
78
90
77
65
65
77
77
89
76
64
64
76
76
88
75
63
63
75
75
87
74
62
62
74
74
86
73
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
85
72
48
62
74
60
84
71
47
63
75
59
83
70
46
64
76
58
82
69
45
65
77
57
81
68
44
66
78
56
80
67
43
67
79
55
79
66
42
68
80
54
78
65
41
69
81
53
77
64
40
70
82
52
76
63
39
71
83
51
75
62
38
72
84
50
74
67
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
40
39
38
37
73
74
75
76
77
78
79
80
81
82
83
84
85
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
66
50
36
48
62
82
65
51
35
47
63
83
64
52
34
46
64
84
63
53
33
45
65
85
62
54
32
44
66
86
61
55
31
43
67
87
60
56
30
42
68
88
59
55
29
41
69
89
58
54
28
40
70
90
57
53
27
39
71
91
56
52
26
38
72
92
55
43
44
45
46
47
48
49
50
51
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
73
74
75
76
77
78
79
80
81
93
54
42
12
26
80
92
53
41
11
27
79
91
52
40
10
28
78
90
51
39
9
29
77
89
50
38
8
30
76
88
49
37
7
31
75
87
48
36
6
32
74
86
47
35
5
33
73
85
46
34
4
34
72
84
45
33
3
35
71
83
44
32
2
36
70
82
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
155
167
171
183
179
167
154
166
170
182
178
166
153
165
169
181
177
165
152
164
168
180
176
164
151
163
167
179
175
163
150
162
166
178
174
162
149
161
165
177
173
161
148
160
164
176
172
160
147
159
163
175
171
159
146
158
162
174
170
158
145
157
161
173
169
157
144
156
160
148
149
150
151
152
153
154
155
156
157
158
159
160
172
168
156
143
155
159
147
159
171
167
155
142
154
158
146
158
170
166
154
141
153
157
145
157
169
165
153
140
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
144
156
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
152
139
143
155
143
155
167
155
151
138
142
154
142
154
166
154
150
137
141
153
141
153
165
153
149
136
140
152
140
152
164
152
148
135
139
151
139
151
163
151
147
134
138
150
138
150
162
150
146
133
137
149
137
149
161
149
145
132
136
148
136
148
160
148
144
131
135
147
135
147
159
147
143
130
134
146
134
146
158
146
142
129
133
145
133
145
157
145
141
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
129
130
131
132
144
143
142
141
140
139
138
137
136
135
134
133
132
144
145
146
147
148
149
150
151
152
153
154
155
156
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
119
131
143
131
118
130
142
130
117
129
141
129
116
128
140
128
115
127
139
127
114
126
138
126
113
125
137
125
112
124
136
124
111
123
135
123
110
122
134
122
109
121
133
121
108
107
106
105
104
103
102
101
100
99
98
97
96
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
117
118
119
120
109
95
107
119
107
121
110
94
106
118
106
122
111
93
105
117
105
123
112
92
104
116
104
124
113
91
103
115
103
125
114
90
102
114
102
126
115
89
101
113
101
127
128
127
126
125
124
123
122
121
120
119
118
117
116
88
100
112
100
128
129
130
131
132
133
134
134
133
132
131
130
129
87
99
111
99
86
98
110
98
85
97
109
97
84
96
108
96
83
95
107
95
82
83
84
85
86
87
88
89
90
91
92
93
94
106
105
104
103
102
101
100
99
98
97
96
95
94
81
93
105
93
80
92
104
92
79
91
103
91
78
90
102
90
77
89
101
89
76
88
100
88
99
98
97
96
95
94
93
92
91
90
89
88
87
75
87
99
87
99
100
101
102
103
104
105
105
104
103
102
101
100
86
74
86
98
86
98
85
73
85
97
85
97
84
72
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
84
96
83
71
71
83
83
95
82
70
70
82
82
94
81
69
69
81
81
93
80
79
78
77
76
75
74
73
72
71
70
69
68
68
80
80
81
82
83
84
85
86
87
88
89
90
91
92
79
67
67
79
79
91
78
66
66
78
78
90
77
65
65
77
77
89
76
64
64
76
76
88
75
63
63
75
75
87
74
62
62
74
74
86
73
61
61
73
73
85
72
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
84
71
47
61
73
59
83
70
46
62
74
58
82
69
45
63
75
57
81
68
44
64
76
56
80
67
43
65
77
55
79
66
42
66
78
54
78
65
41
67
79
53
77
64
40
68
80
52
76
63
39
69
81
51
75
62
38
70
82
50
74
61
37
71
83
49
73
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
40
39
38
37
36
72
73
74
75
76
77
78
79
80
81
82
83
84
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
67
49
35
47
61
81
66
50
34
46
62
82
65
51
33
45
63
83
64
52
32
44
64
84
63
53
31
43
65
85
62
54
30
42
66
86
61
55
29
41
67
87
60
56
28
40
68
88
59
55
27
39
69
89
58
54
26
38
70
90
57
53
25
37
71
91
56
44
45
46
47
48
49
50
51
52
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
72
73
74
75
76
77
78
79
80
92
55
43
11
25
79
91
54
42
10
26
78
90
53
41
9
27
77
89
52
40
8
28
76
88
51
39
7
29
75
87
50
38
6
30
74
86
49
37
5
31
73
85
48
36
4
32
72
84
47
35
3
33
71
83
46
34
2
34
70
82
45
33
1
35
69
81
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
167
179
183
171
167
155
166
178
182
170
166
154
165
177
181
169
165
153
164
176
180
168
164
152
163
175
179
167
163
151
162
174
178
166
162
150
161
173
177
165
161
149
160
172
176
164
160
148
159
171
175
163
159
147
158
170
174
162
158
146
157
169
173
161
157
145
156
168
172
160
159
158
157
156
155
154
153
152
151
150
149
148
160
156
144
155
167
171
159
147
159
155
143
154
166
170
158
146
158
154
142
153
165
169
157
145
157
153
141
152
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
156
144
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
140
151
155
167
155
143
155
143
139
150
154
166
154
142
154
142
138
149
153
165
153
141
153
141
137
148
152
164
152
140
152
140
136
147
151
163
151
139
151
139
135
146
150
162
150
138
150
138
134
145
149
161
149
137
149
137
133
144
148
160
148
136
148
136
132
143
147
159
147
135
147
135
131
142
146
158
146
134
146
134
130
141
145
157
145
133
145
133
129
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
141
142
143
144
156
155
154
153
152
151
150
149
148
147
146
145
144
132
133
134
135
136
137
138
139
140
141
142
143
144
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
131
143
131
119
130
142
130
118
129
141
129
117
128
140
128
116
127
139
127
115
126
138
126
114
125
137
125
113
124
136
124
112
123
135
123
111
122
134
122
110
121
133
121
109
120
119
118
117
116
115
114
113
112
111
110
109
108
120
121
122
123
124
125
126
127
128
129
130
131
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
121
107
119
107
95
109
122
106
118
106
94
110
123
105
117
105
93
111
124
104
116
104
92
112
125
103
115
103
91
113
126
102
114
102
90
114
127
101
113
101
89
115
129
130
131
132
133
134
134
133
132
131
130
129
128
100
112
100
88
116
117
118
119
120
121
122
123
124
125
126
127
128
99
111
99
87
98
110
98
86
97
109
97
85
96
108
96
84
95
107
95
83
94
95
96
97
98
99
100
101
102
103
104
105
106
94
93
92
91
90
89
88
87
86
85
84
83
82
93
105
93
81
92
104
92
80
91
103
91
79
90
102
90
78
89
101
89
77
88
100
88
76
100
101
102
103
104
105
105
104
103
102
101
100
99
87
99
87
75
87
88
89
90
91
92
93
94
95
96
97
98
99
98
86
98
86
74
86
97
85
97
85
73
85
96
84
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
72
84
95
83
83
71
71
83
94
82
82
70
70
82
93
81
81
69
69
81
92
91
90
89
88
87
86
85
84
83
82
81
80
80
68
68
69
70
71
72
73
74
75
76
77
78
79
80
91
79
79
67
67
79
90
78
78
66
66
78
89
77
77
65
65
77
88
76
76
64
64
76
87
75
75
63
63
75
86
74
74
62
62
74
85
73
73
61
61
73
84
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
72
83
59
73
61
47
71
82
58
74
62
46
70
81
57
75
63
45
69
80
56
76
64
44
68
79
55
77
65
43
67
78
54
78
66
42
66
77
53
79
67
41
65
76
52
80
68
40
64
75
51
81
69
39
63
74
50
82
70
38
62
73
49
83
71
37
61
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
84
83
82
81
80
79
78
77
76
75
74
73
72
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
81
61
47
35
49
67
82
62
46
34
50
66
83
63
45
33
51
65
84
64
44
32
52
64
85
65
43
31
53
63
86
66
42
30
54
62
87
67
41
29
55
61
88
68
40
28
56
60
89
69
39
27
55
59
90
70
38
26
54
58
91
71
37
25
53
57
92
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
13
14
15
16
17
18
19
20
21
22
23
24
52
51
50
49
48
47
46
45
44
56
91
79
25
11
43
55
90
78
26
10
42
54
89
77
27
9
41
53
88
76
28
8
40
52
87
75
29
7
39
51
86
74
30
6
38
50
85
73
31
5
37
49
84
72
32
4
36
48
83
71
33
3
35
47
82
70
34
2
34
46
81
69
35
1
33
45
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
36
0
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
168
180
184
172
168
156
167
179
183
171
167
155
166
178
182
170
166
154
165
177
181
169
165
153
164
176
180
168
164
152
163
175
179
167
163
151
162
174
178
166
162
150
161
173
177
165
161
149
160
172
176
164
160
148
159
171
175
163
159
147
158
170
174
162
158
146
157
169
173
161
160
159
158
157
156
155
154
153
152
151
150
149
161
157
145
156
168
172
160
148
160
156
144
155
167
171
159
147
159
155
143
154
166
170
158
146
158
154
142
153
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
157
145
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
141
152
156
168
156
144
156
144
140
151
155
167
155
143
155
143
139
150
154
166
154
142
154
142
138
149
153
165
153
141
153
141
137
148
152
164
152
140
152
140
136
147
151
163
151
139
151
139
135
146
150
162
150
138
150
138
134
145
149
161
149
137
149
137
133
144
148
160
148
136
148
136
132
143
147
159
147
135
147
135
131
142
146
158
146
134
146
134
130
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
142
143
144
145
157
156
155
154
153
152
151
150
149
148
147
146
145
133
134
135
136
137
138
139
140
141
142
143
144
145
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
132
144
132
120
131
143
131
119
130
142
130
118
129
141
129
117
128
140
128
116
127
139
127
115
126
138
126
114
125
137
125
113
124
136
124
112
123
135
123
111
122
134
122
110
121
120
119
118
117
116
115
114
113
112
111
110
109
121
122
123
124
125
126
127
128
129
130
131
132
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
122
108
120
108
96
110
123
107
119
107
95
111
124
106
118
106
94
112
125
105
117
105
93
113
126
104
116
104
92
114
127
103
115
103
91
115
128
102
114
102
90
116
130
131
132
133
134
135
135
134
133
132
131
130
129
101
113
101
89
117
118
119
120
121
122
123
124
125
126
127
128
129
100
112
100
88
99
111
99
87
98
110
98
86
97
109
97
85
96
108
96
84
95
96
97
98
99
100
101
102
103
104
105
106
107
95
94
93
92
91
90
89
88
87
86
85
84
83
94
106
94
82
93
105
93
81
92
104
92
80
91
103
91
79
90
102
90
78
89
101
89
77
101
102
103
104
105
106
106
105
104
103
102
101
100
88
100
88
76
88
89
90
91
92
93
94
95
96
97
98
99
100
99
87
99
87
75
87
98
86
98
86
74
86
97
85
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
73
85
96
84
84
72
72
84
95
83
83
71
71
83
94
82
82
70
70
82
93
92
91
90
89
88
87
86
85
84
83
82
81
81
69
69
70
71
72
73
74
75
76
77
78
79
80
81
92
80
80
68
68
80
91
79
79
67
67
79
90
78
78
66
66
78
89
77
77
65
65
77
88
76
76
64
64
76
87
75
75
63
63
75
86
74
74
62
62
74
85
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
73
84
60
74
62
48
72
83
59
75
63
47
71
82
58
76
64
46
70
81
57
77
65
45
69
80
56
78
66
44
68
79
55
79
67
43
67
78
54
80
68
42
66
77
53
81
69
41
65
76
52
82
70
40
64
75
51
83
71
39
63
74
50
84
72
38
62
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
85
84
83
82
81
80
79
78
77
76
75
74
73
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
82
62
48
36
50
66
83
63
47
35
51
65
84
64
46
34
52
64
85
65
45
33
53
63
86
66
44
32
54
62
87
67
43
31
55
61
88
68
42
30
56
60
89
69
41
29
55
59
90
70
40
28
54
58
91
71
39
27
53
57
92
72
38
26
52
56
93
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
14
15
16
17
18
19
20
21
22
23
24
25
51
50
49
48
47
46
45
44
43
55
92
80
26
12
42
54
91
79
27
11
41
53
90
78
28
10
40
52
89
77
29
9
39
51
88
76
30
8
38
50
87
75
31
7
37
49
86
74
32
6
36
48
85
73
33
5
35
47
84
72
34
4
34
46
83
71
35
3
33
45
82
70
36
2
32
44
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
37
1
0
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
169
181
185
173
169
157
168
180
184
172
168
156
167
179
183
171
167
155
166
178
182
170
166
154
165
177
181
169
165
153
164
176
180
168
164
152
163
175
179
167
163
151
162
174
178
166
162
150
161
173
177
165
161
149
160
172
176
164
160
148
159
171
175
163
159
147
158
170
174
162
161
160
159
158
157
156
155
154
153
152
151
150
162
158
146
157
169
173
161
149
161
157
145
156
168
172
160
148
160
156
144
155
167
171
159
147
159
155
143
154
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
158
146
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
142
153
157
169
157
145
157
145
141
152
156
168
156
144
156
144
140
151
155
167
155
143
155
143
139
150
154
166
154
142
154
142
138
149
153
165
153
141
153
141
137
148
152
164
152
140
152
140
136
147
151
163
151
139
151
139
135
146
150
162
150
138
150
138
134
145
149
161
149
137
149
137
133
144
148
160
148
136
148
136
132
143
147
159
147
135
147
135
131
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
143
144
145
146
158
157
156
155
154
153
152
151
150
149
148
147
146
134
135
136
137
138
139
140
141
142
143
144
145
146
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
133
145
133
121
132
144
132
120
131
143
131
119
130
142
130
118
129
141
129
117
128
140
128
116
127
139
127
115
126
138
126
114
125
137
125
113
124
136
124
112
123
135
123
111
122
121
120
119
118
117
116
115
114
113
112
111
110
122
123
124
125
126
127
128
129
130
131
132
133
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
123
109
121
109
97
111
124
108
120
108
96
112
125
107
119
107
95
113
126
106
118
106
94
114
127
105
117
105
93
115
128
104
116
104
92
116
129
103
115
103
91
117
131
132
133
134
135
136
136
135
134
133
132
131
130
102
114
102
90
118
119
120
121
122
123
124
125
126
127
128
129
130
101
113
101
89
100
112
100
88
99
111
99
87
98
110
98
86
97
109
97
85
96
97
98
99
100
101
102
103
104
105
106
107
108
96
95
94
93
92
91
90
89
88
87
86
85
84
95
107
95
83
94
106
94
82
93
105
93
81
92
104
92
80
91
103
91
79
90
102
90
78
102
103
104
105
106
107
107
106
105
104
103
102
101
89
101
89
77
89
90
91
92
93
94
95
96
97
98
99
100
101
100
88
100
88
76
88
99
87
99
87
75
87
98
86
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
74
86
97
85
85
73
73
85
96
84
84
72
72
84
95
83
83
71
71
83
94
93
92
91
90
89
88
87
86
85
84
83
82
82
70
70
71
72
73
74
75
76
77
78
79
80
81
82
93
81
81
69
69
81
92
80
80
68
68
80
91
79
79
67
67
79
90
78
78
66
66
78
89
77
77
65
65
77
88
76
76
64
64
76
87
75
75
63
63
75
86
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
74
85
61
75
63
49
73
84
60
76
64
48
72
83
59
77
65
47
71
82
58
78
66
46
70
81
57
79
67
45
69
80
56
80
68
44
68
79
55
81
69
43
67
78
54
82
70
42
66
77
53
83
71
41
65
76
52
84
72
40
64
75
51
85
73
39
63
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
86
85
84
83
82
81
80
79
78
77
76
75
74
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
83
63
49
37
51
65
84
64
48
36
52
64
85
65
47
35
53
63
86
66
46
34
54
62
87
67
45
33
55
61
88
68
44
32
56
60
89
69
43
31
55
59
90
70
42
30
54
58
91
71
41
29
53
57
92
72
40
28
52
56
93
73
39
27
51
55
94
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
15
16
17
18
19
20
21
22
23
24
25
26
50
49
48
47
46
45
44
43
42
54
93
81
27
13
41
53
92
80
28
12
40
52
91
79
29
11
39
51
90
78
30
10
38
50
89
77
31
9
37
49
88
76
32
8
36
48
87
75
33
7
35
47
86
74
34
6
34
46
85
73
35
5
33
45
84
72
36
4
32
44
83
71
37
3
31
43
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
38
2
1
0
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
170
182
186
174
170
158
169
181
185
173
169
157
168
180
184
172
168
156
167
179
183
171
167
155
166
178
182
170
166
154
165
177
181
169
165
153
164
176
180
168
164
152
163
175
179
167
163
151
162
174
178
166
162
150
161
173
177
165
161
149
160
172
176
164
160
148
159
171
175
163
162
161
160
159
158
157
156
155
154
153
152
151
163
159
147
158
170
174
162
150
162
158
146
157
169
173
161
149
161
157
145
156
168
172
160
148
160
156
144
155
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
159
147
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
143
154
158
170
158
146
158
146
142
153
157
169
157
145
157
145
141
152
156
168
156
144
156
144
140
151
155
167
155
143
155
143
139
150
154
166
154
142
154
142
138
149
153
165
153
141
153
141
137
148
152
164
152
140
152
140
136
147
151
163
151
139
151
139
135
146
150
162
150
138
150
138
134
145
149
161
149
137
149
137
133
144
148
160
148
136
148
136
132
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
144
145
146
147
159
158
157
156
155
154
153
152
151
150
149
148
147
135
136
137
138
139
140
141
142
143
144
145
146
147
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
134
146
134
122
133
145
133
121
132
144
132
120
131
143
131
119
130
142
130
118
129
141
129
117
128
140
128
116
127
139
127
115
126
138
126
114
125
137
125
113
124
136
124
112
123
122
121
120
119
118
117
116
115
114
113
112
111
123
124
125
126
127
128
129
130
131
132
133
134
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
124
110
122
110
98
112
125
109
121
109
97
113
126
108
120
108
96
114
127
107
119
107
95
115
128
106
118
106
94
116
129
105
117
105
93
117
130
104
116
104
92
118
132
133
134
135
136
137
137
136
135
134
133
132
131
103
115
103
91
119
120
121
122
123
124
125
126
127
128
129
130
131
102
114
102
90
101
113
101
89
100
112
100
88
99
111
99
87
98
110
98
86
97
98
99
100
101
102
103
104
105
106
107
108
109
97
96
95
94
93
92
91
90
89
88
87
86
85
96
108
96
84
95
107
95
83
94
106
94
82
93
105
93
81
92
104
92
80
91
103
91
79
103
104
105
106
107
108
108
107
106
105
104
103
102
90
102
90
78
90
91
92
93
94
95
96
97
98
99
100
101
102
101
89
101
89
77
89
100
88
100
88
76
88
99
87
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
75
87
98
86
86
74
74
86
97
85
85
73
73
85
96
84
84
72
72
84
95
94
93
92
91
90
89
88
87
86
85
84
83
83
71
71
72
73
74
75
76
77
78
79
80
81
82
83
94
82
82
70
70
82
93
81
81
69
69
81
92
80
80
68
68
80
91
79
79
67
67
79
90
78
78
66
66
78
89
77
77
65
65
77
88
76
76
64
64
76
87
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
75
86
62
76
64
50
74
85
61
77
65
49
73
84
60
78
66
48
72
83
59
79
67
47
71
82
58
80
68
46
70
81
57
81
69
45
69
80
56
82
70
44
68
79
55
83
71
43
67
78
54
84
72
42
66
77
53
85
73
41
65
76
52
86
74
40
64
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
87
86
85
84
83
82
81
80
79
78
77
76
75
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
84
64
50
38
52
64
85
65
49
37
53
63
86
66
48
36
54
62
87
67
47
35
55
61
88
68
46
34
56
60
89
69
45
33
55
59
90
70
44
32
54
58
91
71
43
31
53
57
92
72
42
30
52
56
93
73
41
29
51
55
94
74
40
28
50
54
95
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
16
17
18
19
20
21
22
23
24
25
26
27
49
48
47
46
45
44
43
42
41
53
94
82
28
14
40
52
93
81
29
13
39
51
92
80
30
12
38
50
91
79
31
11
37
49
90
78
32
10
36
48
89
77
33
9
35
47
88
76
34
8
34
46
87
75
35
7
33
45
86
74
36
6
32
44
85
73
37
5
31
43
84
72
38
4
30
42
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
39
3
2
1
0
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
171
183
187
175
171
159
170
182
186
174
170
158
169
181
185
173
169
157
168
180
184
172
168
156
167
179
183
171
167
155
166
178
182
170
166
154
165
177
181
169
165
153
164
176
180
168
164
152
163
175
179
167
163
151
162
174
178
166
162
150
161
173
177
165
161
149
160
172
176
164
163
162
161
160
159
158
157
156
155
154
153
152
164
160
148
159
171
175
163
151
163
159
147
158
170
174
162
150
162
158
146
157
169
173
161
149
161
157
145
156
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
160
148
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
144
155
159
171
159
147
159
147
143
154
158
170
158
146
158
146
142
153
157
169
157
145
157
145
141
152
156
168
156
144
156
144
140
151
155
167
155
143
155
143
139
150
154
166
154
142
154
142
138
149
153
165
153
141
153
141
137
148
152
164
152
140
152
140
136
147
151
163
151
139
151
139
135
146
150
162
150
138
150
138
134
145
149
161
149
137
149
137
133
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
145
146
147
148
160
159
158
157
156
155
154
153
152
151
150
149
148
136
137
138
139
140
141
142
143
144
145
146
147
148
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
135
147
135
123
134
146
134
122
133
145
133
121
132
144
132
120
131
143
131
119
130
142
130
118
129
141
129
117
128
140
128
116
127
139
127
115
126
138
126
114
125
137
125
113
124
123
122
121
120
119
118
117
116
115
114
113
112
124
125
126
127
128
129
130
131
132
133
134
135
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
125
111
123
111
99
113
126
110
122
110
98
114
127
109
121
109
97
115
128
108
120
108
96
116
129
107
119
107
95
117
130
106
118
106
94
118
131
105
117
105
93
119
133
134
135
136
137
138
138
137
136
135
134
133
132
104
116
104
92
120
121
122
123
124
125
126
127
128
129
130
131
132
103
115
103
91
102
114
102
90
101
113
101
89
100
112
100
88
99
111
99
87
98
99
100
101
102
103
104
105
106
107
108
109
110
98
97
96
95
94
93
92
91
90
89
88
87
86
97
109
97
85
96
108
96
84
95
107
95
83
94
106
94
82
93
105
93
81
92
104
92
80
104
105
106
107
108
109
109
108
107
106
105
104
103
91
103
91
79
91
92
93
94
95
96
97
98
99
100
101
102
103
102
90
102
90
78
90
101
89
101
89
77
89
100
88
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
76
88
99
87
87
75
75
87
98
86
86
74
74
86
97
85
85
73
73
85
96
95
94
93
92
91
90
89
88
87
86
85
84
84
72
72
73
74
75
76
77
78
79
80
81
82
83
84
95
83
83
71
71
83
94
82
82
70
70
82
93
81
81
69
69
81
92
80
80
68
68
80
91
79
79
67
67
79
90
78
78
66
66
78
89
77
77
65
65
77
88
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
76
87
63
77
65
51
75
86
62
78
66
50
74
85
61
79
67
49
73
84
60
80
68
48
72
83
59
81
69
47
71
82
58
82
70
46
70
81
57
83
71
45
69
80
56
84
72
44
68
79
55
85
73
43
67
78
54
86
74
42
66
77
53
87
75
41
65
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
88
87
86
85
84
83
82
81
80
79
78
77
76
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
85
65
51
39
53
63
86
66
50
38
54
62
87
67
49
37
55
61
88
68
48
36
56
60
89
69
47
35
55
59
90
70
46
34
54
58
91
71
45
33
53
57
92
72
44
32
52
56
93
73
43
31
51
55
94
74
42
30
50
54
95
75
41
29
49
53
96
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
17
18
19
20
21
22
23
24
25
26
27
28
48
47
46
45
44
43
42
41
40
52
95
83
29
15
39
51
94
82
30
14
38
50
93
81
31
13
37
49
92
80
32
12
36
48
91
79
33
11
35
47
90
78
34
10
34
46
89
77
35
9
33
45
88
76
36
8
32
44
87
75
37
7
31
43
86
74
38
6
30
42
85
73
39
5
29
41
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
40
4
3
2
1
0
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
172
184
188
176
172
160
171
183
187
175
171
159
170
182
186
174
170
158
169
181
185
173
169
157
168
180
184
172
168
156
167
179
183
171
167
155
166
178
182
170
166
154
165
177
181
169
165
153
164
176
180
168
164
152
163
175
179
167
163
151
162
174
178
166
162
150
161
173
177
165
164
163
162
161
160
159
158
157
156
155
154
153
165
161
149
160
172
176
164
152
164
160
148
159
171
175
163
151
163
159
147
158
170
174
162
150
162
158
146
157
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
161
149
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
145
156
160
172
160
148
160
148
144
155
159
171
159
147
159
147
143
154
158
170
158
146
158
146
142
153
157
169
157
145
157
145
141
152
156
168
156
144
156
144
140
151
155
167
155
143
155
143
139
150
154
166
154
142
154
142
138
149
153
165
153
141
153
141
137
148
152
164
152
140
152
140
136
147
151
163
151
139
151
139
135
146
150
162
150
138
150
138
134
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
146
147
148
149
161
160
159
158
157
156
155
154
153
152
151
150
149
137
138
139
140
141
142
143
144
145
146
147
148
149
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
136
148
136
124
135
147
135
123
134
146
134
122
133
145
133
121
132
144
132
120
131
143
131
119
130
142
130
118
129
141
129
117
128
140
128
116
127
139
127
115
126
138
126
114
125
124
123
122
121
120
119
118
117
116
115
114
113
125
126
127
128
129
130
131
132
133
134
135
136
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
126
112
124
112
100
114
127
111
123
111
99
115
128
110
122
110
98
116
129
109
121
109
97
117
130
108
120
108
96
118
131
107
119
107
95
119
132
106
118
106
94
120
134
135
136
137
138
139
139
138
137
136
135
134
133
105
117
105
93
121
122
123
124
125
126
127
128
129
130
131
132
133
104
116
104
92
103
115
103
91
102
114
102
90
101
113
101
89
100
112
100
88
99
100
101
102
103
104
105
106
107
108
109
110
111
99
98
97
96
95
94
93
92
91
90
89
88
87
98
110
98
86
97
109
97
85
96
108
96
84
95
107
95
83
94
106
94
82
93
105
93
81
105
106
107
108
109
110
110
109
108
107
106
105
104
92
104
92
80
92
93
94
95
96
97
98
99
100
101
102
103
104
103
91
103
91
79
91
102
90
102
90
78
90
101
89
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
77
89
100
88
88
76
76
88
99
87
87
75
75
87
98
86
86
74
74
86
97
96
95
94
93
92
91
90
89
88
87
86
85
85
73
73
74
75
76
77
78
79
80
81
82
83
84
85
96
84
84
72
72
84
95
83
83
71
71
83
94
82
82
70
70
82
93
81
81
69
69
81
92
80
80
68
68
80
91
79
79
67
67
79
90
78
78
66
66
78
89
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
77
88
64
78
66
52
76
87
63
79
67
51
75
86
62
80
68
50
74
85
61
81
69
49
73
84
60
82
70
48
72
83
59
83
71
47
71
82
58
84
72
46
70
81
57
85
73
45
69
80
56
86
74
44
68
79
55
87
75
43
67
78
54
88
76
42
66
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
89
88
87
86
85
84
83
82
81
80
79
78
77
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
86
66
52
40
54
62
87
67
51
39
55
61
88
68
50
38
56
60
89
69
49
37
55
59
90
70
48
36
54
58
91
71
47
35
53
57
92
72
46
34
52
56
93
73
45
33
51
55
94
74
44
32
50
54
95
75
43
31
49
53
96
76
42
30
48
52
97
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
18
19
20
21
22
23
24
25
26
27
28
29
47
46
45
44
43
42
41
40
39
51
96
84
30
16
38
50
95
83
31
15
37
49
94
82
32
14
36
48
93
81
33
13
35
47
92
80
34
12
34
46
91
79
35
11
33
45
90
78
36
10
32
44
89
77
37
9
31
43
88
76
38
8
30
42
87
75
39
7
29
41
86
74
40
6
28
40
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
5
4
3
2
1
0
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
173
185
189
177
173
161
172
184
188
176
172
160
171
183
187
175
171
159
170
182
186
174
170
158
169
181
185
173
169
157
168
180
184
172
168
156
167
179
183
171
167
155
166
178
182
170
166
154
165
177
181
169
165
153
164
176
180
168
164
152
163
175
179
167
163
151
162
174
178
166
165
164
163
162
161
160
159
158
157
156
155
154
166
162
150
161
173
177
165
153
165
161
149
160
172
176
164
152
164
160
148
159
171
175
163
151
163
159
147
158
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
162
150
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
146
157
161
173
161
149
161
149
145
156
160
172
160
148
160
148
144
155
159
171
159
147
159
147
143
154
158
170
158
146
158
146
142
153
157
169
157
145
157
145
141
152
156
168
156
144
156
144
140
151
155
167
155
143
155
143
139
150
154
166
154
142
154
142
138
149
153
165
153
141
153
141
137
148
152
164
152
140
152
140
136
147
151
163
151
139
151
139
135
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
147
148
149
150
162
161
160
159
158
157
156
155
154
153
152
151
150
138
139
140
141
142
143
144
145
146
147
148
149
150
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
137
149
137
125
136
148
136
124
135
147
135
123
134
146
134
122
133
145
133
121
132
144
132
120
131
143
131
119
130
142
130
118
129
141
129
117
128
140
128
116
127
139
127
115
126
125
124
123
122
121
120
119
118
117
116
115
114
126
127
128
129
130
131
132
133
134
135
136
137
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
127
113
125
113
101
115
128
112
124
112
100
116
129
111
123
111
99
117
130
110
122
110
98
118
131
109
121
109
97
119
132
108
120
108
96
120
133
107
119
107
95
121
135
136
137
138
139
140
140
139
138
137
136
135
134
106
118
106
94
122
123
124
125
126
127
128
129
130
131
132
133
134
105
117
105
93
104
116
104
92
103
115
103
91
102
114
102
90
101
113
101
89
100
101
102
103
104
105
106
107
108
109
110
111
112
100
99
98
97
96
95
94
93
92
91
90
89
88
99
111
99
87
98
110
98
86
97
109
97
85
96
108
96
84
95
107
95
83
94
106
94
82
106
107
108
109
110
111
111
110
109
108
107
106
105
93
105
93
81
93
94
95
96
97
98
99
100
101
102
103
104
105
104
92
104
92
80
92
103
91
103
91
79
91
102
90
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
78
90
101
89
89
77
77
89
100
88
88
76
76
88
99
87
87
75
75
87
98
97
96
95
94
93
92
91
90
89
88
87
86
86
74
74
75
76
77
78
79
80
81
82
83
84
85
86
97
85
85
73
73
85
96
84
84
72
72
84
95
83
83
71
71
83
94
82
82
70
70
82
93
81
81
69
69
81
92
80
80
68
68
80
91
79
79
67
67
79
90
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
78
89
65
79
67
53
77
88
64
80
68
52
76
87
63
81
69
51
75
86
62
82
70
50
74
85
61
83
71
49
73
84
60
84
72
48
72
83
59
85
73
47
71
82
58
86
74
46
70
81
57
87
75
45
69
80
56
88
76
44
68
79
55
89
77
43
67
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
90
89
88
87
86
85
84
83
82
81
80
79
78
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
87
67
53
41
55
61
88
68
52
40
56
60
89
69
51
39
55
59
90
70
50
38
54
58
91
71
49
37
53
57
92
72
48
36
52
56
93
73
47
35
51
55
94
74
46
34
50
54
95
75
45
33
49
53
96
76
44
32
48
52
97
77
43
31
47
51
98
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
19
20
21
22
23
24
25
26
27
28
29
30
46
45
44
43
42
41
40
39
38
50
97
85
31
17
37
49
96
84
32
16
36
48
95
83
33
15
35
47
94
82
34
14
34
46
93
81
35
13
33
45
92
80
36
12
32
44
91
79
37
11
31
43
90
78
38
10
30
42
89
77
39
9
29
41
88
76
40
8
28
40
87
75
41
7
27
39
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
6
5
4
3
2
1
0
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
174
186
190
178
174
162
173
185
189
177
173
161
172
184
188
176
172
160
171
183
187
175
171
159
170
182
186
174
170
158
169
181
185
173
169
157
168
180
184
172
168
156
167
179
183
171
167
155
166
178
182
170
166
154
165
177
181
169
165
153
164
176
180
168
164
152
163
175
179
167
166
165
164
163
162
161
160
159
158
157
156
155
167
163
151
162
174
178
166
154
166
162
150
161
173
177
165
153
165
161
149
160
172
176
164
152
164
160
148
159
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
163
151
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
147
158
162
174
162
150
162
150
146
157
161
173
161
149
161
149
145
156
160
172
160
148
160
148
144
155
159
171
159
147
159
147
143
154
158
170
158
146
158
146
142
153
157
169
157
145
157
145
141
152
156
168
156
144
156
144
140
151
155
167
155
143
155
143
139
150
154
166
154
142
154
142
138
149
153
165
153
141
153
141
137
148
152
164
152
140
152
140
136
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
148
149
150
151
163
162
161
160
159
158
157
156
155
154
153
152
151
139
140
141
142
143
144
145
146
147
148
149
150
151
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
138
150
138
126
137
149
137
125
136
148
136
124
135
147
135
123
134
146
134
122
133
145
133
121
132
144
132
120
131
143
131
119
130
142
130
118
129
141
129
117
128
140
128
116
127
126
125
124
123
122
121
120
119
118
117
116
115
127
128
129
130
131
132
133
134
135
136
137
138
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
128
114
126
114
102
116
129
113
125
113
101
117
130
112
124
112
100
118
131
111
123
111
99
119
132
110
122
110
98
120
133
109
121
109
97
121
134
108
120
108
96
122
136
137
138
139
140
141
141
140
139
138
137
136
135
107
119
107
95
123
124
125
126
127
128
129
130
131
132
133
134
135
106
118
106
94
105
117
105
93
104
116
104
92
103
115
103
91
102
114
102
90
101
102
103
104
105
106
107
108
109
110
111
112
113
101
100
99
98
97
96
95
94
93
92
91
90
89
100
112
100
88
99
111
99
87
98
110
98
86
97
109
97
85
96
108
96
84
95
107
95
83
107
108
109
110
111
112
112
111
110
109
108
107
106
94
106
94
82
94
95
96
97
98
99
100
101
102
103
104
105
106
105
93
105
93
81
93
104
92
104
92
80
92
103
91
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
79
91
102
90
90
78
78
90
101
89
89
77
77
89
100
88
88
76
76
88
99
98
97
96
95
94
93
92
91
90
89
88
87
87
75
75
76
77
78
79
80
81
82
83
84
85
86
87
98
86
86
74
74
86
97
85
85
73
73
85
96
84
84
72
72
84
95
83
83
71
71
83
94
82
82
70
70
82
93
81
81
69
69
81
92
80
80
68
68
80
91
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
79
90
66
80
68
54
78
89
65
81
69
53
77
88
64
82
70
52
76
87
63
83
71
51
75
86
62
84
72
50
74
85
61
85
73
49
73
84
60
86
74
48
72
83
59
87
75
47
71
82
58
88
76
46
70
81
57
89
77
45
69
80
56
90
78
44
68
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
91
90
89
88
87
86
85
84
83
82
81
80
79
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
88
68
54
42
56
60
89
69
53
41
55
59
90
70
52
40
54
58
91
71
51
39
53
57
92
72
50
38
52
56
93
73
49
37
51
55
94
74
48
36
50
54
95
75
47
35
49
53
96
76
46
34
48
52
97
77
45
33
47
51
98
78
44
32
46
50
99
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
20
21
22
23
24
25
26
27
28
29
30
31
45
44
43
42
41
40
39
38
37
49
98
86
32
18
36
48
97
85
33
17
35
47
96
84
34
16
34
46
95
83
35
15
33
45
94
82
36
14
32
44
93
81
37
13
31
43
92
80
38
12
30
42
91
79
39
11
29
41
90
78
40
10
28
40
89
77
41
9
27
39
88
76
42
8
26
38
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
7
6
5
4
3
2
1
0
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
193
194
195
196
197
198
199
200
201
202
203
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
175
187
191
179
175
163
174
186
190
178
174
162
173
185
189
177
173
161
172
184
188
176
172
160
171
183
187
175
171
159
170
182
186
174
170
158
169
181
185
173
169
157
168
180
184
172
168
156
167
179
183
171
167
155
166
178
182
170
166
154
165
177
181
169
165
153
164
176
180
168
167
166
165
164
163
162
161
160
159
158
157
156
168
164
152
163
175
179
167
155
167
163
151
162
174
178
166
154
166
162
150
161
173
177
165
153
165
161
149
160
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
164
152
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
148
159
163
175
163
151
163
151
147
158
162
174
162
150
162
150
146
157
161
173
161
149
161
149
145
156
160
172
160
148
160
148
144
155
159
171
159
147
159
147
143
154
158
170
158
146
158
146
142
153
157
169
157
145
157
145
141
152
156
168
156
144
156
144
140
151
155
167
155
143
155
143
139
150
154
166
154
142
154
142
138
149
153
165
153
141
153
141
137
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
149
150
151
152
164
163
162
161
160
159
158
157
156
155
154
153
152
140
141
142
143
144
145
146
147
148
149
150
151
152
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
139
151
139
127
138
150
138
126
137
149
137
125
136
148
136
124
135
147
135
123
134
146
134
122
133
145
133
121
132
144
132
120
131
143
131
119
130
142
130
118
129
141
129
117
128
127
126
125
124
123
122
121
120
119
118
117
116
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
113
114
115
116
129
115
127
115
103
117
130
114
126
114
102
118
131
113
125
113
101
119
132
112
124
112
100
120
133
111
123
111
99
121
134
110
122
110
98
122
135
109
121
109
97
123
137
138
139
140
141
142
142
141
140
139
138
137
136
108
120
108
96
124
125
126
127
128
129
130
131
132
133
134
135
136
107
119
107
95
106
118
106
94
105
117
105
93
104
116
104
92
103
115
103
91
102
103
104
105
106
107
108
109
110
111
112
113
114
102
101
100
99
98
97
96
95
94
93
92
91
90
101
113
101
89
100
112
100
88
99
111
99
87
98
110
98
86
97
109
97
85
96
108
96
84
108
109
110
111
112
113
113
112
111
110
109
108
107
95
107
95
83
95
96
97
98
99
100
101
102
103
104
105
106
107
106
94
106
94
82
94
105
93
105
93
81
93
104
92
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
80
92
103
91
91
79
79
91
102
90
90
78
78
90
101
89
89
77
77
89
100
99
98
97
96
95
94
93
92
91
90
89
88
88
76
76
77
78
79
80
81
82
83
84
85
86
87
88
99
87
87
75
75
87
98
86
86
74
74
86
97
85
85
73
73
85
96
84
84
72
72
84
95
83
83
71
71
83
94
82
82
70
70
82
93
81
81
69
69
81
92
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
80
91
67
81
69
55
79
90
66
82
70
54
78
89
65
83
71
53
77
88
64
84
72
52
76
87
63
85
73
51
75
86
62
86
74
50
74
85
61
87
75
49
73
84
60
88
76
48
72
83
59
89
77
47
71
82
58
90
78
46
70
81
57
91
79
45
69
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
92
91
90
89
88
87
86
85
84
83
82
81
80
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
67
66
65
64
63
62
61
60
89
69
55
43
55
59
90
70
54
42
54
58
91
71
53
41
53
57
92
72
52
40
52
56
93
73
51
39
51
55
94
74
50
38
50
54
95
75
49
37
49
53
96
76
48
36
48
52
97
77
47
35
47
51
98
78
46
34
46
50
99
79
45
33
45
49
100
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
21
22
23
24
25
26
27
28
29
30
31
32
44
43
42
41
40
39
38
37
36
48
99
87
33
19
35
47
98
86
34
18
34
46
97
85
35
17
33
45
96
84
36
16
32
44
95
83
37
15
31
43
94
82
38
14
30
42
93
81
39
13
29
41
92
80
40
12
28
40
91
79
41
11
27
39
90
78
42
10
26
38
89
77
43
9
25
37
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
8
7
6
5
4
3
2
1
0
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
194
195
196
197
198
199
200
201
202
203
204
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
176
188
192
180
176
164
175
187
191
179
175
163
174
186
190
178
174
162
173
185
189
177
173
161
172
184
188
176
172
160
171
183
187
175
171
159
170
182
186
174
170
158
169
181
185
173
169
157
168
180
184
172
168
156
167
179
183
171
167
155
166
178
182
170
166
154
165
177
181
169
168
167
166
165
164
163
162
161
160
159
158
157
169
165
153
164
176
180
168
156
168
164
152
163
175
179
167
155
167
163
151
162
174
178
166
154
166
162
150
161
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
165
153
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
149
160
164
176
164
152
164
152
148
159
163
175
163
151
163
151
147
158
162
174
162
150
162
150
146
157
161
173
161
149
161
149
145
156
160
172
160
148
160
148
144
155
159
171
159
147
159
147
143
154
158
170
158
146
158
146
142
153
157
169
157
145
157
145
141
152
156
168
156
144
156
144
140
151
155
167
155
143
155
143
139
150
154
166
154
142
154
142
138
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
150
151
152
153
165
164
163
162
161
160
159
158
157
156
155
154
153
141
142
143
144
145
146
147
148
149
150
151
152
153
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
140
152
140
128
139
151
139
127
138
150
138
126
137
149
137
125
136
148
136
124
135
147
135
123
134
146
134
122
133
145
133
121
132
144
132
120
131
143
131
119
130
142
130
118
129
128
127
126
125
124
123
122
121
120
119
118
117
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
114
115
116
117
130
116
128
116
104
118
131
115
127
115
103
119
132
114
126
114
102
120
133
113
125
113
101
121
134
112
124
112
100
122
135
111
123
111
99
123
136
110
122
110
98
124
138
139
140
141
142
143
143
142
141
140
139
138
137
109
121
109
97
125
126
127
128
129
130
131
132
133
134
135
136
137
108
120
108
96
107
119
107
95
106
118
106
94
105
117
105
93
104
116
104
92
103
104
105
106
107
108
109
110
111
112
113
114
115
103
102
101
100
99
98
97
96
95
94
93
92
91
102
114
102
90
101
113
101
89
100
112
100
88
99
111
99
87
98
110
98
86
97
109
97
85
107
108
109
110
111
112
113
113
112
111
110
109
108
96
108
96
84
94
95
96
97
98
99
100
101
102
103
104
105
106
107
95
107
95
83
93
106
94
106
94
82
92
105
93
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
81
91
104
92
92
80
80
90
103
91
91
79
79
89
102
90
90
78
78
88
101
100
99
98
97
96
95
94
93
92
91
90
89
89
77
77
78
79
80
81
82
83
84
85
86
87
88
87
100
88
88
76
76
86
99
87
87
75
75
85
98
86
86
74
74
84
97
85
85
73
73
83
96
84
84
72
72
82
95
83
83
71
71
81
94
82
82
70
70
80
93
81
80
79
78
77
76
75
74
73
72
71
70
69
70
71
72
73
74
75
76
77
78
79
80
81
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
79
92
68
82
70
56
78
91
67
83
71
55
77
90
66
84
72
54
76
89
65
85
73
53
75
88
64
86
74
52
74
87
63
87
75
51
73
86
62
88
76
50
72
85
61
89
77
49
71
84
60
90
78
48
70
83
59
91
79
47
69
82
58
92
80
46
68
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
93
92
91
90
89
88
87
86
85
84
83
82
81
45
46
47
48
49
50
51
52
53
54
55
56
55
56
57
58
59
60
61
62
63
64
65
66
67
66
65
64
63
62
61
60
59
90
70
56
44
54
58
91
71
55
43
53
57
92
72
54
42
52
56
93
73
53
41
51
55
94
74
52
40
50
54
95
75
51
39
49
53
96
76
50
38
48
52
97
77
49
37
47
51
98
78
48
36
46
50
99
79
47
35
45
49
100
80
46
34
44
48
101
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
22
23
24
25
26
27
28
29
30
31
32
33
43
42
41
40
39
38
37
36
35
47
100
88
34
20
34
46
99
87
35
19
33
45
98
86
36
18
32
44
97
85
37
17
31
43
96
84
38
16
30
42
95
83
39
15
29
41
94
82
40
14
28
40
93
81
41
13
27
39
92
80
42
12
26
38
91
79
43
11
25
37
90
78
44
10
24
36
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
9
8
7
6
5
4
3
2
1
0
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
195
196
197
198
199
200
201
202
203
204
205
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
177
189
193
181
177
165
176
188
192
180
176
164
175
187
191
179
175
163
174
186
190
178
174
162
173
185
189
177
173
161
172
184
188
176
172
160
171
183
187
175
171
159
170
182
186
174
170
158
169
181
185
173
169
157
168
180
184
172
168
156
167
179
183
171
167
155
166
178
182
170
169
168
167
166
165
164
163
162
161
160
159
158
170
166
154
165
177
181
169
157
169
165
153
164
176
180
168
156
168
164
152
163
175
179
167
155
167
163
151
162
174
173
172
171
170
169
168
167
166
167
168
169
170
171
172
173
174
175
176
177
178
166
154
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
150
161
165
177
165
153
165
153
149
160
164
176
164
152
164
152
148
159
163
175
163
151
163
151
147
158
162
174
162
150
162
150
146
157
161
173
161
149
161
149
145
156
160
172
160
148
160
148
144
155
159
171
159
147
159
147
143
154
158
170
158
146
158
146
142
153
157
169
157
145
157
145
141
152
156
168
156
144
156
144
140
151
155
167
155
143
155
143
139
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
151
152
153
154
166
165
164
163
162
161
160
159
158
157
156
155
154
142
143
144
145
146
147
148
149
150
151
152
153
154
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
141
153
141
129
140
152
140
128
139
151
139
127
138
150
138
126
137
149
137
125
136
148
136
124
135
147
135
123
134
146
134
122
133
145
133
121
132
144
132
120
131
143
131
119
130
129
128
127
126
125
124
123
122
121
120
119
118
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
115
116
117
118
131
117
129
117
105
119
132
116
128
116
104
120
133
115
127
115
103
121
134
114
126
114
102
122
135
113
125
113
101
123
136
112
124
112
100
124
137
111
123
111
99
125
139
140
141
142
143
144
144
143
142
141
140
139
138
110
122
110
98
126
127
128
129
130
131
132
133
134
135
136
137
138
109
121
109
97
108
120
108
96
107
119
107
95
106
118
106
94
105
117
105
93
104
105
106
107
108
109
110
111
112
113
114
115
116
104
103
102
101
100
99
98
97
96
95
94
93
92
103
115
103
91
102
114
102
90
101
113
101
89
100
112
100
88
99
111
99
87
98
110
98
86
106
107
108
109
110
111
112
113
113
112
111
110
109
97
109
97
85
93
94
95
96
97
98
99
100
101
102
103
104
105
108
96
108
96
84
92
107
95
107
95
83
91
106
94
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
82
90
105
93
93
81
81
89
104
92
92
80
80
88
103
91
91
79
79
87
102
101
100
99
98
97
96
95
94
93
92
91
90
90
78
78
79
80
81
82
83
84
85
86
87
88
87
86
101
89
89
77
77
85
100
88
88
76
76
84
99
87
87
75
75
83
98
86
86
74
74
82
97
85
85
73
73
81
96
84
84
72
72
80
95
83
83
71
71
79
94
82
81
80
79
78
77
76
75
74
73
72
71
70
71
72
73
74
75
76
77
78
79
80
81
82
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
78
93
69
83
71
57
77
92
68
84
72
56
76
91
67
85
73
55
75
90
66
86
74
54
74
89
65
87
75
53
73
88
64
88
76
52
72
87
63
89
77
51
71
86
62
90
78
50
70
85
61
91
79
49
69
84
60
92
80
48
68
83
59
93
81
47
67
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
94
93
92
91
90
89
88
87
86
85
84
83
82
46
47
48
49
50
51
52
53
54
55
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
65
64
63
62
61
60
59
58
91
71
57
45
53
57
92
72
56
44
52
56
93
73
55
43
51
55
94
74
54
42
50
54
95
75
53
41
49
53
96
76
52
40
48
52
97
77
51
39
47
51
98
78
50
38
46
50
99
79
49
37
45
49
100
80
48
36
44
48
101
81
47
35
43
47
102
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
23
24
25
26
27
28
29
30
31
32
33
34
42
41
40
39
38
37
36
35
34
46
101
89
35
21
33
45
100
88
36
20
32
44
99
87
37
19
31
43
98
86
38
18
30
42
97
85
39
17
29
41
96
84
40
16
28
40
95
83
41
15
27
39
94
82
42
14
26
38
93
81
43
13
25
37
92
80
44
12
24
36
91
79
45
11
23
35
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
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
10
9
8
7
6
5
4
3
2
1
0
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
196
197
198
199
200
201
202
203
204
205
206
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
178
190
194
182
178
166
177
189
193
181
177
165
176
188
192
180
176
164
175
187
191
179
175
163
174
186
190
178
174
162
173
185
189
177
173
161
172
184
188
176
172
160
171
183
187
175
171
159
170
182
186
174
170
158
169
181
185
173
169
157
168
180
184
172
168
156
167
179
183
171
170
169
168
167
166
165
164
163
162
161
160
159
171
167
155
166
178
182
170
158
170
166
154
165
177
181
169
157
169
165
153
164
176
180
168
156
168
164
152
163
175
174
173
172
171
170
169
168
167
168
169
170
171
172
173
174
175
176
177
178
179
167
155
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
151
162
166
178
166
154
166
154
150
161
165
177
165
153
165
153
149
160
164
176
164
152
164
152
148
159
163
175
163
151
163
151
147
158
162
174
162
150
162
150
146
157
161
173
161
149
161
149
145
156
160
172
160
148
160
148
144
155
159
171
159
147
159
147
143
154
158
170
158
146
158
146
142
153
157
169
157
145
157
145
141
152
156
168
156
144
156
144
140
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
152
153
154
155
167
166
165
164
163
162
161
160
159
158
157
156
155
143
144
145
146
147
148
149
150
151
152
153
154
155
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
142
154
142
130
141
153
141
129
140
152
140
128
139
151
139
127
138
150
138
126
137
149
137
125
136
148
136
124
135
147
135
123
134
146
134
122
133
145
133
121
132
144
132
120
131
130
129
128
127
126
125
124
123
122
121
120
119
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
116
117
118
119
132
118
130
118
106
120
133
117
129
117
105
121
134
116
128
116
104
122
135
115
127
115
103
123
136
114
126
114
102
124
137
113
125
113
101
125
138
112
124
112
100
126
140
141
142
143
144
145
145
144
143
142
141
140
139
111
123
111
99
127
128
129
130
131
132
133
134
135
136
137
138
139
110
122
110
98
109
121
109
97
108
120
108
96
107
119
107
95
106
118
106
94
105
106
107
108
109
110
111
112
113
114
115
116
117
105
104
103
102
101
100
99
98
97
96
95
94
93
104
116
104
92
103
115
103
91
102
114
102
90
101
113
101
89
100
112
100
88
99
111
99
87
105
106
107
108
109
110
111
112
113
113
112
111
110
98
110
98
86
92
93
94
95
96
97
98
99
100
101
102
103
104
109
97
109
97
85
91
108
96
108
96
84
90
107
95
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
83
89
106
94
94
82
82
88
105
93
93
81
81
87
104
92
92
80
80
86
103
102
101
100
99
98
97
96
95
94
93
92
91
91
79
79
80
81
82
83
84
85
86
87
88
87
86
85
102
90
90
78
78
84
101
89
89
77
77
83
100
88
88
76
76
82
99
87
87
75
75
81
98
86
86
74
74
80
97
85
85
73
73
79
96
84
84
72
72
78
95
83
82
81
80
79
78
77
76
75
74
73
72
71
72
73
74
75
76
77
78
79
80
81
82
83
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
77
94
70
84
72
58
76
93
69
85
73
57
75
92
68
86
74
56
74
91
67
87
75
55
73
90
66
88
76
54
72
89
65
89
77
53
71
88
64
90
78
52
70
87
63
91
79
51
69
86
62
92
80
50
68
85
61
93
81
49
67
84
60
94
82
48
66
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
95
94
93
92
91
90
89
88
87
86
85
84
83
47
48
49
50
51
52
53
54
55
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
64
63
62
61
60
59
58
57
92
72
58
46
52
56
93
73
57
45
51
55
94
74
56
44
50
54
95
75
55
43
49
53
96
76
54
42
48
52
97
77
53
41
47
51
98
78
52
40
46
50
99
79
51
39
45
49
100
80
50
38
44
48
101
81
49
37
43
47
102
82
48
36
42
46
103
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
24
25
26
27
28
29
30
31
32
33
34
35
41
40
39
38
37
36
35
34
33
45
102
90
36
22
32
44
101
89
37
21
31
43
100
88
38
20
30
42
99
87
39
19
29
41
98
86
40
18
28
40
97
85
41
17
27
39
96
84
42
16
26
38
95
83
43
15
25
37
94
82
44
14
24
36
93
81
45
13
23
35
92
80
46
12
22
34
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
11
10
9
8
7
6
5
4
3
2
1
0
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
203
202
201
200
199
198
197
196
197
198
199
200
201
202
203
204
205
206
207
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
179
191
195
183
179
167
178
190
194
182
178
166
177
189
193
181
177
165
176
188
192
180
176
164
175
187
191
179
175
163
174
186
190
178
174
162
173
185
189
177
173
161
172
184
188
176
172
160
171
183
187
175
171
159
170
182
186
174
170
158
169
181
185
173
169
157
168
180
184
172
171
170
169
168
167
166
165
164
163
162
161
160
172
168
156
167
179
183
171
159
171
167
155
166
178
182
170
158
170
166
154
165
177
181
169
157
169
165
153
164
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
177
178
179
180
168
156
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
152
163
167
179
167
155
167
155
151
162
166
178
166
154
166
154
150
161
165
177
165
153
165
153
149
160
164
176
164
152
164
152
148
159
163
175
163
151
163
151
147
158
162
174
162
150
162
150
146
157
161
173
161
149
161
149
145
156
160
172
160
148
160
148
144
155
159
171
159
147
159
147
143
154
158
170
158
146
158
146
142
153
157
169
157
145
157
145
141
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
153
154
155
156
168
167
166
165
164
163
162
161
160
159
158
157
156
144
145
146
147
148
149
150
151
152
153
154
155
156
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
143
155
143
131
142
154
142
130
141
153
141
129
140
152
140
128
139
151
139
127
138
150
138
126
137
149
137
125
136
148
136
124
135
147
135
123
134
146
134
122
133
145
133
121
132
131
130
129
128
127
126
125
124
123
122
121
120
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
117
118
119
120
133
119
131
119
107
121
134
118
130
118
106
122
135
117
129
117
105
123
136
116
128
116
104
124
137
115
127
115
103
125
138
114
126
114
102
126
139
113
125
113
101
127
141
142
143
144
145
146
146
145
144
143
142
141
140
112
124
112
100
128
129
130
131
132
133
134
135
136
137
138
139
140
111
123
111
99
110
122
110
98
109
121
109
97
108
120
108
96
107
119
107
95
106
107
108
109
110
111
112
113
114
115
116
117
118
106
105
104
103
102
101
100
99
98
97
96
95
94
105
117
105
93
104
116
104
92
103
115
103
91
102
114
102
90
101
113
101
89
100
112
100
88
104
105
106
107
108
109
110
111
112
113
113
112
111
99
111
99
87
91
92
93
94
95
96
97
98
99
100
101
102
103
110
98
110
98
86
90
109
97
109
97
85
89
108
96
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
84
88
107
95
95
83
83
87
106
94
94
82
82
86
105
93
93
81
81
85
104
103
102
101
100
99
98
97
96
95
94
93
92
92
80
80
81
82
83
84
85
86
87
88
87
86
85
84
103
91
91
79
79
83
102
90
90
78
78
82
101
89
89
77
77
81
100
88
88
76
76
80
99
87
87
75
75
79
98
86
86
74
74
78
97
85
85
73
73
77
96
84
83
82
81
80
79
78
77
76
75
74
73
72
73
74
75
76
77
78
79
80
81
82
83
84
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
76
95
71
85
73
59
75
94
70
86
74
58
74
93
69
87
75
57
73
92
68
88
76
56
72
91
67
89
77
55
71
90
66
90
78
54
70
89
65
91
79
53
69
88
64
92
80
52
68
87
63
93
81
51
67
86
62
94
82
50
66
85
61
95
83
49
65
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
96
95
94
93
92
91
90
89
88
87
86
85
84
48
49
50
51
52
53
54
55
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
63
62
61
60
59
58
57
56
93
73
59
47
51
55
94
74
58
46
50
54
95
75
57
45
49
53
96
76
56
44
48
52
97
77
55
43
47
51
98
78
54
42
46
50
99
79
53
41
45
49
100
80
52
40
44
48
101
81
51
39
43
47
102
82
50
38
42
46
103
83
49
37
41
45
104
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
25
26
27
28
29
30
31
32
33
34
35
36
40
39
38
37
36
35
34
33
32
44
103
91
37
23
31
43
102
90
38
22
30
42
101
89
39
21
29
41
100
88
40
20
28
40
99
87
41
19
27
39
98
86
42
18
26
38
97
85
43
17
25
37
96
84
44
16
24
36
95
83
45
15
23
35
94
82
46
14
22
34
93
81
47
13
21
33
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
12
11
10
9
8
7
6
5
4
3
2
1
0
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
204
203
202
201
200
199
198
197
198
199
200
201
202
203
204
205
206
207
208
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
180
192
196
184
180
168
179
191
195
183
179
167
178
190
194
182
178
166
177
189
193
181
177
165
176
188
192
180
176
164
175
187
191
179
175
163
174
186
190
178
174
162
173
185
189
177
173
161
172
184
188
176
172
160
171
183
187
175
171
159
170
182
186
174
170
158
169
181
185
173
172
171
170
169
168
167
166
165
164
163
162
161
173
169
157
168
180
184
172
160
172
168
156
167
179
183
171
159
171
167
155
166
178
182
170
158
170
166
154
165
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
178
179
180
181
169
157
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
153
164
168
180
168
156
168
156
152
163
167
179
167
155
167
155
151
162
166
178
166
154
166
154
150
161
165
177
165
153
165
153
149
160
164
176
164
152
164
152
148
159
163
175
163
151
163
151
147
158
162
174
162
150
162
150
146
157
161
173
161
149
161
149
145
156
160
172
160
148
160
148
144
155
159
171
159
147
159
147
143
154
158
170
158
146
158
146
142
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
154
155
156
157
169
168
167
166
165
164
163
162
161
160
159
158
157
145
146
147
148
149
150
151
152
153
154
155
156
157
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
144
156
144
132
143
155
143
131
142
154
142
130
141
153
141
129
140
152
140
128
139
151
139
127
138
150
138
126
137
149
137
125
136
148
136
124
135
147
135
123
134
146
134
122
133
132
131
130
129
128
127
126
125
124
123
122
121
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
109
110
111
112
113
114
115
116
117
118
119
120
121
134
120
132
120
108
122
135
119
131
119
107
123
136
118
130
118
106
124
137
117
129
117
105
125
138
116
128
116
104
126
139
115
127
115
103
127
140
114
126
114
102
128
142
143
144
145
146
147
147
146
145
144
143
142
141
113
125
113
101
129
130
131
132
133
134
135
136
137
138
139
140
141
112
124
112
100
111
123
111
99
110
122
110
98
109
121
109
97
108
120
108
96
107
108
109
110
111
112
113
114
115
116
117
118
119
107
106
105
104
103
102
101
100
99
98
97
96
95
106
118
106
94
105
117
105
93
104
116
104
92
103
115
103
91
102
114
102
90
101
113
101
89
103
104
105
106
107
108
109
110
111
112
113
113
112
100
112
100
88
90
91
92
93
94
95
96
97
98
99
100
101
102
111
99
111
99
87
89
110
98
110
98
86
88
109
97
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
85
87
108
96
96
84
84
86
107
95
95
83
83
85
106
94
94
82
82
84
105
104
103
102
101
100
99
98
97
96
95
94
93
93
81
81
82
83
84
85
86
87
88
87
86
85
84
83
104
92
92
80
80
82
103
91
91
79
79
81
102
90
90
78
78
80
101
89
89
77
77
79
100
88
88
76
76
78
99
87
87
75
75
77
98
86
86
74
74
76
97
85
84
83
82
81
80
79
78
77
76
75
74
73
74
75
76
77
78
79
80
81
82
83
84
85
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
75
96
72
86
74
60
74
95
71
87
75
59
73
94
70
88
76
58
72
93
69
89
77
57
71
92
68
90
78
56
70
91
67
91
79
55
69
90
66
92
80
54
68
89
65
93
81
53
67
88
64
94
82
52
66
87
63
95
83
51
65
86
62
96
84
50
64
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
97
96
95
94
93
92
91
90
89
88
87
86
85
49
50
51
52
53
54
55
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
62
61
60
59
58
57
56
55
94
74
60
48
50
54
95
75
59
47
49
53
96
76
58
46
48
52
97
77
57
45
47
51
98
78
56
44
46
50
99
79
55
43
45
49
100
80
54
42
44
48
101
81
53
41
43
47
102
82
52
40
42
46
103
83
51
39
41
45
104
84
50
38
40
44
105
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
26
27
28
29
30
31
32
33
34
35
36
37
39
38
37
36
35
34
33
32
31
43
104
92
38
24
30
42
103
91
39
23
29
41
102
90
40
22
28
40
101
89
41
21
27
39
100
88
42
20
26
38
99
87
43
19
25
37
98
86
44
18
24
36
97
85
45
17
23
35
96
84
46
16
22
34
95
83
47
15
21
33
94
82
48
14
20
32
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
13
12
11
10
9
8
7
6
5
4
3
2
1
0
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
205
204
203
202
201
200
199
198
199
200
201
202
203
204
205
206
207
208
209
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
181
193
197
185
181
169
180
192
196
184
180
168
179
191
195
183
179
167
178
190
194
182
178
166
177
189
193
181
177
165
176
188
192
180
176
164
175
187
191
179
175
163
174
186
190
178
174
162
173
185
189
177
173
161
172
184
188
176
172
160
171
183
187
175
171
159
170
182
186
174
173
172
171
170
169
168
167
166
165
164
163
162
174
170
158
169
181
185
173
161
173
169
157
168
180
184
172
160
172
168
156
167
179
183
171
159
171
167
155
166
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
179
180
181
182
170
158
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
154
165
169
181
169
157
169
157
153
164
168
180
168
156
168
156
152
163
167
179
167
155
167
155
151
162
166
178
166
154
166
154
150
161
165
177
165
153
165
153
149
160
164
176
164
152
164
152
148
159
163
175
163
151
163
151
147
158
162
174
162
150
162
150
146
157
161
173
161
149
161
149
145
156
160
172
160
148
160
148
144
155
159
171
159
147
159
147
143
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
155
156
157
158
170
169
168
167
166
165
164
163
162
161
160
159
158
146
147
148
149
150
151
152
153
154
155
156
157
158
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
145
157
145
133
144
156
144
132
143
155
143
131
142
154
142
130
141
153
141
129
140
152
140
128
139
151
139
127
138
150
138
126
137
149
137
125
136
148
136
124
135
147
135
123
134
133
132
131
130
129
128
127
126
125
124
123
122
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
110
111
112
113
114
115
116
117
118
119
120
121
122
135
121
133
121
109
123
136
120
132
120
108
124
137
119
131
119
107
125
138
118
130
118
106
126
139
117
129
117
105
127
140
116
128
116
104
128
141
115
127
115
103
129
143
144
145
146
147
148
148
147
146
145
144
143
142
114
126
114
102
130
131
132
133
134
135
136
137
138
139
140
141
142
113
125
113
101
112
124
112
100
111
123
111
99
110
122
110
98
109
121
109
97
108
109
110
111
112
113
114
115
116
117
118
119
120
108
107
106
105
104
103
102
101
100
99
98
97
96
107
119
107
95
106
118
106
94
105
117
105
93
104
116
104
92
103
115
103
91
102
114
102
90
102
103
104
105
106
107
108
109
110
111
112
113
113
101
113
101
89
89
90
91
92
93
94
95
96
97
98
99
100
101
112
100
112
100
88
88
111
99
111
99
87
87
110
98
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
86
86
109
97
97
85
85
85
108
96
96
84
84
84
107
95
95
83
83
83
106
105
104
103
102
101
100
99
98
97
96
95
94
94
82
82
83
84
85
86
87
88
87
86
85
84
83
82
105
93
93
81
81
81
104
92
92
80
80
80
103
91
91
79
79
79
102
90
90
78
78
78
101
89
89
77
77
77
100
88
88
76
76
76
99
87
87
75
75
75
98
86
85
84
83
82
81
80
79
78
77
76
75
74
75
76
77
78
79
80
81
82
83
84
85
86
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
74
97
73
87
75
61
73
96
72
88
76
60
72
95
71
89
77
59
71
94
70
90
78
58
70
93
69
91
79
57
69
92
68
92
80
56
68
91
67
93
81
55
67
90
66
94
82
54
66
89
65
95
83
53
65
88
64
96
84
52
64
87
63
97
85
51
63
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
98
97
96
95
94
93
92
91
90
89
88
87
86
50
51
52
53
54
55
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
61
60
59
58
57
56
55
54
95
75
61
49
49
53
96
76
60
48
48
52
97
77
59
47
47
51
98
78
58
46
46
50
99
79
57
45
45
49
100
80
56
44
44
48
101
81
55
43
43
47
102
82
54
42
42
46
103
83
53
41
41
45
104
84
52
40
40
44
105
85
51
39
39
43
106
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
27
28
29
30
31
32
33
34
35
36
37
38
38
37
36
35
34
33
32
31
30
42
105
93
39
25
29
41
104
92
40
24
28
40
103
91
41
23
27
39
102
90
42
22
26
38
101
89
43
21
25
37
100
88
44
20
24
36
99
87
45
19
23
35
98
86
46
18
22
34
97
85
47
17
21
33
96
84
48
16
20
32
95
83
49
15
19
31
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
206
205
204
203
202
201
200
199
200
201
202
203
204
205
206
207
208
209
210
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
182
194
198
186
182
170
181
193
197
185
181
169
180
192
196
184
180
168
179
191
195
183
179
167
178
190
194
182
178
166
177
189
193
181
177
165
176
188
192
180
176
164
175
187
191
179
175
163
174
186
190
178
174
162
173
185
189
177
173
161
172
184
188
176
172
160
171
183
187
175
174
173
172
171
170
169
168
167
166
165
164
163
175
171
159
170
182
186
174
162
174
170
158
169
181
185
173
161
173
169
157
168
180
184
172
160
172
168
156
167
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
180
181
182
183
171
159
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
155
166
170
182
170
158
170
158
154
165
169
181
169
157
169
157
153
164
168
180
168
156
168
156
152
163
167
179
167
155
167
155
151
162
166
178
166
154
166
154
150
161
165
177
165
153
165
153
149
160
164
176
164
152
164
152
148
159
163
175
163
151
163
151
147
158
162
174
162
150
162
150
146
157
161
173
161
149
161
149
145
156
160
172
160
148
160
148
144
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
156
157
158
159
171
170
169
168
167
166
165
164
163
162
161
160
159
147
148
149
150
151
152
153
154
155
156
157
158
159
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
146
158
146
134
145
157
145
133
144
156
144
132
143
155
143
131
142
154
142
130
141
153
141
129
140
152
140
128
139
151
139
127
138
150
138
126
137
149
137
125
136
148
136
124
135
134
133
132
131
130
129
128
127
126
125
124
123
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
111
112
113
114
115
116
117
118
119
120
121
122
123
136
122
134
122
110
124
137
121
133
121
109
125
138
120
132
120
108
126
139
119
131
119
107
127
140
118
130
118
106
128
141
117
129
117
105
129
142
116
128
116
104
130
144
145
146
147
148
149
149
148
147
146
145
144
143
115
127
115
103
131
132
133
134
135
136
137
138
139
140
141
142
143
114
126
114
102
113
125
113
101
112
124
112
100
111
123
111
99
110
122
110
98
109
110
111
112
113
114
115
116
117
118
119
120
121
109
108
107
106
105
104
103
102
101
100
99
98
97
108
120
108
96
107
119
107
95
106
118
106
94
105
117
105
93
104
116
104
92
103
115
103
91
101
102
103
104
105
106
107
108
109
110
111
112
113
102
114
102
90
88
89
90
91
92
93
94
95
96
97
98
99
100
113
101
113
101
89
87
112
100
112
100
88
86
111
99
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
87
85
110
98
98
86
86
84
109
97
97
85
85
83
108
96
96
84
84
82
107
106
105
104
103
102
101
100
99
98
97
96
95
95
83
83
84
85
86
87
88
87
86
85
84
83
82
81
106
94
94
82
82
80
105
93
93
81
81
79
104
92
92
80
80
78
103
91
91
79
79
77
102
90
90
78
78
76
101
89
89
77
77
75
100
88
88
76
76
74
99
87
86
85
84
83
82
81
80
79
78
77
76
75
76
77
78
79
80
81
82
83
84
85
86
87
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
73
98
74
88
76
62
72
97
73
89
77
61
71
96
72
90
78
60
70
95
71
91
79
59
69
94
70
92
80
58
68
93
69
93
81
57
67
92
68
94
82
56
66
91
67
95
83
55
65
90
66
96
84
54
64
89
65
97
85
53
63
88
64
98
86
52
62
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
99
98
97
96
95
94
93
92
91
90
89
88
87
51
52
53
54
55
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
60
59
58
57
56
55
54
53
96
76
62
50
48
52
97
77
61
49
47
51
98
78
60
48
46
50
99
79
59
47
45
49
100
80
58
46
44
48
101
81
57
45
43
47
102
82
56
44
42
46
103
83
55
43
41
45
104
84
54
42
40
44
105
85
53
41
39
43
106
86
52
40
38
42
107
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
28
29
30
31
32
33
34
35
36
37
38
39
37
36
35
34
33
32
31
30
29
41
106
94
40
26
28
40
105
93
41
25
27
39
104
92
42
24
26
38
103
91
43
23
25
37
102
90
44
22
24
36
101
89
45
21
23
35
100
88
46
20
22
34
99
87
47
19
21
33
98
86
48
18
20
32
97
85
49
17
19
31
96
84
50
16
18
30
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
207
206
205
204
203
202
201
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
183
195
199
187
183
171
182
194
198
186
182
170
181
193
197
185
181
169
180
192
196
184
180
168
179
191
195
183
179
167
178
190
194
182
178
166
177
189
193
181
177
165
176
188
192
180
176
164
175
187
191
179
175
163
174
186
190
178
174
162
173
185
189
177
173
161
172
184
188
176
175
174
173
172
171
170
169
168
167
166
165
164
176
172
160
171
183
187
175
163
175
171
159
170
182
186
174
162
174
170
158
169
181
185
173
161
173
169
157
168
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
181
182
183
184
172
160
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
156
167
171
183
171
159
171
159
155
166
170
182
170
158
170
158
154
165
169
181
169
157
169
157
153
164
168
180
168
156
168
156
152
163
167
179
167
155
167
155
151
162
166
178
166
154
166
154
150
161
165
177
165
153
165
153
149
160
164
176
164
152
164
152
148
159
163
175
163
151
163
151
147
158
162
174
162
150
162
150
146
157
161
173
161
149
161
149
145
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
157
158
159
160
172
171
170
169
168
167
166
165
164
163
162
161
160
148
149
150
151
152
153
154
155
156
157
158
159
160
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
147
159
147
135
146
158
146
134
145
157
145
133
144
156
144
132
143
155
143
131
142
154
142
130
141
153
141
129
140
152
140
128
139
151
139
127
138
150
138
126
137
149
137
125
136
135
134
133
132
131
130
129
128
127
126
125
124
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
112
113
114
115
116
117
118
119
120
121
122
123
124
137
123
135
123
111
125
138
122
134
122
110
126
139
121
133
121
109
127
140
120
132
120
108
128
141
119
131
119
107
129
142
118
130
118
106
130
143
117
129
117
105
131
145
146
147
148
149
150
150
149
148
147
146
145
144
116
128
116
104
132
133
134
135
136
137
138
139
140
141
142
143
144
115
127
115
103
114
126
114
102
113
125
113
101
112
124
112
100
111
123
111
99
110
111
112
113
114
115
116
117
118
119
120
121
122
110
109
108
107
106
105
104
103
102
101
100
99
98
109
121
109
97
108
120
108
96
107
119
107
95
106
118
106
94
105
117
105
93
104
116
104
92
100
101
102
103
104
105
106
107
108
109
110
111
112
103
115
103
91
87
88
89
90
91
92
93
94
95
96
97
98
99
113
102
114
102
90
86
113
101
113
101
89
85
112
100
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
88
84
111
99
99
87
87
83
110
98
98
86
86
82
109
97
97
85
85
81
108
107
106
105
104
103
102
101
100
99
98
97
96
96
84
84
85
86
87
88
87
86
85
84
83
82
81
80
107
95
95
83
83
79
106
94
94
82
82
78
105
93
93
81
81
77
104
92
92
80
80
76
103
91
91
79
79
75
102
90
90
78
78
74
101
89
89
77
77
73
100
88
87
86
85
84
83
82
81
80
79
78
77
76
77
78
79
80
81
82
83
84
85
86
87
88
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
72
99
75
89
77
63
71
98
74
90
78
62
70
97
73
91
79
61
69
96
72
92
80
60
68
95
71
93
81
59
67
94
70
94
82
58
66
93
69
95
83
57
65
92
68
96
84
56
64
91
67
97
85
55
63
90
66
98
86
54
62
89
65
99
87
53
61
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
100
99
98
97
96
95
94
93
92
91
90
89
88
52
53
54
55
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
59
58
57
56
55
54
53
52
97
77
63
51
47
51
98
78
62
50
46
50
99
79
61
49
45
49
100
80
60
48
44
48
101
81
59
47
43
47
102
82
58
46
42
46
103
83
57
45
41
45
104
84
56
44
40
44
105
85
55
43
39
43
106
86
54
42
38
42
107
87
53
41
37
41
108
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
29
30
31
32
33
34
35
36
37
38
39
40
36
35
34
33
32
31
30
29
28
40
107
95
41
27
27
39
106
94
42
26
26
38
105
93
43
25
25
37
104
92
44
24
24
36
103
91
45
23
23
35
102
90
46
22
22
34
101
89
47
21
21
33
100
88
48
20
20
32
99
87
49
19
19
31
98
86
50
18
18
30
97
85
51
17
17
29
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
208
207
206
205
204
203
202
201
202
203
204
205
206
207
208
209
210
211
212
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
184
196
200
188
184
172
183
195
199
187
183
171
182
194
198
186
182
170
181
193
197
185
181
169
180
192
196
184
180
168
179
191
195
183
179
167
178
190
194
182
178
166
177
189
193
181
177
165
176
188
192
180
176
164
175
187
191
179
175
163
174
186
190
178
174
162
173
185
189
177
176
175
174
173
172
171
170
169
168
167
166
165
177
173
161
172
184
188
176
164
176
172
160
171
183
187
175
163
175
171
159
170
182
186
174
162
174
170
158
169
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
182
183
184
185
173
161
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
157
168
172
184
172
160
172
160
156
167
171
183
171
159
171
159
155
166
170
182
170
158
170
158
154
165
169
181
169
157
169
157
153
164
168
180
168
156
168
156
152
163
167
179
167
155
167
155
151
162
166
178
166
154
166
154
150
161
165
177
165
153
165
153
149
160
164
176
164
152
164
152
148
159
163
175
163
151
163
151
147
158
162
174
162
150
162
150
146
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
158
159
160
161
173
172
171
170
169
168
167
166
165
164
163
162
161
149
150
151
152
153
154
155
156
157
158
159
160
161
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
148
160
148
136
147
159
147
135
146
158
146
134
145
157
145
133
144
156
144
132
143
155
143
131
142
154
142
130
141
153
141
129
140
152
140
128
139
151
139
127
138
150
138
126
137
136
135
134
133
132
131
130
129
128
127
126
125
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
113
114
115
116
117
118
119
120
121
122
123
124
125
138
124
136
124
112
126
139
123
135
123
111
127
140
122
134
122
110
128
141
121
133
121
109
129
142
120
132
120
108
130
143
119
131
119
107
131
144
118
130
118
106
132
146
147
148
149
150
151
151
150
149
148
147
146
145
117
129
117
105
133
134
135
136
137
138
139
140
141
142
143
144
145
116
128
116
104
115
127
115
103
114
126
114
102
113
125
113
101
112
124
112
100
111
112
113
114
115
116
117
118
119
120
121
122
123
111
110
109
108
107
106
105
104
103
102
101
100
99
110
122
110
98
109
121
109
97
108
120
108
96
107
119
107
95
106
118
106
94
105
117
105
93
99
100
101
102
103
104
105
106
107
108
109
110
111
104
116
104
92
86
87
88
89
90
91
92
93
94
95
96
97
98
112
103
115
103
91
85
113
102
114
102
90
84
113
101
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
89
83
112
100
100
88
88
82
111
99
99
87
87
81
110
98
98
86
86
80
109
108
107
106
105
104
103
102
101
100
99
98
97
97
85
85
86
87
88
87
86
85
84
83
82
81
80
79
108
96
96
84
84
78
107
95
95
83
83
77
106
94
94
82
82
76
105
93
93
81
81
75
104
92
92
80
80
74
103
91
91
79
79
73
102
90
90
78
78
72
101
89
88
87
86
85
84
83
82
81
80
79
78
77
78
79
80
81
82
83
84
85
86
87
88
89
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
71
100
76
90
78
64
70
99
75
91
79
63
69
98
74
92
80
62
68
97
73
93
81
61
67
96
72
94
82
60
66
95
71
95
83
59
65
94
70
96
84
58
64
93
69
97
85
57
63
92
68
98
86
56
62
91
67
99
87
55
61
90
66
100
88
54
60
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
101
100
99
98
97
96
95
94
93
92
91
90
89
53
54
55
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
58
57
56
55
54
53
52
51
98
78
64
52
46
50
99
79
63
51
45
49
100
80
62
50
44
48
101
81
61
49
43
47
102
82
60
48
42
46
103
83
59
47
41
45
104
84
58
46
40
44
105
85
57
45
39
43
106
86
56
44
38
42
107
87
55
43
37
41
108
88
54
42
36
40
109
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
30
31
32
33
34
35
36
37
38
39
40
41
35
34
33
32
31
30
29
28
27
39
108
96
42
28
26
38
107
95
43
27
25
37
106
94
44
26
24
36
105
93
45
25
23
35
104
92
46
24
22
34
103
91
47
23
21
33
102
90
48
22
20
32
101
89
49
21
19
31
100
88
50
20
18
30
99
87
51
19
17
29
98
86
52
18
16
28
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
209
208
207
206
205
204
203
202
203
204
205
206
207
208
209
210
211
212
213
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
185
197
201
189
185
173
184
196
200
188
184
172
183
195
199
187
183
171
182
194
198
186
182
170
181
193
197
185
181
169
180
192
196
184
180
168
179
191
195
183
179
167
178
190
194
182
178
166
177
189
193
181
177
165
176
188
192
180
176
164
175
187
191
179
175
163
174
186
190
178
177
176
175
174
173
172
171
170
169
168
167
166
178
174
162
173
185
189
177
165
177
173
161
172
184
188
176
164
176
172
160
171
183
187
175
163
175
171
159
170
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
183
184
185
186
174
162
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
158
169
173
185
173
161
173
161
157
168
172
184
172
160
172
160
156
167
171
183
171
159
171
159
155
166
170
182
170
158
170
158
154
165
169
181
169
157
169
157
153
164
168
180
168
156
168
156
152
163
167
179
167
155
167
155
151
162
166
178
166
154
166
154
150
161
165
177
165
153
165
153
149
160
164
176
164
152
164
152
148
159
163
175
163
151
163
151
147
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
159
160
161
162
174
173
172
171
170
169
168
167
166
165
164
163
162
150
151
152
153
154
155
156
157
158
159
160
161
162
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
149
161
149
137
148
160
148
136
147
159
147
135
146
158
146
134
145
157
145
133
144
156
144
132
143
155
143
131
142
154
142
130
141
153
141
129
140
152
140
128
139
151
139
127
138
137
136
135
134
133
132
131
130
129
128
127
126
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
114
115
116
117
118
119
120
121
122
123
124
125
126
139
125
137
125
113
127
140
124
136
124
112
128
141
123
135
123
111
129
142
122
134
122
110
130
143
121
133
121
109
131
144
120
132
120
108
132
145
119
131
119
107
133
147
148
149
150
151
152
152
151
150
149
148
147
146
118
130
118
106
134
135
136
137
138
139
140
141
142
143
144
145
146
117
129
117
105
116
128
116
104
115
127
115
103
114
126
114
102
113
125
113
101
112
113
114
115
116
117
118
119
120
121
122
123
124
112
111
110
109
108
107
106
105
104
103
102
101
100
111
123
111
99
110
122
110
98
109
121
109
97
108
120
108
96
107
119
107
95
106
118
106
94
98
99
100
101
102
103
104
105
106
107
108
109
110
105
117
105
93
85
86
87
88
89
90
91
92
93
94
95
96
97
111
104
116
104
92
84
112
103
115
103
91
83
113
102
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
90
82
113
101
101
89
89
81
112
100
100
88
88
80
111
99
99
87
87
79
110
109
108
107
106
105
104
103
102
101
100
99
98
98
86
86
87
88
87
86
85
84
83
82
81
80
79
78
109
97
97
85
85
77
108
96
96
84
84
76
107
95
95
83
83
75
106
94
94
82
82
74
105
93
93
81
81
73
104
92
92
80
80
72
103
91
91
79
79
71
102
90
89
88
87
86
85
84
83
82
81
80
79
78
79
80
81
82
83
84
85
86
87
88
89
90
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
70
101
77
91
79
65
69
100
76
92
80
64
68
99
75
93
81
63
67
98
74
94
82
62
66
97
73
95
83
61
65
96
72
96
84
60
64
95
71
97
85
59
63
94
70
98
86
58
62
93
69
99
87
57
61
92
68
100
88
56
60
91
67
101
89
55
59
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
102
101
100
99
98
97
96
95
94
93
92
91
90
54
55
56
55
54
53
52
51
50
49
48
47
46
47
48
49
50
51
52
53
54
55
56
57
58
57
56
55
54
53
52
51
50
99
79
65
53
45
49
100
80
64
52
44
48
101
81
63
51
43
47
102
82
62
50
42
46
103
83
61
49
41
45
104
84
60
48
40
44
105
85
59
47
39
43
106
86
58
46
38
42
107
87
57
45
37
41
108
88
56
44
36
40
109
89
55
43
35
39
110
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
31
32
33
34
35
36
37
38
39
40
41
42
34
33
32
31
30
29
28
27
26
38
109
97
43
29
25
37
108
96
44
28
24
36
107
95
45
27
23
35
106
94
46
26
22
34
105
93
47
25
21
33
104
92
48
24
20
32
103
91
49
23
19
31
102
90
50
22
18
30
101
89
51
21
17
29
100
88
52
20
16
28
99
87
53
19
15
27
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
210
209
208
207
206
205
204
203
204
205
206
207
208
209
210
211
212
213
214
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
186
198
202
190
186
174
185
197
201
189
185
173
184
196
200
188
184
172
183
195
199
187
183
171
182
194
198
186
182
170
181
193
197
185
181
169
180
192
196
184
180
168
179
191
195
183
179
167
178
190
194
182
178
166
177
189
193
181
177
165
176
188
192
180
176
164
175
187
191
179
178
177
176
175
174
173
172
171
170
169
168
167
179
175
163
174
186
190
178
166
178
174
162
173
185
189
177
165
177
173
161
172
184
188
176
164
176
172
160
171
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
184
185
186
187
175
163
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
159
170
174
186
174
162
174
162
158
169
173
185
173
161
173
161
157
168
172
184
172
160
172
160
156
167
171
183
171
159
171
159
155
166
170
182
170
158
170
158
154
165
169
181
169
157
169
157
153
164
168
180
168
156
168
156
152
163
167
179
167
155
167
155
151
162
166
178
166
154
166
154
150
161
165
177
165
153
165
153
149
160
164
176
164
152
164
152
148
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
160
161
162
163
175
174
173
172
171
170
169
168
167
166
165
164
163
151
152
153
154
155
156
157
158
159
160
161
162
163
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
150
162
150
138
149
161
149
137
148
160
148
136
147
159
147
135
146
158
146
134
145
157
145
133
144
156
144
132
143
155
143
131
142
154
142
130
141
153
141
129
140
152
140
128
139
138
137
136
135
134
133
132
131
130
129
128
127
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
115
116
117
118
119
120
121
122
123
124
125
126
127
140
126
138
126
114
128
141
125
137
125
113
129
142
124
136
124
112
130
143
123
135
123
111
131
144
122
134
122
110
132
145
121
133
121
109
133
146
120
132
120
108
134
148
149
150
151
152
153
153
152
151
150
149
148
147
119
131
119
107
135
136
137
138
139
140
141
142
143
144
145
146
147
118
130
118
106
117
129
117
105
116
128
116
104
115
127
115
103
114
126
114
102
113
114
115
116
117
118
119
120
121
122
123
124
125
113
112
111
110
109
108
107
106
105
104
103
102
101
112
124
112
100
111
123
111
99
110
122
110
98
109
121
109
97
108
120
108
96
107
119
107
95
97
98
99
100
101
102
103
104
105
106
107
108
109
106
118
106
94
84
85
86
87
88
89
90
91
92
93
94
95
96
110
105
117
105
93
83
111
104
116
104
92
82
112
103
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
91
81
113
102
102
90
90
80
113
101
101
89
89
79
112
100
100
88
88
78
111
110
109
108
107
106
105
104
103
102
101
100
99
99
87
87
88
87
86
85
84
83
82
81
80
79
78
77
110
98
98
86
86
76
109
97
97
85
85
75
108
96
96
84
84
74
107
95
95
83
83
73
106
94
94
82
82
72
105
93
93
81
81
71
104
92
92
80
80
70
103
91
90
89
88
87
86
85
84
83
82
81
80
79
80
81
82
83
84
85
86
87
88
89
90
91
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
69
102
78
92
80
66
68
101
77
93
81
65
67
100
76
94
82
64
66
99
75
95
83
63
65
98
74
96
84
62
64
97
73
97
85
61
63
96
72
98
86
60
62
95
71
99
87
59
61
94
70
100
88
58
60
93
69
101
89
57
59
92
68
102
90
56
58
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
103
102
101
100
99
98
97
96
95
94
93
92
91
55
56
55
54
53
52
51
50
49
48
47
46
45
46
47
48
49
50
51
52
53
54
55
56
57
56
55
54
53
52
51
50
49
100
80
66
54
44
48
101
81
65
53
43
47
102
82
64
52
42
46
103
83
63
51
41
45
104
84
62
50
40
44
105
85
61
49
39
43
106
86
60
48
38
42
107
87
59
47
37
41
108
88
58
46
36
40
109
89
57
45
35
39
110
90
56
44
34
38
111
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
32
33
34
35
36
37
38
39
40
41
42
43
33
32
31
30
29
28
27
26
25
37
110
98
44
30
24
36
109
97
45
29
23
35
108
96
46
28
22
34
107
95
47
27
21
33
106
94
48
26
20
32
105
93
49
25
19
31
104
92
50
24
18
30
103
91
51
23
17
29
102
90
52
22
16
28
101
89
53
21
15
27
100
88
54
20
14
26
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
205
206
207
208
209
210
211
212
213
214
215
216
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
187
199
203
191
187
175
186
198
202
190
186
174
185
197
201
189
185
173
184
196
200
188
184
172
183
195
199
187
183
171
182
194
198
186
182
170
181
193
197
185
181
169
180
192
196
184
180
168
179
191
195
183
179
167
178
190
194
182
178
166
177
189
193
181
177
165
176
188
192
180
179
178
177
176
175
174
173
172
171
170
169
168
180
176
164
175
187
191
179
167
179
175
163
174
186
190
178
166
178
174
162
173
185
189
177
165
177
173
161
172
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
185
186
187
188
176
164
176
175
174
173
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
160
171
175
187
175
163
175
163
159
170
174
186
174
162
174
162
158
169
173
185
173
161
173
161
157
168
172
184
172
160
172
160
156
167
171
183
171
159
171
159
155
166
170
182
170
158
170
158
154
165
169
181
169
157
169
157
153
164
168
180
168
156
168
156
152
163
167
179
167
155
167
155
151
162
166
178
166
154
166
154
150
161
165
177
165
153
165
153
149
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
161
162
163
164
176
175
174
173
172
171
170
169
168
167
166
165
164
152
153
154
155
156
157
158
159
160
161
162
163
164
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
151
163
151
139
150
162
150
138
149
161
149
137
148
160
148
136
147
159
147
135
146
158
146
134
145
157
145
133
144
156
144
132
143
155
143
131
142
154
142
130
141
153
141
129
140
139
138
137
136
135
134
133
132
131
130
129
128
140
141
142
143
144
145
146
147
148
149
150
151
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
116
117
118
119
120
121
122
123
124
125
126
127
128
141
127
139
127
115
129
142
126
138
126
114
130
143
125
137
125
113
131
144
124
136
124
112
132
145
123
135
123
111
133
146
122
134
122
110
134
147
121
133
121
109
135
149
150
151
152
153
154
154
153
152
151
150
149
148
120
132
120
108
136
137
138
139
140
141
142
143
144
145
146
147
148
119
131
119
107
118
130
118
106
117
129
117
105
116
128
116
104
115
127
115
103
114
115
116
117
118
119
120
121
122
123
124
125
126
114
113
112
111
110
109
108
107
106
105
104
103
102
113
125
113
101
112
124
112
100
111
123
111
99
110
122
110
98
109
121
109
97
108
120
108
96
96
97
98
99
100
101
102
103
104
105
106
107
108
107
119
107
95
83
84
85
86
87
88
89
90
91
92
93
94
95
109
106
118
106
94
82
110
105
117
105
93
81
111
104
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
92
80
112
103
103
91
91
79
113
102
102
90
90
78
113
101
101
89
89
77
112
111
110
109
108
107
106
105
104
103
102
101
100
100
88
88
87
86
85
84
83
82
81
80
79
78
77
76
111
99
99
87
87
75
110
98
98
86
86
74
109
97
97
85
85
73
108
96
96
84
84
72
107
95
95
83
83
71
106
94
94
82
82
70
105
93
93
81
81
69
104
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
77
78
79
80
68
103
79
93
81
67
67
102
78
94
82
66
66
101
77
95
83
65
65
100
76
96
84
64
64
99
75
97
85
63
63
98
74
98
86
62
62
97
73
99
87
61
61
96
72
100
88
60
60
95
71
101
89
59
59
94
70
102
90
58
58
93
69
103
91
57
57
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
104
103
102
101
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
45
46
47
48
49
50
51
52
53
54
55
56
55
54
53
52
51
50
49
48
101
81
67
55
43
47
102
82
66
54
42
46
103
83
65
53
41
45
104
84
64
52
40
44
105
85
63
51
39
43
106
86
62
50
38
42
107
87
61
49
37
41
108
88
60
48
36
40
109
89
59
47
35
39
110
90
58
46
34
38
111
91
57
45
33
37
112
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
32
31
30
29
28
27
26
25
24
36
111
99
45
31
23
35
110
98
46
30
22
34
109
97
47
29
21
33
108
96
48
28
20
32
107
95
49
27
19
31
106
94
50
26
18
30
105
93
51
25
17
29
104
92
52
24
16
28
103
91
53
23
15
27
102
90
54
22
14
26
101
89
55
21
13
25
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
204
205
206
207
208
209
210
211
212
213
214
215
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
188
200
202
190
186
174
187
199
201
189
185
173
186
198
200
188
184
172
185
197
199
187
183
171
184
196
198
186
182
170
183
195
197
185
181
169
182
194
196
184
180
168
181
193
195
183
179
167
180
192
194
182
178
166
179
191
193
181
177
165
178
190
192
180
176
164
177
189
191
179
178
177
176
175
174
173
172
171
170
169
168
167
179
175
163
176
188
190
178
166
178
174
162
175
187
189
177
165
177
173
161
174
186
188
176
164
176
172
160
173
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
186
187
188
187
175
163
175
174
173
172
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
159
172
176
186
174
162
174
162
158
171
175
185
173
161
173
161
157
170
174
184
172
160
172
160
156
169
173
183
171
159
171
159
155
168
172
182
170
158
170
158
154
167
171
181
169
157
169
157
153
166
170
180
168
156
168
156
152
165
169
179
167
155
167
155
151
164
168
178
166
154
166
154
150
163
167
177
165
153
165
153
149
162
166
176
164
152
164
152
148
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
162
163
164
165
175
174
173
172
171
170
169
168
167
166
165
164
163
151
152
153
154
155
156
157
158
159
160
161
162
163
151
150
149
148
147
146
145
144
143
142
141
140
139
140
141
142
143
144
145
146
147
152
162
150
138
151
161
149
137
150
160
148
136
149
159
147
135
148
158
146
134
147
157
145
133
146
156
144
132
145
155
143
131
144
154
142
130
143
153
141
129
142
152
140
128
141
140
139
138
137
136
135
134
133
132
131
130
129
139
140
141
142
143
144
145
146
147
148
149
150
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
115
116
117
118
119
120
121
122
123
124
125
126
127
142
128
138
126
114
128
143
127
137
125
113
129
144
126
136
124
112
130
145
125
135
123
111
131
146
124
134
122
110
132
147
123
133
121
109
133
148
122
132
120
108
134
148
149
150
151
152
153
154
154
153
152
151
150
149
121
131
119
107
135
136
137
138
139
140
141
142
143
144
145
146
147
120
130
118
106
119
129
117
105
118
128
116
104
117
127
115
103
116
126
114
102
115
116
117
118
119
120
121
122
123
124
125
126
125
113
112
111
110
109
108
107
106
105
104
103
102
101
114
124
112
100
113
123
111
99
112
122
110
98
111
121
109
97
110
120
108
96
109
119
107
95
95
96
97
98
99
100
101
102
103
104
105
106
107
108
118
106
94
82
83
84
85
86
87
88
89
90
91
92
93
94
108
107
117
105
93
81
109
106
116
104
92
80
110
105
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
91
79
111
104
104
90
90
78
112
103
103
89
89
77
113
102
102
88
88
76
113
112
111
110
109
108
107
106
105
104
103
102
101
101
87
87
86
85
84
83
82
81
80
79
78
77
76
75
112
100
100
86
86
74
111
99
99
85
85
73
110
98
98
84
84
72
109
97
97
83
83
71
108
96
96
82
82
70
107
95
95
81
81
69
106
94
94
80
80
68
105
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
77
78
79
67
104
80
94
80
66
66
103
79
95
81
65
65
102
78
96
82
64
64
101
77
97
83
63
63
100
76
98
84
62
62
99
75
99
85
61
61
98
74
100
86
60
60
97
73
101
87
59
59
96
72
102
88
58
58
95
71
103
89
57
57
94
70
104
90
56
56
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
103
102
101
100
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
44
45
46
47
48
49
50
51
52
53
54
55
54
53
52
51
50
49
48
47
102
82
68
56
42
46
103
83
67
55
41
45
104
84
66
54
40
44
105
85
65
53
39
43
106
86
64
52
38
42
107
87
63
51
37
41
108
88
62
50
36
40
109
89
61
49
35
39
110
90
60
48
34
38
111
91
59
47
33
37
112
92
58
46
32
36
113
101
100
99
98
97
96
95
94
93
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
31
30
29
28
27
26
25
24
23
35
112
100
46
32
22
34
111
99
47
31
21
33
110
98
48
30
20
32
109
97
49
29
19
31
108
96
50
28
18
30
107
95
51
27
17
29
106
94
52
26
16
28
105
93
53
25
15
27
104
92
54
24
14
26
103
91
55
23
13
25
102
90
56
22
12
24
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
203
204
205
206
207
208
209
210
211
212
213
214
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
189
201
201
189
185
173
188
200
200
188
184
172
187
199
199
187
183
171
186
198
198
186
182
170
185
197
197
185
181
169
184
196
196
184
180
168
183
195
195
183
179
167
182
194
194
182
178
166
181
193
193
181
177
165
180
192
192
180
176
164
179
191
191
179
175
163
178
190
190
178
177
176
175
174
173
172
171
170
169
168
167
166
178
174
162
177
189
189
177
165
177
173
161
176
188
188
176
164
176
172
160
175
187
187
175
163
175
171
159
174
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
187
188
187
186
174
162
174
173
172
171
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
158
173
177
185
173
161
173
161
157
172
176
184
172
160
172
160
156
171
175
183
171
159
171
159
155
170
174
182
170
158
170
158
154
169
173
181
169
157
169
157
153
168
172
180
168
156
168
156
152
167
171
179
167
155
167
155
151
166
170
178
166
154
166
154
150
165
169
177
165
153
165
153
149
164
168
176
164
152
164
152
148
163
167
175
163
151
163
151
147
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
163
164
165
166
174
173
172
171
170
169
168
167
166
165
164
163
162
150
151
152
153
154
155
156
157
158
159
160
161
162
150
149
148
147
146
145
144
143
142
141
140
139
138
139
140
141
142
143
144
145
146
153
161
149
137
152
160
148
136
151
159
147
135
150
158
146
134
149
157
145
133
148
156
144
132
147
155
143
131
146
154
142
130
145
153
141
129
144
152
140
128
143
151
139
127
142
141
140
139
138
137
136
135
134
133
132
131
130
138
139
140
141
142
143
144
145
146
147
148
149
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
114
115
116
117
118
119
120
121
122
123
124
125
126
143
129
137
125
113
127
144
128
136
124
112
128
145
127
135
123
111
129
146
126
134
122
110
130
147
125
133
121
109
131
148
124
132
120
108
132
149
123
131
119
107
133
147
148
149
150
151
152
153
154
154
153
152
151
150
122
130
118
106
134
135
136
137
138
139
140
141
142
143
144
145
146
121
129
117
105
120
128
116
104
119
127
115
103
118
126
114
102
117
125
113
101
116
117
118
119
120
121
122
123
124
125
126
125
124
112
111
110
109
108
107
106
105
104
103
102
101
100
115
123
111
99
114
122
110
98
113
121
109
97
112
120
108
96
111
119
107
95
110
118
106
94
94
95
96
97
98
99
100
101
102
103
104
105
106
109
117
105
93
81
82
83
84
85
86
87
88
89
90
91
92
93
107
108
116
104
92
80
108
107
115
103
91
79
109
106
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
90
78
110
105
103
89
89
77
111
104
104
88
88
76
112
103
103
87
87
75
113
113
112
111
110
109
108
107
106
105
104
103
102
102
86
86
85
84
83
82
81
80
79
78
77
76
75
74
113
101
101
85
85
73
112
100
100
84
84
72
111
99
99
83
83
71
110
98
98
82
82
70
109
97
97
81
81
69
108
96
96
80
80
68
107
95
95
79
79
67
106
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
77
78
66
105
81
95
79
65
65
104
80
96
80
64
64
103
79
97
81
63
63
102
78
98
82
62
62
101
77
99
83
61
61
100
76
100
84
60
60
99
75
101
85
59
59
98
74
102
86
58
58
97
73
103
87
57
57
96
72
104
88
56
56
95
71
103
89
55
55
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
102
101
100
99
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
45
46
47
48
49
50
51
52
53
54
53
52
51
50
49
48
47
46
103
83
69
55
41
45
104
84
68
56
40
44
105
85
67
55
39
43
106
86
66
54
38
42
107
87
65
53
37
41
108
88
64
52
36
40
109
89
63
51
35
39
110
90
62
50
34
38
111
91
61
49
33
37
112
92
60
48
32
36
113
93
59
47
31
35
114
102
101
100
99
98
97
96
95
94
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
30
29
28
27
26
25
24
23
22
34
113
101
47
33
21
33
112
100
48
32
20
32
111
99
49
31
19
31
110
98
50
30
18
30
109
97
51
29
17
29
108
96
52
28
16
28
107
95
53
27
15
27
106
94
54
26
14
26
105
93
55
25
13
25
104
92
56
24
12
24
103
91
57
23
11
23
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
202
203
204
205
206
207
208
209
210
211
212
213
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
190
202
200
188
184
172
189
201
199
187
183
171
188
200
198
186
182
170
187
199
197
185
181
169
186
198
196
184
180
168
185
197
195
183
179
167
184
196
194
182
178
166
183
195
193
181
177
165
182
194
192
180
176
164
181
193
191
179
175
163
180
192
190
178
174
162
179
191
189
177
176
175
174
173
172
171
170
169
168
167
166
165
177
173
161
178
190
188
176
164
176
172
160
177
189
187
175
163
175
171
159
176
188
186
174
162
174
170
158
175
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
188
187
186
185
173
161
173
172
171
170
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
157
174
178
184
172
160
172
160
156
173
177
183
171
159
171
159
155
172
176
182
170
158
170
158
154
171
175
181
169
157
169
157
153
170
174
180
168
156
168
156
152
169
173
179
167
155
167
155
151
168
172
178
166
154
166
154
150
167
171
177
165
153
165
153
149
166
170
176
164
152
164
152
148
165
169
175
163
151
163
151
147
164
168
174
162
150
162
150
146
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
173
172
171
170
169
168
167
166
165
164
163
162
161
149
150
151
152
153
154
155
156
157
158
159
160
161
149
148
147
146
145
144
143
142
141
140
139
138
137
138
139
140
141
142
143
144
145
154
160
148
136
153
159
147
135
152
158
146
134
151
157
145
133
150
156
144
132
149
155
143
131
148
154
142
130
147
153
141
129
146
152
140
128
145
151
139
127
144
150
138
126
143
142
141
140
139
138
137
136
135
134
133
132
131
137
138
139
140
141
142
143
144
145
146
147
148
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
113
114
115
116
117
118
119
120
121
122
123
124
125
144
130
136
124
112
126
145
129
135
123
111
127
146
128
134
122
110
128
147
127
133
121
109
129
148
126
132
120
108
130
149
125
131
119
107
131
150
124
130
118
106
132
146
147
148
149
150
151
152
153
154
154
153
152
151
123
129
117
105
133
134
135
136
137
138
139
140
141
142
143
144
145
122
128
116
104
121
127
115
103
120
126
114
102
119
125
113
101
118
124
112
100
117
118
119
120
121
122
123
124
125
126
125
124
123
111
110
109
108
107
106
105
104
103
102
101
100
99
116
122
110
98
115
121
109
97
114
120
108
96
113
119
107
95
112
118
106
94
111
117
105
93
93
94
95
96
97
98
99
100
101
102
103
104
105
110
116
104
92
80
81
82
83
84
85
86
87
88
89
90
91
92
106
109
115
103
91
79
107
108
114
102
90
78
108
107
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
89
77
109
106
102
88
88
76
110
105
103
87
87
75
111
104
104
86
86
74
112
113
113
112
111
110
109
108
107
106
105
104
103
103
85
85
84
83
82
81
80
79
78
77
76
75
74
73
113
102
102
84
84
72
113
101
101
83
83
71
112
100
100
82
82
70
111
99
99
81
81
69
110
98
98
80
80
68
109
97
97
79
79
67
108
96
96
78
78
66
107
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
77
65
106
82
96
78
64
64
105
81
97
79
63
63
104
80
98
80
62
62
103
79
99
81
61
61
102
78
100
82
60
60
101
77
101
83
59
59
100
76
102
84
58
58
99
75
103
85
57
57
98
74
104
86
56
56
97
73
103
87
55
55
96
72
102
88
54
54
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
101
100
99
98
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
45
46
47
48
49
50
51
52
53
52
51
50
49
48
47
46
45
104
84
70
54
40
44
105
85
69
55
39
43
106
86
68
56
38
42
107
87
67
55
37
41
108
88
66
54
36
40
109
89
65
53
35
39
110
90
64
52
34
38
111
91
63
51
33
37
112
92
62
50
32
36
113
93
61
49
31
35
114
94
60
48
30
34
115
103
102
101
100
99
98
97
96
95
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
29
28
27
26
25
24
23
22
21
33
114
102
48
34
20
32
113
101
49
33
19
31
112
100
50
32
18
30
111
99
51
31
17
29
110
98
52
30
16
28
109
97
53
29
15
27
108
96
54
28
14
26
107
95
55
27
13
25
106
94
56
26
12
24
105
93
57
25
11
23
104
92
58
24
10
22
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
191
203
199
187
183
171
190
202
198
186
182
170
189
201
197
185
181
169
188
200
196
184
180
168
187
199
195
183
179
167
186
198
194
182
178
166
185
197
193
181
177
165
184
196
192
180
176
164
183
195
191
179
175
163
182
194
190
178
174
162
181
193
189
177
173
161
180
192
188
176
175
174
173
172
171
170
169
168
167
166
165
164
176
172
160
179
191
187
175
163
175
171
159
178
190
186
174
162
174
170
158
177
189
185
173
161
173
169
157
176
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
187
186
185
184
172
160
172
171
170
169
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
156
175
179
183
171
159
171
159
155
174
178
182
170
158
170
158
154
173
177
181
169
157
169
157
153
172
176
180
168
156
168
156
152
171
175
179
167
155
167
155
151
170
174
178
166
154
166
154
150
169
173
177
165
153
165
153
149
168
172
176
164
152
164
152
148
167
171
175
163
151
163
151
147
166
170
174
162
150
162
150
146
165
169
173
161
149
161
149
145
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
172
171
170
169
168
167
166
165
164
163
162
161
160
148
149
150
151
152
153
154
155
156
157
158
159
160
148
147
146
145
144
143
142
141
140
139
138
137
136
137
138
139
140
141
142
143
144
155
159
147
135
154
158
146
134
153
157
145
133
152
156
144
132
151
155
143
131
150
154
142
130
149
153
141
129
148
152
140
128
147
151
139
127
146
150
138
126
145
149
137
125
144
143
142
141
140
139
138
137
136
135
134
133
132
136
137
138
139
140
141
142
143
144
145
146
147
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
112
113
114
115
116
117
118
119
120
121
122
123
124
145
131
135
123
111
125
146
130
134
122
110
126
147
129
133
121
109
127
148
128
132
120
108
128
149
127
131
119
107
129
150
126
130
118
106
130
151
125
129
117
105
131
145
146
147
148
149
150
151
152
153
154
154
153
152
124
128
116
104
132
133
134
135
136
137
138
139
140
141
142
143
144
123
127
115
103
122
126
114
102
121
125
113
101
120
124
112
100
119
123
111
99
118
119
120
121
122
123
124
125
126
125
124
123
122
110
109
108
107
106
105
104
103
102
101
100
99
98
117
121
109
97
116
120
108
96
115
119
107
95
114
118
106
94
113
117
105
93
112
116
104
92
92
93
94
95
96
97
98
99
100
101
102
103
104
111
115
103
91
79
80
81
82
83
84
85
86
87
88
89
90
91
105
110
114
102
90
78
106
109
113
101
89
77
107
108
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
88
76
108
107
101
87
87
75
109
106
102
86
86
74
110
105
103
85
85
73
111
112
113
113
112
111
110
109
108
107
106
105
104
104
84
84
83
82
81
80
79
78
77
76
75
74
73
72
112
103
103
83
83
71
113
102
102
82
82
70
113
101
101
81
81
69
112
100
100
80
80
68
111
99
99
79
79
67
110
98
98
78
78
66
109
97
97
77
77
65
108
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
64
107
83
97
77
63
63
106
82
98
78
62
62
105
81
99
79
61
61
104
80
100
80
60
60
103
79
101
81
59
59
102
78
102
82
58
58
101
77
103
83
57
57
100
76
104
84
56
56
99
75
103
85
55
55
98
74
102
86
54
54
97
73
101
87
53
53
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
100
99
98
97
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
51
50
49
48
47
46
45
44
105
85
71
53
39
43
106
86
70
54
38
42
107
87
69
55
37
41
108
88
68
56
36
40
109
89
67
55
35
39
110
90
66
54
34
38
111
91
65
53
33
37
112
92
64
52
32
36
113
93
63
51
31
35
114
94
62
50
30
34
115
95
61
49
29
33
116
104
103
102
101
100
99
98
97
96
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
28
27
26
25
24
23
22
21
20
32
115
103
49
35
19
31
114
102
50
34
18
30
113
101
51
33
17
29
112
100
52
32
16
28
111
99
53
31
15
27
110
98
54
30
14
26
109
97
55
29
13
25
108
96
56
28
12
24
107
95
57
27
11
23
106
94
58
26
10
22
105
93
59
25
9
21
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
200
201
202
203
204
205
206
207
208
209
210
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
192
204
198
186
182
170
191
203
197
185
181
169
190
202
196
184
180
168
189
201
195
183
179
167
188
200
194
182
178
166
187
199
193
181
177
165
186
198
192
180
176
164
185
197
191
179
175
163
184
196
190
178
174
162
183
195
189
177
173
161
182
194
188
176
172
160
181
193
187
175
174
173
172
171
170
169
168
167
166
165
164
163
175
171
159
180
192
186
174
162
174
170
158
179
191
185
173
161
173
169
157
178
190
184
172
160
172
168
156
177
189
188
187
186
185
184
183
182
181
182
183
184
185
186
187
188
187
186
185
184
183
171
159
171
170
169
168
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
155
176
180
182
170
158
170
158
154
175
179
181
169
157
169
157
153
174
178
180
168
156
168
156
152
173
177
179
167
155
167
155
151
172
176
178
166
154
166
154
150
171
175
177
165
153
165
153
149
170
174
176
164
152
164
152
148
169
173
175
163
151
163
151
147
168
172
174
162
150
162
150
146
167
171
173
161
149
161
149
145
166
170
172
160
148
160
148
144
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
171
170
169
168
167
166
165
164
163
162
161
160
159
147
148
149
150
151
152
153
154
155
156
157
158
159
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
141
142
143
156
158
146
134
155
157
145
133
154
156
144
132
153
155
143
131
152
154
142
130
151
153
141
129
150
152
140
128
149
151
139
127
148
150
138
126
147
149
137
125
146
148
136
124
145
144
143
142
141
140
139
138
137
136
135
134
133
135
136
137
138
139
140
141
142
143
144
145
146
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
111
112
113
114
115
116
117
118
119
120
121
122
123
146
132
134
122
110
124
147
131
133
121
109
125
148
130
132
120
108
126
149
129
131
119
107
127
150
128
130
118
106
128
151
127
129
117
105
129
152
126
128
116
104
130
144
145
146
147
148
149
150
151
152
153
154
154
153
125
127
115
103
131
132
133
134
135
136
137
138
139
140
141
142
143
124
126
114
102
123
125
113
101
122
124
112
100
121
123
111
99
120
122
110
98
119
120
121
122
123
124
125
126
125
124
123
122
121
109
108
107
106
105
104
103
102
101
100
99
98
97
118
120
108
96
117
119
107
95
116
118
106
94
115
117
105
93
114
116
104
92
113
115
103
91
91
92
93
94
95
96
97
98
99
100
101
102
103
112
114
102
90
78
79
80
81
82
83
84
85
86
87
88
89
90
104
111
113
101
89
77
105
110
112
100
88
76
106
109
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
87
75
107
108
100
86
86
74
108
107
101
85
85
73
109
106
102
84
84
72
110
111
112
113
113
112
111
110
109
108
107
106
105
103
83
83
82
81
80
79
78
77
76
75
74
73
72
71
111
104
104
82
82
70
112
103
103
81
81
69
113
102
102
80
80
68
113
101
101
79
79
67
112
100
100
78
78
66
111
99
99
77
77
65
110
98
98
76
76
64
109
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
63
108
84
98
76
62
62
107
83
99
77
61
61
106
82
100
78
60
60
105
81
101
79
59
59
104
80
102
80
58
58
103
79
103
81
57
57
102
78
104
82
56
56
101
77
103
83
55
55
100
76
102
84
54
54
99
75
101
85
53
53
98
74
100
86
52
52
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
99
98
97
96
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
50
49
48
47
46
45
44
43
106
86
72
52
38
42
107
87
71
53
37
41
108
88
70
54
36
40
109
89
69
55
35
39
110
90
68
56
34
38
111
91
67
55
33
37
112
92
66
54
32
36
113
93
65
53
31
35
114
94
64
52
30
34
115
95
63
51
29
33
116
96
62
50
28
32
117
105
104
103
102
101
100
99
98
97
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
27
26
25
24
23
22
21
20
19
31
116
104
50
36
18
30
115
103
51
35
17
29
114
102
52
34
16
28
113
101
53
33
15
27
112
100
54
32
14
26
111
99
55
31
13
25
110
98
56
30
12
24
109
97
57
29
11
23
108
96
58
28
10
22
107
95
59
27
9
21
106
94
60
26
8
20
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
199
200
201
202
203
204
205
206
207
208
209
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
193
205
197
185
181
169
192
204
196
184
180
168
191
203
195
183
179
167
190
202
194
182
178
166
189
201
193
181
177
165
188
200
192
180
176
164
187
199
191
179
175
163
186
198
190
178
174
162
185
197
189
177
173
161
184
196
188
176
172
160
183
195
187
175
171
159
182
194
186
174
173
172
171
170
169
168
167
166
165
164
163
162
174
170
158
181
193
185
173
161
173
169
157
180
192
184
172
160
172
168
156
179
191
183
171
159
171
167
155
178
190
189
188
187
186
185
184
183
182
183
184
185
186
187
188
187
186
185
184
183
182
170
158
170
169
168
167
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
154
177
181
181
169
157
169
157
153
176
180
180
168
156
168
156
152
175
179
179
167
155
167
155
151
174
178
178
166
154
166
154
150
173
177
177
165
153
165
153
149
172
176
176
164
152
164
152
148
171
175
175
163
151
163
151
147
170
174
174
162
150
162
150
146
169
173
173
161
149
161
149
145
168
172
172
160
148
160
148
144
167
171
171
159
147
159
147
143
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
170
169
168
167
166
165
164
163
162
161
160
159
158
146
147
148
149
150
151
152
153
154
155
156
157
158
146
145
144
143
142
141
140
139
138
137
136
135
134
135
136
137
138
139
140
141
142
157
157
145
133
156
156
144
132
155
155
143
131
154
154
142
130
153
153
141
129
152
152
140
128
151
151
139
127
150
150
138
126
149
149
137
125
148
148
136
124
147
147
135
123
146
145
144
143
142
141
140
139
138
137
136
135
134
134
135
136
137
138
139
140
141
142
143
144
145
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
110
111
112
113
114
115
116
117
118
119
120
121
122
147
133
133
121
109
123
148
132
132
120
108
124
149
131
131
119
107
125
150
130
130
118
106
126
151
129
129
117
105
127
152
128
128
116
104
128
153
127
127
115
103
129
143
144
145
146
147
148
149
150
151
152
153
154
154
126
126
114
102
130
131
132
133
134
135
136
137
138
139
140
141
142
125
125
113
101
124
124
112
100
123
123
111
99
122
122
110
98
121
121
109
97
120
121
122
123
124
125
126
125
124
123
122
121
120
108
107
106
105
104
103
102
101
100
99
98
97
96
119
119
107
95
118
118
106
94
117
117
105
93
116
116
104
92
115
115
103
91
114
114
102
90
90
91
92
93
94
95
96
97
98
99
100
101
102
113
113
101
89
77
78
79
80
81
82
83
84
85
86
87
88
89
103
112
112
100
88
76
104
111
111
99
87
75
105
110
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
86
74
106
109
99
85
85
73
107
108
100
84
84
72
108
107
101
83
83
71
109
110
111
112
113
113
112
111
110
109
108
107
106
102
82
82
81
80
79
78
77
76
75
74
73
72
71
70
110
105
103
81
81
69
111
104
104
80
80
68
112
103
103
79
79
67
113
102
102
78
78
66
113
101
101
77
77
65
112
100
100
76
76
64
111
99
99
75
75
63
110
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
62
109
85
99
75
61
61
108
84
100
76
60
60
107
83
101
77
59
59
106
82
102
78
58
58
105
81
103
79
57
57
104
80
104
80
56
56
103
79
103
81
55
55
102
78
102
82
54
54
101
77
101
83
53
53
100
76
100
84
52
52
99
75
99
85
51
51
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
98
97
96
95
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
49
48
47
46
45
44
43
42
107
87
73
51
37
41
108
88
72
52
36
40
109
89
71
53
35
39
110
90
70
54
34
38
111
91
69
55
33
37
112
92
68
56
32
36
113
93
67
55
31
35
114
94
66
54
30
34
115
95
65
53
29
33
116
96
64
52
28
32
117
97
63
51
27
31
118
106
105
104
103
102
101
100
99
98
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
45
46
47
48
49
50
26
25
24
23
22
21
20
19
18
30
117
105
51
37
17
29
116
104
52
36
16
28
115
103
53
35
15
27
114
102
54
34
14
26
113
101
55
33
13
25
112
100
56
32
12
24
111
99
57
31
11
23
110
98
58
30
10
22
109
97
59
29
9
21
108
96
60
28
8
20
107
95
61
27
7
19
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
198
199
200
201
202
203
204
205
206
207
208
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
194
206
196
184
180
168
193
205
195
183
179
167
192
204
194
182
178
166
191
203
193
181
177
165
190
202
192
180
176
164
189
201
191
179
175
163
188
200
190
178
174
162
187
199
189
177
173
161
186
198
188
176
172
160
185
197
187
175
171
159
184
196
186
174
170
158
183
195
185
173
172
171
170
169
168
167
166
165
164
163
162
161
173
169
157
182
194
184
172
160
172
168
156
181
193
183
171
159
171
167
155
180
192
182
170
158
170
166
154
179
191
190
189
188
187
186
185
184
183
184
185
186
187
188
187
186
185
184
183
182
181
169
157
169
168
167
166
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
153
178
182
180
168
156
168
156
152
177
181
179
167
155
167
155
151
176
180
178
166
154
166
154
150
175
179
177
165
153
165
153
149
174
178
176
164
152
164
152
148
173
177
175
163
151
163
151
147
172
176
174
162
150
162
150
146
171
175
173
161
149
161
149
145
170
174
172
160
148
160
148
144
169
173
171
159
147
159
147
143
168
172
170
158
146
158
146
142
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
169
168
167
166
165
164
163
162
161
160
159
158
157
145
146
147
148
149
150
151
152
153
154
155
156
157
145
144
143
142
141
140
139
138
137
136
135
134
133
134
135
136
137
138
139
140
141
158
156
144
132
157
155
143
131
156
154
142
130
155
153
141
129
154
152
140
128
153
151
139
127
152
150
138
126
151
149
137
125
150
148
136
124
149
147
135
123
148
146
134
122
147
146
145
144
143
142
141
140
139
138
137
136
135
133
134
135
136
137
138
139
140
141
142
143
144
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
109
110
111
112
113
114
115
116
117
118
119
120
121
148
134
132
120
108
122
149
133
131
119
107
123
150
132
130
118
106
124
151
131
129
117
105
125
152
130
128
116
104
126
153
129
127
115
103
127
154
128
126
114
102
128
142
143
144
145
146
147
148
149
150
151
152
153
154
127
125
113
101
129
130
131
132
133
134
135
136
137
138
139
140
141
126
124
112
100
125
123
111
99
124
122
110
98
123
121
109
97
122
120
108
96
121
122
123
124
125
126
125
124
123
122
121
120
119
107
106
105
104
103
102
101
100
99
98
97
96
95
120
118
106
94
119
117
105
93
118
116
104
92
117
115
103
91
116
114
102
90
115
113
101
89
89
90
91
92
93
94
95
96
97
98
99
100
101
114
112
100
88
76
77
78
79
80
81
82
83
84
85
86
87
88
102
113
111
99
87
75
103
112
110
98
86
74
104
111
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
85
73
105
110
98
84
84
72
106
109
99
83
83
71
107
108
100
82
82
70
108
109
110
111
112
113
113
112
111
110
109
108
107
101
81
81
80
79
78
77
76
75
74
73
72
71
70
69
109
106
102
80
80
68
110
105
103
79
79
67
111
104
104
78
78
66
112
103
103
77
77
65
113
102
102
76
76
64
113
101
101
75
75
63
112
100
100
74
74
62
111
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
61
110
86
100
74
60
60
109
85
101
75
59
59
108
84
102
76
58
58
107
83
103
77
57
57
106
82
104
78
56
56
105
81
103
79
55
55
104
80
102
80
54
54
103
79
101
81
53
53
102
78
100
82
52
52
101
77
99
83
51
51
100
76
98
84
50
50
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
97
96
95
94
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
45
46
47
48
49
48
47
46
45
44
43
42
41
108
88
74
50
36
40
109
89
73
51
35
39
110
90
72
52
34
38
111
91
71
53
33
37
112
92
70
54
32
36
113
93
69
55
31
35
114
94
68
56
30
34
115
95
67
55
29
33
116
96
66
54
28
32
117
97
65
53
27
31
118
98
64
52
26
30
119
107
106
105
104
103
102
101
100
99
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
45
46
47
48
49
50
51
25
24
23
22
21
20
19
18
17
29
118
106
52
38
16
28
117
105
53
37
15
27
116
104
54
36
14
26
115
103
55
35
13
25
114
102
56
34
12
24
113
101
57
33
11
23
112
100
58
32
10
22
111
99
59
31
9
21
110
98
60
30
8
20
109
97
61
29
7
19
108
96
62
28
6
18
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
197
198
199
200
201
202
203
204
205
206
207
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
195
207
195
183
179
167
194
206
194
182
178
166
193
205
193
181
177
165
192
204
192
180
176
164
191
203
191
179
175
163
190
202
190
178
174
162
189
201
189
177
173
161
188
200
188
176
172
160
187
199
187
175
171
159
186
198
186
174
170
158
185
197
185
173
169
157
184
196
184
172
171
170
169
168
167
166
165
164
163
162
161
160
172
168
156
183
195
183
171
159
171
167
155
182
194
182
170
158
170
166
154
181
193
181
169
157
169
165
153
180
192
191
190
189
188
187
186
185
184
185
186
187
188
187
186
185
184
183
182
181
180
168
156
168
167
166
165
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
152
179
183
179
167
155
167
155
151
178
182
178
166
154
166
154
150
177
181
177
165
153
165
153
149
176
180
176
164
152
164
152
148
175
179
175
163
151
163
151
147
174
178
174
162
150
162
150
146
173
177
173
161
149
161
149
145
172
176
172
160
148
160
148
144
171
175
171
159
147
159
147
143
170
174
170
158
146
158
146
142
169
173
169
157
145
157
145
141
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
168
167
166
165
164
163
162
161
160
159
158
157
156
144
145
146
147
148
149
150
151
152
153
154
155
156
144
143
142
141
140
139
138
137
136
135
134
133
132
133
134
135
136
137
138
139
140
159
155
143
131
158
154
142
130
157
153
141
129
156
152
140
128
155
151
139
127
154
150
138
126
153
149
137
125
152
148
136
124
151
147
135
123
150
146
134
122
149
145
133
121
148
147
146
145
144
143
142
141
140
139
138
137
136
132
133
134
135
136
137
138
139
140
141
142
143
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
108
109
110
111
112
113
114
115
116
117
118
119
120
149
135
131
119
107
121
150
134
130
118
106
122
151
133
129
117
105
123
152
132
128
116
104
124
153
131
127
115
103
125
154
130
126
114
102
126
154
129
125
113
101
127
141
142
143
144
145
146
147
148
149
150
151
152
153
128
124
112
100
128
129
130
131
132
133
134
135
136
137
138
139
140
127
123
111
99
126
122
110
98
125
121
109
97
124
120
108
96
123
119
107
95
122
123
124
125
126
125
124
123
122
121
120
119
118
106
105
104
103
102
101
100
99
98
97
96
95
94
121
117
105
93
120
116
104
92
119
115
103
91
118
114
102
90
117
113
101
89
116
112
100
88
88
89
90
91
92
93
94
95
96
97
98
99
100
115
111
99
87
75
76
77
78
79
80
81
82
83
84
85
86
87
101
114
110
98
86
74
102
113
109
97
85
73
103
112
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
84
72
104
111
97
83
83
71
105
110
98
82
82
70
106
109
99
81
81
69
107
108
109
110
111
112
113
113
112
111
110
109
108
100
80
80
79
78
77
76
75
74
73
72
71
70
69
68
108
107
101
79
79
67
109
106
102
78
78
66
110
105
103
77
77
65
111
104
104
76
76
64
112
103
103
75
75
63
113
102
102
74
74
62
113
101
101
73
73
61
112
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
60
111
87
101
73
59
59
110
86
102
74
58
58
109
85
103
75
57
57
108
84
104
76
56
56
107
83
103
77
55
55
106
82
102
78
54
54
105
81
101
79
53
53
104
80
100
80
52
52
103
79
99
81
51
51
102
78
98
82
50
50
101
77
97
83
49
49
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
96
95
94
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
45
46
47
48
47
46
45
44
43
42
41
40
109
89
75
49
35
39
110
90
74
50
34
38
111
91
73
51
33
37
112
92
72
52
32
36
113
93
71
53
31
35
114
94
70
54
30
34
115
95
69
55
29
33
116
96
68
56
28
32
117
97
67
55
27
31
118
98
66
54
26
30
119
99
65
53
25
29
120
108
107
106
105
104
103
102
101
100
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
45
46
47
48
49
50
51
52
24
23
22
21
20
19
18
17
16
28
119
107
53
39
15
27
118
106
54
38
14
26
117
105
55
37
13
25
116
104
56
36
12
24
115
103
57
35
11
23
114
102
58
34
10
22
113
101
59
33
9
21
112
100
60
32
8
20
111
99
61
31
7
19
110
98
62
30
6
18
109
97
63
29
5
17
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
196
197
198
199
200
201
202
203
204
205
206
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
184
185
186
187
188
189
190
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
196
208
194
182
178
166
195
207
193
181
177
165
194
206
192
180
176
164
193
205
191
179
175
163
192
204
190
178
174
162
191
203
189
177
173
161
190
202
188
176
172
160
189
201
187
175
171
159
188
200
186
174
170
158
187
199
185
173
169
157
186
198
184
172
168
156
185
197
183
171
170
169
168
167
166
165
164
163
162
161
160
159
171
167
155
184
196
182
170
158
170
166
154
183
195
181
169
157
169
165
153
182
194
180
168
156
168
164
152
181
193
192
191
190
189
188
187
186
185
186
187
188
187
186
185
184
183
182
181
180
179
167
155
167
166
165
164
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
151
180
184
178
166
154
166
154
150
179
183
177
165
153
165
153
149
178
182
176
164
152
164
152
148
177
181
175
163
151
163
151
147
176
180
174
162
150
162
150
146
175
179
173
161
149
161
149
145
174
178
172
160
148
160
148
144
173
177
171
159
147
159
147
143
172
176
170
158
146
158
146
142
171
175
169
157
145
157
145
141
170
174
168
156
144
156
144
140
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
167
166
165
164
163
162
161
160
159
158
157
156
155
143
144
145
146
147
148
149
150
151
152
153
154
155
143
142
141
140
139
138
137
136
135
134
133
132
131
132
133
134
135
136
137
138
139
160
154
142
130
159
153
141
129
158
152
140
128
157
151
139
127
156
150
138
126
155
149
137
125
154
148
136
124
153
147
135
123
152
146
134
122
151
145
133
121
150
144
132
120
149
148
147
146
145
144
143
142
141
140
139
138
137
131
132
133
134
135
136
137
138
139
140
141
142
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
107
108
109
110
111
112
113
114
115
116
117
118
119
150
136
130
118
106
120
151
135
129
117
105
121
152
134
128
116
104
122
153
133
127
115
103
123
154
132
126
114
102
124
154
131
125
113
101
125
153
130
124
112
100
126
140
141
142
143
144
145
146
147
148
149
150
151
152
129
123
111
99
127
128
129
130
131
132
133
134
135
136
137
138
139
128
122
110
98
127
121
109
97
126
120
108
96
125
119
107
95
124
118
106
94
123
124
125
126
125
124
123
122
121
120
119
118
117
105
104
103
102
101
100
99
98
97
96
95
94
93
122
116
104
92
121
115
103
91
120
114
102
90
119
113
101
89
118
112
100
88
117
111
99
87
87
88
89
90
91
92
93
94
95
96
97
98
99
116
110
98
86
74
75
76
77
78
79
80
81
82
83
84
85
86
100
115
109
97
85
73
101
114
108
96
84
72
102
113
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
83
71
103
112
96
82
82
70
104
111
97
81
81
69
105
110
98
80
80
68
106
107
108
109
110
111
112
113
113
112
111
110
109
99
79
79
78
77
76
75
74
73
72
71
70
69
68
67
107
108
100
78
78
66
108
107
101
77
77
65
109
106
102
76
76
64
110
105
103
75
75
63
111
104
104
74
74
62
112
103
103
73
73
61
113
102
102
72
72
60
113
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
59
112
88
102
72
58
58
111
87
103
73
57
57
110
86
104
74
56
56
109
85
103
75
55
55
108
84
102
76
54
54
107
83
101
77
53
53
106
82
100
78
52
52
105
81
99
79
51
51
104
80
98
80
50
50
103
79
97
81
49
49
102
78
96
82
48
48
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
95
94
93
92
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
45
46
47
46
45
44
43
42
41
40
39
110
90
76
48
34
38
111
91
75
49
33
37
112
92
74
50
32
36
113
93
73
51
31
35
114
94
72
52
30
34
115
95
71
53
29
33
116
96
70
54
28
32
117
97
69
55
27
31
118
98
68
56
26
30
119
99
67
55
25
29
120
100
66
54
24
28
121
109
108
107
106
105
104
103
102
101
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
42
43
44
45
46
47
48
49
50
51
52
53
23
22
21
20
19
18
17
16
15
27
120
108
54
40
14
26
119
107
55
39
13
25
118
106
56
38
12
24
117
105
57
37
11
23
116
104
58
36
10
22
115
103
59
35
9
21
114
102
60
34
8
20
113
101
61
33
7
19
112
100
62
32
6
18
111
99
63
31
5
17
110
98
64
30
4
16
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
195
196
197
198
199
200
201
202
203
204
205
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
183
184
185
186
187
188
189
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
197
209
193
181
177
165
196
208
192
180
176
164
195
207
191
179
175
163
194
206
190
178
174
162
193
205
189
177
173
161
192
204
188
176
172
160
191
203
187
175
171
159
190
202
186
174
170
158
189
201
185
173
169
157
188
200
184
172
168
156
187
199
183
171
167
155
186
198
182
170
169
168
167
166
165
164
163
162
161
160
159
158
170
166
154
185
197
181
169
157
169
165
153
184
196
180
168
156
168
164
152
183
195
179
167
155
167
163
151
182
194
193
192
191
190
189
188
187
186
187
188
187
186
185
184
183
182
181
180
179
178
166
154
166
165
164
163
162
161
160
159
158
157
156
155
154
155
156
157
158
159
160
161
162
150
181
185
177
165
153
165
153
149
180
184
176
164
152
164
152
148
179
183
175
163
151
163
151
147
178
182
174
162
150
162
150
146
177
181
173
161
149
161
149
145
176
180
172
160
148
160
148
144
175
179
171
159
147
159
147
143
174
178
170
158
146
158
146
142
173
177
169
157
145
157
145
141
172
176
168
156
144
156
144
140
171
175
167
155
143
155
143
139
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
166
165
164
163
162
161
160
159
158
157
156
155
154
142
143
144
145
146
147
148
149
150
151
152
153
154
142
141
140
139
138
137
136
135
134
133
132
131
130
131
132
133
134
135
136
137
138
161
153
141
129
160
152
140
128
159
151
139
127
158
150
138
126
157
149
137
125
156
148
136
124
155
147
135
123
154
146
134
122
153
145
133
121
152
144
132
120
151
143
131
119
150
149
148
147
146
145
144
143
142
141
140
139
138
130
131
132
133
134
135
136
137
138
139
140
141
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
106
107
108
109
110
111
112
113
114
115
116
117
118
151
137
129
117
105
119
152
136
128
116
104
120
153
135
127
115
103
121
154
134
126
114
102
122
154
133
125
113
101
123
153
132
124
112
100
124
152
131
123
111
99
125
139
140
141
142
143
144
145
146
147
148
149
150
151
130
122
110
98
126
127
128
129
130
131
132
133
134
135
136
137
138
129
121
109
97
128
120
108
96
127
119
107
95
126
118
106
94
125
117
105
93
124
125
126
125
124
123
122
121
120
119
118
117
116
104
103
102
101
100
99
98
97
96
95
94
93
92
123
115
103
91
122
114
102
90
121
113
101
89
120
112
100
88
119
111
99
87
118
110
98
86
86
87
88
89
90
91
92
93
94
95
96
97
98
117
109
97
85
73
74
75
76
77
78
79
80
81
82
83
84
85
99
116
108
96
84
72
100
115
107
95
83
71
101
114
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
82
70
102
113
95
81
81
69
103
112
96
80
80
68
104
111
97
79
79
67
105
106
107
108
109
110
111
112
113
113
112
111
110
98
78
78
77
76
75
74
73
72
71
70
69
68
67
66
106
109
99
77
77
65
107
108
100
76
76
64
108
107
101
75
75
63
109
106
102
74
74
62
110
105
103
73
73
61
111
104
104
72
72
60
112
103
103
71
71
59
113
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
58
113
89
103
71
57
57
112
88
104
72
56
56
111
87
103
73
55
55
110
86
102
74
54
54
109
85
101
75
53
53
108
84
100
76
52
52
107
83
99
77
51
51
106
82
98
78
50
50
105
81
97
79
49
49
104
80
96
80
48
48
103
79
95
81
47
47
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
94
93
92
91
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
45
46
45
44
43
42
41
40
39
38
111
91
77
47
33
37
112
92
76
48
32
36
113
93
75
49
31
35
114
94
74
50
30
34
115
95
73
51
29
33
116
96
72
52
28
32
117
97
71
53
27
31
118
98
70
54
26
30
119
99
69
55
25
29
120
100
68
56
24
28
121
101
67
55
23
27
122
110
109
108
107
106
105
104
103
102
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
43
44
45
46
47
48
49
50
51
52
53
54
22
21
20
19
18
17
16
15
14
26
121
109
55
41
13
25
120
108
56
40
12
24
119
107
57
39
11
23
118
106
58
38
10
22
117
105
59
37
9
21
116
104
60
36
8
20
115
103
61
35
7
19
114
102
62
34
6
18
113
101
63
33
5
17
112
100
64
32
4
16
111
99
65
31
3
15
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
199
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
194
195
196
197
198
199
200
201
202
203
204
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
182
183
184
185
186
187
188
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
198
210
192
180
176
164
197
209
191
179
175
163
196
208
190
178
174
162
195
207
189
177
173
161
194
206
188
176
172
160
193
205
187
175
171
159
192
204
186
174
170
158
191
203
185
173
169
157
190
202
184
172
168
156
189
201
183
171
167
155
188
200
182
170
166
154
187
199
181
169
168
167
166
165
164
163
162
161
160
159
158
157
169
165
153
186
198
180
168
156
168
164
152
185
197
179
167
155
167
163
151
184
196
178
166
154
166
162
150
183
195
194
193
192
191
190
189
188
187
188
187
186
185
184
183
182
181
180
179
178
177
165
153
165
164
163
162
161
160
159
158
157
156
155
154
153
154
155
156
157
158
159
160
161
149
182
186
176
164
152
164
152
148
181
185
175
163
151
163
151
147
180
184
174
162
150
162
150
146
179
183
173
161
149
161
149
145
178
182
172
160
148
160
148
144
177
181
171
159
147
159
147
143
176
180
170
158
146
158
146
142
175
179
169
157
145
157
145
141
174
178
168
156
144
156
144
140
173
177
167
155
143
155
143
139
172
176
166
154
142
154
142
138
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
165
164
163
162
161
160
159
158
157
156
155
154
153
141
142
143
144
145
146
147
148
149
150
151
152
153
141
140
139
138
137
136
135
134
133
132
131
130
129
130
131
132
133
134
135
136
137
162
152
140
128
161
151
139
127
160
150
138
126
159
149
137
125
158
148
136
124
157
147
135
123
156
146
134
122
155
145
133
121
154
144
132
120
153
143
131
119
152
142
130
118
151
150
149
148
147
146
145
144
143
142
141
140
139
129
130
131
132
133
134
135
136
137
138
139
140
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
105
106
107
108
109
110
111
112
113
114
115
116
117
152
138
128
116
104
118
153
137
127
115
103
119
154
136
126
114
102
120
154
135
125
113
101
121
153
134
124
112
100
122
152
133
123
111
99
123
151
132
122
110
98
124
138
139
140
141
142
143
144
145
146
147
148
149
150
131
121
109
97
125
126
127
128
129
130
131
132
133
134
135
136
137
130
120
108
96
129
119
107
95
128
118
106
94
127
117
105
93
126
116
104
92
125
126
125
124
123
122
121
120
119
118
117
116
115
103
102
101
100
99
98
97
96
95
94
93
92
91
124
114
102
90
123
113
101
89
122
112
100
88
121
111
99
87
120
110
98
86
119
109
97
85
85
86
87
88
89
90
91
92
93
94
95
96
97
118
108
96
84
72
73
74
75
76
77
78
79
80
81
82
83
84
98
117
107
95
83
71
99
116
106
94
82
70
100
115
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
81
69
101
114
94
80
80
68
102
113
95
79
79
67
103
112
96
78
78
66
104
105
106
107
108
109
110
111
112
113
113
112
111
97
77
77
76
75
74
73
72
71
70
69
68
67
66
65
105
110
98
76
76
64
106
109
99
75
75
63
107
108
100
74
74
62
108
107
101
73
73
61
109
106
102
72
72
60
110
105
103
71
71
59
111
104
104
70
70
58
112
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
103
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
57
113
90
104
70
56
56
113
89
103
71
55
55
112
88
102
72
54
54
111
87
101
73
53
53
110
86
100
74
52
52
109
85
99
75
51
51
108
84
98
76
50
50
107
83
97
77
49
49
106
82
96
78
48
48
105
81
95
79
47
47
104
80
94
80
46
46
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
93
92
91
90
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
45
44
43
42
41
40
39
38
37
112
92
78
46
32
36
113
93
77
47
31
35
114
94
76
48
30
34
115
95
75
49
29
33
116
96
74
50
28
32
117
97
73
51
27
31
118
98
72
52
26
30
119
99
71
53
25
29
120
100
70
54
24
28
121
101
69
55
23
27
122
102
68
56
22
26
123
111
110
109
108
107
106
105
104
103
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
44
45
46
47
48
49
50
51
52
53
54
55
21
20
19
18
17
16
15
14
13
25
122
110
56
42
12
24
121
109
57
41
11
23
120
108
58
40
10
22
119
107
59
39
9
21
118
106
60
38
8
20
117
105
61
37
7
19
116
104
62
36
6
18
115
103
63
35
5
17
114
102
64
34
4
16
113
101
65
33
3
15
112
100
66
32
2
14
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
67
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
200
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
193
194
195
196
197
198
199
200
201
202
203
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
199
211
191
179
175
163
198
210
190
178
174
162
197
209
189
177
173
161
196
208
188
176
172
160
195
207
187
175
171
159
194
206
186
174
170
158
193
205
185
173
169
157
192
204
184
172
168
156
191
203
183
171
167
155
190
202
182
170
166
154
189
201
181
169
165
153
188
200
180
168
167
166
165
164
163
162
161
160
159
158
157
156
168
164
152
187
199
179
167
155
167
163
151
186
198
178
166
154
166
162
150
185
197
177
165
153
165
161
149
184
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
164
152
164
163
162
161
160
159
158
157
156
155
154
153
152
153
154
155
156
157
158
159
160
148
183
187
175
163
151
163
151
147
182
186
174
162
150
162
150
146
181
185
173
161
149
161
149
145
180
184
172
160
148
160
148
144
179
183
171
159
147
159
147
143
178
182
170
158
146
158
146
142
177
181
169
157
145
157
145
141
176
180
168
156
144
156
144
140
175
179
167
155
143
155
143
139
174
178
166
154
142
154
142
138
173
177
165
153
141
153
141
137
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
164
163
162
161
160
159
158
157
156
155
154
153
152
140
141
142
143
144
145
146
147
148
149
150
151
152
140
139
138
137
136
135
134
133
132
131
130
129
128
129
130
131
132
133
134
135
136
163
151
139
127
162
150
138
126
161
149
137
125
160
148
136
124
159
147
135
123
158
146
134
122
157
145
133
121
156
144
132
120
155
143
131
119
154
142
130
118
153
141
129
117
152
151
150
149
148
147
146
145
144
143
142
141
140
128
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
104
105
106
107
108
109
110
111
112
113
114
115
116
153
139
127
115
103
117
154
138
126
114
102
118
154
137
125
113
101
119
153
136
124
112
100
120
152
135
123
111
99
121
151
134
122
110
98
122
150
133
121
109
97
123
137
138
139
140
141
142
143
144
145
146
147
148
149
132
120
108
96
124
125
126
127
128
129
130
131
132
133
134
135
136
131
119
107
95
130
118
106
94
129
117
105
93
128
116
104
92
127
115
103
91
126
125
124
123
122
121
120
119
118
117
116
115
114
102
101
100
99
98
97
96
95
94
93
92
91
90
125
113
101
89
124
112
100
88
123
111
99
87
122
110
98
86
121
109
97
85
120
108
96
84
84
85
86
87
88
89
90
91
92
93
94
95
96
119
107
95
83
71
72
73
74
75
76
77
78
79
80
81
82
83
97
118
106
94
82
70
98
117
105
93
81
69
99
116
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
81
82
83
84
85
86
87
88
89
90
91
92
80
68
100
115
93
79
79
67
101
114
94
78
78
66
102
113
95
77
77
65
103
104
105
106
107
108
109
110
111
112
113
113
112
96
76
76
75
74
73
72
71
70
69
68
67
66
65
64
104
111
97
75
75
63
105
110
98
74
74
62
106
109
99
73
73
61
107
108
100
72
72
60
108
107
101
71
71
59
109
106
102
70
70
58
110
105
103
69
69
57
111
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
103
104
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
56
112
91
103
69
55
55
113
90
102
70
54
54
113
89
101
71
53
53
112
88
100
72
52
52
111
87
99
73
51
51
110
86
98
74
50
50
109
85
97
75
49
49
108
84
96
76
48
48
107
83
95
77
47
47
106
82
94
78
46
46
105
81
93
79
45
45
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
92
91
90
89
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
113
93
79
45
31
35
114
94
78
46
30
34
115
95
77
47
29
33
116
96
76
48
28
32
117
97
75
49
27
31
118
98
74
50
26
30
119
99
73
51
25
29
120
100
72
52
24
28
121
101
71
53
23
27
122
102
70
54
22
26
123
103
69
55
21
25
124
112
111
110
109
108
107
106
105
104
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
45
46
47
48
49
50
51
52
53
54
55
56
20
19
18
17
16
15
14
13
12
24
123
111
57
43
11
23
122
110
58
42
10
22
121
109
59
41
9
21
120
108
60
40
8
20
119
107
61
39
7
19
118
106
62
38
6
18
117
105
63
37
5
17
116
104
64
36
4
16
115
103
65
35
3
15
114
102
66
34
2
14
113
101
67
33
1
13
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
68
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
201
202
203
204
205
206
207
208
209
210
211
212
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
192
193
194
195
196
197
198
199
200
201
202
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
180
181
182
183
184
185
186
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
200
210
190
178
174
162
199
209
189
177
173
161
198
208
188
176
172
160
197
207
187
175
171
159
196
206
186
174
170
158
195
205
185
173
169
157
194
204
184
172
168
156
193
203
183
171
167
155
192
202
182
170
166
154
191
201
181
169
165
153
190
200
180
168
164
152
189
199
179
167
166
165
164
163
162
161
160
159
158
157
156
155
167
163
151
188
198
178
166
154
166
162
150
187
197
177
165
153
165
161
149
186
196
176
164
152
164
160
148
185
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
163
151
163
162
161
160
159
158
157
156
155
154
153
152
151
152
153
154
155
156
157
158
159
147
184
188
174
162
150
162
150
146
183
187
173
161
149
161
149
145
182
186
172
160
148
160
148
144
181
185
171
159
147
159
147
143
180
184
170
158
146
158
146
142
179
183
169
157
145
157
145
141
178
182
168
156
144
156
144
140
177
181
167
155
143
155
143
139
176
180
166
154
142
154
142
138
175
179
165
153
141
153
141
137
174
178
164
152
140
152
140
136
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
163
162
161
160
159
158
157
156
155
154
153
152
151
139
140
141
142
143
144
145
146
147
148
149
150
151
139
138
137
136
135
134
133
132
131
130
129
128
127
128
129
130
131
132
133
134
135
164
150
138
126
163
149
137
125
162
148
136
124
161
147
135
123
160
146
134
122
159
145
133
121
158
144
132
120
157
143
131
119
156
142
130
118
155
141
129
117
154
140
128
116
153
152
151
150
149
148
147
146
145
144
143
142
141
129
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
103
104
105
106
107
108
109
110
111
112
113
114
115
154
140
128
114
102
116
154
139
127
113
101
117
153
138
126
112
100
118
152
137
125
111
99
119
151
136
124
110
98
120
150
135
123
109
97
121
149
134
122
108
96
122
136
137
138
139
140
141
142
143
144
145
146
147
148
133
121
107
95
123
124
125
126
127
128
129
130
131
132
133
134
135
132
120
106
94
131
119
105
93
130
118
104
92
129
117
103
91
128
116
102
90
127
126
125
124
123
122
121
120
119
118
117
116
115
101
100
99
98
97
96
95
94
93
92
91
90
89
126
114
102
88
125
113
101
87
124
112
100
86
123
111
99
85
122
110
98
84
121
109
97
83
83
84
85
86
87
88
89
90
91
92
93
94
95
120
108
96
82
70
71
72
73
74
75
76
77
78
79
80
81
82
96
119
107
95
81
69
97
118
106
94
80
68
98
117
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
82
83
84
85
86
87
88
89
90
91
92
93
79
67
99
116
94
80
78
66
100
115
95
79
77
65
101
114
96
78
76
64
102
103
104
105
106
107
108
109
110
111
112
113
113
97
77
75
74
73
72
71
70
69
68
67
66
65
64
63
103
112
98
76
76
62
104
111
99
75
75
61
105
110
100
74
74
60
106
109
101
73
73
59
107
108
102
72
72
58
108
107
103
71
71
57
109
106
104
70
70
56
110
105
104
103
102
101
100
99
98
97
96
95
94
93
94
95
96
97
98
99
100
101
102
103
104
105
69
68
67
66
65
64
63
62
61
60
59
58
57
58
59
60
61
62
63
64
65
66
67
68
69
55
111
92
104
70
56
54
112
91
103
71
55
53
113
90
102
72
54
52
113
89
101
73
53
51
112
88
100
74
52
50
111
87
99
75
51
49
110
86
98
76
50
48
109
85
97
77
49
47
108
84
96
78
48
46
107
83
95
79
47
45
106
82
94
80
46
44
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
93
92
91
90
89
88
87
86
85
84
83
82
81
45
44
43
42
41
40
39
38
37
36
35
34
33
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
114
94
80
46
32
34
115
95
79
47
31
33
116
96
78
48
30
32
117
97
77
49
29
31
118
98
76
50
28
30
119
99
75
51
27
29
120
100
74
52
26
28
121
101
73
53
25
27
122
102
72
54
24
26
123
103
71
55
23
25
124
104
70
56
22
24
125
113
112
111
110
109
108
107
106
105
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
46
47
48
49
50
51
52
53
54
55
56
57
21
20
19
18
17
16
15
14
13
23
124
112
58
44
12
22
123
111
59
43
11
21
122
110
60
42
10
20
121
109
61
41
9
19
120
108
62
40
8
18
119
107
63
39
7
17
118
106
64
38
6
16
117
105
65
37
5
15
116
104
66
36
4
14
115
103
67
35
3
13
114
102
68
34
2
12
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
69
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
201
202
203
204
205
206
207
208
209
210
211
211
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
191
192
193
194
195
196
197
198
199
200
201
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
179
180
181
182
183
184
185
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
200
209
189
177
173
161
199
208
188
176
172
160
198
207
187
175
171
159
197
206
186
174
170
158
196
205
185
173
169
157
195
204
184
172
168
156
194
203
183
171
167
155
193
202
182
170
166
154
192
201
181
169
165
153
191
200
180
168
164
152
190
199
179
167
163
151
189
198
178
166
165
164
163
162
161
160
159
158
157
156
155
154
166
162
150
188
197
177
165
153
165
161
149
187
196
176
164
152
164
160
148
186
195
175
163
151
163
159
147
185
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
162
150
162
161
160
159
158
157
156
155
154
153
152
151
150
151
152
153
154
155
156
157
158
146
184
187
173
161
149
161
149
145
183
187
172
160
148
160
148
144
182
186
171
159
147
159
147
143
181
185
170
158
146
158
146
142
180
184
169
157
145
157
145
141
179
183
168
156
144
156
144
140
178
182
167
155
143
155
143
139
177
181
166
154
142
154
142
138
176
180
165
153
141
153
141
137
175
179
164
152
140
152
140
136
174
178
163
151
139
151
139
135
173
172
171
170
169
168
167
166
165
166
167
168
169
170
171
172
173
174
175
176
177
162
161
160
159
158
157
156
155
154
153
152
151
150
138
139
140
141
142
143
144
145
146
147
148
149
150
138
137
136
135
134
133
132
131
130
129
128
127
126
127
128
129
130
131
132
133
134
164
149
137
125
163
148
136
124
162
147
135
123
161
146
134
122
160
145
133
121
159
144
132
120
158
143
131
119
157
142
130
118
156
141
129
117
155
140
128
116
154
139
127
115
153
152
151
150
149
148
147
146
145
144
143
142
141
130
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
102
103
104
105
106
107
108
109
110
111
112
113
114
154
140
129
113
101
115
153
139
128
112
100
116
152
138
127
111
99
117
151
137
126
110
98
118
150
136
125
109
97
119
149
135
124
108
96
120
148
134
123
107
95
121
135
136
137
138
139
140
141
142
143
144
145
146
147
133
122
106
94
122
123
124
125
126
127
128
129
130
131
132
133
134
132
121
105
93
131
120
104
92
130
119
103
91
129
118
102
90
128
117
101
89
127
127
126
125
124
123
122
121
120
119
118
117
116
100
99
98
97
96
95
94
93
92
91
90
89
88
126
115
101
87
125
114
102
86
124
113
101
85
123
112
100
84
122
111
99
83
121
110
98
82
82
83
84
85
86
87
88
89
90
91
92
93
94
120
109
97
81
69
70
71
72
73
74
75
76
77
78
79
80
81
95
119
108
96
80
68
96
118
107
95
79
67
97
117
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
83
84
85
86
87
88
89
90
91
92
93
94
78
66
98
116
95
81
77
65
99
115
96
80
76
64
100
114
97
79
75
63
101
102
103
104
105
106
107
108
109
110
111
112
113
98
78
74
73
72
71
70
69
68
67
66
65
64
63
62
102
113
99
77
75
61
103
112
100
76
76
60
104
111
101
75
75
59
105
110
102
74
74
58
106
109
103
73
73
57
107
108
104
72
72
56
108
107
105
71
71
55
109
106
105
104
103
102
101
100
99
98
97
96
95
94
95
96
97
98
99
100
101
102
103
104
105
106
70
69
68
67
66
65
64
63
62
61
60
59
58
59
60
61
62
63
64
65
66
67
68
69
70
54
110
93
105
71
57
53
111
92
104
72
56
52
112
91
103
73
55
51
113
90
102
74
54
50
113
89
101
75
53
49
112
88
100
76
52
48
111
87
99
77
51
47
110
86
98
78
50
46
109
85
97
79
49
45
108
84
96
80
48
44
107
83
95
81
47
43
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
94
93
92
91
90
89
88
87
86
85
84
83
82
46
45
44
43
42
41
40
39
38
37
36
35
34
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
115
95
81
47
33
33
116
96
80
48
32
32
117
97
79
49
31
31
118
98
78
50
30
30
119
99
77
51
29
29
120
100
76
52
28
28
121
101
75
53
27
27
122
102
74
54
26
26
123
103
73
55
25
25
124
104
72
56
24
24
125
105
71
57
23
23
126
114
113
112
111
110
109
108
107
106
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
47
48
49
50
51
52
53
54
55
56
57
58
22
21
20
19
18
17
16
15
14
22
125
113
59
45
13
21
124
112
60
44
12
20
123
111
61
43
11
19
122
110
62
42
10
18
121
109
63
41
9
17
120
108
64
40
8
16
119
107
65
39
7
15
118
106
66
38
6
14
117
105
67
37
5
13
116
104
68
36
4
12
115
103
69
35
3
11
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
70
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
200
201
202
203
204
205
206
207
208
209
210
210
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
190
191
192
193
194
195
196
197
198
199
200
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
178
179
180
181
182
183
184
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
199
208
188
176
172
160
198
207
187
175
171
159
197
206
186
174
170
158
196
205
185
173
169
157
195
204
184
172
168
156
194
203
183
171
167
155
193
202
182
170
166
154
192
201
181
169
165
153
191
200
180
168
164
152
190
199
179
167
163
151
189
198
178
166
162
150
188
197
177
165
164
163
162
161
160
159
158
157
156
155
154
153
165
161
149
187
196
176
164
152
164
160
148
186
195
175
163
151
163
159
147
185
194
174
162
150
162
158
146
184
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
161
149
161
160
159
158
157
156
155
154
153
152
151
150
149
150
151
152
153
154
155
156
157
145
183
186
172
160
148
160
148
144
182
186
171
159
147
159
147
143
181
185
170
158
146
158
146
142
180
184
169
157
145
157
145
141
179
183
168
156
144
156
144
140
178
182
167
155
143
155
143
139
177
181
166
154
142
154
142
138
176
180
165
153
141
153
141
137
175
179
164
152
140
152
140
136
174
178
163
151
139
151
139
135
173
177
162
150
138
150
138
134
172
171
170
169
168
167
166
165
164
165
166
167
168
169
170
171
172
173
174
175
176
161
160
159
158
157
156
155
154
153
152
151
150
149
137
138
139
140
141
142
143
144
145
146
147
148
149
137
136
135
134
133
132
131
130
129
128
127
126
125
126
127
128
129
130
131
132
133
163
148
136
124
162
147
135
123
161
146
134
122
160
145
133
121
159
144
132
120
158
143
131
119
157
142
130
118
156
141
129
117
155
140
128
116
154
139
127
115
153
138
126
114
152
151
150
149
148
147
146
145
144
143
142
141
140
131
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
101
102
103
104
105
106
107
108
109
110
111
112
113
153
139
130
112
100
114
152
138
129
111
99
115
151
137
128
110
98
116
150
136
127
109
97
117
149
135
126
108
96
118
148
134
125
107
95
119
147
133
124
106
94
120
134
135
136
137
138
139
140
141
142
143
144
145
146
132
123
105
93
121
122
123
124
125
126
127
128
129
130
131
132
133
131
122
104
92
130
121
103
91
129
120
102
90
128
119
101
89
127
118
100
88
126
127
127
126
125
124
123
122
121
120
119
118
117
99
98
97
96
95
94
93
92
91
90
89
88
87
125
116
100
86
124
115
101
85
123
114
102
84
122
113
101
83
121
112
100
82
120
111
99
81
81
82
83
84
85
86
87
88
89
90
91
92
93
119
110
98
80
68
69
70
71
72
73
74
75
76
77
78
79
80
94
118
109
97
79
67
95
117
108
96
78
66
96
116
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
84
85
86
87
88
89
90
91
92
93
94
95
77
65
97
115
96
82
76
64
98
114
97
81
75
63
99
113
98
80
74
62
100
101
102
103
104
105
106
107
108
109
110
111
112
99
79
73
72
71
70
69
68
67
66
65
64
63
62
61
101
113
100
78
74
60
102
113
101
77
75
59
103
112
102
76
76
58
104
111
103
75
75
57
105
110
104
74
74
56
106
109
105
73
73
55
107
108
106
72
72
54
108
107
106
105
104
103
102
101
100
99
98
97
96
95
96
97
98
99
100
101
102
103
104
105
106
107
71
70
69
68
67
66
65
64
63
62
61
60
59
60
61
62
63
64
65
66
67
68
69
70
71
53
109
94
106
72
58
52
110
93
105
73
57
51
111
92
104
74
56
50
112
91
103
75
55
49
113
90
102
76
54
48
113
89
101
77
53
47
112
88
100
78
52
46
111
87
99
79
51
45
110
86
98
80
50
44
109
85
97
81
49
43
108
84
96
82
48
42
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
95
94
93
92
91
90
89
88
87
86
85
84
83
47
46
45
44
43
42
41
40
39
38
37
36
35
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
116
96
82
48
34
32
117
97
81
49
33
31
118
98
80
50
32
30
119
99
79
51
31
29
120
100
78
52
30
28
121
101
77
53
29
27
122
102
76
54
28
26
123
103
75
55
27
25
124
104
74
56
26
24
125
105
73
57
25
23
126
106
72
58
24
22
127
115
114
113
112
111
110
109
108
107
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
47
48
49
50
51
52
53
54
55
56
57
58
59
23
22
21
20
19
18
17
16
15
21
126
114
60
46
14
20
125
113
61
45
13
19
124
112
62
44
12
18
123
111
63
43
11
17
122
110
64
42
10
16
121
109
65
41
9
15
120
108
66
40
8
14
119
107
67
39
7
13
118
106
68
38
6
12
117
105
69
37
5
11
116
104
70
36
4
10
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
71
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
199
200
201
202
203
204
205
206
207
208
209
209
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
189
190
191
192
193
194
195
196
197
198
199
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
177
178
179
180
181
182
183
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
198
207
187
175
171
159
197
206
186
174
170
158
196
205
185
173
169
157
195
204
184
172
168
156
194
203
183
171
167
155
193
202
182
170
166
154
192
201
181
169
165
153
191
200
180
168
164
152
190
199
179
167
163
151
189
198
178
166
162
150
188
197
177
165
161
149
187
196
176
164
163
162
161
160
159
158
157
156
155
154
153
152
164
160
148
186
195
175
163
151
163
159
147
185
194
174
162
150
162
158
146
184
193
173
161
149
161
157
145
183
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
160
148
160
159
158
157
156
155
154
153
152
151
150
149
148
149
150
151
152
153
154
155
156
144
182
185
171
159
147
159
147
143
181
185
170
158
146
158
146
142
180
184
169
157
145
157
145
141
179
183
168
156
144
156
144
140
178
182
167
155
143
155
143
139
177
181
166
154
142
154
142
138
176
180
165
153
141
153
141
137
175
179
164
152
140
152
140
136
174
178
163
151
139
151
139
135
173
177
162
150
138
150
138
134
172
176
161
149
137
149
137
133
171
170
169
168
167
166
165
164
163
164
165
166
167
168
169
170
171
172
173
174
175
160
159
158
157
156
155
154
153
152
151
150
149
148
136
137
138
139
140
141
142
143
144
145
146
147
148
136
135
134
133
132
131
130
129
128
127
126
125
124
125
126
127
128
129
130
131
132
162
147
135
123
161
146
134
122
160
145
133
121
159
144
132
120
158
143
131
119
157
142
130
118
156
141
129
117
155
140
128
116
154
139
127
115
153
138
126
114
152
137
125
113
151
150
149
148
147
146
145
144
143
142
141
140
139
132
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
100
101
102
103
104
105
106
107
108
109
110
111
112
152
138
131
111
99
113
151
137
130
110
98
114
150
136
129
109
97
115
149
135
128
108
96
116
148
134
127
107
95
117
147
133
126
106
94
118
146
132
125
105
93
119
133
134
135
136
137
138
139
140
141
142
143
144
145
131
124
104
92
120
121
122
123
124
125
126
127
128
129
130
131
132
130
123
103
91
129
122
102
90
128
121
101
89
127
120
100
88
126
119
99
87
125
126
127
127
126
125
124
123
122
121
120
119
118
98
97
96
95
94
93
92
91
90
89
88
87
86
124
117
99
85
123
116
100
84
122
115
101
83
121
114
102
82
120
113
101
81
119
112
100
80
80
81
82
83
84
85
86
87
88
89
90
91
92
118
111
99
79
67
68
69
70
71
72
73
74
75
76
77
78
79
93
117
110
98
78
66
94
116
109
97
77
65
95
115
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
85
86
87
88
89
90
91
92
93
94
95
96
76
64
96
114
97
83
75
63
97
113
98
82
74
62
98
112
99
81
73
61
99
100
101
102
103
104
105
106
107
108
109
110
111
100
80
72
71
70
69
68
67
66
65
64
63
62
61
60
100
112
101
79
73
59
101
113
102
78
74
58
102
113
103
77
75
57
103
112
104
76
76
56
104
111
105
75
75
55
105
110
106
74
74
54
106
109
107
73
73
53
107
108
107
106
105
104
103
102
101
100
99
98
97
96
97
98
99
100
101
102
103
104
105
106
107
108
72
71
70
69
68
67
66
65
64
63
62
61
60
61
62
63
64
65
66
67
68
69
70
71
72
52
108
95
107
73
59
51
109
94
106
74
58
50
110
93
105
75
57
49
111
92
104
76
56
48
112
91
103
77
55
47
113
90
102
78
54
46
113
89
101
79
53
45
112
88
100
80
52
44
111
87
99
81
51
43
110
86
98
82
50
42
109
85
97
83
49
41
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
96
95
94
93
92
91
90
89
88
87
86
85
84
48
47
46
45
44
43
42
41
40
39
38
37
36
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
117
97
83
49
35
31
118
98
82
50
34
30
119
99
81
51
33
29
120
100
80
52
32
28
121
101
79
53
31
27
122
102
78
54
30
26
123
103
77
55
29
25
124
104
76
56
28
24
125
105
75
57
27
23
126
106
74
58
26
22
127
107
73
59
25
21
128
116
115
114
113
112
111
110
109
108
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
48
49
50
51
52
53
54
55
56
57
58
59
60
24
23
22
21
20
19
18
17
16
20
127
115
61
47
15
19
126
114
62
46
14
18
125
113
63
45
13
17
124
112
64
44
12
16
123
111
65
43
11
15
122
110
66
42
10
14
121
109
67
41
9
13
120
108
68
40
8
12
119
107
69
39
7
11
118
106
70
38
6
10
117
105
71
37
5
9
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
72
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
198
199
200
201
202
203
204
205
206
207
208
208
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
188
189
190
191
192
193
194
195
196
197
198
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
176
177
178
179
180
181
182
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
197
206
186
174
170
158
196
205
185
173
169
157
195
204
184
172
168
156
194
203
183
171
167
155
193
202
182
170
166
154
192
201
181
169
165
153
191
200
180
168
164
152
190
199
179
167
163
151
189
198
178
166
162
150
188
197
177
165
161
149
187
196
176
164
160
148
186
195
175
163
162
161
160
159
158
157
156
155
154
153
152
151
163
159
147
185
194
174
162
150
162
158
146
184
193
173
161
149
161
157
145
183
192
172
160
148
160
156
144
182
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
159
147
159
158
157
156
155
154
153
152
151
150
149
148
147
148
149
150
151
152
153
154
155
143
181
184
170
158
146
158
146
142
180
184
169
157
145
157
145
141
179
183
168
156
144
156
144
140
178
182
167
155
143
155
143
139
177
181
166
154
142
154
142
138
176
180
165
153
141
153
141
137
175
179
164
152
140
152
140
136
174
178
163
151
139
151
139
135
173
177
162
150
138
150
138
134
172
176
161
149
137
149
137
133
171
175
160
148
136
148
136
132
170
169
168
167
166
165
164
163
162
163
164
165
166
167
168
169
170
171
172
173
174
159
158
157
156
155
154
153
152
151
150
149
148
147
135
136
137
138
139
140
141
142
143
144
145
146
147
135
134
133
132
131
130
129
128
127
126
125
124
123
124
125
126
127
128
129
130
131
161
146
134
122
160
145
133
121
159
144
132
120
158
143
131
119
157
142
130
118
156
141
129
117
155
140
128
116
154
139
127
115
153
138
126
114
152
137
125
113
151
136
124
112
150
149
148
147
146
145
144
143
142
141
140
139
138
133
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
99
100
101
102
103
104
105
106
107
108
109
110
111
151
137
132
110
98
112
150
136
131
109
97
113
149
135
130
108
96
114
148
134
129
107
95
115
147
133
128
106
94
116
146
132
127
105
93
117
145
131
126
104
92
118
132
133
134
135
136
137
138
139
140
141
142
143
144
130
125
103
91
119
120
121
122
123
124
125
126
127
128
129
130
131
129
124
102
90
128
123
101
89
127
122
100
88
126
121
99
87
125
120
98
86
124
125
126
127
127
126
125
124
123
122
121
120
119
97
96
95
94
93
92
91
90
89
88
87
86
85
123
118
98
84
122
117
99
83
121
116
100
82
120
115
101
81
119
114
102
80
118
113
101
79
79
80
81
82
83
84
85
86
87
88
89
90
91
117
112
100
78
66
67
68
69
70
71
72
73
74
75
76
77
78
92
116
111
99
77
65
93
115
110
98
76
64
94
114
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
86
87
88
89
90
91
92
93
94
95
96
97
75
63
95
113
98
84
74
62
96
112
99
83
73
61
97
111
100
82
72
60
98
99
100
101
102
103
104
105
106
107
108
109
110
101
81
71
70
69
68
67
66
65
64
63
62
61
60
59
99
111
102
80
72
58
100
112
103
79
73
57
101
113
104
78
74
56
102
113
105
77
75
55
103
112
106
76
76
54
104
111
107
75
75
53
105
110
108
74
74
52
106
109
108
107
106
105
104
103
102
101
100
99
98
97
98
99
100
101
102
103
104
105
106
107
108
109
73
72
71
70
69
68
67
66
65
64
63
62
61
62
63
64
65
66
67
68
69
70
71
72
73
51
107
96
108
74
60
50
108
95
107
75
59
49
109
94
106
76
58
48
110
93
105
77
57
47
111
92
104
78
56
46
112
91
103
79
55
45
113
90
102
80
54
44
113
89
101
81
53
43
112
88
100
82
52
42
111
87
99
83
51
41
110
86
98
84
50
40
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
97
96
95
94
93
92
91
90
89
88
87
86
85
49
48
47
46
45
44
43
42
41
40
39
38
37
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
118
98
84
50
36
30
119
99
83
51
35
29
120
100
82
52
34
28
121
101
81
53
33
27
122
102
80
54
32
26
123
103
79
55
31
25
124
104
78
56
30
24
125
105
77
57
29
23
126
106
76
58
28
22
127
107
75
59
27
21
128
108
74
60
26
20
129
117
116
115
114
113
112
111
110
109
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
49
50
51
52
53
54
55
56
57
58
59
60
61
25
24
23
22
21
20
19
18
17
19
128
116
62
48
16
18
127
115
63
47
15
17
126
114
64
46
14
16
125
113
65
45
13
15
124
112
66
44
12
14
123
111
67
43
11
13
122
110
68
42
10
12
121
109
69
41
9
11
120
108
70
40
8
10
119
107
71
39
7
9
118
106
72
38
6
8
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
73
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
197
198
199
200
201
202
203
204
205
206
207
207
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
187
188
189
190
191
192
193
194
195
196
197
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
175
176
177
178
179
180
181
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
196
205
185
173
169
157
195
204
184
172
168
156
194
203
183
171
167
155
193
202
182
170
166
154
192
201
181
169
165
153
191
200
180
168
164
152
190
199
179
167
163
151
189
198
178
166
162
150
188
197
177
165
161
149
187
196
176
164
160
148
186
195
175
163
159
147
185
194
174
162
161
160
159
158
157
156
155
154
153
152
151
150
162
158
146
184
193
173
161
149
161
157
145
183
192
172
160
148
160
156
144
182
191
171
159
147
159
155
143
181
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
158
146
158
157
156
155
154
153
152
151
150
149
148
147
146
147
148
149
150
151
152
153
154
142
180
183
169
157
145
157
145
141
179
183
168
156
144
156
144
140
178
182
167
155
143
155
143
139
177
181
166
154
142
154
142
138
176
180
165
153
141
153
141
137
175
179
164
152
140
152
140
136
174
178
163
151
139
151
139
135
173
177
162
150
138
150
138
134
172
176
161
149
137
149
137
133
171
175
160
148
136
148
136
132
170
174
159
147
135
147
135
131
169
168
167
166
165
164
163
162
161
162
163
164
165
166
167
168
169
170
171
172
173
158
157
156
155
154
153
152
151
150
149
148
147
146
134
135
136
137
138
139
140
141
142
143
144
145
146
134
133
132
131
130
129
128
127
126
125
124
123
122
123
124
125
126
127
128
129
130
160
145
133
121
159
144
132
120
158
143
131
119
157
142
130
118
156
141
129
117
155
140
128
116
154
139
127
115
153
138
126
114
152
137
125
113
151
136
124
112
150
135
123
111
149
148
147
146
145
144
143
142
141
140
139
138
137
134
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
98
99
100
101
102
103
104
105
106
107
108
109
110
150
136
133
109
97
111
149
135
132
108
96
112
148
134
131
107
95
113
147
133
130
106
94
114
146
132
129
105
93
115
145
131
128
104
92
116
144
130
127
103
91
117
131
132
133
134
135
136
137
138
139
140
141
142
143
129
126
102
90
118
119
120
121
122
123
124
125
126
127
128
129
130
128
125
101
89
127
124
100
88
126
123
99
87
125
122
98
86
124
121
97
85
123
124
125
126
127
127
126
125
124
123
122
121
120
96
95
94
93
92
91
90
89
88
87
86
85
84
122
119
97
83
121
118
98
82
120
117
99
81
119
116
100
80
118
115
101
79
117
114
102
78
78
79
80
81
82
83
84
85
86
87
88
89
90
116
113
101
77
65
66
67
68
69
70
71
72
73
74
75
76
77
91
115
112
100
76
64
92
114
111
99
75
63
93
113
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
87
88
89
90
91
92
93
94
95
96
97
98
74
62
94
112
99
85
73
61
95
111
100
84
72
60
96
110
101
83
71
59
97
98
99
100
101
102
103
104
105
106
107
108
109
102
82
70
69
68
67
66
65
64
63
62
61
60
59
58
98
110
103
81
71
57
99
111
104
80
72
56
100
112
105
79
73
55
101
113
106
78
74
54
102
113
107
77
75
53
103
112
108
76
76
52
104
111
109
75
75
51
105
110
109
108
107
106
105
104
103
102
101
100
99
98
99
100
101
102
103
104
105
106
107
108
109
110
74
73
72
71
70
69
68
67
66
65
64
63
62
63
64
65
66
67
68
69
70
71
72
73
74
50
106
97
109
75
61
49
107
96
108
76
60
48
108
95
107
77
59
47
109
94
106
78
58
46
110
93
105
79
57
45
111
92
104
80
56
44
112
91
103
81
55
43
113
90
102
82
54
42
113
89
101
83
53
41
112
88
100
84
52
40
111
87
99
85
51
39
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
98
97
96
95
94
93
92
91
90
89
88
87
86
50
49
48
47
46
45
44
43
42
41
40
39
38
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
119
99
85
51
37
29
120
100
84
52
36
28
121
101
83
53
35
27
122
102
82
54
34
26
123
103
81
55
33
25
124
104
80
56
32
24
125
105
79
57
31
23
126
106
78
58
30
22
127
107
77
59
29
21
128
108
76
60
28
20
129
109
75
61
27
19
130
118
117
116
115
114
113
112
111
110
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
50
51
52
53
54
55
56
57
58
59
60
61
62
26
25
24
23
22
21
20
19
18
18
129
117
63
49
17
17
128
116
64
48
16
16
127
115
65
47
15
15
126
114
66
46
14
14
125
113
67
45
13
13
124
112
68
44
12
12
123
111
69
43
11
11
122
110
70
42
10
10
121
109
71
41
9
9
120
108
72
40
8
8
119
107
73
39
7
7
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
74
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
196
197
198
199
200
201
202
203
204
205
206
206
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
186
187
188
189
190
191
192
193
194
195
196
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
174
175
176
177
178
179
180
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
195
204
184
172
168
156
194
203
183
171
167
155
193
202
182
170
166
154
192
201
181
169
165
153
191
200
180
168
164
152
190
199
179
167
163
151
189
198
178
166
162
150
188
197
177
165
161
149
187
196
176
164
160
148
186
195
175
163
159
147
185
194
174
162
158
146
184
193
173
161
160
159
158
157
156
155
154
153
152
151
150
149
161
157
145
183
192
172
160
148
160
156
144
182
191
171
159
147
159
155
143
181
190
170
158
146
158
154
142
180
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
157
145
157
156
155
154
153
152
151
150
149
148
147
146
145
146
147
148
149
150
151
152
153
141
179
182
168
156
144
156
144
140
178
182
167
155
143
155
143
139
177
181
166
154
142
154
142
138
176
180
165
153
141
153
141
137
175
179
164
152
140
152
140
136
174
178
163
151
139
151
139
135
173
177
162
150
138
150
138
134
172
176
161
149
137
149
137
133
171
175
160
148
136
148
136
132
170
174
159
147
135
147
135
131
169
173
158
146
134
146
134
130
168
167
166
165
164
163
162
161
160
161
162
163
164
165
166
167
168
169
170
171
172
157
156
155
154
153
152
151
150
149
148
147
146
145
133
134
135
136
137
138
139
140
141
142
143
144
145
133
132
131
130
129
128
127
126
125
124
123
122
121
122
123
124
125
126
127
128
129
159
144
132
120
158
143
131
119
157
142
130
118
156
141
129
117
155
140
128
116
154
139
127
115
153
138
126
114
152
137
125
113
151
136
124
112
150
135
123
111
149
134
122
110
148
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
97
98
99
100
101
102
103
104
105
106
107
108
109
149
135
134
108
96
110
148
134
133
107
95
111
147
133
132
106
94
112
146
132
131
105
93
113
145
131
130
104
92
114
144
130
129
103
91
115
143
129
128
102
90
116
130
131
132
133
134
135
136
137
138
139
140
141
142
128
127
101
89
117
118
119
120
121
122
123
124
125
126
127
128
129
127
126
100
88
126
125
99
87
125
124
98
86
124
123
97
85
123
122
96
84
122
123
124
125
126
127
127
126
125
124
123
122
121
95
94
93
92
91
90
89
88
87
86
85
84
83
121
120
96
82
120
119
97
81
119
118
98
80
118
117
99
79
117
116
100
78
116
115
101
77
77
78
79
80
81
82
83
84
85
86
87
88
89
115
114
102
76
64
65
66
67
68
69
70
71
72
73
74
75
76
90
114
113
101
75
63
91
113
112
100
74
62
92
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
88
89
90
91
92
93
94
95
96
97
98
99
73
61
93
111
100
86
72
60
94
110
101
85
71
59
95
109
102
84
70
58
96
97
98
99
100
101
102
103
104
105
106
107
108
103
83
69
68
67
66
65
64
63
62
61
60
59
58
57
97
109
104
82
70
56
98
110
105
81
71
55
99
111
106
80
72
54
100
112
107
79
73
53
101
113
108
78
74
52
102
113
109
77
75
51
103
112
110
76
76
50
104
111
110
109
108
107
106
105
104
103
102
101
100
99
100
101
102
103
104
105
106
107
108
109
110
111
75
74
73
72
71
70
69
68
67
66
65
64
63
64
65
66
67
68
69
70
71
72
73
74
75
49
105
98
110
76
62
48
106
97
109
77
61
47
107
96
108
78
60
46
108
95
107
79
59
45
109
94
106
80
58
44
110
93
105
81
57
43
111
92
104
82
56
42
112
91
103
83
55
41
113
90
102
84
54
40
113
89
101
85
53
39
112
88
100
86
52
38
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
99
98
97
96
95
94
93
92
91
90
89
88
87
51
50
49
48
47
46
45
44
43
42
41
40
39
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
120
100
86
52
38
28
121
101
85
53
37
27
122
102
84
54
36
26
123
103
83
55
35
25
124
104
82
56
34
24
125
105
81
57
33
23
126
106
80
58
32
22
127
107
79
59
31
21
128
108
78
60
30
20
129
109
77
61
29
19
130
110
76
62
28
18
131
119
118
117
116
115
114
113
112
111
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
51
52
53
54
55
56
57
58
59
60
61
62
63
27
26
25
24
23
22
21
20
19
17
130
118
64
50
18
16
129
117
65
49
17
15
128
116
66
48
16
14
127
115
67
47
15
13
126
114
68
46
14
12
125
113
69
45
13
11
124
112
70
44
12
10
123
111
71
43
11
9
122
110
72
42
10
8
121
109
73
41
9
7
120
108
74
40
8
6
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
75
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
195
196
197
198
199
200
201
202
203
204
205
205
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
185
186
187
188
189
190
191
192
193
194
195
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
173
174
175
176
177
178
179
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
194
203
183
171
167
155
193
202
182
170
166
154
192
201
181
169
165
153
191
200
180
168
164
152
190
199
179
167
163
151
189
198
178
166
162
150
188
197
177
165
161
149
187
196
176
164
160
148
186
195
175
163
159
147
185
194
174
162
158
146
184
193
173
161
157
145
183
192
172
160
159
158
157
156
155
154
153
152
151
150
149
148
160
156
144
182
191
171
159
147
159
155
143
181
190
170
158
146
158
154
142
180
189
169
157
145
157
153
141
179
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
156
144
156
155
154
153
152
151
150
149
148
147
146
145
144
145
146
147
148
149
150
151
152
140
178
181
167
155
143
155
143
139
177
181
166
154
142
154
142
138
176
180
165
153
141
153
141
137
175
179
164
152
140
152
140
136
174
178
163
151
139
151
139
135
173
177
162
150
138
150
138
134
172
176
161
149
137
149
137
133
171
175
160
148
136
148
136
132
170
174
159
147
135
147
135
131
169
173
158
146
134
146
134
130
168
172
157
145
133
145
133
129
167
166
165
164
163
162
161
160
159
160
161
162
163
164
165
166
167
168
169
170
171
156
155
154
153
152
151
150
149
148
147
146
145
144
132
133
134
135
136
137
138
139
140
141
142
143
144
132
131
130
129
128
127
126
125
124
123
122
121
120
121
122
123
124
125
126
127
128
158
143
131
119
157
142
130
118
156
141
129
117
155
140
128
116
154
139
127
115
153
138
126
114
152
137
125
113
151
136
124
112
150
135
123
111
149
134
122
110
148
133
121
109
147
146
145
144
143
142
141
140
139
138
137
136
135
136
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
96
97
98
99
100
101
102
103
104
105
106
107
108
148
134
135
107
95
109
147
133
134
106
94
110
146
132
133
105
93
111
145
131
132
104
92
112
144
130
131
103
91
113
143
129
130
102
90
114
142
128
129
101
89
115
129
130
131
132
133
134
135
136
137
138
139
140
141
127
128
100
88
116
117
118
119
120
121
122
123
124
125
126
127
128
126
127
99
87
125
126
98
86
124
125
97
85
123
124
96
84
122
123
95
83
121
122
123
124
125
126
127
127
126
125
124
123
122
94
93
92
91
90
89
88
87
86
85
84
83
82
120
121
95
81
119
120
96
80
118
119
97
79
117
118
98
78
116
117
99
77
115
116
100
76
76
77
78
79
80
81
82
83
84
85
86
87
88
114
115
101
75
63
64
65
66
67
68
69
70
71
72
73
74
75
89
113
114
102
74
62
90
112
113
101
73
61
91
111
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
89
90
91
92
93
94
95
96
97
98
99
100
72
60
92
110
101
87
71
59
93
109
102
86
70
58
94
108
103
85
69
57
95
96
97
98
99
100
101
102
103
104
105
106
107
104
84
68
67
66
65
64
63
62
61
60
59
58
57
56
96
108
105
83
69
55
97
109
106
82
70
54
98
110
107
81
71
53
99
111
108
80
72
52
100
112
109
79
73
51
101
113
110
78
74
50
102
113
111
77
75
49
103
112
111
110
109
108
107
106
105
104
103
102
101
100
101
102
103
104
105
106
107
108
109
110
111
112
76
75
74
73
72
71
70
69
68
67
66
65
64
65
66
67
68
69
70
71
72
73
74
75
76
48
104
99
111
77
63
47
105
98
110
78
62
46
106
97
109
79
61
45
107
96
108
80
60
44
108
95
107
81
59
43
109
94
106
82
58
42
110
93
105
83
57
41
111
92
104
84
56
40
112
91
103
85
55
39
113
90
102
86
54
38
113
89
101
87
53
37
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
100
99
98
97
96
95
94
93
92
91
90
89
88
52
51
50
49
48
47
46
45
44
43
42
41
40
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
121
101
87
53
39
27
122
102
86
54
38
26
123
103
85
55
37
25
124
104
84
56
36
24
125
105
83
57
35
23
126
106
82
58
34
22
127
107
81
59
33
21
128
108
80
60
32
20
129
109
79
61
31
19
130
110
78
62
30
18
131
111
77
63
29
17
132
120
119
118
117
116
115
114
113
112
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
52
53
54
55
56
57
58
59
60
61
62
63
64
28
27
26
25
24
23
22
21
20
16
131
119
65
51
19
15
130
118
66
50
18
14
129
117
67
49
17
13
128
116
68
48
16
12
127
115
69
47
15
11
126
114
70
46
14
10
125
113
71
45
13
9
124
112
72
44
12
8
123
111
73
43
11
7
122
110
74
42
10
6
121
109
75
41
9
5
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
76
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
194
195
196
197
198
199
200
201
202
203
204
204
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
184
185
186
187
188
189
190
191
192
193
194
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
172
173
174
175
176
177
178
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
193
202
182
170
166
154
192
201
181
169
165
153
191
200
180
168
164
152
190
199
179
167
163
151
189
198
178
166
162
150
188
197
177
165
161
149
187
196
176
164
160
148
186
195
175
163
159
147
185
194
174
162
158
146
184
193
173
161
157
145
183
192
172
160
156
144
182
191
171
159
158
157
156
155
154
153
152
151
150
149
148
147
159
155
143
181
190
170
158
146
158
154
142
180
189
169
157
145
157
153
141
179
188
168
156
144
156
152
140
178
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
155
143
155
154
153
152
151
150
149
148
147
146
145
144
143
144
145
146
147
148
149
150
151
139
177
180
166
154
142
154
142
138
176
180
165
153
141
153
141
137
175
179
164
152
140
152
140
136
174
178
163
151
139
151
139
135
173
177
162
150
138
150
138
134
172
176
161
149
137
149
137
133
171
175
160
148
136
148
136
132
170
174
159
147
135
147
135
131
169
173
158
146
134
146
134
130
168
172
157
145
133
145
133
129
167
171
156
144
132
144
132
128
166
165
164
163
162
161
160
159
158
159
160
161
162
163
164
165
166
167
168
169
170
155
154
153
152
151
150
149
148
147
146
145
144
143
131
132
133
134
135
136
137
138
139
140
141
142
143
131
130
129
128
127
126
125
124
123
122
121
120
119
120
121
122
123
124
125
126
127
157
142
130
118
156
141
129
117
155
140
128
116
154
139
127
115
153
138
126
114
152
137
125
113
151
136
124
112
150
135
123
111
149
134
122
110
148
133
121
109
147
132
120
108
146
145
144
143
142
141
140
139
138
137
136
135
134
137
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
95
96
97
98
99
100
101
102
103
104
105
106
107
147
133
136
106
94
108
146
132
135
105
93
109
145
131
134
104
92
110
144
130
133
103
91
111
143
129
132
102
90
112
142
128
131
101
89
113
141
127
130
100
88
114
128
129
130
131
132
133
134
135
136
137
138
139
140
126
129
99
87
115
116
117
118
119
120
121
122
123
124
125
126
127
125
128
98
86
124
127
97
85
123
126
96
84
122
125
95
83
121
124
94
82
120
121
122
123
124
125
126
127
127
126
125
124
123
93
92
91
90
89
88
87
86
85
84
83
82
81
119
122
94
80
118
121
95
79
117
120
96
78
116
119
97
77
115
118
98
76
114
117
99
75
75
76
77
78
79
80
81
82
83
84
85
86
87
113
116
100
74
62
63
64
65
66
67
68
69
70
71
72
73
74
88
112
115
101
73
61
89
111
114
102
72
60
90
110
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
90
91
92
93
94
95
96
97
98
99
100
101
71
59
91
109
102
88
70
58
92
108
103
87
69
57
93
107
104
86
68
56
94
95
96
97
98
99
100
101
102
103
104
105
106
105
85
67
66
65
64
63
62
61
60
59
58
57
56
55
95
107
106
84
68
54
96
108
107
83
69
53
97
109
108
82
70
52
98
110
109
81
71
51
99
111
110
80
72
50
100
112
111
79
73
49
101
113
112
78
74
48
102
113
112
111
110
109
108
107
106
105
104
103
102
101
102
103
104
105
106
107
108
109
110
111
112
113
77
76
75
74
73
72
71
70
69
68
67
66
65
66
67
68
69
70
71
72
73
74
75
76
75
47
103
100
112
78
64
46
104
99
111
79
63
45
105
98
110
80
62
44
106
97
109
81
61
43
107
96
108
82
60
42
108
95
107
83
59
41
109
94
106
84
58
40
110
93
105
85
57
39
111
92
104
86
56
38
112
91
103
87
55
37
113
90
102
88
54
36
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
101
100
99
98
97
96
95
94
93
92
91
90
89
53
52
51
50
49
48
47
46
45
44
43
42
41
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
122
102
88
54
40
26
123
103
87
55
39
25
124
104
86
56
38
24
125
105
85
57
37
23
126
106
84
58
36
22
127
107
83
59
35
21
128
108
82
60
34
20
129
109
81
61
33
19
130
110
80
62
32
18
131
111
79
63
31
17
132
112
78
64
30
16
133
121
120
119
118
117
116
115
114
113
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
53
54
55
56
57
58
59
60
61
62
63
64
65
29
28
27
26
25
24
23
22
21
15
132
120
66
52
20
14
131
119
67
51
19
13
130
118
68
50
18
12
129
117
69
49
17
11
128
116
70
48
16
10
127
115
71
47
15
9
126
114
72
46
14
8
125
113
73
45
13
7
124
112
74
44
12
6
123
111
75
43
11
5
122
110
76
42
10
4
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
77
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
193
194
195
196
197
198
199
200
201
202
203
203
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
183
184
185
186
187
188
189
190
191
192
193
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
171
172
173
174
175
176
177
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
192
201
181
169
165
153
191
200
180
168
164
152
190
199
179
167
163
151
189
198
178
166
162
150
188
197
177
165
161
149
187
196
176
164
160
148
186
195
175
163
159
147
185
194
174
162
158
146
184
193
173
161
157
145
183
192
172
160
156
144
182
191
171
159
155
143
181
190
170
158
157
156
155
154
153
152
151
150
149
148
147
146
158
154
142
180
189
169
157
145
157
153
141
179
188
168
156
144
156
152
140
178
187
167
155
143
155
151
139
177
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
154
142
154
153
152
151
150
149
148
147
146
145
144
143
142
143
144
145
146
147
148
149
150
138
176
179
165
153
141
153
141
137
175
179
164
152
140
152
140
136
174
178
163
151
139
151
139
135
173
177
162
150
138
150
138
134
172
176
161
149
137
149
137
133
171
175
160
148
136
148
136
132
170
174
159
147
135
147
135
131
169
173
158
146
134
146
134
130
168
172
157
145
133
145
133
129
167
171
156
144
132
144
132
128
166
170
155
143
131
143
131
127
165
164
163
162
161
160
159
158
157
158
159
160
161
162
163
164
165
166
167
168
169
154
153
152
151
150
149
148
147
146
145
144
143
142
130
131
132
133
134
135
136
137
138
139
140
141
142
130
129
128
127
126
125
124
123
122
121
120
119
118
119
120
121
122
123
124
125
126
156
141
129
117
155
140
128
116
154
139
127
115
153
138
126
114
152
137
125
113
151
136
124
112
150
135
123
111
149
134
122
110
148
133
121
109
147
132
120
108
146
131
119
107
145
144
143
142
141
140
139
138
137
136
135
134
133
138
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
94
95
96
97
98
99
100
101
102
103
104
105
106
146
132
137
105
93
107
145
131
136
104
92
108
144
130
135
103
91
109
143
129
134
102
90
110
142
128
133
101
89
111
141
127
132
100
88
112
140
126
131
99
87
113
127
128
129
130
131
132
133
134
135
136
137
138
139
125
130
98
86
114
115
116
117
118
119
120
121
122
123
124
125
126
124
129
97
85
123
128
96
84
122
127
95
83
121
126
94
82
120
125
93
81
119
120
121
122
123
124
125
126
127
127
126
125
124
92
91
90
89
88
87
86
85
84
83
82
81
80
118
123
93
79
117
122
94
78
116
121
95
77
115
120
96
76
114
119
97
75
113
118
98
74
74
75
76
77
78
79
80
81
82
83
84
85
86
112
117
99
73
61
62
63
64
65
66
67
68
69
70
71
72
73
87
111
116
100
72
60
88
110
115
101
71
59
89
109
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
91
92
93
94
95
96
97
98
99
100
101
102
70
58
90
108
103
89
69
57
91
107
104
88
68
56
92
106
105
87
67
55
93
94
95
96
97
98
99
100
101
102
103
104
105
106
86
66
65
64
63
62
61
60
59
58
57
56
55
54
94
106
107
85
67
53
95
107
108
84
68
52
96
108
109
83
69
51
97
109
110
82
70
50
98
110
111
81
71
49
99
111
112
80
72
48
100
112
113
79
73
47
101
113
113
112
111
110
109
108
107
106
105
104
103
102
103
104
105
106
107
108
109
110
111
112
113
114
78
77
76
75
74
73
72
71
70
69
68
67
66
67
68
69
70
71
72
73
74
75
76
75
74
46
102
101
113
79
65
45
103
100
112
80
64
44
104
99
111
81
63
43
105
98
110
82
62
42
106
97
109
83
61
41
107
96
108
84
60
40
108
95
107
85
59
39
109
94
106
86
58
38
110
93
105
87
57
37
111
92
104
88
56
36
112
91
103
89
55
35
121
120
119
118
117
116
115
114
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
102
101
100
99
98
97
96
95
94
93
92
91
90
54
53
52
51
50
49
48
47
46
45
44
43
42
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
122
103
89
55
41
25
123
104
88
56
40
24
124
105
87
57
39
23
125
106
86
58
38
22
126
107
85
59
37
21
127
108
84
60
36
20
128
109
83
61
35
19
129
110
82
62
34
18
130
111
81
63
33
17
131
112
80
64
32
16
132
113
79
65
31
15
133
122
121
120
119
118
117
116
115
114
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
54
55
56
57
58
59
60
61
62
63
64
65
66
30
29
28
27
26
25
24
23
22
14
133
121
67
53
21
13
132
120
68
52
20
12
131
119
69
51
19
11
130
118
70
50
18
10
129
117
71
49
17
9
128
116
72
48
16
8
127
115
73
47
15
7
126
114
74
46
14
6
125
113
75
45
13
5
124
112
76
44
12
4
123
111
77
43
11
3
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
78
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
192
193
194
195
196
197
198
199
200
201
202
202
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
182
183
184
185
186
187
188
189
190
191
192
193
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
170
171
172
173
174
175
176
177
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
191
200
180
168
164
152
190
199
179
167
163
151
189
198
178
166
162
150
188
197
177
165
161
149
187
196
176
164
160
148
186
195
175
163
159
147
185
194
174
162
158
146
184
193
173
161
157
145
183
192
172
160
156
144
182
191
171
159
155
143
181
190
170
158
154
142
180
189
169
157
156
155
154
153
152
151
150
149
148
147
146
145
157
153
141
179
188
168
156
144
156
152
140
178
187
167
155
143
155
151
139
177
186
166
154
142
154
150
138
176
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
153
141
153
152
151
150
149
148
147
146
145
144
143
142
141
142
143
144
145
146
147
148
149
137
175
178
164
152
140
152
140
136
174
178
163
151
139
151
139
135
173
177
162
150
138
150
138
134
172
176
161
149
137
149
137
133
171
175
160
148
136
148
136
132
170
174
159
147
135
147
135
131
169
173
158
146
134
146
134
130
168
172
157
145
133
145
133
129
167
171
156
144
132
144
132
128
166
170
155
143
131
143
131
127
165
169
154
142
130
142
130
126
164
163
162
161
160
159
158
157
156
157
158
159
160
161
162
163
164
165
166
167
168
153
152
151
150
149
148
147
146
145
144
143
142
141
129
130
131
132
133
134
135
136
137
138
139
140
141
129
128
127
126
125
124
123
122
121
120
119
118
117
118
119
120
121
122
123
124
125
155
140
128
116
154
139
127
115
153
138
126
114
152
137
125
113
151
136
124
112
150
135
123
111
149
134
122
110
148
133
121
109
147
132
120
108
146
131
119
107
145
130
118
106
144
143
142
141
140
139
138
137
136
135
134
133
132
139
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
93
94
95
96
97
98
99
100
101
102
103
104
105
145
131
138
104
92
106
144
130
137
103
91
107
143
129
136
102
90
108
142
128
135
101
89
109
141
127
134
100
88
110
140
126
133
99
87
111
139
125
132
98
86
112
126
127
128
129
130
131
132
133
134
135
136
137
138
124
131
97
85
113
114
115
116
117
118
119
120
121
122
123
124
125
123
130
96
84
122
129
95
83
121
128
94
82
120
127
93
81
119
126
92
80
118
119
120
121
122
123
124
125
126
127
127
126
125
91
90
89
88
87
86
85
84
83
82
81
80
79
117
124
92
78
116
123
93
77
115
122
94
76
114
121
95
75
113
120
96
74
112
119
97
73
73
74
75
76
77
78
79
80
81
82
83
84
85
111
118
98
72
60
61
62
63
64
65
66
67
68
69
70
71
72
86
110
117
99
71
59
87
109
116
100
70
58
88
108
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
92
93
94
95
96
97
98
99
100
101
102
101
69
57
89
107
104
90
68
56
90
106
105
89
67
55
91
105
106
88
66
54
92
93
94
95
96
97
98
99
100
101
102
103
104
107
87
65
64
63
62
61
60
59
58
57
56
55
54
53
93
105
108
86
66
52
94
106
109
85
67
51
95
107
110
84
68
50
96
108
111
83
69
49
97
109
112
82
70
48
98
110
113
81
71
47
99
111
114
80
72
46
100
112
113
113
112
111
110
109
108
107
106
105
104
103
104
105
106
107
108
109
110
111
112
113
114
115
79
78
77
76
75
74
73
72
71
70
69
68
67
68
69
70
71
72
73
74
75
76
75
74
73
45
101
102
114
80
66
44
102
101
113
81
65
43
103
100
112
82
64
42
104
99
111
83
63
41
105
98
110
84
62
40
106
97
109
85
61
39
107
96
108
86
60
38
108
95
107
87
59
37
109
94
106
88
58
36
110
93
105
89
57
35
111
92
104
90
56
34
120
119
118
117
116
115
114
113
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
103
102
101
100
99
98
97
96
95
94
93
92
91
55
54
53
52
51
50
49
48
47
46
45
44
43
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
121
104
90
56
42
24
122
105
89
57
41
23
123
106
88
58
40
22
124
107
87
59
39
21
125
108
86
60
38
20
126
109
85
61
37
19
127
110
84
62
36
18
128
111
83
63
35
17
129
112
82
64
34
16
130
113
81
65
33
15
131
114
80
66
32
14
132
123
122
121
120
119
118
117
116
115
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
55
56
57
58
59
60
61
62
63
64
65
66
67
31
30
29
28
27
26
25
24
23
13
133
122
68
54
22
12
133
121
69
53
21
11
132
120
70
52
20
10
131
119
71
51
19
9
130
118
72
50
18
8
129
117
73
49
17
7
128
116
74
48
16
6
127
115
75
47
15
5
126
114
76
46
14
4
125
113
77
45
13
3
124
112
78
44
12
2
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
79
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
191
192
193
194
195
196
197
198
199
200
201
201
200
199
198
197
196
195
194
193
192
191
190
189
188
187
186
185
184
183
182
181
180
181
182
183
184
185
186
187
188
189
190
191
192
191
190
189
188
187
186
185
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
169
170
171
172
173
174
175
176
175
174
173
172
171
170
169
168
167
166
165
164
163
162
161
160
159
158
157
156
155
154
153
152
190
199
179
167
163
151
189
198
178
166
162
150
188
197
177
165
161
149
187
196
176
164
160
148
186
195
175
163
159
147
185
194
174
162
158
146
184
193
173
161
157
145
183
192
172
160
156
144
182
191
171
159
155
143
181
190
170
158
154
142
180
189
169
157
153
141
179
188
168
156
155
154
153
152
151
150
149
148
147
146
145
144
156
152
140
178
187
167
155
143
155
151
139
177
186
166
154
142
154
150
138
176
185
165
153
141
153
149
137
175
184
183
182
181
180
179
178
177
176
175
174
173
172
171
170
169
168
167
166
165
164
152
140
152
151
150
149
148
147
146
145
144
143
142
141
140
141
142
143
144
145
146
147
148
136
174
177
163
151
139
151
139
135
173
177
162
150
138
150
138
134
172
176
161
149
137
149
137
133
171
175
160
148
136
148
136
132
170
174
159
147
135
147
135
131
169
173
158
146
134
146
134
130
168
172
157
145
133
145
133
129
167
171
156
144
132
144
132
128
166
170
155
143
131
143
131
127
165
169
154
142
130
142
130
126
164
168
153
141
129
141
129
125
163
162
161
160
159
158
157
156
155
156
157
158
159
160
161
162
163
164
165
166
167
152
151
150
149
148
147
146
145
144
143
142
141
140
128
129
130
131
132
133
134
135
136
137
138
139
140
128
127
126
125
124
123
122
121
120
119
118
117
116
117
118
119
120
121
122
123
124
154
139
127
115
153
138
126
114
152
137
125
113
151
136
124
112
150
135
123
111
149
134
122
110
148
133
121
109
147
132
120
108
146
131
119
107
145
130
118
106
144
129
117
105
143
142
141
140
139
138
137
136
135
134
133
132
131
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
92
93
94
95
96
97
98
99
100
101
102
103
104
144
130
139
103
91
105
143
129
138
102
90
106
142
128
137
101
89
107
141
127
136
100
88
108
140
126
135
99
87
109
139
125
134
98
86
110
138
124
133
97
85
111
125
126
127
128
129
130
131
132
133
134
135
136
137
123
132
96
84
112
113
114
115
116
117
118
119
120
121
122
123
124
122
131
95
83
121
130
94
82
120
129
93
81
119
128
92
80
118
127
91
79
117
118
119
120
121
122
123
124
125
126
127
127
126
90
89
88
87
86
85
84
83
82
81
80
79
78
116
125
91
77
115
124
92
76
114
123
93
75
113
122
94
74
112
121
95
73
111
120
96
72
72
73
74
75
76
77
78
79
80
81
82
83
84
110
119
97
71
59
60
61
62
63
64
65
66
67
68
69
70
71
85
109
118
98
70
58
86
108
117
99
69
57
87
107
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
93
94
95
96
97
98
99
100
101
102
101
100
68
56
88
106
105
91
67
55
89
105
106
90
66
54
90
104
107
89
65
53
91
92
93
94
95
96
97
98
99
100
101
102
103
108
88
64
63
62
61
60
59
58
57
56
55
54
53
52
92
104
109
87
65
51
93
105
110
86
66
50
94
106
111
85
67
49
95
107
112
84
68
48
96
108
113
83
69
47
97
109
114
82
70
46
98
110
115
81
71
45
99
111
112
113
113
112
111
110
109
108
107
106
105
104
105
106
107
108
109
110
111
112
113
114
115
116
80
79
78
77
76
75
74
73
72
71
70
69
68
69
70
71
72
73
74
75
76
75
74
73
72
44
100
103
115
81
67
43
101
102
114
82
66
42
102
101
113
83
65
41
103
100
112
84
64
40
104
99
111
85
63
39
105
98
110
86
62
38
106
97
109
87
61
37
107
96
108
88
60
36
108
95
107
89
59
35
109
94
106
90
58
34
110
93
105
91
57
33
119
118
117
116
115
114
113
112
111
112
113
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
104
103
102
101
100
99
98
97
96
95
94
93
92
56
55
54
53
52
51
50
49
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
120
105
91
57
43
23
121
106
90
58
42
22
122
107
89
59
41
21
123
108
88
60
40
20
124
109
87
61
39
19
125
110
86
62
38
18
126
111
85
63
37
17
127
112
84
64
36
16
128
113
83
65
35
15
129
114
82
66
34
14
130
115
81
67
33
13
131
124
123
122
121
120
119
118
117
116
80
79
78
77
76
75
74
73
72
71
70
69
68
67
66
65
64
63
62
61
60
59
58
57
56
57
58
59
60
61
62
63
64
65
66
67
68
32
31
30
29
28
27
26
25
24
12
132
123
69
55
23
11
133
122
70
54
22
10
133
121
71
53
21
9
132
120
72
52
20
8
131
119
73
51
19
7
130
118
74
50
18
6
129
117
75
49
17
5
128
116
76
48
16
4
127
115
77
47
15
3
126
114
78
46
14
2
125
113
79
45
13
1
124
123
122
121
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
80
44
43
42
41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
-1
0




© 2015 - 2025 Weber Informatics LLC | Privacy Policy