CAPE 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 3 3 3 3 3 3 4 4 4 5 5 7 8 11 16 19 20 20 19 19 21 23 26 30 36 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 2 2 2 2 3 3 4 4 4 4 5 6 7 9 12 15 18 19 18 18 20 21 23 26 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 2 2 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 2 2 2 2 2 2 3 4 4 4 5 6 7 8 9 12 14 16 18 18 20 21 22 24 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 0 0 0 0 2 5 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 2 1 1 1 2 2 2 3 4 4 5 6 7 8 9 11 14 16 18 20 21 22 23 24 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4 0 0 0 0 0 2 5 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 2 3 4 5 6 7 7 8 9 11 13 15 18 20 21 22 22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 2 3 4 5 6 7 7 8 8 10 12 15 17 19 20 21 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 2 3 4 5 6 6 7 7 8 9 11 14 16 18 19 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 1 0 0 0 0 2 0 0 0 0 0 0 0 0 0 1 4 3 1 0 0 0 0 0 0 3 5 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 2 3 4 5 6 6 6 6 7 8 10 12 15 17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 4 0 0 0 0 0 0 0 0 0 0 0 0 1 3 3 1 0 0 0 2 4 1 0 0 0 0 0 0 0 0 1 3 1 0 0 0 0 0 0 4 7 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 4 5 5 6 6 6 6 8 10 12 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 4 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 2 5 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 3 4 5 5 5 5 5 6 8 10 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 5 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 3 4 4 5 5 5 5 5 6 8 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 4 1 0 0 0 0 0 0 0 0 0 0 0 4 7 8 6 5 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 3 4 4 4 4 5 5 6 7 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 2 0 0 0 0 0 0 0 0 0 0 0 1 5 8 7 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 3 4 4 4 4 5 5 6 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 1 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 3 3 4 4 4 4 5 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 2 3 3 4 4 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 2 3 3 3 3 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 2 2 2 2 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 6 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 3 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 2 5 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 4 4 2 0 0 0 0 0 0 1 5 6 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 6 4 0 0 0 0 0 1 4 8 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 6 4 0 0 0 0 0 2 7 8 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 4 2 0 0 0 0 2 5 8 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 2 4 7 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 5 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 7 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 8 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 5 6 7 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 8 6 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 6 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 2 2 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 3 2 1 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 3 3 3 3 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 3 3 4 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 4 4 4 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 4 4 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 4 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 4 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 4 1 0 0 1 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 5 5 5 5 4 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 5 6 6 6 5 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 4 3 0 0 0 0 0 0 0 0 0 0 0 0 2 4 6 7 6 5 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 7 6 5 1 0 0 0 0 0 0 0 0 0 0 0 0 2 6 7 6 6 5 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 6 3 0 0 0 4 6 7 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 7 7 6 5 5 5 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 6 4 0 0 3 4 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 7 8 7 6 6 6 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 6 7 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 8 8 8 7 6 6 5 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 6 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 8 9 8 7 7 6 5 4 3 1 2 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 5 5 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 8 10 10 8 7 7 6 5 4 3 3 3 3 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 6 5 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 8 10 11 9 8 7 6 5 4 4 4 3 3 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 7 6 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 10 12 11 9 8 7 6 5 4 4 4 4 3 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 7 6 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 10 12 12 10 8 7 6 5 5 4 4 4 3 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 7 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 12 13 11 9 7 7 6 5 4 4 4 4 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 7 7 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 13 16 13 9 8 7 6 5 5 4 4 4 4 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 7 7 3 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 15 22 18 12 8 6 6 5 5 5 5 5 5 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 7 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 2 12 21 24 19 10 6 6 5 5 6 6 6 6 5 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 5 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 17 23 24 19 10 6 6 6 6 7 7 7 6 5 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 7 1 0 0 0 0 0 0 0 0 0 0 0 0 1 4 8 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 10 18 22 24 19 11 7 6 7 8 8 9 9 6 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 1 0 0 0 0 0 0 0 0 0 0 0 0 4 9 9 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 11 15 19 22 19 13 7 8 10 11 13 14 11 10 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 7 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 9 11 10 9 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 9 12 17 21 21 17 16 16 18 18 18 17 16 11 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 8 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 9 12 12 11 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 5 6 10 15 20 22 22 21 21 22 22 21 19 16 10 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 12 12 12 10 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 4 8 13 17 22 25 26 26 25 24 22 19 13 6 4 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 10 12 13 12 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 9 15 22 27 30 30 27 25 21 16 12 6 4 5 4 3 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 7 10 12 13 12 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 4 8 14 20 27 33 31 28 23 19 15 9 6 6 6 6 5 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 5 8 10 12 12 10 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 7 11 18 29 33 32 28 23 20 17 12 8 8 7 6 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 8 7 6 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 9 6 1 0 3 5 7 9 11 11 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 6 11 21 30 34 32 28 26 24 22 20 18 10 7 6 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 8 9 7 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 6 10 6 0 0 2 5 6 8 9 9 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 8 14 22 29 32 31 31 30 29 27 24 20 13 7 6 6 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 8 10 8 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 10 8 1 0 2 4 4 4 6 7 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 9 14 20 24 26 30 33 33 31 28 25 21 15 7 6 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 8 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 10 6 2 1 3 2 0 2 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 10 13 14 17 24 30 33 32 28 25 23 21 17 10 7 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 10 9 4 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 8 11 11 12 16 24 32 33 27 23 21 21 21 19 13 8 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 7 10 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 9 10 10 12 18 28 34 29 22 18 17 19 20 20 16 9 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 9 10 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 7 8 9 11 15 23 32 31 25 18 14 14 16 19 18 12 10 7 5 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 10 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 6 8 9 10 12 19 26 28 26 20 15 12 12 14 16 15 13 10 8 6 4 1 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 10 9 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 6 8 9 11 17 19 20 21 22 17 14 12 10 8 11 11 11 11 8 6 4 2 0 1 5 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 11 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 7 9 10 15 15 13 12 17 16 14 12 10 3 3 6 10 12 12 8 6 4 4 5 6 6 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 11 9 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 8 10 14 13 8 3 3 5 6 8 12 10 2 3 7 10 13 11 8 6 5 6 8 7 6 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 9 10 7 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 8 12 12 7 0 0 1 1 1 1 0 0 2 5 7 10 12 11 8 7 7 8 8 7 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 9 10 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 12 12 7 0 0 0 0 0 0 0 0 2 4 4 7 10 11 11 9 9 9 9 8 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 10 9 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 11 12 7 1 0 0 0 0 0 0 0 0 1 4 4 6 9 11 12 11 11 10 8 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 10 9 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 10 12 7 1 0 0 0 0 0 0 0 0 0 4 4 4 5 8 12 13 14 12 9 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 10 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 9 12 8 2 0 0 0 0 0 0 0 0 0 1 1 1 1 5 9 14 16 15 10 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 8 7 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 9 13 9 3 0 0 0 0 0 0 0 0 0 0 0 0 0 1 6 11 16 17 11 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 6 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 13 10 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 9 14 18 13 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 13 11 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 12 16 13 8 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 3 0 0 0 0 0 0 0 0 0 3 12 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 12 11 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 10 14 13 9 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 10 9 4 1 0 0 0 0 0 0 0 2 14 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 11 11 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 9 12 12 10 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 10 12 11 5 2 0 0 0 0 0 0 2 12 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 9 11 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 8 14 13 9 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 9 12 13 12 7 2 0 0 0 0 0 1 11 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 10 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 8 16 15 8 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 11 15 14 11 7 0 0 0 0 0 0 9 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 10 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 7 16 15 7 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 9 15 17 15 10 1 0 0 0 0 0 8 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 9 10 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 16 16 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 13 18 19 14 8 3 0 0 0 0 7 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 10 8 3 0 0 0 0 0 0 0 0 0 0 0 0 0 3 7 15 17 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 12 17 22 19 12 4 0 0 0 0 6 9 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 7 10 9 3 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 13 19 7 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 7 10 16 22 22 15 6 0 0 0 0 6 10 7 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 9 9 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 12 19 8 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 8 10 14 19 23 18 10 4 0 0 0 5 10 8 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 8 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 13 8 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 8 10 12 15 22 20 15 8 0 0 0 4 9 8 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 8 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 7 6 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 9 10 11 13 19 21 18 10 1 0 0 1 3 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 8 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 9 11 10 10 15 20 20 12 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 8 6 0 0 0 0 0 0 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 9 11 10 8 12 18 22 15 8 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 7 6 0 0 0 0 0 0 0 0 2 4 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 9 12 11 8 9 14 20 17 10 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 2 0 0 0 0 0 0 0 0 2 5 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 8 12 12 8 8 11 17 18 12 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 6 6 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 12 12 9 7 9 15 18 14 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 6 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 10 12 10 8 7 12 17 14 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 7 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 8 11 11 8 5 9 14 14 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 12 13 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 9 10 8 4 6 11 12 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 12 18 14 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 7 8 7 3 4 8 10 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 9 19 18 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 7 6 2 3 6 8 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 13 19 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 5 1 2 4 7 5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 18 7 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 3 1 0 3 6 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 16 9 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 0 0 2 5 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 13 9 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 10 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 14 11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 13 11 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 4 0 0 0 0 0 0 0 0 0 5 11 12 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 3 9 12 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 5 10 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 9 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 7 10 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 7 9 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 6 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 6 7 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 6 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 6 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Wind_Speed nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 23 23 23 23 23 23 23 23 22 22 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 23 23 23 23 23 23 23 23 22 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 23 24 24 23 23 23 23 22 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 24 24 24 23 23 23 22 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 24 24 23 23 23 23 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 23 23 23 23 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 23 23 23 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 23 23 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 27 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 26 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 25 26 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 23 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 25 26 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 24 24 26 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 22 27 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 21 25 27 26 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 21 26 26 26 25 nan nan nan 23 23 22 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 24 25 26 25 24 24 23 23 22 22 22 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 22 24 26 24 24 23 22 22 21 22 23 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 22 24 24 23 22 22 21 22 23 24 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 21 24 23 22 21 22 23 25 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 16 17 24 23 22 23 24 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 14 21 23 23 24 25 25 25 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 30 30 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 10 18 24 25 25 25 25 25 25 25 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 8 16 25 26 26 25 25 25 25 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 9 18 21 23 25 26 26 26 26 26 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 11 12 16 18 21 25 26 26 26 27 27 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 12 12 13 15 20 25 26 26 26 26 27 27 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 11 11 11 22 25 25 25 24 24 25 25 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 8 6 16 22 25 24 23 22 22 20 19 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 5 6 14 24 24 24 22 20 18 17 15 23 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 5 5 11 22 24 24 23 20 18 nan 15 16 21 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 5 6 10 19 22 23 23 21 19 nan nan nan nan 21 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 6 nan nan nan nan nan nan 20 17 nan nan nan 16 23 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 29 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 7 nan nan nan nan nan nan nan nan nan nan nan nan 18 22 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 26 27 27 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 24 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 28 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 16 24 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 14 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 8 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 16 nan nan nan nan nan nan nan nan nan 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 16 17 nan nan nan nan nan nan nan nan 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 15 16 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 15 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 15 15 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 14 15 16 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 14 14 15 16 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 11 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 15 14 15 16 17 nan nan nan nan nan 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 16 15 15 16 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 16 16 16 16 16 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 16 nan nan 17 17 17 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 16 17 nan 17 17 18 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 nan nan 18 18 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 nan nan 18 18 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 17 nan nan nan 19 19 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 17 18 nan nan 19 20 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 18 nan nan nan 20 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 15 17 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 18 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 20 23 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan Wind_Direction nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 56 55 55 55 55 55 56 56 57 59 61 62 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 55 54 53 53 53 54 55 57 58 60 62 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 54 53 52 52 52 53 55 57 59 61 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 53 51 51 51 53 54 56 58 59 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 52 50 51 52 53 55 56 58 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 51 52 53 54 55 56 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 52 52 53 54 54 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 52 52 52 53 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 51 51 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 50 50 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 49 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 8 35 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 360 28 48 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 45 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 3 39 48 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 348 30 44 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 336 17 37 48 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 331 356 24 43 48 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 338 7 33 46 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 330 347 9 38 45 48 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 334 347 10 32 44 49 nan nan nan 57 59 61 64 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 22 19 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 346 6 26 43 50 53 55 57 60 63 66 66 61 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 21 20 15 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 342 358 17 42 50 54 58 61 65 67 66 61 52 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 19 19 16 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 348 5 36 49 57 61 66 67 65 59 51 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 17 16 14 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 357 28 48 60 65 66 64 57 48 42 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 14 15 14 12 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 348 20 51 60 63 60 54 46 42 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 12 13 12 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 333 16 52 58 55 50 44 43 44 46 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 315 16 48 51 44 40 41 43 46 47 48 46 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 305 358 35 31 30 33 38 42 45 47 45 41 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 301 321 6 6 16 25 31 34 38 40 39 36 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 13 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 305 301 304 324 346 4 15 19 21 24 27 30 32 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 6 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 304 305 305 310 328 354 6 6 6 7 11 20 29 35 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 304 300 298 306 354 357 355 353 353 357 6 21 35 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 297 288 266 339 350 353 349 345 341 343 350 6 33 33 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 285 261 271 337 350 350 346 339 332 326 329 355 22 25 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 284 264 263 323 341 348 347 342 334 325 nan 314 346 11 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 10 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 282 267 269 309 330 341 345 343 337 329 nan nan nan nan 4 21 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 267 277 nan nan nan nan nan nan 331 323 nan nan nan 330 5 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 265 280 nan nan nan nan nan nan nan nan nan nan nan nan 334 5 17 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 268 283 nan nan nan nan nan nan nan nan nan nan nan nan nan nan 5 20 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 273 284 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 22 27 30 31 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 2 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 278 286 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 24 30 27 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 2 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 285 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 7 26 26 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 282 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 308 348 27 7 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 283 313 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 337 22 9 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 289 319 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 293 317 3 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 308 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 297 323 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 282 283 356 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 306 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 303 325 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 284 344 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 318 322 nan nan nan nan nan nan nan nan nan 308 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 327 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 290 330 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 317 319 323 nan nan nan nan nan nan nan nan 312 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 326 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 294 320 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 316 317 320 324 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 296 313 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 316 318 321 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 339 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 298 309 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 316 315 318 322 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 338 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 298 307 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 316 314 315 319 324 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 336 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 299 305 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 317 314 313 316 321 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 300 303 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 318 316 314 315 319 324 nan nan nan nan nan 327 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 302 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 318 316 315 318 323 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 319 320 319 317 318 322 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 320 nan nan 320 321 323 327 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 321 321 nan 323 323 324 328 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 322 322 nan nan 324 326 329 331 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 322 322 nan nan 325 326 329 331 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 323 322 nan nan nan 326 329 332 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 324 323 324 nan nan 328 330 333 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 323 324 nan nan nan 332 334 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 311 322 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 333 335 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 310 319 332 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 317 329 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 316 326 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 324 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 323 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 321 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 320 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 328 338 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 326 337 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 325 336 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 335 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 336 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan Helicity 0 0 1 3 5 6 8 8 8 6 5 3 0 -3 -6 -8 -8 -7 -7 -6 -6 -6 -5 -4 -3 0 5 10 10 4 -1 -3 -3 -1 1 -0 -2 -1 0 2 2 1 -1 -3 -5 -6 -7 -8 -9 -8 -8 -7 -6 -6 -6 -6 -6 -5 -3 -1 1 1 0 -1 -2 -4 -5 -6 -7 -9 -13 -16 -16 -14 -12 -11 -13 -15 -17 -17 -18 -21 -27 -34 -37 -38 -37 -36 -34 -29 -27 -29 -34 -36 -34 -28 -22 -21 -25 -31 -29 -21 -15 -14 -19 -25 -24 -19 -17 -18 -20 -20 -17 -15 -15 -17 -20 -22 -21 -18 -15 -14 -13 -12 -12 -13 -15 -15 -15 -14 -13 -13 -13 -13 -12 -10 -9 -9 -8 -9 -10 -12 -11 -8 -5 -6 -10 -15 -15 -11 -7 -4 -4 -6 -8 -10 -10 -10 -10 -10 -9 -7 -6 -8 -11 -14 -13 -8 -2 2 2 -4 -10 -14 -12 -8 -4 -5 -10 -14 -14 -10 -5 1 2 -2 -8 -12 -11 -5 0 0 -3 -9 -13 -14 -12 -9 -3 3 7 7 2 -4 -9 -10 -9 -7 -4 -2 0 1 2 2 4 5 3 -0 -6 -9 -9 -7 -5 -5 -6 -7 -6 -4 -2 -1 -1 -3 -4 -4 -3 -3 -3 -3 -3 -2 -1 -2 -3 -5 -6 -6 -6 -6 -6 -5 -5 -6 -6 -6 -6 -6 -6 -5 -5 -6 -6 -5 -5 -5 -4 -5 -5 -4 -3 -3 -3 -3 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -1 -1 -0 0 1 2 2 2 2 1 1 1 2 3 3 3 3 4 4 5 6 7 7 7 7 8 8 8 7 7 6 7 7 7 7 7 8 8 9 9 9 10 10 10 10 10 10 10 9 8 7 6 5 5 5 5 5 4 4 3 3 2 2 1 0 -1 -2 -4 -5 -6 -6 -7 -6 -6 -5 -5 -5 -6 -6 -6 -6 -7 -7 -8 -9 -9 -10 -10 -11 -11 -12 -13 -14 -15 -15 -16 -16 -16 -16 -16 -15 -14 -14 -14 -14 -15 -15 -15 -14 -14 -14 -14 -13 -13 -13 -13 -13 -12 -12 -11 -10 -10 -9 -9 -9 -10 -10 -11 -11 -12 7 12 15 16 16 16 15 14 12 11 10 10 7 3 -2 -5 -4 -3 -3 -4 -5 -4 -3 -2 -1 2 5 8 6 1 -4 -6 -6 -2 1 0 -2 -4 -5 -3 -1 -1 -2 -3 -3 -4 -6 -7 -8 -8 -8 -8 -8 -8 -8 -8 -7 -5 -4 -2 -2 -3 -3 -4 -3 -1 -0 -1 -3 -8 -14 -17 -17 -15 -14 -14 -16 -18 -18 -19 -21 -25 -31 -36 -39 -39 -38 -37 -35 -32 -32 -34 -36 -35 -31 -28 -27 -30 -33 -31 -22 -16 -16 -22 -27 -26 -21 -18 -19 -21 -21 -19 -18 -18 -19 -21 -23 -23 -19 -16 -15 -14 -14 -13 -13 -14 -16 -16 -16 -15 -14 -14 -13 -12 -11 -10 -9 -9 -9 -11 -12 -11 -8 -4 -4 -7 -13 -16 -13 -9 -5 -3 -4 -6 -9 -10 -10 -9 -8 -8 -7 -8 -8 -10 -11 -10 -7 -3 -1 -2 -6 -12 -15 -12 -7 -4 -4 -10 -13 -13 -9 -5 -0 1 -3 -9 -12 -11 -5 1 2 -3 -10 -14 -14 -11 -6 -1 4 6 4 -1 -7 -10 -11 -8 -4 -0 2 4 3 2 1 1 2 1 -2 -7 -11 -10 -7 -5 -4 -5 -6 -6 -4 -1 1 0 -2 -4 -4 -4 -3 -3 -3 -4 -3 -3 -3 -4 -5 -6 -6 -6 -6 -5 -5 -5 -5 -6 -6 -6 -5 -5 -5 -5 -6 -6 -6 -6 -5 -5 -5 -5 -5 -4 -4 -3 -4 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -2 -1 -1 -0 0 1 2 2 2 2 1 1 1 2 2 2 2 2 2 3 4 5 5 6 6 6 7 7 7 6 6 6 6 6 7 7 8 8 9 10 10 10 10 10 10 10 10 10 9 8 7 6 6 6 6 6 6 6 5 5 4 4 3 3 2 2 0 -1 -2 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -7 -8 -8 -9 -9 -9 -10 -11 -12 -13 -14 -15 -16 -16 -16 -16 -16 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -13 -13 -12 -12 -11 -10 -9 -8 -9 -9 -10 -11 -11 -12 16 18 20 21 20 18 15 14 12 12 12 12 10 7 3 -0 -1 -0 -0 -2 -3 -2 1 1 2 4 6 6 3 -3 -9 -11 -10 -5 -1 -1 -3 -5 -7 -6 -5 -4 -3 -4 -4 -4 -5 -5 -6 -7 -8 -8 -9 -10 -10 -9 -8 -6 -4 -3 -3 -4 -5 -5 -3 0 3 4 1 -5 -12 -16 -17 -17 -18 -19 -19 -18 -18 -20 -24 -29 -35 -38 -40 -39 -38 -37 -36 -37 -36 -35 -33 -31 -31 -34 -36 -35 -31 -22 -16 -18 -24 -29 -28 -23 -20 -21 -22 -22 -22 -22 -22 -21 -22 -23 -24 -22 -18 -16 -15 -16 -15 -14 -14 -15 -16 -17 -16 -15 -14 -13 -13 -12 -11 -9 -8 -9 -11 -13 -12 -9 -4 -2 -5 -10 -15 -15 -12 -8 -4 -2 -3 -6 -9 -10 -10 -9 -8 -7 -8 -8 -9 -9 -8 -6 -4 -3 -5 -8 -12 -14 -12 -7 -4 -4 -8 -12 -11 -8 -4 -1 0 -4 -10 -13 -11 -5 1 3 -2 -10 -15 -14 -10 -4 2 5 5 1 -4 -9 -11 -10 -6 -1 3 5 5 3 1 -1 -2 -1 -1 -3 -7 -11 -12 -9 -5 -3 -3 -5 -6 -4 -1 1 1 -1 -5 -6 -5 -4 -3 -4 -5 -5 -4 -4 -5 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -5 -4 -4 -4 -5 -5 -4 -3 -2 -2 -2 -2 -1 -1 -2 -1 -1 -0 0 1 2 2 2 2 2 1 1 2 2 2 1 1 1 2 3 4 4 4 5 5 5 6 6 6 5 5 5 5 5 6 7 8 9 10 10 10 10 10 10 10 10 10 10 9 7 6 6 6 7 7 6 6 6 6 6 6 5 5 4 3 3 2 0 -1 -2 -3 -4 -4 -4 -4 -4 -4 -5 -5 -5 -5 -5 -5 -5 -6 -6 -7 -8 -8 -9 -9 -9 -10 -12 -13 -14 -15 -16 -16 -16 -16 -16 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -13 -12 -11 -10 -9 -8 -8 -9 -10 -10 -11 -11 17 19 20 20 19 16 12 11 11 11 11 11 9 6 3 1 0 0 -0 -1 -1 0 2 3 3 5 6 6 2 -6 -12 -15 -14 -11 -7 -5 -6 -7 -7 -7 -6 -5 -5 -5 -5 -5 -5 -4 -5 -6 -7 -8 -9 -11 -12 -11 -9 -7 -5 -4 -4 -5 -6 -5 -2 1 4 4 2 -3 -8 -11 -13 -17 -21 -23 -22 -19 -18 -20 -24 -29 -34 -37 -39 -39 -38 -37 -39 -40 -36 -30 -28 -32 -38 -42 -39 -30 -21 -16 -19 -26 -31 -30 -25 -22 -23 -23 -24 -24 -25 -26 -24 -22 -23 -24 -24 -21 -17 -16 -17 -17 -16 -15 -15 -16 -17 -17 -16 -14 -13 -13 -13 -12 -9 -8 -9 -12 -14 -14 -10 -5 -2 -3 -7 -12 -15 -14 -11 -7 -3 -2 -3 -6 -8 -9 -10 -9 -9 -8 -8 -8 -8 -8 -6 -4 -4 -6 -9 -11 -12 -11 -8 -6 -6 -8 -10 -9 -6 -4 -2 -3 -6 -11 -14 -12 -6 0 3 -1 -10 -15 -15 -10 -2 5 8 5 -1 -7 -12 -11 -8 -4 1 5 7 4 1 -2 -5 -5 -3 -1 -2 -6 -10 -12 -10 -5 -2 -1 -3 -5 -5 -2 0 1 -1 -5 -7 -7 -5 -4 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -5 -5 -5 -6 -6 -6 -6 -7 -6 -6 -5 -4 -5 -5 -6 -5 -3 -3 -2 -2 -2 -2 -1 -1 -1 -1 -1 0 1 1 2 2 3 2 2 2 2 2 2 2 1 1 2 2 3 3 4 4 4 5 5 5 5 5 5 5 4 4 4 5 6 7 8 9 9 9 10 10 10 10 10 10 9 8 6 6 6 7 7 7 7 6 6 6 7 7 6 6 5 5 4 3 1 -0 -1 -2 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -6 -7 -8 -8 -8 -9 -9 -10 -12 -13 -14 -15 -16 -16 -16 -16 -16 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -13 -11 -10 -9 -8 -8 -9 -9 -10 -11 -11 15 16 16 16 15 12 8 7 8 9 10 9 7 5 3 1 1 1 -0 -0 0 1 2 2 3 5 6 6 3 -4 -11 -16 -16 -15 -12 -11 -11 -10 -9 -8 -7 -6 -5 -5 -5 -5 -4 -4 -4 -4 -5 -6 -8 -10 -11 -11 -9 -8 -6 -6 -5 -5 -5 -4 -1 1 2 1 -0 -2 -3 -3 -6 -10 -15 -20 -20 -17 -18 -20 -23 -27 -31 -35 -37 -38 -38 -38 -39 -35 -30 -27 -30 -38 -43 -38 -29 -22 -18 -21 -27 -31 -30 -27 -25 -25 -25 -25 -26 -27 -28 -26 -23 -23 -25 -26 -25 -20 -18 -18 -19 -18 -16 -15 -15 -16 -17 -17 -15 -13 -14 -14 -14 -11 -8 -8 -11 -15 -15 -12 -7 -2 -2 -5 -10 -13 -15 -14 -10 -6 -3 -1 -3 -5 -7 -9 -10 -11 -10 -8 -7 -7 -7 -7 -5 -5 -7 -9 -10 -10 -9 -8 -7 -8 -8 -8 -7 -5 -4 -5 -7 -8 -10 -12 -10 -6 -2 1 -1 -8 -13 -14 -9 -2 6 9 6 -2 -10 -14 -13 -8 -2 4 7 7 3 -3 -7 -8 -8 -5 -2 -0 -3 -8 -11 -11 -7 -3 -0 -1 -4 -6 -5 -2 -1 -2 -6 -9 -9 -7 -6 -5 -6 -7 -7 -7 -7 -7 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -5 -5 -5 -5 -5 -5 -6 -7 -6 -6 -5 -4 -5 -5 -6 -6 -4 -3 -3 -3 -3 -2 -2 -1 -1 -1 -1 -0 1 1 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 4 4 5 5 5 5 5 5 4 4 4 4 4 5 7 7 8 8 8 8 9 10 9 9 8 8 7 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 6 5 4 3 1 -0 -2 -2 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -5 -5 -6 -7 -7 -8 -8 -9 -10 -11 -12 -13 -14 -15 -16 -16 -16 -16 -15 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -13 -12 -11 -10 -9 -8 -9 -9 -10 -10 -11 12 12 12 12 11 9 6 6 7 8 8 6 4 3 2 2 2 1 0 0 1 1 0 0 1 3 5 6 5 0 -6 -11 -14 -15 -14 -15 -15 -15 -13 -11 -9 -8 -8 -7 -7 -6 -5 -4 -3 -3 -3 -4 -5 -8 -9 -10 -9 -8 -7 -7 -6 -6 -5 -4 -2 -2 -3 -3 -3 -2 -1 -0 -2 -5 -9 -12 -12 -12 -14 -18 -22 -25 -29 -33 -36 -38 -39 -40 -39 -32 -28 -30 -36 -43 -42 -31 -23 -20 -23 -28 -31 -31 -29 -27 -26 -26 -26 -27 -29 -29 -28 -24 -23 -25 -28 -28 -25 -22 -21 -21 -21 -19 -16 -14 -16 -17 -18 -16 -14 -14 -15 -15 -13 -10 -8 -10 -15 -16 -13 -9 -4 -2 -4 -7 -11 -14 -15 -13 -10 -6 -2 -1 -2 -4 -7 -10 -12 -12 -10 -7 -6 -6 -7 -7 -7 -7 -8 -9 -8 -6 -5 -7 -10 -10 -9 -6 -4 -3 -6 -9 -11 -11 -10 -7 -4 -2 -2 -3 -6 -9 -9 -6 -0 5 8 4 -3 -11 -15 -14 -9 -1 6 10 8 2 -6 -11 -12 -11 -8 -3 1 0 -5 -10 -12 -9 -5 -1 -0 -3 -6 -7 -5 -3 -4 -6 -8 -9 -8 -7 -6 -7 -7 -7 -7 -6 -7 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -5 -5 -6 -6 -6 -5 -4 -4 -5 -6 -6 -5 -3 -3 -3 -4 -4 -3 -2 -2 -2 -1 -1 -0 0 1 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 4 5 6 6 5 5 5 5 4 4 4 4 5 6 6 6 6 6 7 7 8 8 7 7 6 6 6 6 6 6 6 7 8 8 7 7 7 7 7 7 7 7 7 6 4 3 1 -1 -2 -2 -2 -2 -2 -2 -3 -3 -3 -4 -4 -4 -4 -4 -4 -5 -5 -6 -7 -7 -8 -8 -9 -9 -10 -11 -12 -14 -15 -16 -16 -16 -16 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -13 -12 -11 -10 -9 -9 -9 -10 -10 -10 10 9 9 9 9 9 9 9 9 9 8 5 3 2 1 2 2 2 -0 -0 0 -0 -2 -3 -3 -2 0 3 5 4 1 -3 -7 -9 -10 -12 -14 -16 -16 -16 -14 -13 -12 -12 -11 -9 -7 -6 -4 -4 -3 -3 -4 -6 -7 -8 -8 -7 -7 -7 -6 -5 -4 -3 -4 -4 -5 -6 -5 -3 -1 -1 -3 -5 -6 -7 -7 -8 -12 -16 -20 -23 -27 -31 -34 -37 -40 -40 -37 -31 -31 -35 -41 -44 -37 -27 -23 -25 -29 -32 -31 -30 -28 -27 -26 -26 -27 -29 -31 -29 -26 -23 -25 -28 -30 -30 -27 -24 -24 -24 -22 -19 -16 -15 -18 -19 -18 -16 -14 -16 -17 -16 -13 -10 -10 -14 -15 -14 -11 -7 -4 -4 -6 -9 -12 -14 -15 -13 -9 -5 -2 -1 -1 -4 -8 -12 -13 -12 -7 -4 -4 -6 -8 -8 -8 -8 -8 -7 -5 -3 -5 -9 -12 -11 -8 -4 -3 -5 -9 -12 -13 -11 -7 -2 -0 -2 -6 -8 -8 -5 -1 3 4 3 0 -5 -10 -13 -14 -10 -3 6 11 10 2 -8 -14 -15 -13 -9 -4 1 3 -1 -7 -11 -10 -7 -2 -0 -2 -5 -7 -7 -5 -5 -5 -7 -8 -8 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -5 -5 -6 -5 -5 -4 -3 -5 -6 -6 -6 -4 -3 -3 -4 -4 -4 -3 -2 -2 -2 -2 -1 -1 -0 1 1 2 2 2 2 2 2 2 1 1 2 2 3 3 3 2 2 2 3 4 4 5 5 6 6 6 5 5 4 4 4 4 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 7 7 8 7 7 7 6 6 7 7 7 7 7 6 4 2 1 -1 -1 -2 -2 -1 -1 -2 -2 -3 -3 -4 -4 -4 -4 -4 -4 -4 -5 -6 -6 -7 -8 -8 -9 -9 -9 -10 -12 -14 -15 -16 -16 -16 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -13 -13 -12 -11 -11 -10 -10 -10 -10 -10 8 8 8 9 10 11 13 13 13 12 11 10 8 6 6 5 5 3 1 1 1 0 -1 -3 -7 -8 -6 -3 0 2 2 0 -2 -4 -5 -7 -10 -13 -16 -17 -17 -16 -16 -15 -14 -12 -10 -8 -6 -5 -4 -4 -5 -5 -6 -6 -6 -6 -6 -5 -5 -4 -3 -2 -3 -4 -4 -4 -4 -3 -3 -5 -7 -7 -7 -6 -7 -9 -13 -16 -19 -22 -27 -30 -32 -35 -38 -38 -35 -33 -35 -39 -41 -40 -33 -27 -27 -30 -32 -32 -30 -29 -28 -27 -26 -26 -30 -32 -31 -28 -26 -25 -28 -31 -32 -31 -29 -27 -27 -25 -21 -18 -16 -17 -20 -20 -18 -16 -16 -18 -18 -16 -14 -12 -13 -14 -14 -12 -9 -6 -5 -5 -7 -10 -13 -15 -14 -11 -8 -5 -2 -0 -0 -4 -9 -13 -14 -10 -4 -2 -5 -8 -10 -9 -7 -8 -7 -5 -3 -3 -7 -11 -12 -9 -6 -4 -5 -8 -11 -12 -11 -8 -3 0 -1 -6 -10 -11 -6 1 5 5 1 -4 -8 -10 -11 -11 -9 -5 3 10 10 4 -6 -15 -17 -14 -10 -5 0 4 2 -4 -9 -10 -8 -4 -1 -1 -4 -7 -8 -6 -5 -5 -6 -7 -8 -7 -6 -6 -7 -7 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -5 -5 -5 -4 -4 -3 -4 -5 -6 -6 -4 -3 -3 -4 -5 -5 -4 -3 -3 -2 -2 -2 -2 -1 -1 -0 0 1 1 2 2 2 2 1 1 1 2 2 3 3 3 2 2 2 3 3 4 4 5 5 6 6 6 6 5 4 4 3 4 4 5 5 5 5 4 4 5 6 6 7 7 7 6 6 6 7 6 7 7 7 7 7 6 6 6 6 7 7 7 7 6 4 2 0 -1 -1 -1 -1 -1 -1 -2 -2 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -5 -6 -7 -7 -8 -7 -7 -8 -10 -12 -14 -15 -15 -15 -15 -15 -14 -14 -14 -14 -14 -13 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -13 -13 -12 -12 -11 -11 -11 -11 -11 8 9 9 10 11 12 13 13 12 12 12 11 11 10 9 8 6 4 2 3 4 3 1 -5 -10 -11 -11 -9 -6 -4 -4 -4 -4 -5 -5 -6 -7 -9 -11 -14 -16 -17 -17 -17 -17 -15 -13 -11 -8 -7 -6 -7 -7 -6 -7 -7 -6 -5 -4 -3 -2 -2 -1 -2 -2 -2 -1 -1 -2 -3 -5 -9 -10 -10 -10 -10 -11 -14 -16 -18 -20 -23 -27 -29 -31 -33 -35 -35 -34 -36 -39 -40 -39 -37 -32 -30 -32 -33 -32 -31 -30 -29 -28 -26 -27 -29 -32 -32 -30 -28 -27 -28 -31 -32 -33 -32 -30 -29 -27 -24 -20 -18 -18 -21 -22 -20 -17 -16 -18 -20 -19 -17 -15 -14 -14 -13 -12 -10 -9 -7 -6 -6 -9 -12 -15 -15 -13 -10 -7 -5 -2 0 0 -5 -12 -14 -12 -6 -1 -3 -8 -11 -11 -8 -6 -7 -7 -5 -4 -5 -9 -10 -9 -7 -6 -6 -8 -9 -10 -9 -7 -6 -3 -2 -5 -10 -13 -11 -3 3 5 2 -5 -11 -13 -11 -10 -8 -6 -0 7 10 6 -2 -11 -16 -14 -10 -5 1 4 4 -2 -7 -9 -7 -4 -1 -1 -3 -6 -8 -7 -5 -4 -4 -6 -7 -7 -6 -6 -6 -6 -6 -5 -4 -4 -4 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -5 -5 -5 -4 -3 -3 -4 -5 -6 -6 -4 -3 -3 -3 -5 -5 -5 -4 -3 -3 -3 -2 -2 -2 -2 -1 -1 -0 0 1 1 2 2 2 1 1 1 2 2 2 3 3 3 3 3 3 3 3 3 4 5 6 6 7 6 6 5 4 3 3 4 4 5 5 5 4 4 4 5 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 6 6 6 7 7 7 7 7 5 4 2 0 -0 -1 -1 -1 -1 -1 -2 -2 -3 -4 -4 -4 -4 -4 -4 -3 -4 -4 -4 -5 -6 -6 -6 -6 -6 -7 -10 -12 -14 -15 -15 -15 -15 -14 -14 -14 -14 -14 -13 -13 -13 -13 -14 -14 -14 -14 -14 -14 -14 -13 -13 -13 -12 -12 -12 -12 -11 -11 10 10 10 10 10 11 11 11 11 11 11 10 10 9 8 8 7 5 6 7 6 3 -2 -9 -12 -13 -13 -12 -11 -9 -9 -9 -9 -10 -10 -9 -8 -8 -8 -10 -12 -14 -16 -17 -18 -17 -16 -13 -11 -10 -9 -9 -8 -8 -8 -8 -7 -4 -1 1 1 0 -1 -1 -1 0 1 1 -1 -4 -7 -10 -12 -12 -13 -14 -16 -19 -20 -22 -24 -26 -28 -29 -31 -33 -34 -34 -35 -39 -41 -41 -38 -35 -32 -33 -34 -33 -32 -31 -31 -30 -28 -28 -30 -32 -32 -30 -29 -28 -29 -30 -32 -32 -33 -32 -31 -29 -26 -22 -19 -19 -22 -25 -23 -20 -17 -18 -20 -21 -20 -18 -16 -14 -13 -12 -11 -10 -9 -7 -6 -8 -11 -14 -15 -14 -11 -9 -7 -5 -1 1 -1 -8 -13 -14 -9 -3 -0 -6 -11 -12 -10 -7 -6 -7 -7 -7 -7 -8 -8 -8 -6 -5 -7 -9 -10 -8 -7 -5 -5 -5 -6 -7 -9 -11 -12 -9 -3 2 2 -3 -9 -13 -12 -9 -7 -6 -3 2 7 7 2 -6 -12 -13 -9 -3 2 4 3 -2 -6 -7 -5 -3 -2 -2 -3 -6 -7 -7 -6 -3 -2 -4 -6 -7 -7 -6 -5 -5 -5 -4 -4 -4 -4 -4 -4 -5 -5 -5 -5 -6 -6 -6 -6 -6 -5 -5 -4 -4 -4 -4 -3 -3 -4 -4 -5 -5 -4 -3 -3 -3 -4 -5 -5 -4 -3 -2 -3 -4 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -0 0 1 1 1 2 2 2 2 2 2 2 2 3 3 4 4 4 3 3 3 3 4 5 5 6 6 6 6 5 4 4 4 4 5 5 5 4 5 5 5 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 7 6 5 3 2 1 -0 -0 -1 -1 -1 -2 -2 -3 -3 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -4 -5 -5 -5 -5 -6 -7 -10 -12 -14 -15 -15 -15 -14 -14 -14 -14 -14 -13 -12 -12 -12 -13 -14 -14 -15 -15 -14 -14 -13 -13 -13 -13 -12 -12 -12 -12 -12 8 4 2 2 2 2 3 3 4 4 4 4 3 3 3 4 4 4 6 8 6 1 -6 -11 -14 -14 -13 -13 -12 -12 -12 -12 -12 -13 -14 -14 -12 -10 -8 -7 -8 -10 -13 -15 -17 -18 -18 -16 -14 -12 -11 -10 -8 -7 -8 -7 -5 -1 3 4 3 1 -1 -2 -1 0 2 2 -0 -3 -8 -10 -11 -12 -14 -16 -17 -20 -23 -25 -27 -29 -29 -30 -33 -35 -35 -34 -37 -40 -42 -42 -40 -38 -36 -35 -35 -33 -32 -32 -31 -30 -30 -31 -32 -32 -30 -28 -28 -29 -30 -31 -31 -32 -32 -32 -30 -28 -25 -22 -21 -23 -26 -26 -22 -19 -18 -20 -22 -21 -20 -18 -16 -14 -13 -12 -12 -11 -9 -8 -7 -10 -14 -16 -15 -12 -9 -9 -8 -4 -0 1 -3 -11 -14 -12 -6 -1 -2 -9 -12 -11 -8 -6 -6 -7 -7 -7 -8 -9 -7 -5 -4 -6 -9 -11 -10 -7 -4 -4 -5 -7 -10 -11 -11 -10 -9 -7 -4 -2 -3 -6 -9 -10 -8 -6 -6 -5 -3 2 6 5 -1 -7 -11 -8 -2 3 4 2 -3 -7 -6 -4 -2 -2 -3 -4 -5 -6 -7 -7 -4 -2 -3 -5 -7 -7 -6 -5 -5 -4 -4 -4 -4 -4 -5 -5 -5 -5 -5 -5 -6 -6 -6 -7 -7 -6 -6 -5 -4 -4 -3 -3 -2 -3 -4 -4 -5 -4 -3 -2 -2 -3 -5 -5 -5 -3 -2 -3 -4 -5 -5 -4 -3 -3 -4 -3 -3 -3 -3 -3 -2 -2 -2 -1 -1 -0 0 1 1 1 1 2 2 2 2 2 2 3 3 4 4 4 4 4 3 3 4 4 4 5 5 6 6 6 6 5 5 5 5 5 5 5 5 6 6 6 6 7 7 8 8 7 7 7 7 8 7 7 7 7 7 7 7 8 8 8 8 8 7 7 5 3 2 1 0 -0 -0 -1 -1 -2 -2 -3 -3 -3 -4 -4 -4 -3 -2 -2 -1 -1 -2 -3 -3 -4 -4 -5 -6 -8 -10 -13 -14 -15 -15 -15 -14 -14 -14 -14 -13 -12 -12 -11 -12 -13 -14 -15 -15 -15 -14 -14 -13 -13 -13 -13 -12 -12 -12 -12 9 6 5 4 4 4 4 5 5 5 4 4 4 4 4 3 3 2 3 5 3 -2 -9 -12 -14 -14 -14 -13 -13 -12 -12 -13 -14 -15 -16 -16 -15 -13 -11 -8 -6 -7 -8 -11 -14 -16 -17 -17 -15 -13 -11 -8 -6 -6 -7 -5 -1 4 6 4 2 -1 -2 -2 -1 0 2 2 1 -2 -6 -8 -9 -10 -11 -13 -15 -19 -24 -27 -30 -30 -30 -32 -35 -37 -35 -34 -37 -42 -42 -41 -39 -39 -37 -36 -34 -33 -32 -32 -31 -31 -32 -32 -31 -28 -27 -27 -28 -29 -29 -29 -30 -31 -31 -30 -29 -27 -24 -23 -24 -27 -29 -26 -22 -20 -21 -23 -23 -22 -20 -18 -16 -15 -14 -14 -13 -11 -9 -7 -9 -14 -17 -16 -13 -9 -8 -9 -8 -3 1 0 -6 -13 -14 -9 -3 -1 -6 -11 -12 -9 -6 -5 -5 -5 -5 -7 -8 -9 -6 -4 -4 -6 -9 -10 -8 -6 -4 -4 -6 -9 -11 -12 -10 -8 -7 -6 -5 -5 -6 -6 -7 -6 -4 -4 -5 -5 -4 1 4 2 -3 -7 -7 -2 3 4 0 -5 -8 -7 -3 -1 -2 -5 -6 -5 -5 -6 -7 -5 -3 -2 -4 -6 -8 -7 -6 -5 -4 -4 -4 -4 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -7 -7 -7 -6 -6 -5 -4 -3 -2 -2 -2 -2 -3 -4 -4 -3 -2 -2 -3 -4 -5 -5 -4 -3 -2 -3 -4 -4 -3 -3 -3 -3 -4 -3 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -0 -0 0 1 1 1 2 2 2 2 2 2 3 4 4 4 4 4 4 4 3 3 3 4 4 5 6 6 6 6 6 5 5 5 5 5 6 6 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 7 7 7 8 8 8 8 8 8 8 8 6 5 3 2 1 0 0 -0 -1 -1 -2 -2 -2 -3 -3 -3 -3 -3 -2 -1 -0 0 -0 -1 -2 -2 -3 -4 -5 -6 -8 -11 -14 -15 -16 -15 -15 -14 -14 -14 -13 -12 -11 -11 -11 -12 -13 -14 -15 -15 -15 -14 -14 -13 -13 -13 -12 -12 -12 -12 7 6 6 6 6 7 7 8 8 7 5 5 6 6 7 6 5 3 3 3 1 -3 -8 -10 -11 -12 -12 -12 -12 -11 -11 -12 -13 -14 -15 -16 -15 -14 -12 -10 -8 -6 -6 -7 -8 -10 -11 -12 -12 -11 -9 -8 -6 -6 -5 -3 1 4 4 3 0 -2 -3 -3 -1 1 2 2 2 -1 -4 -6 -7 -8 -9 -11 -14 -19 -23 -27 -29 -30 -31 -34 -36 -37 -35 -34 -37 -42 -42 -40 -39 -39 -38 -36 -34 -32 -31 -31 -32 -32 -31 -30 -28 -26 -27 -28 -28 -28 -28 -29 -29 -30 -29 -29 -27 -25 -24 -26 -28 -30 -28 -24 -22 -23 -24 -24 -23 -21 -20 -18 -17 -16 -16 -16 -14 -10 -8 -8 -12 -17 -17 -14 -10 -7 -9 -10 -7 -2 1 -2 -10 -15 -12 -6 -2 -3 -10 -12 -10 -7 -4 -3 -3 -3 -4 -6 -8 -7 -6 -4 -5 -6 -8 -9 -8 -6 -6 -6 -7 -9 -10 -9 -8 -6 -5 -4 -4 -5 -5 -6 -5 -3 -2 -3 -6 -6 -4 1 3 0 -4 -6 -4 2 3 -1 -7 -11 -9 -3 -0 -2 -5 -7 -6 -4 -4 -6 -6 -5 -3 -4 -6 -8 -8 -7 -5 -5 -4 -4 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -7 -7 -7 -6 -6 -6 -5 -3 -1 -0 -0 -2 -3 -4 -3 -2 -2 -2 -3 -5 -5 -4 -3 -3 -3 -4 -3 -3 -2 -2 -2 -3 -4 -3 -3 -2 -2 -2 -3 -3 -2 -2 -2 -1 -1 -1 -1 -0 0 1 1 2 2 2 2 2 2 3 3 4 4 5 4 4 3 3 3 3 4 4 5 6 7 7 7 6 5 4 4 5 6 7 8 8 8 8 8 8 8 8 8 8 8 9 9 9 8 8 7 7 7 8 8 8 9 9 9 8 7 6 4 3 2 1 1 0 -0 -1 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 0 1 1 1 0 -1 -2 -3 -4 -5 -7 -10 -13 -15 -16 -16 -15 -15 -14 -14 -13 -13 -11 -11 -10 -11 -12 -14 -15 -15 -15 -14 -14 -14 -13 -13 -12 -12 -11 -11 4 4 5 6 6 7 8 9 8 6 4 2 2 5 7 9 8 7 7 6 5 2 -1 -2 -3 -4 -5 -6 -6 -5 -6 -7 -9 -11 -14 -15 -14 -13 -12 -11 -10 -8 -7 -6 -6 -6 -7 -7 -8 -9 -9 -9 -8 -8 -7 -5 -2 1 2 2 -1 -4 -6 -6 -3 0 2 2 1 -0 -3 -4 -5 -6 -7 -10 -14 -19 -22 -25 -28 -29 -31 -34 -35 -35 -33 -34 -37 -39 -37 -36 -37 -39 -37 -34 -32 -31 -31 -32 -32 -30 -28 -26 -26 -26 -27 -27 -26 -26 -27 -28 -28 -28 -27 -26 -25 -24 -25 -28 -30 -29 -26 -24 -24 -24 -24 -23 -22 -21 -20 -19 -18 -18 -18 -16 -13 -9 -7 -9 -15 -18 -16 -11 -7 -7 -10 -10 -5 -1 -1 -7 -14 -14 -8 -3 -2 -7 -12 -11 -8 -5 -3 -2 -2 -3 -4 -6 -6 -6 -5 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -5 -4 -3 -2 -1 -1 -3 -5 -6 -3 -2 -4 -6 -6 -3 2 2 -2 -5 -5 -0 3 -1 -8 -12 -11 -5 1 -0 -4 -8 -8 -5 -3 -4 -6 -6 -4 -4 -6 -7 -8 -7 -6 -5 -4 -4 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -7 -7 -7 -6 -3 -1 1 1 -0 -2 -3 -3 -3 -3 -3 -4 -4 -4 -4 -3 -3 -3 -3 -2 -2 -1 -1 -2 -3 -3 -3 -3 -2 -2 -2 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -0 0 1 1 2 2 2 2 2 2 3 3 4 4 4 4 4 4 4 4 3 3 4 5 6 7 7 6 5 4 4 4 5 6 8 9 10 10 10 9 9 9 9 9 9 9 9 9 9 9 8 7 7 7 7 8 8 9 9 9 8 7 5 4 2 1 1 1 0 -1 -1 -2 -2 -1 -1 -1 -2 -2 -2 -1 0 1 2 2 2 1 -0 -2 -3 -5 -6 -9 -11 -14 -16 -16 -16 -15 -15 -14 -14 -13 -12 -11 -10 -11 -12 -13 -14 -14 -15 -14 -14 -14 -14 -13 -12 -12 -11 -11 4 5 5 6 6 7 8 8 8 6 3 1 -1 1 5 8 9 10 9 9 8 7 7 6 5 3 2 1 1 2 3 2 0 -3 -7 -11 -13 -14 -13 -12 -10 -10 -9 -8 -7 -7 -7 -8 -8 -9 -10 -11 -12 -11 -10 -8 -6 -3 -1 -1 -2 -4 -6 -6 -3 1 2 2 0 -2 -4 -5 -5 -6 -8 -12 -17 -20 -22 -23 -25 -27 -30 -34 -34 -33 -32 -33 -37 -39 -37 -35 -36 -38 -36 -33 -31 -31 -31 -32 -30 -27 -25 -25 -26 -27 -26 -25 -24 -24 -26 -27 -27 -26 -25 -24 -23 -24 -27 -29 -29 -27 -25 -24 -25 -25 -24 -24 -23 -22 -21 -20 -20 -20 -19 -15 -11 -7 -8 -12 -18 -17 -12 -7 -6 -8 -11 -9 -4 -2 -5 -12 -16 -11 -5 -2 -5 -10 -12 -9 -6 -4 -2 -2 -3 -5 -6 -6 -5 -4 -4 -6 -7 -7 -7 -6 -6 -7 -8 -8 -7 -6 -5 -4 -3 -3 -2 -1 1 0 -3 -6 -8 -7 -5 -4 -4 -2 1 3 0 -4 -6 -4 1 -0 -6 -12 -12 -7 0 2 -3 -8 -10 -7 -3 -3 -5 -6 -6 -4 -5 -7 -8 -7 -6 -5 -4 -4 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -7 -7 -7 -6 -4 -0 2 2 1 -0 -2 -3 -3 -4 -3 -3 -3 -3 -3 -4 -4 -3 -2 -2 -1 -1 -1 -2 -3 -3 -3 -3 -2 -2 -2 -3 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 -0 0 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 4 3 3 4 5 6 7 7 6 5 5 5 5 5 6 8 9 10 10 10 10 9 9 9 9 9 9 9 9 9 8 8 7 7 7 8 8 9 9 9 8 7 6 5 3 2 1 1 1 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -0 1 2 3 3 2 1 -0 -2 -4 -6 -8 -10 -13 -15 -17 -17 -16 -15 -15 -15 -14 -12 -11 -10 -10 -11 -12 -13 -13 -14 -14 -14 -14 -13 -13 -12 -12 -11 -10 9 9 8 8 8 7 8 8 8 8 7 4 2 2 4 7 10 10 9 7 5 4 4 3 1 -0 -1 -2 -2 -2 -0 1 2 2 -0 -4 -8 -12 -13 -14 -13 -11 -10 -10 -9 -9 -9 -10 -11 -11 -13 -14 -14 -13 -12 -10 -8 -6 -4 -3 -3 -4 -5 -4 -2 1 2 1 -1 -3 -6 -7 -7 -8 -11 -16 -21 -22 -21 -21 -22 -25 -28 -32 -32 -31 -30 -32 -36 -39 -37 -36 -36 -38 -34 -31 -30 -31 -32 -31 -28 -25 -24 -25 -27 -27 -24 -22 -22 -23 -25 -26 -25 -24 -23 -23 -23 -25 -27 -28 -27 -25 -25 -25 -26 -25 -25 -24 -24 -22 -21 -21 -21 -21 -18 -13 -9 -8 -11 -16 -18 -13 -7 -4 -6 -10 -12 -8 -4 -4 -9 -15 -14 -8 -4 -4 -8 -12 -10 -7 -5 -4 -4 -5 -7 -8 -8 -6 -4 -3 -4 -5 -7 -7 -7 -6 -6 -6 -7 -7 -7 -6 -4 -3 -2 -3 -3 -2 -0 -1 -4 -7 -10 -10 -8 -5 -2 2 5 4 -1 -5 -6 -3 -1 -4 -9 -11 -8 -2 2 -1 -7 -10 -9 -5 -2 -4 -6 -6 -5 -4 -6 -7 -7 -7 -5 -4 -4 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -7 -7 -7 -6 -4 -0 2 3 2 1 -1 -3 -4 -3 -2 -1 -1 -2 -4 -5 -4 -3 -2 -1 -1 -2 -2 -2 -2 -3 -3 -3 -2 -2 -2 -3 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -1 -0 0 1 1 2 2 2 2 3 3 3 3 3 4 4 4 4 4 4 3 3 3 4 5 6 7 7 7 6 5 5 5 5 6 7 9 10 10 10 10 9 9 9 9 9 9 9 9 8 8 8 7 7 8 8 8 8 8 8 8 7 5 4 2 2 1 1 1 1 0 -0 -0 -0 -0 -0 -0 -1 -1 -0 1 2 3 3 3 2 1 -1 -3 -5 -7 -9 -12 -14 -16 -17 -16 -16 -15 -15 -15 -13 -11 -10 -10 -10 -11 -12 -12 -13 -13 -13 -13 -13 -13 -12 -11 -11 -10 14 13 11 9 8 7 7 7 8 8 8 7 5 2 2 3 5 6 5 2 -1 -4 -5 -7 -8 -7 -7 -8 -9 -9 -8 -6 -4 -3 -2 -2 -3 -7 -10 -13 -14 -13 -11 -10 -10 -10 -11 -12 -13 -13 -14 -15 -15 -14 -12 -10 -8 -6 -4 -4 -4 -5 -6 -5 -2 -0 1 1 -1 -4 -7 -8 -9 -11 -14 -18 -22 -23 -21 -20 -20 -22 -26 -29 -29 -29 -28 -31 -35 -37 -36 -35 -36 -37 -32 -30 -30 -31 -32 -30 -26 -24 -25 -27 -27 -26 -22 -20 -20 -22 -24 -24 -23 -22 -22 -22 -23 -25 -27 -26 -25 -25 -25 -26 -26 -26 -26 -25 -24 -22 -22 -22 -22 -20 -16 -11 -9 -11 -15 -18 -15 -8 -3 -4 -9 -13 -12 -7 -5 -8 -13 -15 -11 -6 -5 -7 -10 -10 -8 -6 -6 -6 -7 -8 -9 -10 -9 -7 -6 -4 -4 -4 -5 -7 -8 -8 -7 -5 -5 -5 -6 -6 -5 -3 -2 -3 -4 -3 -3 -4 -5 -8 -11 -12 -10 -6 -1 4 6 4 -1 -5 -6 -5 -5 -7 -8 -7 -3 1 -0 -6 -10 -10 -7 -4 -4 -6 -7 -6 -5 -5 -6 -7 -7 -6 -4 -4 -4 -6 -7 -7 -8 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -4 -0 2 4 3 2 -1 -3 -4 -2 0 2 1 -2 -4 -5 -4 -2 -1 -2 -2 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 0 1 1 1 2 2 2 3 3 3 4 4 5 4 4 3 3 3 3 3 3 4 5 6 7 8 7 6 5 4 4 4 5 6 7 8 8 9 9 9 10 9 9 9 9 8 8 8 8 8 8 8 8 8 8 8 8 8 7 6 4 3 2 2 2 2 2 1 1 1 0 0 0 0 -0 -0 -1 0 1 2 3 3 3 2 1 -2 -4 -7 -8 -10 -13 -15 -18 -17 -16 -16 -16 -16 -14 -12 -11 -10 -10 -11 -11 -11 -11 -12 -12 -12 -12 -12 -11 -11 -10 -10 14 11 9 7 5 4 4 6 7 7 7 5 2 -2 -4 -5 -4 -2 -1 -2 -4 -7 -10 -12 -12 -11 -12 -12 -14 -15 -15 -14 -13 -11 -9 -7 -5 -5 -7 -9 -12 -14 -12 -10 -9 -9 -10 -11 -13 -14 -15 -15 -14 -12 -9 -7 -5 -4 -3 -3 -5 -6 -7 -7 -5 -3 -2 -1 -2 -3 -5 -8 -10 -12 -14 -17 -20 -22 -22 -21 -20 -21 -23 -26 -26 -27 -28 -30 -33 -35 -36 -36 -36 -35 -30 -28 -30 -31 -31 -28 -25 -25 -27 -28 -27 -23 -20 -19 -20 -22 -24 -23 -21 -21 -21 -22 -24 -26 -26 -25 -24 -24 -25 -26 -27 -27 -26 -25 -24 -23 -23 -23 -22 -18 -13 -10 -12 -15 -18 -17 -10 -3 -3 -7 -13 -16 -12 -7 -7 -11 -14 -13 -9 -6 -7 -9 -10 -9 -8 -7 -7 -8 -8 -9 -10 -10 -10 -9 -8 -6 -4 -4 -5 -7 -8 -9 -8 -5 -3 -3 -5 -6 -7 -5 -4 -3 -4 -5 -5 -6 -7 -9 -11 -11 -9 -5 0 4 6 3 -1 -4 -7 -8 -8 -8 -6 -3 -0 -1 -6 -10 -10 -8 -5 -4 -6 -7 -7 -5 -5 -6 -7 -7 -6 -5 -4 -4 -5 -7 -7 -8 -8 -7 -7 -7 -7 -7 -6 -6 -6 -7 -7 -8 -8 -8 -8 -8 -7 -7 -6 -3 -0 3 4 4 1 -2 -3 -3 -0 3 4 1 -3 -5 -6 -3 -1 -1 -2 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -0 -0 0 1 1 2 2 3 4 5 5 5 4 3 3 3 3 3 3 3 3 4 5 7 7 8 7 6 4 4 3 3 4 4 5 5 6 7 8 9 9 9 9 9 9 8 8 8 8 8 8 8 8 7 7 7 7 7 6 5 4 3 3 3 3 3 2 2 2 1 0 0 0 0 0 -0 -0 0 1 2 3 3 3 1 -1 -4 -6 -7 -9 -11 -14 -17 -17 -16 -16 -16 -17 -15 -13 -11 -10 -10 -10 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -9 -9 11 9 7 7 6 6 6 8 10 11 10 9 6 2 -2 -4 -4 -2 0 1 -1 -3 -5 -7 -8 -8 -10 -12 -14 -16 -18 -18 -18 -18 -16 -15 -12 -10 -8 -7 -9 -12 -13 -10 -7 -6 -6 -7 -9 -11 -13 -13 -11 -8 -6 -4 -3 -2 -2 -3 -5 -7 -7 -8 -8 -7 -5 -4 -3 -3 -4 -6 -8 -9 -11 -14 -17 -20 -21 -21 -20 -21 -23 -25 -25 -26 -27 -28 -29 -31 -34 -35 -35 -32 -28 -28 -29 -30 -28 -25 -25 -26 -28 -28 -25 -21 -19 -19 -21 -23 -23 -21 -19 -20 -21 -23 -26 -26 -25 -24 -23 -23 -25 -26 -27 -27 -26 -25 -24 -24 -25 -24 -21 -16 -12 -13 -16 -19 -18 -13 -5 -2 -6 -13 -18 -16 -10 -7 -9 -13 -14 -11 -8 -8 -9 -10 -9 -9 -8 -8 -8 -8 -9 -9 -10 -11 -11 -11 -9 -7 -5 -5 -6 -7 -9 -10 -9 -6 -3 -2 -3 -6 -8 -8 -6 -3 -2 -4 -5 -7 -8 -9 -10 -9 -7 -3 1 4 4 2 -2 -5 -8 -10 -9 -7 -3 -0 -0 -4 -9 -11 -9 -7 -5 -6 -7 -7 -6 -5 -5 -6 -7 -6 -6 -5 -4 -5 -6 -7 -8 -8 -8 -8 -8 -7 -7 -6 -6 -6 -6 -7 -8 -9 -10 -9 -9 -8 -7 -7 -5 -3 0 3 4 3 1 -2 -3 -1 2 5 4 0 -3 -5 -5 -2 -1 -2 -3 -4 -4 -3 -2 -2 -2 -2 -2 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -2 -2 -2 -1 -1 -1 -1 -0 0 1 2 3 4 5 5 4 4 3 3 3 3 3 3 3 3 3 4 5 6 6 7 6 5 4 4 3 2 2 3 3 4 5 6 7 8 9 9 10 9 9 8 8 8 8 8 8 7 7 7 7 6 6 6 5 5 4 3 3 4 4 3 3 2 2 1 0 -0 -0 -0 -0 -1 -1 -0 0 1 2 2 1 -0 -3 -5 -6 -7 -9 -11 -16 -17 -16 -16 -16 -17 -16 -14 -12 -11 -10 -10 -10 -11 -11 -10 -10 -10 -10 -10 -10 -9 -8 -8 8 7 7 8 9 9 9 11 13 15 15 14 11 8 5 4 5 7 9 10 8 7 5 4 2 1 -2 -5 -8 -12 -14 -16 -18 -19 -19 -19 -18 -16 -13 -11 -9 -10 -13 -13 -9 -4 -1 -1 -2 -5 -8 -9 -8 -6 -4 -2 -1 -1 -2 -4 -6 -6 -7 -7 -8 -8 -8 -8 -7 -6 -6 -6 -6 -6 -7 -9 -14 -17 -19 -20 -20 -20 -21 -23 -25 -26 -26 -26 -26 -27 -29 -29 -28 -26 -25 -27 -27 -27 -25 -23 -24 -26 -28 -26 -23 -20 -19 -20 -22 -22 -21 -19 -18 -20 -22 -24 -26 -25 -24 -23 -23 -23 -25 -26 -26 -25 -25 -24 -25 -26 -25 -23 -19 -15 -14 -17 -20 -20 -15 -8 -3 -5 -12 -18 -19 -14 -8 -8 -11 -14 -13 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -10 -11 -12 -12 -11 -9 -7 -6 -6 -7 -8 -9 -10 -10 -7 -4 -1 -1 -5 -9 -10 -8 -4 -0 -1 -3 -6 -9 -10 -9 -8 -5 -2 1 3 3 1 -3 -7 -10 -10 -8 -5 -1 0 -2 -7 -11 -10 -8 -6 -6 -7 -7 -6 -5 -5 -6 -7 -7 -6 -5 -5 -5 -6 -7 -8 -8 -8 -8 -8 -8 -7 -7 -6 -5 -5 -6 -8 -10 -11 -11 -10 -9 -8 -7 -6 -5 -2 1 3 4 3 -0 -2 -2 1 4 5 3 -1 -4 -5 -3 -1 -1 -2 -3 -4 -4 -3 -2 -2 -2 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 0 2 3 3 4 4 4 4 3 3 3 3 3 3 3 3 3 4 4 5 5 6 6 5 5 4 3 2 2 2 2 3 3 4 6 7 8 9 10 9 9 8 8 7 7 7 7 7 7 6 6 6 6 5 5 5 4 4 4 4 4 4 3 2 1 1 -0 -0 -0 -0 -1 -1 -1 -1 -0 1 1 1 -0 -2 -4 -5 -6 -7 -9 -14 -17 -17 -16 -16 -17 -17 -15 -13 -11 -10 -10 -10 -10 -10 -10 -10 -10 -9 -9 -9 -8 -7 -7 -1 1 2 3 4 5 6 8 11 14 15 15 13 11 11 12 14 16 18 18 17 15 14 13 12 12 10 7 3 -0 -4 -8 -11 -13 -15 -17 -19 -19 -18 -17 -15 -12 -12 -14 -13 -7 1 3 3 2 0 -2 -4 -4 -3 -1 -1 -1 -3 -4 -5 -5 -5 -6 -7 -8 -9 -10 -10 -11 -11 -10 -9 -7 -7 -8 -11 -14 -16 -17 -18 -19 -20 -21 -22 -24 -25 -26 -27 -28 -29 -30 -31 -28 -25 -25 -24 -23 -22 -21 -23 -24 -24 -23 -20 -19 -19 -20 -21 -20 -18 -17 -18 -20 -23 -24 -24 -23 -23 -22 -22 -23 -25 -25 -25 -24 -24 -25 -26 -26 -24 -20 -17 -16 -19 -22 -21 -17 -10 -5 -4 -10 -18 -21 -18 -11 -8 -10 -13 -14 -12 -11 -11 -11 -10 -9 -9 -10 -10 -9 -9 -9 -9 -10 -11 -12 -11 -10 -8 -7 -7 -7 -8 -9 -9 -10 -9 -8 -5 -2 -1 -4 -8 -10 -8 -4 0 1 -1 -6 -10 -11 -10 -8 -5 -2 1 3 3 -1 -5 -9 -10 -9 -6 -3 -0 -1 -5 -9 -10 -8 -7 -6 -6 -7 -6 -5 -5 -5 -6 -7 -6 -6 -5 -5 -5 -7 -7 -8 -8 -8 -8 -8 -8 -7 -6 -6 -5 -5 -7 -9 -11 -12 -12 -11 -9 -8 -7 -6 -5 -2 1 3 3 1 -1 -2 -1 2 4 4 1 -2 -4 -4 -2 -0 -1 -2 -3 -4 -4 -3 -3 -3 -3 -3 -4 -4 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -1 -0 0 1 2 2 2 3 3 4 4 3 3 3 3 3 3 3 3 3 3 4 5 5 6 6 5 4 3 2 2 2 2 2 3 4 5 6 8 9 9 9 9 8 7 7 7 7 7 6 6 6 6 5 5 5 5 5 5 5 4 4 4 4 3 2 1 1 -0 -1 -1 -1 -1 -1 -1 -1 -1 -0 -0 -0 -1 -3 -3 -4 -5 -7 -11 -16 -18 -16 -16 -17 -17 -16 -14 -12 -11 -10 -10 -10 -10 -10 -10 -9 -9 -8 -8 -7 -6 -6 -12 -11 -10 -10 -10 -9 -8 -7 -3 2 5 8 8 9 10 12 15 18 19 19 17 16 16 15 15 16 17 16 14 12 10 7 3 -0 -4 -7 -11 -13 -15 -17 -18 -17 -16 -15 -16 -14 -8 0 2 3 4 3 2 1 1 1 0 -1 -1 -2 -2 -2 -2 -4 -5 -7 -9 -10 -12 -13 -13 -13 -11 -10 -10 -9 -11 -13 -14 -15 -16 -17 -18 -18 -19 -21 -23 -26 -26 -27 -28 -29 -30 -27 -23 -21 -20 -19 -19 -19 -21 -21 -21 -19 -18 -18 -19 -19 -18 -17 -15 -16 -18 -20 -22 -22 -22 -21 -21 -21 -22 -23 -24 -24 -23 -23 -23 -25 -25 -23 -20 -17 -17 -20 -23 -23 -18 -12 -7 -5 -9 -17 -21 -20 -14 -9 -10 -13 -14 -13 -12 -13 -13 -12 -11 -10 -10 -11 -10 -10 -10 -10 -10 -11 -12 -11 -10 -9 -8 -7 -7 -8 -8 -9 -10 -9 -9 -8 -6 -4 -3 -5 -7 -9 -8 -5 -1 1 -1 -5 -10 -12 -12 -10 -7 -3 2 5 3 -2 -7 -10 -10 -8 -4 -1 -0 -2 -7 -10 -9 -7 -6 -6 -6 -5 -4 -4 -5 -6 -7 -7 -6 -5 -5 -5 -6 -7 -8 -8 -8 -8 -8 -8 -8 -7 -6 -6 -6 -7 -9 -11 -13 -13 -12 -11 -10 -8 -7 -6 -5 -3 -0 1 1 -0 -2 -3 -1 2 4 3 0 -2 -3 -3 -1 -1 -1 -2 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -1 -0 -0 -0 -0 1 1 2 3 4 4 3 3 3 3 3 2 2 2 3 3 3 4 5 5 5 5 5 4 3 3 2 2 2 3 4 5 6 8 9 9 9 8 7 7 6 6 6 6 6 6 6 5 5 5 5 5 5 5 5 4 4 4 3 3 2 2 1 -0 -1 -1 -2 -1 -1 -1 -1 -1 -1 -1 -1 -2 -2 -3 -3 -5 -9 -14 -18 -18 -16 -17 -17 -17 -15 -13 -12 -11 -10 -10 -10 -10 -9 -9 -8 -8 -7 -6 -6 -5 -8 -8 -9 -11 -14 -16 -17 -18 -17 -16 -12 -7 -2 2 4 6 7 8 8 8 9 10 12 12 13 14 15 16 16 16 16 15 13 11 9 6 3 0 -3 -7 -10 -13 -15 -15 -17 -18 -17 -13 -6 -2 2 4 6 6 5 4 3 3 3 4 4 3 2 0 -2 -5 -7 -9 -11 -13 -14 -13 -11 -11 -11 -10 -11 -13 -14 -15 -15 -16 -17 -17 -17 -18 -20 -23 -24 -24 -24 -26 -27 -24 -19 -17 -16 -16 -16 -17 -18 -18 -17 -16 -16 -17 -17 -16 -15 -13 -13 -15 -18 -20 -20 -20 -19 -19 -19 -20 -21 -22 -23 -22 -21 -21 -22 -23 -22 -19 -17 -17 -19 -22 -23 -19 -13 -9 -8 -10 -16 -20 -20 -16 -12 -12 -15 -15 -14 -13 -13 -15 -15 -13 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -10 -9 -8 -8 -7 -7 -8 -9 -9 -9 -9 -8 -8 -7 -6 -5 -5 -6 -7 -7 -5 -3 -2 -2 -5 -8 -11 -13 -12 -9 -4 2 6 3 -3 -8 -10 -9 -6 -2 0 -1 -4 -8 -9 -7 -6 -6 -6 -5 -4 -3 -4 -5 -6 -7 -7 -6 -5 -5 -6 -7 -8 -8 -8 -8 -8 -9 -8 -8 -7 -6 -6 -7 -8 -11 -13 -13 -13 -13 -12 -11 -9 -8 -7 -6 -4 -2 -0 -0 -2 -4 -4 -2 1 3 2 -0 -2 -3 -3 -2 -1 -0 -1 -2 -3 -4 -4 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -1 -1 -0 0 1 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 4 4 5 5 5 5 4 3 2 2 2 3 4 5 6 7 8 9 8 8 7 7 6 6 6 6 6 6 5 5 5 5 5 5 5 5 5 4 4 3 3 3 3 2 1 -0 -1 -2 -2 -1 -1 -1 -1 -2 -1 -1 -1 -1 -1 -1 -3 -6 -11 -16 -19 -17 -16 -17 -18 -17 -15 -13 -12 -12 -11 -10 -9 -8 -8 -7 -7 -6 -6 -5 -5 8 10 10 8 5 1 -1 -4 -15 -27 -30 -23 -13 -6 -4 -4 -5 -7 -9 -8 -5 -1 2 4 5 6 6 7 8 8 9 11 11 12 12 11 10 9 7 5 2 -2 -6 -10 -13 -16 -18 -20 -17 -12 -5 1 5 7 8 8 7 7 8 9 9 8 7 5 2 -1 -4 -7 -9 -11 -12 -11 -10 -9 -9 -9 -11 -12 -13 -13 -14 -15 -16 -16 -15 -16 -17 -19 -20 -20 -21 -23 -23 -20 -15 -13 -12 -13 -14 -15 -15 -14 -13 -13 -14 -16 -15 -13 -11 -11 -12 -15 -17 -18 -18 -17 -17 -17 -17 -18 -19 -20 -20 -20 -19 -20 -20 -20 -18 -16 -15 -17 -20 -22 -19 -14 -10 -9 -12 -16 -20 -19 -16 -13 -13 -16 -17 -15 -14 -13 -15 -16 -16 -15 -13 -13 -12 -12 -12 -12 -12 -12 -12 -11 -11 -10 -10 -9 -8 -8 -8 -8 -9 -9 -9 -8 -8 -8 -7 -7 -6 -6 -6 -6 -6 -5 -5 -4 -4 -5 -7 -10 -12 -12 -9 -3 3 5 0 -6 -9 -9 -6 -3 0 1 -2 -5 -8 -8 -6 -5 -6 -5 -4 -3 -3 -4 -5 -6 -7 -7 -6 -5 -6 -7 -8 -8 -8 -8 -8 -9 -9 -8 -8 -7 -7 -7 -8 -10 -12 -13 -13 -13 -13 -13 -12 -10 -9 -9 -7 -5 -3 -2 -2 -4 -5 -5 -3 -1 1 1 -1 -2 -3 -3 -2 -0 -0 -1 -2 -3 -4 -5 -5 -6 -6 -6 -5 -5 -4 -4 -4 -5 -5 -4 -4 -3 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 -1 -0 -0 0 1 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 4 5 5 5 5 4 3 3 3 3 4 4 6 7 8 9 8 8 7 7 6 6 6 6 6 5 5 4 5 5 5 5 5 5 4 4 3 3 3 3 3 2 1 -0 -1 -2 -2 -1 -1 -1 -1 -1 -1 -0 0 1 1 -0 -3 -8 -12 -17 -19 -16 -15 -16 -18 -18 -16 -14 -13 -12 -11 -9 -7 -6 -6 -6 -6 -5 -5 -4 13 15 15 14 14 15 16 15 -20 -30 -28 -22 -16 -13 -13 -13 -15 -17 -18 -18 -15 -12 -9 -7 -6 -5 -5 -5 -4 -4 -3 -1 2 4 6 8 9 9 10 10 10 9 5 1 -4 -9 -13 -17 -20 -19 -15 -7 -0 4 7 9 9 10 11 12 13 12 11 9 7 4 1 -1 -3 -6 -8 -8 -8 -7 -7 -7 -8 -9 -9 -9 -10 -13 -15 -15 -14 -14 -14 -16 -16 -17 -18 -20 -20 -16 -11 -9 -9 -10 -11 -11 -11 -10 -10 -11 -13 -13 -12 -10 -9 -10 -12 -14 -15 -16 -16 -15 -15 -15 -15 -16 -17 -17 -17 -17 -17 -18 -18 -17 -14 -13 -15 -18 -20 -19 -14 -11 -10 -12 -16 -20 -19 -16 -14 -14 -16 -18 -17 -14 -13 -14 -16 -17 -17 -16 -15 -14 -13 -13 -13 -13 -13 -13 -12 -12 -11 -11 -10 -10 -9 -8 -8 -8 -8 -9 -9 -8 -8 -8 -8 -8 -7 -6 -6 -5 -5 -5 -6 -6 -5 -5 -6 -8 -10 -10 -6 -1 3 2 -3 -7 -8 -6 -3 0 2 0 -3 -7 -8 -6 -5 -5 -5 -5 -4 -3 -3 -4 -6 -7 -7 -6 -6 -6 -7 -8 -9 -8 -8 -8 -9 -9 -9 -8 -7 -7 -8 -9 -10 -12 -13 -13 -13 -14 -15 -14 -13 -12 -11 -10 -8 -6 -4 -4 -4 -6 -7 -6 -4 -2 0 -0 -1 -3 -4 -4 -2 -1 -1 -1 -2 -3 -4 -5 -5 -6 -7 -6 -6 -5 -4 -5 -5 -5 -5 -5 -4 -3 -3 -2 -2 -3 -3 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -1 -1 -0 0 1 2 2 2 2 2 2 1 1 1 1 1 1 1 1 2 3 3 4 4 4 4 3 2 2 3 3 5 6 7 8 8 8 8 7 7 6 6 6 6 5 5 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 2 1 -0 -1 -1 -1 -1 -1 -1 -1 -1 -0 1 2 3 2 -0 -3 -7 -11 -15 -17 -15 -12 -14 -16 -17 -17 -16 -14 -12 -9 -6 -5 -4 -5 -5 -5 -4 -4 13 6 -1 -3 -3 -2 -2 -2 -6 -8 -8 -8 -9 -11 -12 -13 -13 -13 -14 -14 -13 -12 -11 -11 -11 -11 -12 -13 -14 -15 -15 -13 -10 -7 -4 -1 2 4 6 8 10 12 12 9 5 1 -4 -7 -12 -17 -18 -15 -8 -2 2 5 7 9 11 13 14 14 13 13 12 10 8 7 5 3 0 -3 -4 -5 -5 -5 -5 -4 -4 -4 -6 -9 -11 -12 -11 -9 -9 -11 -12 -13 -15 -16 -15 -11 -7 -6 -6 -7 -7 -7 -6 -6 -8 -9 -11 -10 -8 -7 -7 -9 -11 -12 -12 -13 -13 -13 -13 -13 -13 -14 -14 -14 -14 -14 -15 -16 -16 -14 -12 -12 -15 -17 -17 -14 -10 -9 -12 -16 -19 -19 -16 -14 -14 -16 -18 -18 -15 -13 -13 -15 -16 -17 -17 -17 -16 -15 -14 -13 -13 -14 -14 -14 -13 -13 -12 -12 -11 -11 -10 -9 -9 -8 -8 -9 -9 -9 -8 -8 -7 -7 -8 -7 -7 -6 -5 -5 -5 -5 -6 -6 -6 -7 -8 -7 -4 -0 0 -3 -6 -7 -6 -3 -0 2 2 -1 -5 -7 -7 -6 -5 -5 -5 -4 -3 -3 -4 -5 -7 -7 -7 -6 -6 -7 -8 -9 -9 -8 -8 -8 -9 -9 -9 -8 -7 -8 -8 -10 -12 -13 -13 -13 -14 -16 -16 -15 -14 -13 -12 -10 -8 -7 -5 -5 -6 -7 -8 -7 -5 -3 -1 -1 -2 -4 -5 -4 -2 -1 -1 -2 -3 -3 -4 -4 -5 -6 -7 -7 -6 -5 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -3 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 -1 -0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 2 3 3 3 3 2 1 2 2 3 5 6 8 9 9 8 8 7 7 6 5 5 5 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 2 1 1 -0 -1 -1 -1 -1 -1 -0 0 1 2 3 4 3 2 -0 -3 -7 -13 -14 -11 -7 -9 -12 -15 -17 -16 -14 -8 -4 -2 -2 -3 -4 -4 -3 -3 -1 -5 -7 -7 -6 -5 -3 -2 -1 0 0 -0 -2 -4 -6 -6 -6 -5 -4 -4 -4 -4 -5 -6 -7 -8 -10 -12 -15 -17 -19 -19 -18 -16 -13 -9 -6 -3 0 3 6 9 11 12 10 7 4 2 -1 -6 -12 -17 -17 -11 -7 -4 0 4 8 12 13 13 13 14 14 13 13 13 13 12 11 8 4 1 -1 -0 1 2 2 1 -1 -3 -5 -5 -2 2 4 0 -5 -8 -10 -11 -10 -6 -3 -3 -3 -3 -3 -2 -2 -3 -5 -6 -7 -5 -3 -4 -5 -7 -8 -8 -9 -10 -11 -11 -12 -11 -11 -11 -11 -10 -10 -12 -13 -14 -13 -11 -10 -12 -14 -15 -14 -11 -8 -10 -14 -17 -18 -16 -13 -14 -16 -18 -19 -17 -14 -13 -14 -15 -16 -17 -17 -17 -16 -15 -14 -14 -14 -14 -14 -14 -14 -14 -13 -12 -12 -11 -11 -10 -9 -9 -9 -10 -10 -10 -9 -8 -7 -7 -8 -8 -8 -7 -5 -4 -4 -5 -6 -7 -7 -7 -6 -4 -3 -2 -3 -6 -7 -6 -3 -0 2 2 -0 -4 -7 -7 -6 -5 -5 -5 -4 -4 -3 -4 -5 -7 -8 -8 -7 -6 -7 -8 -10 -10 -9 -8 -9 -9 -9 -9 -8 -8 -8 -8 -9 -11 -13 -14 -14 -14 -16 -17 -17 -16 -15 -13 -11 -10 -8 -7 -7 -7 -7 -8 -8 -7 -6 -3 -2 -2 -3 -5 -5 -5 -3 -2 -2 -3 -3 -4 -4 -4 -5 -6 -7 -7 -6 -6 -5 -4 -4 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -2 -2 -2 -2 -2 -2 -1 -1 -0 0 0 0 0 0 0 0 0 -0 -0 -0 0 0 0 0 1 1 2 2 2 1 0 0 1 3 4 5 7 8 9 9 9 8 7 6 5 4 4 4 4 3 3 4 4 4 4 4 4 4 3 3 3 3 3 3 3 2 2 1 -0 -1 -1 -1 -1 -0 0 1 2 3 4 5 6 7 6 3 -1 -7 -12 -1 -2 -5 -8 -12 -15 -16 -6 1 3 2 1 -1 -2 -2 -2 -10 -12 -13 -14 -13 -12 -11 -10 -9 -8 -7 -6 -6 -5 -5 -5 -4 -3 -1 -0 0 1 0 -0 -0 -1 -3 -5 -7 -10 -13 -16 -18 -19 -18 -16 -12 -9 -6 -3 1 4 7 9 10 10 8 6 5 4 0 -6 -15 -22 -19 -15 -10 -4 2 7 10 11 12 12 12 12 13 14 15 15 15 15 12 10 8 7 7 8 8 7 4 2 4 9 12 12 10 8 6 2 -2 -4 -5 -4 -3 -1 0 1 2 3 3 1 -0 -2 -2 -0 0 -1 -3 -4 -5 -5 -5 -6 -8 -9 -9 -9 -9 -8 -8 -7 -8 -10 -12 -12 -10 -9 -9 -11 -14 -14 -12 -9 -9 -11 -14 -15 -14 -12 -13 -16 -18 -19 -18 -16 -15 -14 -14 -14 -15 -16 -17 -17 -16 -16 -15 -14 -14 -15 -15 -15 -15 -14 -13 -13 -12 -12 -11 -11 -10 -10 -10 -11 -11 -10 -9 -8 -7 -7 -8 -8 -8 -8 -6 -3 -3 -4 -6 -7 -7 -7 -5 -4 -4 -5 -6 -6 -5 -3 -0 2 2 -0 -3 -6 -7 -7 -5 -5 -5 -5 -4 -4 -4 -6 -7 -8 -9 -8 -7 -7 -9 -10 -10 -10 -9 -9 -9 -10 -10 -9 -9 -8 -8 -9 -10 -13 -14 -15 -15 -16 -17 -18 -17 -16 -15 -13 -11 -10 -9 -9 -9 -8 -8 -8 -8 -8 -6 -4 -3 -3 -4 -5 -6 -5 -3 -3 -3 -3 -3 -4 -4 -4 -5 -5 -6 -7 -6 -6 -5 -5 -4 -4 -4 -4 -5 -5 -5 -5 -5 -4 -4 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -0 -0 -0 -0 -0 -0 -0 -0 -0 0 0 1 1 1 0 -0 -0 1 2 3 4 5 7 8 9 9 8 7 6 5 4 3 3 3 3 3 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 2 1 -0 -1 -1 -1 -0 0 1 2 3 4 6 8 10 12 13 13 8 -2 9 7 3 0 -3 -5 -7 6 13 12 10 6 3 2 1 0 -17 -18 -19 -19 -18 -18 -18 -19 -20 -20 -20 -20 -18 -16 -14 -11 -10 -9 -8 -7 -6 -4 -3 -2 -1 -1 -1 -1 -2 -3 -4 -7 -10 -14 -16 -16 -14 -12 -10 -7 -5 -2 2 6 9 11 11 9 8 7 7 4 -1 -9 -18 -22 -19 -12 -5 1 5 7 9 10 10 10 10 11 11 12 13 13 13 12 11 11 11 11 11 10 7 6 6 7 9 10 7 3 4 6 5 4 3 0 -1 1 3 4 6 6 6 5 4 3 3 4 3 2 0 -1 -1 -2 -2 -3 -4 -5 -6 -6 -6 -5 -5 -5 -7 -9 -10 -9 -7 -6 -8 -11 -13 -12 -10 -9 -9 -12 -13 -13 -11 -11 -14 -16 -17 -17 -16 -16 -16 -15 -14 -14 -14 -16 -16 -16 -16 -16 -15 -15 -15 -15 -15 -15 -15 -14 -14 -13 -13 -13 -12 -12 -11 -11 -11 -11 -11 -10 -10 -9 -8 -7 -8 -8 -8 -8 -7 -5 -4 -4 -5 -6 -7 -7 -7 -7 -7 -7 -6 -5 -2 1 2 2 -0 -3 -6 -7 -7 -6 -5 -5 -5 -4 -4 -4 -6 -8 -9 -10 -9 -8 -8 -9 -10 -10 -10 -9 -9 -10 -10 -10 -10 -10 -10 -9 -9 -10 -11 -13 -15 -16 -16 -17 -18 -18 -18 -16 -15 -13 -12 -12 -12 -11 -10 -8 -8 -8 -9 -8 -7 -5 -4 -4 -5 -5 -5 -5 -4 -3 -3 -3 -3 -4 -4 -4 -5 -5 -6 -6 -6 -6 -6 -5 -5 -5 -4 -5 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -2 -1 -2 -2 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -0 -0 0 0 0 0 0 -0 -0 -0 0 1 2 3 4 5 7 8 9 8 7 6 4 3 3 2 3 3 3 3 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 2 1 -0 -1 -1 -1 0 1 1 2 4 6 8 11 14 18 22 26 32 25 16 11 8 7 7 11 21 23 19 17 14 10 7 5 4 -20 -19 -19 -18 -17 -17 -19 -23 -27 -29 -29 -28 -26 -25 -23 -20 -19 -18 -18 -18 -17 -16 -15 -14 -13 -12 -11 -10 -8 -7 -6 -6 -6 -8 -10 -12 -12 -11 -10 -9 -8 -6 -3 2 6 10 12 12 11 9 8 8 6 2 -5 -14 -19 -18 -11 -6 -2 2 5 6 8 8 8 8 9 9 10 10 11 11 10 10 10 10 10 9 8 9 7 2 3 5 6 4 2 1 1 3 4 1 -1 2 5 6 7 8 7 7 6 6 6 6 5 4 3 2 2 1 0 -0 -1 -2 -3 -4 -3 -3 -3 -4 -6 -7 -7 -6 -5 -4 -7 -10 -11 -11 -9 -8 -9 -11 -11 -10 -10 -11 -14 -15 -15 -15 -15 -16 -16 -15 -14 -14 -14 -15 -16 -16 -16 -16 -16 -16 -16 -16 -15 -15 -15 -15 -14 -14 -14 -14 -13 -13 -12 -11 -10 -10 -10 -11 -10 -10 -9 -8 -7 -7 -8 -8 -8 -7 -5 -4 -5 -6 -7 -8 -8 -8 -7 -6 -4 -1 1 3 2 -0 -4 -6 -7 -7 -6 -5 -5 -5 -4 -4 -5 -6 -8 -10 -11 -10 -10 -9 -10 -10 -11 -10 -10 -10 -10 -10 -11 -11 -11 -12 -12 -11 -11 -10 -11 -14 -15 -16 -17 -18 -19 -19 -18 -17 -15 -14 -14 -15 -14 -13 -11 -9 -9 -9 -9 -9 -8 -6 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -4 -4 -4 -4 -5 -5 -6 -6 -7 -6 -6 -6 -5 -5 -5 -6 -6 -6 -7 -7 -7 -7 -7 -6 -6 -6 -6 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -2 -1 -1 -0 0 -0 -0 -1 -1 -0 -0 -0 0 1 2 3 3 4 5 7 8 8 7 6 4 3 2 2 2 3 3 3 3 3 4 4 4 4 4 4 3 3 3 3 3 2 3 3 3 2 1 0 -1 -1 -0 0 1 2 3 5 7 10 13 17 22 28 33 34 26 19 16 14 15 20 27 29 23 20 18 16 13 10 8 -18 -16 -14 -12 -11 -12 -14 -19 -24 -26 -25 -23 -22 -24 -23 -22 -21 -20 -21 -22 -23 -23 -24 -25 -27 -27 -26 -24 -22 -20 -18 -16 -13 -11 -10 -9 -9 -9 -9 -9 -9 -8 -6 -3 2 7 11 14 14 13 11 9 8 8 4 -2 -11 -17 -17 -13 -9 -5 -1 2 4 6 7 8 8 8 8 9 9 9 9 9 9 9 8 8 9 9 5 -1 -3 -2 1 2 3 -1 -3 -3 -1 -1 -2 2 5 7 8 8 7 7 7 7 7 6 6 5 5 4 3 3 2 2 1 0 -1 -1 -1 -1 -1 -2 -4 -5 -4 -3 -2 -3 -6 -9 -9 -9 -7 -7 -8 -8 -8 -8 -9 -10 -12 -12 -13 -13 -14 -15 -15 -15 -14 -14 -14 -15 -15 -16 -16 -17 -17 -16 -16 -16 -16 -15 -15 -15 -15 -15 -15 -15 -14 -13 -12 -11 -10 -10 -11 -11 -11 -11 -10 -8 -7 -7 -7 -8 -9 -9 -7 -5 -5 -6 -7 -8 -9 -8 -6 -3 -0 2 2 1 -1 -4 -6 -7 -7 -6 -5 -5 -5 -4 -4 -5 -7 -9 -11 -12 -12 -11 -11 -11 -11 -11 -11 -10 -10 -11 -11 -11 -12 -12 -14 -15 -15 -13 -12 -11 -12 -13 -15 -16 -18 -19 -20 -20 -19 -18 -17 -17 -17 -17 -16 -14 -12 -11 -10 -10 -10 -9 -8 -7 -6 -6 -5 -5 -4 -4 -3 -2 -3 -3 -3 -3 -4 -4 -4 -5 -5 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -7 -7 -7 -6 -6 -6 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -3 -3 -2 -2 -1 -0 -1 -1 -1 -1 -1 -0 -0 0 1 1 2 3 3 4 5 6 6 6 5 4 3 2 1 2 3 3 3 3 3 3 4 4 4 4 4 4 3 3 3 3 2 2 3 3 3 3 1 0 -1 -1 0 1 1 3 4 6 9 12 16 20 26 32 35 33 28 23 21 20 22 27 30 27 22 20 18 17 15 14 -12 -11 -9 -7 -5 -4 -5 -6 -7 -9 -11 -12 -13 -15 -17 -17 -17 -18 -19 -20 -21 -23 -25 -28 -30 -31 -29 -27 -26 -26 -26 -25 -21 -17 -13 -10 -8 -8 -8 -8 -9 -8 -8 -6 -2 2 7 12 15 15 13 11 10 9 9 6 -0 -9 -17 -20 -17 -13 -8 -4 0 3 6 7 8 9 9 10 10 10 11 11 11 10 10 11 11 9 3 -1 -3 -5 -5 -1 2 -1 -6 -7 -4 -2 -3 -1 3 6 7 6 6 6 6 6 6 5 5 5 5 5 4 4 4 3 3 2 2 1 1 1 1 -0 -2 -2 -2 -1 -1 -2 -5 -7 -6 -5 -5 -4 -5 -5 -6 -6 -7 -8 -9 -10 -10 -11 -12 -13 -13 -14 -14 -14 -14 -15 -16 -16 -17 -17 -17 -17 -17 -17 -16 -16 -15 -15 -15 -16 -16 -16 -15 -13 -12 -10 -10 -10 -11 -12 -12 -11 -10 -9 -7 -6 -6 -7 -9 -9 -8 -7 -6 -6 -7 -8 -7 -5 -2 0 2 2 0 -2 -4 -6 -7 -7 -6 -5 -5 -5 -5 -5 -5 -7 -10 -12 -13 -13 -13 -12 -12 -12 -12 -12 -12 -11 -12 -12 -12 -13 -14 -15 -17 -18 -16 -14 -12 -12 -12 -13 -14 -16 -18 -20 -21 -21 -21 -20 -20 -19 -19 -18 -17 -16 -14 -12 -12 -11 -11 -10 -9 -8 -7 -6 -6 -5 -4 -3 -2 -2 -2 -3 -3 -3 -3 -4 -4 -5 -5 -6 -6 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -7 -8 -8 -8 -8 -8 -7 -7 -6 -6 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -1 -1 -0 0 1 1 2 2 3 3 4 4 5 5 5 4 3 2 1 2 2 3 2 2 2 3 3 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 2 0 -0 -0 0 1 2 3 5 7 10 13 17 22 29 34 35 34 30 26 24 24 26 29 31 26 22 20 19 19 18 -6 -5 -5 -3 -2 -1 -0 1 1 1 0 0 -0 -2 -3 -5 -6 -7 -8 -10 -12 -14 -16 -17 -19 -19 -18 -18 -19 -21 -23 -23 -22 -19 -16 -12 -10 -9 -8 -8 -8 -8 -8 -7 -5 -2 2 8 12 15 15 14 12 11 11 11 8 2 -8 -19 -21 -19 -15 -11 -6 -2 2 5 8 10 11 12 12 13 14 14 14 14 15 16 15 11 7 4 1 -1 -2 -1 0 -3 -6 -7 -5 -2 -4 -3 1 5 6 5 5 5 5 5 4 3 4 4 5 5 4 5 5 5 4 4 4 4 4 4 3 2 1 1 1 1 0 -1 -3 -4 -3 -2 -1 -1 -2 -2 -3 -4 -5 -6 -6 -7 -8 -9 -10 -11 -12 -12 -13 -14 -14 -15 -16 -16 -17 -17 -17 -17 -17 -17 -17 -16 -16 -16 -16 -17 -17 -17 -15 -14 -12 -10 -10 -11 -11 -12 -12 -12 -11 -10 -8 -6 -6 -6 -8 -9 -9 -8 -7 -7 -6 -5 -4 -2 0 1 1 -1 -3 -5 -6 -7 -6 -5 -5 -5 -5 -5 -5 -6 -8 -11 -13 -15 -14 -14 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -14 -16 -17 -19 -20 -19 -17 -15 -13 -13 -13 -13 -14 -16 -18 -19 -20 -21 -21 -21 -20 -19 -19 -18 -18 -17 -16 -14 -13 -12 -12 -11 -10 -9 -8 -7 -6 -6 -5 -3 -2 -2 -3 -3 -3 -4 -4 -4 -5 -5 -6 -6 -6 -7 -7 -8 -8 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -7 -7 -6 -6 -6 -5 -5 -5 -4 -4 -4 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -2 -1 -1 -0 0 1 1 1 2 3 3 3 4 4 3 3 3 2 1 2 2 2 2 1 2 2 3 3 3 3 4 4 4 4 4 4 4 3 3 3 3 3 3 3 2 1 0 0 1 2 2 4 5 8 11 14 19 25 31 35 36 34 31 28 26 26 28 31 29 26 23 21 21 20 -1 -2 -3 -2 -2 -2 -2 -1 -1 -2 0 3 4 3 2 1 1 0 -0 -1 -2 -4 -5 -6 -6 -6 -6 -6 -8 -10 -12 -14 -16 -16 -16 -14 -12 -10 -9 -9 -8 -8 -7 -7 -6 -5 -2 2 7 11 14 15 15 14 13 13 13 10 4 -6 -16 -21 -21 -19 -15 -10 -5 -1 3 7 10 13 15 16 17 18 19 21 22 22 20 16 13 11 9 8 6 5 3 1 -3 -6 -6 -2 0 1 3 6 6 6 6 5 5 3 2 2 3 3 4 4 5 5 6 6 6 6 6 6 6 6 5 5 4 4 4 3 2 0 -0 -0 1 1 2 2 2 1 0 -1 -3 -3 -4 -4 -5 -7 -8 -9 -10 -11 -12 -13 -14 -15 -15 -16 -16 -17 -17 -17 -17 -17 -17 -17 -16 -17 -17 -18 -18 -18 -16 -15 -13 -12 -11 -11 -12 -12 -12 -12 -11 -10 -8 -6 -5 -5 -7 -8 -9 -8 -7 -6 -5 -3 -1 0 1 -0 -2 -4 -5 -6 -6 -6 -5 -5 -5 -6 -6 -6 -6 -8 -11 -13 -15 -15 -14 -14 -14 -14 -14 -15 -15 -16 -16 -16 -15 -16 -17 -19 -21 -22 -22 -20 -18 -16 -15 -14 -14 -14 -14 -16 -17 -19 -19 -20 -20 -20 -20 -18 -18 -18 -18 -18 -17 -15 -14 -13 -13 -13 -12 -11 -9 -8 -8 -7 -5 -4 -3 -3 -3 -4 -4 -5 -5 -5 -6 -6 -6 -7 -7 -7 -7 -8 -8 -9 -9 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -8 -7 -7 -7 -7 -6 -6 -5 -4 -4 -5 -5 -6 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -5 -5 -5 -5 -6 -5 -5 -6 -6 -6 -5 -5 -4 -4 -4 -3 -3 -2 -2 -1 -1 -0 0 1 1 2 2 2 3 2 2 2 2 2 1 1 1 1 1 1 1 2 2 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 2 1 1 1 2 2 3 4 6 9 12 16 22 28 33 36 36 34 31 29 27 27 28 31 30 27 25 23 23 -5 -5 -6 -5 -3 -3 -4 -6 -7 -7 -4 -1 1 1 -0 -1 -1 -1 -1 -1 -1 -2 -2 -3 -4 -4 -3 -2 -2 -2 -3 -4 -7 -10 -12 -14 -14 -13 -11 -9 -8 -7 -7 -7 -6 -6 -4 -2 2 7 11 14 15 16 15 15 14 13 11 7 -0 -9 -16 -21 -23 -22 -18 -14 -10 -5 1 7 11 15 19 21 23 26 27 27 25 24 24 23 20 17 15 14 12 8 3 -0 -0 4 6 6 7 8 9 8 8 7 6 4 3 2 2 3 3 4 5 6 7 8 8 9 9 9 9 9 8 8 7 7 7 6 4 3 3 4 4 5 5 5 5 4 3 1 -0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -14 -14 -15 -15 -16 -16 -17 -17 -17 -17 -17 -17 -18 -18 -19 -20 -19 -18 -16 -15 -13 -13 -13 -12 -12 -12 -12 -12 -11 -9 -7 -6 -5 -5 -7 -7 -7 -6 -5 -3 -2 -1 -1 -2 -3 -4 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -8 -10 -13 -15 -15 -15 -14 -14 -15 -15 -16 -17 -18 -18 -18 -17 -17 -18 -21 -23 -24 -23 -22 -21 -19 -18 -17 -16 -14 -14 -15 -16 -17 -18 -18 -19 -19 -19 -18 -17 -17 -17 -18 -18 -17 -16 -15 -14 -14 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -4 -4 -5 -5 -6 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -7 -7 -6 -5 -5 -5 -6 -6 -6 -6 -5 -5 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -7 -7 -7 -7 -7 -6 -6 -5 -4 -4 -4 -3 -3 -2 -1 -1 -1 -0 0 1 1 2 2 2 1 1 1 1 1 1 0 0 0 1 1 1 2 2 3 3 4 4 4 4 4 5 5 5 5 4 4 4 4 3 3 3 2 1 1 1 2 2 3 5 7 9 13 18 24 30 34 36 36 34 32 29 27 27 30 31 31 28 26 26 -9 -9 -8 -7 -5 -5 -6 -7 -8 -8 -6 -4 -3 -3 -4 -5 -5 -6 -6 -6 -6 -7 -8 -9 -10 -10 -9 -7 -4 -2 -0 0 -1 -3 -7 -10 -13 -14 -13 -10 -8 -7 -7 -7 -7 -6 -5 -4 -1 2 6 10 12 14 15 15 14 12 11 10 9 6 0 -7 -14 -18 -19 -19 -17 -16 -15 -12 -5 3 10 17 22 25 27 28 29 31 34 32 29 25 23 21 18 14 10 6 6 9 11 8 7 8 11 12 12 11 9 7 5 4 4 4 5 6 7 8 9 10 10 11 11 11 11 11 11 12 12 11 10 9 8 7 7 7 7 8 8 8 7 6 5 4 2 1 0 -1 -2 -4 -5 -6 -6 -7 -8 -9 -10 -12 -13 -13 -14 -14 -15 -16 -16 -17 -18 -18 -18 -19 -19 -20 -20 -21 -20 -18 -17 -16 -15 -14 -13 -13 -13 -13 -13 -12 -11 -8 -6 -5 -5 -6 -6 -5 -4 -3 -3 -2 -3 -3 -4 -5 -5 -5 -5 -5 -4 -5 -6 -7 -7 -7 -7 -7 -10 -12 -14 -15 -15 -14 -14 -15 -16 -17 -18 -19 -19 -19 -19 -18 -19 -22 -24 -24 -24 -23 -22 -22 -22 -21 -19 -17 -15 -15 -16 -16 -17 -18 -17 -17 -17 -17 -17 -16 -16 -16 -17 -17 -17 -16 -15 -15 -15 -15 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -5 -5 -5 -6 -6 -7 -8 -9 -9 -9 -9 -9 -8 -8 -8 -8 -9 -9 -10 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -8 -8 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -7 -7 -8 -8 -8 -9 -8 -8 -7 -6 -5 -5 -4 -4 -4 -3 -2 -2 -1 -1 -1 -0 0 0 1 1 1 0 0 0 -0 -0 -0 -0 -0 0 1 1 1 2 3 4 4 5 5 5 5 5 5 5 5 5 4 4 4 4 3 3 2 2 2 1 2 2 3 4 5 8 11 15 20 26 31 34 35 35 34 32 30 28 29 31 32 31 29 28 -10 -10 -9 -8 -6 -5 -5 -6 -6 -6 -5 -5 -5 -5 -5 -6 -6 -6 -7 -7 -8 -10 -11 -13 -14 -15 -14 -12 -9 -6 -3 -1 0 0 -2 -4 -8 -11 -13 -11 -10 -9 -9 -9 -9 -8 -7 -6 -4 -2 0 3 6 9 11 11 11 9 7 6 6 7 6 3 -3 -9 -12 -13 -13 -12 -12 -12 -11 -9 -5 3 13 20 26 31 34 36 37 35 34 33 31 28 24 20 17 14 12 11 13 13 12 13 15 16 15 14 13 10 8 7 7 7 8 9 10 10 11 12 13 13 13 13 14 14 15 16 16 15 14 12 11 11 11 10 10 10 10 9 9 8 7 6 4 3 1 -0 -1 -3 -3 -4 -5 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -14 -15 -16 -17 -18 -19 -20 -20 -21 -21 -21 -21 -20 -18 -18 -17 -16 -15 -14 -13 -13 -13 -13 -11 -9 -7 -6 -6 -5 -5 -4 -4 -4 -4 -4 -5 -5 -5 -5 -5 -5 -4 -4 -5 -6 -7 -8 -8 -7 -7 -9 -11 -14 -15 -15 -14 -15 -15 -16 -17 -18 -19 -20 -20 -19 -19 -20 -22 -24 -24 -24 -23 -22 -23 -24 -23 -22 -19 -17 -16 -16 -17 -18 -18 -18 -17 -17 -16 -16 -16 -15 -15 -15 -15 -16 -16 -15 -15 -15 -15 -15 -15 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -5 -5 -6 -6 -7 -8 -9 -10 -10 -10 -9 -9 -8 -8 -8 -8 -9 -9 -10 -10 -10 -10 -10 -10 -9 -9 -9 -10 -10 -10 -10 -10 -10 -9 -9 -8 -7 -7 -6 -6 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -5 -5 -6 -6 -7 -7 -7 -8 -9 -10 -10 -10 -11 -11 -10 -9 -8 -6 -6 -5 -5 -5 -4 -4 -3 -2 -2 -2 -1 -1 -1 -0 -0 -0 -0 -0 -1 -1 -1 -1 -1 -0 0 0 1 1 2 3 4 5 5 5 5 5 5 5 5 5 5 5 4 4 4 4 3 3 3 2 2 2 2 2 3 4 6 9 12 16 22 28 32 34 35 35 34 32 31 30 30 32 32 31 30 -11 -10 -10 -9 -8 -7 -6 -5 -4 -4 -5 -6 -7 -6 -4 -2 -1 -1 -1 -2 -3 -4 -6 -7 -8 -8 -7 -6 -5 -4 -3 -1 1 1 0 -1 -4 -7 -9 -11 -12 -12 -12 -12 -11 -10 -9 -8 -7 -6 -5 -3 -1 2 4 5 5 4 3 1 1 1 2 3 2 -2 -6 -9 -11 -11 -10 -9 -10 -12 -11 -7 2 12 22 29 33 36 37 38 39 38 37 33 28 24 22 20 17 14 16 17 17 18 19 19 19 17 15 13 11 10 10 11 11 12 13 13 13 14 15 15 15 16 16 17 18 19 20 19 17 16 15 14 14 13 13 12 11 11 10 9 8 7 6 4 2 1 -1 -2 -2 -3 -3 -3 -4 -4 -5 -6 -8 -9 -10 -11 -12 -13 -14 -16 -17 -19 -20 -21 -21 -21 -22 -21 -21 -20 -19 -19 -18 -17 -16 -14 -13 -13 -12 -12 -10 -9 -7 -7 -7 -6 -5 -5 -4 -4 -4 -5 -5 -5 -5 -5 -5 -5 -4 -5 -6 -7 -9 -9 -8 -7 -8 -10 -13 -15 -15 -14 -14 -15 -16 -16 -17 -19 -20 -20 -19 -19 -20 -21 -23 -24 -24 -23 -23 -23 -24 -25 -24 -22 -19 -17 -17 -18 -19 -20 -20 -19 -18 -17 -16 -16 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -15 -15 -15 -15 -14 -12 -11 -11 -10 -9 -8 -7 -6 -5 -5 -5 -6 -7 -8 -9 -10 -10 -10 -10 -9 -8 -8 -7 -7 -8 -9 -10 -10 -10 -10 -9 -9 -9 -9 -9 -10 -11 -11 -12 -12 -12 -11 -11 -10 -9 -8 -8 -7 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -8 -9 -9 -10 -11 -12 -13 -13 -13 -13 -12 -10 -8 -7 -6 -5 -5 -5 -5 -4 -3 -3 -2 -2 -2 -2 -2 -1 -1 -1 -1 -2 -2 -2 -2 -1 -1 -0 -0 0 0 1 2 4 5 5 6 6 6 6 6 5 5 5 5 4 4 4 4 4 4 3 3 2 2 2 2 2 4 5 7 10 13 18 25 30 33 34 34 34 34 32 31 30 31 32 32 31 -6 -8 -9 -8 -8 -8 -7 -6 -6 -6 -7 -7 -7 -5 -1 2 5 6 7 7 7 6 5 4 4 4 5 5 5 5 5 5 5 4 2 -0 -3 -4 -5 -7 -10 -13 -14 -13 -12 -11 -11 -10 -9 -8 -8 -7 -6 -4 -3 -2 -1 -1 -2 -3 -4 -4 -4 -3 -2 -1 -2 -5 -8 -10 -10 -10 -11 -13 -12 -10 -4 4 15 24 30 33 36 38 39 40 39 36 31 27 24 22 19 16 19 21 21 20 21 22 21 20 17 15 13 12 13 14 15 15 15 15 16 16 17 17 18 18 18 19 20 22 22 21 20 19 18 17 16 15 15 14 13 12 11 10 9 8 7 5 3 2 1 -0 -1 -1 -1 -2 -2 -3 -3 -4 -5 -6 -8 -9 -10 -12 -13 -15 -17 -19 -20 -21 -22 -22 -22 -21 -20 -20 -19 -19 -18 -17 -16 -15 -13 -12 -11 -10 -9 -8 -7 -7 -7 -7 -6 -6 -5 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -6 -8 -10 -10 -9 -8 -7 -9 -12 -14 -15 -14 -14 -14 -15 -16 -16 -17 -19 -19 -19 -19 -20 -21 -22 -23 -24 -24 -23 -24 -24 -25 -25 -23 -21 -18 -17 -17 -18 -20 -21 -21 -20 -19 -18 -17 -16 -15 -14 -13 -13 -13 -13 -13 -13 -13 -13 -14 -14 -15 -15 -14 -13 -12 -11 -11 -10 -9 -8 -7 -6 -5 -5 -6 -6 -7 -8 -9 -9 -10 -10 -9 -9 -8 -7 -7 -7 -8 -9 -10 -10 -9 -9 -9 -8 -9 -9 -10 -11 -12 -13 -13 -13 -13 -13 -12 -11 -10 -9 -9 -9 -9 -8 -8 -7 -7 -6 -6 -6 -6 -6 -6 -7 -7 -8 -9 -10 -10 -11 -12 -13 -15 -16 -17 -16 -15 -13 -11 -8 -7 -6 -6 -6 -6 -5 -4 -4 -3 -3 -4 -3 -3 -2 -2 -2 -2 -2 -3 -3 -2 -2 -1 -1 -1 -0 0 1 2 3 4 5 5 6 6 6 6 6 5 5 4 4 4 4 5 5 4 4 3 3 2 2 2 2 3 4 6 8 11 14 21 27 31 34 34 34 34 33 32 31 31 32 32 31 5 1 -2 -3 -4 -5 -5 -5 -4 -3 -3 -3 -2 -0 3 6 8 10 11 12 12 11 10 10 9 8 8 7 6 6 6 6 6 6 5 3 0 -2 -3 -3 -6 -9 -13 -14 -13 -12 -12 -11 -10 -9 -9 -8 -8 -7 -7 -6 -5 -5 -5 -5 -6 -7 -8 -8 -7 -5 -3 -3 -5 -8 -10 -11 -12 -12 -11 -9 -7 -2 8 18 26 30 33 36 38 38 38 36 33 29 26 22 20 19 22 25 25 23 22 24 24 22 19 17 15 14 15 16 17 18 17 17 17 18 19 19 20 20 20 21 22 23 24 23 22 21 20 19 18 17 17 16 14 13 12 11 10 9 8 7 5 4 3 2 1 1 0 -0 -1 -1 -2 -3 -3 -5 -6 -8 -9 -11 -12 -14 -16 -18 -20 -21 -21 -21 -21 -20 -20 -19 -19 -19 -18 -17 -16 -15 -14 -12 -11 -9 -8 -7 -7 -7 -7 -7 -7 -6 -5 -5 -4 -5 -5 -5 -5 -5 -5 -6 -7 -9 -10 -11 -10 -8 -7 -8 -11 -14 -15 -14 -14 -14 -15 -15 -15 -16 -17 -18 -19 -19 -19 -20 -21 -22 -23 -23 -23 -24 -25 -25 -25 -24 -22 -20 -17 -16 -16 -18 -20 -21 -21 -20 -19 -19 -18 -17 -16 -15 -14 -13 -12 -12 -12 -12 -12 -12 -13 -13 -14 -14 -14 -13 -12 -11 -11 -10 -10 -9 -8 -7 -6 -6 -6 -6 -7 -7 -8 -8 -9 -9 -9 -9 -8 -7 -6 -6 -7 -8 -8 -9 -9 -8 -8 -8 -8 -9 -10 -11 -13 -13 -14 -14 -14 -14 -13 -13 -12 -11 -10 -10 -10 -9 -9 -8 -7 -7 -6 -6 -6 -7 -7 -8 -8 -9 -10 -11 -11 -12 -13 -14 -16 -17 -19 -19 -19 -17 -14 -11 -9 -7 -6 -6 -6 -6 -5 -5 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -4 -3 -3 -3 -2 -2 -1 -1 -1 0 1 2 3 4 4 5 6 7 7 6 5 5 4 4 4 5 5 5 5 5 4 3 3 2 2 2 2 4 5 7 9 11 16 23 29 33 34 34 33 33 33 32 31 31 32 31 16 12 8 6 4 2 1 2 4 6 5 5 4 4 5 5 6 6 7 8 9 10 9 8 6 4 2 0 -0 0 1 2 3 4 5 6 4 0 -2 -3 -3 -5 -9 -13 -14 -14 -13 -13 -11 -10 -9 -8 -8 -8 -8 -8 -8 -8 -7 -7 -7 -8 -9 -10 -10 -9 -7 -5 -4 -5 -8 -10 -10 -10 -9 -8 -8 -7 1 12 22 28 31 34 36 37 37 37 36 33 29 26 23 21 24 27 29 27 25 25 25 24 21 19 17 17 18 19 19 19 19 19 19 20 20 21 21 21 22 22 23 24 25 24 24 23 22 21 20 19 18 17 16 15 13 12 12 11 10 8 7 6 5 4 3 2 1 1 -0 -1 -1 -2 -2 -4 -5 -6 -8 -10 -12 -13 -15 -17 -19 -20 -20 -20 -20 -19 -19 -18 -18 -18 -18 -17 -17 -15 -14 -12 -10 -8 -7 -7 -7 -7 -7 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -6 -7 -8 -10 -11 -11 -9 -8 -8 -9 -13 -15 -15 -14 -14 -14 -15 -15 -15 -16 -17 -17 -18 -19 -19 -20 -21 -22 -22 -23 -24 -25 -25 -25 -25 -23 -22 -19 -17 -15 -15 -17 -19 -20 -21 -20 -19 -18 -18 -17 -17 -16 -14 -13 -12 -11 -11 -11 -10 -11 -11 -12 -13 -13 -13 -13 -12 -11 -11 -11 -10 -10 -9 -8 -7 -7 -7 -7 -7 -7 -7 -7 -8 -9 -9 -9 -8 -7 -6 -5 -5 -6 -7 -8 -8 -8 -7 -7 -7 -8 -10 -11 -13 -14 -15 -15 -15 -15 -15 -14 -13 -12 -12 -11 -11 -11 -10 -9 -8 -7 -6 -6 -6 -7 -8 -9 -9 -10 -11 -11 -12 -13 -14 -15 -16 -18 -19 -20 -21 -21 -18 -15 -11 -8 -7 -7 -7 -7 -7 -6 -5 -5 -5 -5 -5 -5 -4 -4 -5 -5 -5 -5 -4 -4 -4 -3 -2 -2 -1 -1 -0 1 1 2 3 4 5 6 7 6 6 5 4 4 5 5 5 5 5 5 5 4 3 2 2 2 2 3 4 5 7 9 12 17 24 31 34 34 33 33 32 32 31 31 31 31 15 13 11 8 6 5 4 5 6 7 7 5 4 2 1 -0 -1 -2 -1 0 2 3 3 2 1 -1 -4 -6 -6 -6 -6 -5 -3 -1 2 5 6 3 -2 -4 -5 -4 -5 -9 -13 -15 -15 -15 -14 -12 -10 -9 -8 -8 -8 -8 -8 -9 -10 -10 -10 -10 -10 -10 -11 -12 -12 -10 -7 -5 -5 -7 -8 -8 -7 -7 -8 -9 -4 7 18 25 29 33 35 37 38 39 39 37 34 30 26 24 23 25 29 29 25 23 26 25 23 21 20 19 20 21 21 21 20 20 20 21 22 22 23 23 23 23 24 25 25 25 25 25 24 23 22 21 20 19 18 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 -0 -1 -2 -3 -4 -6 -7 -9 -11 -13 -14 -16 -17 -18 -18 -18 -18 -18 -17 -17 -17 -17 -17 -17 -16 -15 -14 -12 -10 -9 -7 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -6 -7 -8 -10 -11 -11 -10 -8 -8 -9 -11 -14 -15 -15 -15 -15 -15 -15 -15 -15 -16 -16 -17 -18 -19 -19 -19 -20 -20 -22 -23 -24 -25 -25 -24 -24 -22 -21 -18 -16 -14 -14 -16 -18 -19 -20 -19 -18 -18 -17 -17 -17 -16 -15 -14 -12 -11 -10 -10 -9 -10 -10 -11 -12 -13 -13 -13 -12 -11 -11 -10 -10 -10 -10 -9 -8 -8 -7 -7 -7 -7 -7 -7 -7 -8 -9 -9 -8 -7 -6 -5 -4 -5 -5 -6 -6 -6 -6 -6 -7 -8 -9 -11 -12 -14 -15 -15 -16 -16 -16 -15 -15 -14 -13 -12 -12 -12 -11 -11 -10 -8 -7 -6 -6 -7 -8 -9 -10 -11 -11 -12 -12 -13 -14 -15 -16 -17 -19 -21 -22 -23 -22 -19 -15 -11 -8 -8 -7 -8 -8 -7 -6 -6 -5 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -4 -3 -2 -2 -1 -0 0 1 2 3 5 6 6 6 5 5 4 4 4 5 5 5 5 5 5 4 4 3 2 2 3 3 3 4 6 7 9 13 19 26 31 33 33 33 32 31 30 30 30 30 7 7 6 4 3 3 2 2 1 1 0 -1 -2 -3 -4 -5 -6 -7 -7 -7 -6 -5 -4 -3 -3 -3 -5 -7 -8 -8 -8 -8 -8 -6 -3 1 4 5 0 -5 -8 -7 -5 -4 -8 -13 -16 -16 -16 -15 -14 -12 -11 -10 -9 -9 -9 -10 -12 -13 -13 -12 -11 -10 -10 -12 -14 -15 -13 -10 -7 -6 -7 -8 -8 -8 -8 -9 -6 2 13 22 28 34 37 38 38 39 40 40 37 33 29 27 26 28 31 32 28 25 27 27 25 23 22 22 22 23 23 22 22 21 22 22 23 24 23 23 24 24 25 26 26 27 26 26 26 25 24 23 22 21 19 18 17 15 14 14 13 12 11 10 9 7 6 5 4 3 2 1 0 -0 -1 -2 -4 -5 -7 -9 -10 -12 -13 -14 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -16 -15 -15 -14 -13 -12 -10 -9 -7 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -6 -6 -7 -9 -10 -10 -10 -9 -8 -8 -10 -13 -15 -16 -16 -16 -16 -16 -16 -16 -16 -16 -17 -17 -18 -18 -18 -18 -18 -19 -21 -22 -23 -23 -23 -22 -22 -21 -20 -17 -15 -13 -12 -14 -16 -18 -18 -18 -17 -16 -16 -16 -16 -15 -15 -14 -13 -12 -10 -9 -9 -8 -9 -9 -10 -11 -12 -12 -12 -11 -11 -10 -10 -10 -11 -10 -10 -9 -9 -8 -8 -7 -7 -7 -7 -8 -9 -9 -8 -8 -7 -5 -4 -4 -4 -4 -5 -4 -4 -5 -5 -7 -8 -10 -12 -13 -14 -15 -15 -16 -16 -16 -16 -15 -14 -13 -13 -13 -13 -12 -11 -10 -8 -7 -7 -7 -8 -9 -10 -11 -12 -13 -13 -13 -14 -15 -16 -17 -18 -20 -22 -23 -23 -22 -19 -15 -11 -9 -8 -8 -8 -8 -8 -7 -6 -6 -6 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -7 -6 -5 -4 -3 -2 -1 -1 0 2 3 4 4 5 5 5 5 4 4 4 5 5 5 5 5 5 5 4 4 3 3 3 3 3 4 5 6 7 10 14 20 26 31 33 33 32 31 30 29 29 28 6 5 5 4 3 2 -0 -2 -3 -4 -5 -5 -5 -6 -6 -6 -6 -7 -8 -9 -9 -9 -9 -7 -5 -3 -3 -4 -5 -6 -7 -8 -8 -8 -7 -4 -1 3 2 -4 -10 -12 -10 -5 -3 -6 -11 -15 -16 -16 -17 -17 -16 -15 -13 -12 -12 -13 -14 -15 -15 -14 -13 -12 -11 -13 -16 -18 -18 -16 -12 -8 -7 -8 -9 -9 -9 -9 -7 0 11 21 29 34 38 40 41 42 43 41 37 32 29 29 29 29 29 30 30 26 27 28 27 25 24 24 24 25 25 24 24 23 24 24 24 25 24 24 25 25 26 27 28 28 28 28 27 27 26 25 24 23 21 20 18 17 16 15 14 14 13 12 10 8 7 6 5 4 3 2 1 0 -0 -2 -3 -4 -6 -8 -10 -11 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -15 -15 -14 -14 -13 -12 -12 -11 -10 -8 -7 -7 -6 -6 -6 -5 -5 -5 -5 -5 -6 -6 -6 -6 -6 -7 -8 -9 -10 -10 -9 -8 -8 -9 -11 -14 -16 -16 -16 -17 -17 -17 -17 -17 -17 -17 -17 -18 -18 -18 -17 -17 -17 -18 -20 -20 -21 -20 -20 -20 -20 -19 -18 -16 -14 -11 -11 -12 -14 -16 -17 -16 -16 -15 -14 -14 -14 -14 -14 -13 -12 -11 -10 -9 -8 -7 -7 -8 -9 -10 -11 -12 -12 -11 -11 -10 -10 -10 -11 -11 -11 -10 -10 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -6 -5 -4 -3 -3 -3 -2 -2 -2 -3 -5 -7 -8 -10 -11 -12 -13 -14 -15 -16 -17 -17 -17 -16 -15 -14 -14 -14 -14 -13 -12 -10 -8 -8 -8 -8 -9 -11 -12 -13 -13 -14 -14 -14 -15 -16 -17 -18 -20 -21 -22 -24 -24 -23 -19 -15 -11 -9 -8 -9 -9 -9 -8 -7 -7 -6 -7 -8 -9 -9 -10 -9 -10 -10 -10 -10 -9 -8 -7 -6 -5 -4 -3 -2 -0 1 2 3 3 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 4 4 4 4 3 3 3 4 5 6 8 11 15 22 27 31 32 32 32 31 30 28 27 8 8 8 7 6 5 3 1 -1 -2 -2 -3 -3 -3 -3 -3 -3 -4 -6 -7 -9 -9 -10 -9 -7 -5 -3 -2 -3 -4 -5 -6 -7 -7 -8 -8 -6 -3 1 -1 -8 -15 -16 -12 -6 -3 -4 -8 -12 -15 -17 -19 -20 -21 -20 -18 -17 -17 -17 -17 -17 -15 -14 -13 -13 -15 -17 -20 -22 -21 -17 -12 -9 -8 -8 -8 -9 -9 -7 -1 10 23 32 37 41 43 44 45 45 42 36 30 28 31 33 32 31 31 32 29 29 29 28 27 26 26 26 26 27 26 26 25 26 26 26 26 25 26 26 27 28 28 29 29 29 29 29 29 28 27 26 25 23 22 20 18 17 16 16 15 14 13 12 10 8 7 6 5 4 3 3 2 1 -0 -2 -3 -5 -7 -9 -10 -11 -11 -11 -12 -12 -12 -12 -12 -13 -13 -13 -13 -13 -12 -11 -11 -10 -10 -9 -8 -7 -7 -6 -6 -6 -5 -5 -5 -5 -6 -6 -6 -7 -7 -7 -8 -9 -9 -9 -9 -9 -8 -8 -10 -12 -15 -16 -16 -17 -17 -18 -18 -17 -17 -17 -18 -18 -18 -18 -17 -17 -16 -17 -17 -18 -18 -18 -18 -17 -17 -18 -17 -17 -15 -12 -10 -9 -9 -11 -13 -15 -15 -14 -13 -12 -12 -12 -12 -12 -12 -11 -10 -9 -8 -7 -6 -6 -7 -8 -9 -10 -11 -11 -11 -11 -10 -9 -9 -10 -11 -11 -11 -10 -10 -9 -9 -8 -8 -9 -9 -8 -8 -8 -8 -8 -7 -6 -5 -4 -3 -2 -1 -0 -0 -1 -2 -4 -6 -7 -8 -9 -10 -12 -13 -15 -17 -17 -17 -17 -16 -15 -14 -14 -14 -14 -13 -12 -11 -9 -8 -8 -9 -11 -12 -14 -14 -15 -15 -15 -15 -16 -17 -18 -19 -20 -22 -23 -24 -24 -23 -19 -15 -11 -9 -8 -9 -10 -10 -9 -8 -7 -7 -8 -9 -11 -11 -11 -11 -12 -12 -12 -12 -11 -10 -9 -7 -6 -4 -3 -2 -1 0 1 2 2 3 3 3 3 4 4 5 5 5 5 5 5 5 5 5 5 4 4 4 4 3 4 4 5 6 8 12 17 23 28 31 32 32 32 31 29 27 8 9 9 9 10 9 8 6 5 4 4 3 3 2 1 -1 -2 -3 -5 -7 -9 -10 -10 -10 -9 -7 -6 -5 -4 -4 -4 -5 -6 -7 -8 -9 -9 -7 -3 0 -2 -9 -16 -15 -11 -7 -4 -3 -5 -9 -13 -17 -20 -23 -24 -24 -23 -22 -21 -21 -20 -18 -17 -16 -16 -18 -20 -23 -24 -23 -20 -15 -11 -8 -7 -7 -7 -8 -7 -2 10 24 35 41 44 46 46 46 46 43 37 31 29 32 35 35 32 31 32 33 31 29 28 28 28 28 28 28 28 28 28 28 28 28 28 27 27 27 28 29 29 30 30 30 31 31 31 31 30 29 28 27 25 24 22 20 18 17 17 16 16 14 13 11 9 8 7 6 6 5 4 3 2 1 -0 -2 -4 -6 -7 -8 -9 -9 -10 -10 -10 -10 -11 -11 -11 -12 -12 -12 -11 -10 -10 -9 -9 -8 -8 -7 -7 -7 -7 -6 -6 -6 -5 -6 -6 -7 -7 -8 -8 -8 -8 -9 -9 -9 -9 -9 -9 -9 -10 -11 -13 -14 -15 -16 -17 -17 -18 -18 -18 -18 -18 -18 -18 -18 -17 -17 -16 -16 -17 -17 -17 -16 -16 -16 -16 -16 -16 -16 -15 -13 -11 -8 -6 -6 -8 -10 -12 -12 -12 -11 -10 -10 -10 -10 -10 -10 -9 -9 -8 -7 -6 -5 -4 -5 -6 -7 -8 -9 -10 -10 -10 -9 -9 -8 -9 -10 -11 -11 -10 -9 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -8 -7 -6 -4 -3 -2 -1 0 1 0 -1 -2 -3 -4 -5 -5 -6 -8 -11 -13 -15 -16 -17 -16 -16 -16 -15 -15 -15 -15 -14 -14 -13 -11 -10 -9 -9 -10 -12 -14 -15 -15 -16 -16 -16 -16 -17 -18 -19 -20 -21 -22 -23 -24 -24 -22 -18 -14 -11 -9 -9 -9 -10 -10 -9 -8 -8 -8 -10 -11 -13 -13 -14 -14 -14 -14 -14 -14 -13 -11 -10 -8 -7 -5 -4 -3 -2 -1 0 1 1 2 2 3 3 4 4 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 5 6 9 13 18 24 29 31 32 32 32 30 28 4 4 5 6 7 7 7 6 6 6 6 5 4 2 0 -1 -3 -4 -6 -9 -11 -12 -12 -12 -11 -9 -8 -9 -8 -7 -6 -6 -6 -7 -8 -9 -9 -8 -6 -1 1 -2 -8 -14 -13 -11 -8 -5 -4 -5 -7 -11 -15 -20 -24 -26 -26 -25 -24 -23 -22 -21 -20 -19 -18 -19 -21 -22 -22 -22 -20 -16 -13 -9 -7 -6 -6 -8 -8 -4 8 26 36 41 44 46 46 46 46 43 38 32 30 33 37 38 36 33 32 33 30 28 28 30 30 30 30 30 30 30 29 29 30 30 29 29 29 29 30 30 31 31 31 32 33 33 33 33 32 31 30 29 28 26 24 22 20 19 18 18 17 16 14 12 11 10 9 8 8 7 6 5 4 3 1 -0 -2 -4 -5 -6 -7 -7 -8 -8 -8 -9 -9 -10 -10 -10 -10 -10 -10 -9 -8 -8 -8 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -6 -7 -8 -8 -9 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -10 -12 -13 -14 -14 -16 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -17 -17 -17 -17 -17 -16 -16 -15 -15 -14 -15 -15 -15 -14 -14 -12 -9 -6 -4 -3 -4 -6 -8 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -7 -6 -5 -4 -3 -2 -2 -3 -4 -6 -7 -8 -9 -9 -8 -8 -7 -8 -9 -9 -10 -9 -9 -8 -8 -9 -9 -10 -10 -9 -9 -8 -8 -8 -8 -8 -7 -6 -4 -3 -2 -1 -1 -0 -1 -1 -2 -2 -2 -2 -3 -5 -7 -10 -13 -14 -15 -16 -16 -15 -15 -15 -15 -15 -15 -14 -14 -13 -11 -10 -9 -9 -11 -13 -14 -16 -16 -17 -17 -17 -18 -18 -19 -20 -21 -22 -23 -23 -24 -23 -21 -18 -14 -10 -9 -9 -9 -10 -10 -9 -9 -9 -10 -12 -14 -15 -16 -16 -16 -16 -16 -16 -15 -14 -13 -11 -9 -8 -7 -5 -4 -3 -2 -1 0 1 2 2 3 3 4 4 5 5 5 6 5 6 6 5 5 5 4 5 5 4 4 3 4 5 6 9 13 19 25 28 30 32 32 32 30 -4 -3 -3 -3 -3 -4 -4 -3 -3 -3 -3 -3 -4 -4 -5 -5 -5 -4 -4 -6 -8 -11 -13 -13 -11 -10 -9 -10 -9 -9 -8 -7 -7 -8 -8 -9 -9 -9 -8 -5 -2 0 -2 -8 -11 -13 -12 -10 -7 -5 -5 -7 -9 -13 -18 -22 -25 -25 -24 -22 -21 -21 -20 -19 -18 -18 -18 -18 -18 -18 -17 -15 -12 -9 -8 -7 -7 -9 -10 -8 3 22 35 39 42 44 45 45 45 42 37 33 32 35 39 41 40 36 33 32 29 27 28 30 31 32 32 32 32 31 31 31 31 31 31 31 31 31 31 31 32 32 33 33 34 35 35 35 34 34 33 31 30 28 26 24 22 20 20 19 18 17 16 14 13 12 11 11 10 9 8 7 5 4 3 1 -0 -2 -3 -4 -5 -5 -6 -6 -7 -7 -8 -8 -9 -9 -9 -9 -9 -8 -7 -7 -7 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -8 -9 -10 -11 -11 -11 -11 -10 -10 -9 -9 -9 -10 -11 -11 -12 -13 -14 -15 -17 -17 -18 -18 -18 -18 -18 -18 -18 -17 -17 -17 -17 -17 -17 -16 -16 -15 -14 -14 -14 -14 -14 -13 -12 -10 -7 -4 -2 -0 -1 -3 -5 -7 -7 -6 -6 -6 -6 -7 -7 -6 -6 -5 -5 -4 -3 -1 -0 -0 -1 -2 -3 -5 -6 -7 -7 -7 -6 -6 -6 -7 -7 -8 -8 -7 -7 -7 -8 -9 -10 -10 -9 -9 -9 -9 -9 -9 -8 -8 -7 -6 -4 -4 -3 -3 -3 -3 -2 -2 -1 -1 -0 -1 -2 -4 -6 -9 -12 -13 -14 -15 -15 -15 -14 -14 -14 -15 -14 -14 -13 -12 -10 -9 -8 -9 -11 -13 -15 -16 -17 -18 -18 -18 -18 -18 -19 -20 -22 -22 -23 -23 -23 -23 -21 -18 -13 -10 -8 -8 -9 -10 -10 -10 -10 -11 -12 -14 -16 -17 -18 -19 -19 -19 -18 -18 -17 -16 -14 -13 -11 -9 -8 -7 -5 -4 -2 -1 0 1 2 2 3 3 4 4 5 5 6 6 6 6 6 5 5 5 5 5 5 4 3 3 3 4 6 9 14 20 25 28 30 31 32 31 -9 -10 -11 -12 -13 -14 -15 -15 -14 -13 -12 -11 -10 -9 -8 -6 -4 -2 -0 0 -1 -4 -8 -10 -11 -10 -10 -10 -10 -10 -10 -9 -9 -8 -8 -8 -8 -8 -9 -8 -6 -3 -0 -2 -7 -11 -13 -14 -12 -10 -8 -8 -8 -9 -12 -16 -21 -22 -21 -18 -17 -17 -17 -17 -16 -15 -14 -13 -14 -14 -14 -13 -10 -8 -7 -8 -8 -10 -12 -12 -3 14 32 37 40 42 43 43 43 40 36 33 34 38 43 43 40 36 34 31 28 26 26 28 31 34 34 34 33 32 32 32 32 32 32 32 32 32 32 32 33 33 34 35 35 36 37 37 36 36 35 34 32 30 28 26 24 22 21 20 20 19 18 16 15 14 13 12 12 11 10 9 7 6 4 3 1 0 -1 -2 -3 -3 -4 -5 -5 -6 -7 -7 -8 -8 -9 -8 -8 -7 -7 -7 -6 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -9 -10 -11 -12 -12 -12 -11 -10 -9 -9 -9 -10 -10 -11 -12 -13 -14 -15 -16 -17 -17 -17 -18 -18 -18 -18 -17 -17 -17 -17 -17 -17 -17 -17 -16 -15 -14 -14 -13 -13 -13 -13 -11 -9 -6 -3 0 2 2 -0 -2 -4 -4 -4 -4 -4 -4 -5 -5 -5 -5 -4 -4 -3 -2 -0 1 2 1 1 -1 -2 -3 -4 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -6 -7 -7 -8 -9 -9 -9 -9 -9 -9 -9 -9 -9 -8 -8 -7 -6 -5 -5 -5 -6 -6 -5 -4 -3 -2 -1 0 0 -1 -3 -6 -9 -11 -13 -14 -14 -14 -13 -13 -13 -14 -14 -13 -13 -11 -10 -8 -7 -7 -9 -11 -13 -15 -16 -18 -18 -18 -18 -18 -19 -20 -21 -22 -23 -23 -23 -23 -22 -20 -17 -13 -10 -8 -8 -9 -9 -10 -11 -12 -14 -15 -17 -19 -20 -21 -21 -21 -21 -20 -19 -18 -17 -16 -14 -12 -11 -9 -8 -6 -4 -3 -1 0 1 2 2 3 3 4 5 5 6 6 6 6 6 6 6 5 5 5 5 4 3 2 2 3 4 6 9 15 20 25 28 30 31 31 -9 -9 -10 -12 -14 -15 -16 -16 -15 -13 -11 -10 -8 -7 -6 -4 -3 -1 1 2 2 1 -3 -6 -9 -11 -11 -11 -11 -11 -11 -11 -11 -10 -9 -8 -8 -8 -9 -10 -9 -7 -4 -1 -3 -7 -11 -13 -14 -13 -12 -11 -11 -10 -10 -12 -15 -18 -19 -16 -11 -11 -12 -13 -13 -12 -11 -11 -12 -13 -13 -10 -6 -4 -5 -6 -8 -11 -13 -11 -4 10 28 35 39 41 43 43 42 39 36 36 39 44 44 42 39 37 35 32 30 29 28 29 31 34 35 35 34 33 32 32 32 32 32 33 33 33 33 33 34 34 35 36 37 37 38 38 38 38 37 36 34 32 30 28 26 24 23 22 21 20 19 18 16 15 14 13 13 12 11 10 9 7 6 4 3 2 1 0 -1 -2 -2 -3 -4 -5 -5 -6 -7 -8 -8 -8 -8 -7 -7 -6 -6 -6 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -8 -9 -10 -11 -12 -12 -12 -11 -10 -10 -10 -10 -10 -11 -12 -12 -13 -14 -15 -15 -15 -16 -16 -17 -17 -17 -17 -17 -16 -16 -16 -16 -16 -16 -16 -15 -14 -14 -13 -13 -12 -12 -11 -8 -5 -2 1 3 4 2 0 -1 -1 -1 -1 -1 -2 -3 -3 -3 -4 -3 -3 -2 -1 0 2 3 3 3 2 0 -1 -2 -2 -2 -3 -3 -3 -4 -4 -4 -4 -4 -5 -6 -6 -7 -8 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -7 -6 -5 -5 -6 -7 -7 -7 -7 -6 -4 -2 0 1 1 -1 -3 -7 -9 -11 -12 -13 -12 -12 -12 -12 -13 -13 -13 -12 -11 -9 -7 -5 -5 -6 -8 -11 -13 -15 -17 -18 -18 -18 -18 -19 -20 -21 -22 -22 -23 -23 -22 -22 -21 -19 -16 -12 -9 -8 -8 -9 -10 -12 -13 -15 -16 -17 -19 -20 -22 -23 -23 -23 -22 -21 -20 -20 -19 -18 -16 -14 -12 -11 -9 -7 -5 -3 -1 0 1 2 3 3 4 4 5 5 6 6 6 7 6 6 6 6 5 5 5 4 3 2 2 3 4 6 10 15 21 25 28 30 31 -7 -6 -7 -8 -10 -11 -12 -11 -10 -8 -8 -6 -5 -4 -4 -4 -4 -5 -5 -4 -3 -2 -2 -4 -7 -10 -11 -11 -11 -12 -12 -12 -12 -11 -10 -9 -8 -7 -8 -9 -9 -9 -8 -4 -2 -3 -6 -10 -13 -14 -14 -14 -13 -13 -13 -13 -13 -14 -15 -15 -12 -10 -10 -12 -13 -12 -12 -12 -13 -14 -13 -8 -3 0 -0 -3 -7 -11 -12 -8 2 18 35 38 40 42 44 44 43 39 37 37 40 44 43 40 38 37 36 34 31 30 30 31 33 35 36 36 35 33 32 32 32 32 33 33 33 33 33 34 35 36 36 37 38 39 39 40 40 40 39 38 37 35 32 30 28 26 24 23 22 22 20 19 17 16 15 14 14 13 13 12 10 9 8 6 5 4 3 2 1 0 -1 -2 -3 -3 -4 -5 -6 -7 -7 -7 -7 -6 -6 -6 -5 -5 -5 -6 -6 -6 -7 -7 -7 -7 -7 -6 -6 -6 -6 -7 -9 -10 -11 -11 -12 -11 -11 -11 -10 -10 -10 -11 -11 -12 -13 -13 -13 -13 -13 -14 -14 -15 -16 -16 -16 -16 -16 -15 -15 -15 -16 -16 -16 -15 -15 -14 -13 -12 -12 -11 -10 -8 -5 -1 2 5 6 4 3 2 1 1 1 1 0 -0 -1 -2 -2 -2 -2 -2 -1 1 2 4 5 5 4 3 2 1 -0 -0 -1 -1 -1 -2 -2 -2 -2 -3 -3 -4 -4 -5 -6 -7 -8 -8 -9 -8 -8 -8 -8 -8 -8 -7 -6 -6 -5 -5 -6 -7 -8 -8 -8 -6 -4 -1 1 2 1 -1 -4 -7 -10 -11 -12 -11 -11 -11 -11 -12 -12 -12 -12 -10 -9 -6 -4 -3 -3 -4 -7 -10 -12 -15 -16 -17 -18 -18 -19 -20 -21 -22 -22 -22 -22 -22 -21 -21 -19 -17 -14 -12 -9 -8 -9 -10 -11 -13 -16 -17 -18 -18 -19 -21 -23 -24 -25 -24 -23 -23 -22 -22 -21 -20 -18 -17 -15 -12 -10 -7 -4 -2 -1 1 2 3 3 4 4 5 5 6 6 6 7 7 7 6 6 5 5 5 5 4 3 2 2 3 4 6 10 16 21 25 28 30 -5 -5 -6 -7 -8 -9 -9 -9 -9 -9 -8 -8 -7 -7 -7 -8 -10 -11 -13 -13 -12 -10 -7 -5 -6 -8 -10 -10 -11 -12 -12 -12 -12 -12 -12 -10 -9 -7 -7 -7 -7 -8 -9 -8 -6 -4 -4 -6 -9 -12 -13 -13 -13 -13 -14 -15 -14 -14 -13 -12 -10 -10 -10 -12 -13 -15 -15 -15 -16 -17 -15 -11 -3 4 10 14 18 25 24 25 29 34 38 39 40 42 43 43 42 41 40 40 42 45 44 42 41 40 37 31 27 28 30 30 29 30 34 35 35 33 33 33 33 33 33 33 34 34 34 35 36 37 38 38 39 40 41 41 42 42 42 41 39 37 35 32 30 28 26 25 23 22 21 19 18 16 15 15 14 14 14 13 12 11 10 9 7 6 5 4 3 1 0 -1 -1 -2 -3 -4 -5 -5 -6 -6 -6 -6 -5 -5 -5 -4 -5 -5 -5 -6 -6 -6 -7 -6 -6 -6 -5 -5 -5 -6 -7 -8 -9 -10 -10 -11 -11 -11 -11 -11 -10 -10 -11 -11 -12 -12 -12 -11 -11 -12 -13 -14 -14 -15 -15 -15 -14 -14 -14 -14 -15 -15 -15 -15 -15 -14 -13 -12 -12 -11 -10 -8 -5 -1 3 6 8 7 6 4 4 4 4 3 3 2 1 0 -0 -1 -1 -1 0 1 3 4 6 6 6 5 4 3 2 2 2 1 1 1 0 0 -0 -1 -1 -2 -3 -4 -5 -6 -7 -7 -8 -8 -8 -8 -8 -8 -8 -7 -6 -6 -5 -5 -6 -7 -8 -8 -9 -7 -6 -3 -1 2 2 1 -2 -5 -8 -10 -10 -11 -10 -10 -10 -10 -11 -11 -11 -10 -9 -6 -4 -1 -0 -1 -3 -6 -9 -12 -14 -16 -17 -18 -18 -19 -20 -21 -22 -22 -22 -21 -20 -19 -18 -17 -15 -13 -11 -10 -9 -9 -11 -13 -15 -17 -18 -18 -18 -20 -22 -24 -25 -25 -25 -25 -24 -25 -24 -24 -23 -21 -19 -16 -13 -10 -7 -4 -2 0 2 3 3 4 4 5 5 5 6 6 6 6 6 6 5 5 4 5 5 5 4 3 2 2 3 4 7 11 17 22 26 28 -6 -7 -8 -10 -10 -11 -11 -12 -13 -14 -14 -14 -14 -14 -14 -15 -16 -17 -17 -17 -17 -15 -11 -8 -7 -7 -9 -9 -9 -10 -11 -12 -12 -13 -13 -12 -10 -9 -7 -6 -5 -6 -7 -8 -8 -7 -6 -5 -6 -9 -11 -12 -12 -12 -12 -13 -14 -13 -13 -11 -9 -8 -9 -10 -12 -14 -16 -17 -19 -20 -19 -15 -6 8 23 34 37 39 37 37 37 38 38 39 41 43 45 46 48 51 51 50 49 48 46 45 44 42 37 30 27 30 33 34 31 28 30 33 35 34 34 33 34 34 34 34 35 35 36 37 38 39 40 40 41 42 42 43 43 44 44 43 42 40 37 35 32 29 27 26 24 23 21 20 18 17 16 15 15 15 14 14 14 13 12 11 10 8 7 5 4 3 2 1 -0 -2 -2 -3 -4 -4 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -5 -5 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -6 -6 -7 -8 -9 -11 -11 -11 -11 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -11 -12 -12 -13 -13 -13 -13 -13 -13 -13 -14 -14 -15 -15 -15 -15 -14 -13 -12 -11 -9 -8 -5 -1 4 8 9 9 8 7 6 6 6 6 5 4 3 3 2 2 1 1 2 3 4 5 7 8 8 8 7 5 5 4 4 3 3 3 2 2 2 2 1 0 -1 -2 -3 -4 -5 -6 -6 -7 -7 -7 -8 -8 -8 -7 -7 -6 -6 -5 -5 -6 -7 -8 -9 -8 -7 -5 -2 1 2 2 1 -2 -5 -8 -9 -9 -9 -8 -8 -8 -9 -10 -10 -10 -10 -7 -4 -1 1 2 2 -1 -4 -8 -12 -14 -15 -17 -17 -18 -19 -20 -21 -21 -21 -20 -19 -18 -16 -15 -14 -13 -12 -11 -10 -9 -10 -11 -14 -16 -17 -18 -18 -19 -21 -23 -24 -25 -25 -26 -26 -27 -27 -28 -27 -25 -23 -21 -17 -14 -10 -6 -3 -0 2 3 4 4 5 5 5 5 5 5 5 6 5 5 5 4 4 4 5 6 5 4 3 2 2 3 4 7 12 17 22 26 -8 -10 -12 -13 -13 -13 -13 -14 -16 -17 -18 -18 -19 -19 -19 -19 -18 -17 -15 -14 -13 -12 -10 -8 -6 -6 -8 -9 -9 -10 -11 -12 -12 -13 -13 -13 -12 -11 -10 -9 -8 -7 -7 -8 -8 -8 -9 -8 -7 -7 -8 -10 -10 -11 -11 -11 -12 -12 -12 -11 -10 -9 -8 -9 -11 -13 -16 -18 -21 -22 -22 -20 -7 16 35 45 47 44 42 40 40 39 38 39 42 45 49 51 54 54 53 51 50 49 44 42 42 40 34 29 28 30 34 35 33 28 29 32 35 35 35 35 35 35 35 35 36 37 37 38 39 40 42 42 43 44 44 44 45 45 46 45 44 42 40 37 34 32 29 27 25 24 22 20 19 17 17 16 16 15 15 15 15 15 14 13 12 10 9 7 5 4 3 1 0 -1 -2 -3 -3 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -5 -5 -7 -8 -9 -10 -10 -9 -9 -8 -8 -9 -9 -8 -8 -8 -9 -9 -9 -10 -10 -10 -11 -11 -11 -12 -12 -13 -13 -14 -14 -15 -15 -14 -14 -12 -11 -9 -8 -5 -1 4 8 11 11 11 9 8 8 8 8 7 6 6 5 5 4 4 4 4 4 5 7 8 9 10 10 9 8 7 6 6 5 5 5 4 4 4 4 3 2 1 0 -1 -2 -3 -4 -5 -5 -6 -7 -7 -8 -8 -8 -8 -7 -7 -6 -6 -6 -6 -7 -8 -8 -8 -6 -4 -1 2 3 2 1 -2 -5 -6 -7 -7 -6 -6 -6 -7 -8 -9 -10 -10 -8 -5 -2 2 5 5 4 1 -4 -8 -11 -13 -15 -16 -17 -18 -19 -20 -20 -20 -19 -18 -17 -15 -14 -13 -12 -11 -11 -10 -9 -9 -10 -12 -14 -16 -18 -19 -19 -20 -22 -23 -24 -25 -26 -27 -28 -29 -30 -30 -29 -27 -24 -21 -17 -13 -8 -4 -1 1 3 4 4 5 5 5 5 5 5 5 5 5 4 4 3 3 4 5 6 7 5 4 3 2 2 3 5 8 13 18 23 -8 -10 -10 -10 -10 -9 -10 -10 -11 -11 -12 -13 -14 -14 -15 -15 -15 -12 -9 -7 -5 -5 -5 -4 -2 -2 -5 -9 -10 -10 -10 -10 -11 -12 -13 -14 -14 -14 -13 -13 -12 -12 -11 -11 -10 -10 -11 -11 -11 -9 -7 -7 -8 -9 -10 -10 -10 -10 -10 -11 -10 -10 -9 -9 -10 -12 -15 -18 -22 -25 -26 -22 4 28 44 50 51 48 45 43 41 40 40 42 45 48 50 52 53 50 47 46 45 43 37 35 36 37 33 30 29 29 31 34 33 30 31 32 35 36 36 36 36 36 37 37 37 38 39 40 41 42 44 45 45 46 46 46 47 47 47 47 46 44 42 39 37 34 31 29 27 25 23 21 19 18 17 17 17 16 16 16 16 16 16 15 14 12 10 8 7 5 4 2 1 -0 -1 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -2 -2 -3 -4 -4 -5 -5 -4 -5 -5 -5 -5 -5 -4 -3 -3 -3 -3 -5 -7 -8 -8 -8 -8 -7 -7 -7 -6 -7 -7 -7 -7 -7 -8 -8 -8 -8 -8 -9 -10 -11 -11 -12 -12 -13 -13 -14 -14 -14 -14 -12 -11 -9 -8 -5 -1 3 8 12 13 12 11 10 10 10 9 9 8 8 7 7 7 7 6 6 6 7 8 9 11 12 12 11 10 9 8 7 7 7 6 6 6 5 5 5 4 3 2 1 0 -1 -2 -3 -4 -5 -6 -7 -7 -8 -8 -8 -8 -7 -7 -6 -6 -6 -6 -7 -8 -8 -7 -5 -2 1 3 4 3 0 -2 -4 -5 -5 -4 -3 -4 -5 -7 -9 -10 -11 -10 -7 -3 2 6 8 7 5 1 -3 -7 -10 -12 -13 -15 -16 -17 -18 -19 -20 -19 -18 -17 -15 -13 -11 -10 -10 -9 -9 -9 -8 -9 -10 -13 -15 -18 -19 -20 -20 -21 -23 -24 -25 -25 -26 -28 -30 -32 -32 -31 -29 -27 -25 -21 -16 -11 -7 -3 0 2 4 5 5 6 6 5 5 5 5 5 4 4 3 3 3 4 5 7 7 7 5 3 3 2 3 4 6 10 14 19 -4 -3 -2 -1 0 0 0 0 1 1 1 0 -1 -3 -4 -5 -6 -6 -5 -4 -3 -3 -4 -4 -3 -2 -2 -5 -9 -10 -9 -8 -8 -9 -11 -13 -14 -15 -16 -16 -17 -17 -17 -16 -15 -14 -13 -14 -14 -12 -10 -7 -6 -7 -8 -9 -9 -9 -9 -9 -10 -11 -11 -11 -10 -11 -13 -17 -21 -26 -24 -1 26 41 49 53 53 51 48 45 44 43 44 45 47 49 49 49 47 44 42 39 36 33 29 29 32 34 34 33 31 29 29 31 33 33 33 32 33 35 37 38 38 38 38 39 39 40 41 42 43 45 46 47 48 49 49 49 49 49 49 49 48 46 44 42 39 36 33 31 28 26 24 22 20 19 18 18 17 17 17 17 17 17 17 16 15 13 11 10 8 6 5 3 2 0 -1 -2 -2 -2 -2 -2 -3 -3 -3 -3 -2 -2 -1 -1 -1 -1 -2 -3 -3 -4 -3 -3 -3 -4 -4 -5 -4 -4 -2 -1 -1 -1 -2 -3 -5 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -6 -6 -7 -7 -8 -9 -10 -10 -10 -11 -12 -12 -13 -13 -13 -12 -11 -9 -8 -5 -2 3 8 12 14 14 13 11 11 11 11 11 10 10 9 9 9 9 9 8 8 9 10 11 12 13 14 13 12 11 10 9 8 8 8 8 7 7 6 6 5 4 4 3 2 1 -0 -1 -2 -4 -5 -6 -7 -7 -8 -8 -8 -8 -7 -6 -6 -5 -5 -6 -7 -8 -8 -6 -4 -0 2 4 4 3 0 -1 -2 -3 -3 -2 -3 -4 -6 -8 -10 -11 -11 -9 -5 0 5 9 10 9 6 1 -3 -6 -8 -10 -12 -13 -14 -16 -18 -19 -19 -18 -16 -14 -12 -11 -9 -8 -8 -7 -7 -7 -8 -9 -11 -14 -17 -19 -20 -20 -21 -22 -24 -25 -26 -26 -27 -29 -31 -32 -31 -30 -29 -27 -23 -19 -14 -10 -6 -2 1 3 4 5 5 6 6 5 5 5 5 4 4 3 2 2 3 5 7 8 7 6 4 3 3 3 3 4 7 10 15 3 5 6 8 8 7 7 7 7 8 9 8 7 6 4 1 -2 -5 -7 -8 -8 -7 -7 -7 -7 -6 -4 -3 -6 -8 -9 -8 -6 -7 -8 -10 -12 -14 -16 -18 -20 -21 -22 -22 -20 -18 -16 -16 -16 -15 -14 -11 -8 -6 -6 -7 -8 -8 -8 -9 -10 -11 -12 -12 -11 -10 -11 -13 -16 -17 -6 41 44 48 52 54 55 53 51 50 49 49 49 49 48 48 47 45 43 41 38 34 29 25 23 26 31 35 36 36 33 31 30 31 33 33 33 32 31 33 38 39 39 39 40 40 41 42 43 44 45 47 48 49 50 51 52 51 51 50 50 50 50 48 47 44 41 38 35 33 30 28 25 23 21 20 19 18 18 18 18 18 18 18 17 16 15 14 12 11 9 7 6 4 3 1 0 -1 -1 -1 -1 -1 -1 -2 -2 -2 -2 -1 -1 -0 -0 -1 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -3 -2 -1 -0 0 0 0 -1 -2 -3 -4 -5 -5 -4 -3 -3 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -6 -6 -7 -7 -7 -8 -8 -9 -10 -11 -11 -11 -11 -10 -9 -8 -6 -3 1 7 12 14 15 14 13 12 12 12 12 12 11 11 11 11 11 11 10 10 10 11 12 13 14 15 15 14 13 12 11 10 10 10 9 9 8 7 7 6 5 5 4 3 2 1 -0 -1 -2 -3 -4 -5 -6 -7 -7 -7 -7 -7 -6 -6 -5 -5 -5 -6 -7 -7 -7 -5 -2 1 4 5 5 3 1 -1 -1 -2 -2 -3 -4 -6 -8 -10 -12 -12 -10 -7 -2 4 8 11 11 9 6 2 -2 -4 -6 -8 -9 -11 -14 -16 -18 -19 -18 -17 -15 -12 -10 -8 -7 -7 -6 -6 -7 -7 -8 -10 -13 -15 -18 -19 -19 -20 -21 -23 -25 -26 -26 -27 -28 -30 -31 -31 -30 -29 -28 -25 -22 -18 -14 -9 -5 -1 1 4 5 5 5 5 5 5 5 5 5 4 3 2 2 3 5 6 8 8 6 4 3 3 3 3 3 5 7 11 2 3 4 4 3 2 2 2 2 3 4 4 4 3 3 1 -2 -6 -10 -13 -13 -12 -10 -9 -9 -9 -7 -4 -3 -5 -7 -8 -7 -6 -7 -9 -10 -11 -13 -16 -20 -23 -25 -26 -25 -22 -20 -18 -17 -18 -18 -15 -12 -8 -6 -5 -6 -7 -8 -9 -10 -12 -13 -14 -13 -11 -9 -7 -2 14 37 44 46 50 54 57 57 57 56 55 54 54 53 51 48 46 44 43 41 38 33 28 22 20 21 26 30 34 37 38 37 35 32 30 30 31 30 30 30 33 38 40 40 41 41 42 43 44 45 46 48 49 51 52 53 54 55 54 53 52 52 51 51 50 49 46 43 40 37 34 32 29 27 25 23 21 20 19 19 19 19 19 19 18 18 17 16 14 13 11 10 8 7 5 3 2 1 0 -0 -0 -0 -0 -0 -1 -1 -1 -1 -1 -0 0 1 0 -1 -1 -1 -1 -0 0 0 -0 -1 -1 -1 -1 0 1 1 1 1 1 -0 -1 -3 -3 -3 -3 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -5 -6 -7 -8 -9 -9 -9 -8 -7 -6 -4 -0 5 10 14 16 15 14 13 13 13 13 13 13 12 12 13 13 13 12 11 11 12 13 14 15 16 16 15 14 13 12 12 11 11 11 11 10 9 7 7 6 5 5 4 3 2 1 -0 -1 -2 -3 -4 -5 -5 -6 -6 -6 -6 -6 -5 -5 -4 -5 -5 -6 -7 -7 -6 -4 -0 3 5 5 4 3 1 -0 -2 -2 -3 -4 -6 -8 -10 -11 -12 -12 -9 -5 1 6 11 13 12 10 6 3 0 -2 -4 -6 -8 -11 -14 -17 -19 -18 -17 -15 -12 -10 -8 -7 -6 -6 -6 -6 -7 -8 -9 -11 -14 -16 -17 -17 -18 -19 -22 -24 -26 -26 -27 -28 -29 -29 -29 -29 -29 -28 -27 -24 -21 -18 -14 -9 -5 -1 2 4 5 5 5 5 5 5 5 5 4 3 2 2 3 4 6 8 8 7 5 3 2 2 2 3 3 5 7 -7 -7 -7 -8 -10 -10 -10 -10 -9 -8 -8 -7 -7 -5 -4 -3 -3 -5 -9 -12 -13 -12 -10 -8 -7 -7 -7 -6 -3 -2 -4 -7 -9 -9 -9 -10 -10 -10 -11 -13 -17 -21 -25 -27 -26 -25 -23 -21 -20 -20 -20 -19 -16 -12 -8 -5 -4 -5 -6 -8 -10 -13 -15 -16 -16 -14 -10 -5 3 18 38 45 48 52 56 58 59 59 58 57 56 54 52 50 47 44 41 39 37 32 27 21 18 19 24 28 32 35 38 41 40 38 34 31 29 29 31 32 33 33 33 37 40 42 42 44 44 45 47 48 50 52 53 55 56 57 58 57 56 55 54 53 53 52 50 48 45 42 39 36 33 31 28 26 24 22 20 19 19 19 19 19 19 19 18 17 16 15 13 12 11 9 7 6 4 3 2 1 0 0 0 1 1 1 0 -0 -1 -0 0 1 2 1 1 0 0 1 2 2 2 2 2 1 1 2 2 2 2 2 2 1 1 0 -1 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -2 -2 -2 -2 -1 -1 -0 0 -0 -1 -1 -3 -4 -5 -6 -6 -7 -6 -6 -5 -2 3 9 14 16 17 15 14 14 14 14 14 14 14 14 14 14 14 13 13 12 12 13 14 15 16 16 16 15 14 14 13 13 13 13 12 11 10 8 7 7 6 5 5 4 3 2 1 0 -1 -2 -3 -3 -4 -4 -4 -5 -5 -5 -5 -4 -4 -4 -4 -5 -6 -7 -7 -5 -2 1 4 5 5 4 2 1 -1 -2 -3 -4 -6 -7 -8 -10 -11 -11 -11 -8 -3 4 10 14 15 14 11 7 5 2 0 -2 -4 -8 -12 -16 -18 -19 -18 -16 -13 -10 -8 -6 -6 -6 -6 -6 -7 -7 -8 -10 -11 -13 -14 -15 -16 -17 -19 -22 -24 -26 -26 -27 -27 -28 -28 -28 -27 -27 -27 -26 -24 -21 -18 -14 -9 -4 -0 3 4 4 5 5 5 5 5 5 4 3 2 2 2 4 6 8 8 7 5 3 2 2 2 2 2 3 5 -16 -17 -18 -19 -20 -21 -20 -19 -18 -18 -17 -17 -15 -13 -9 -6 -3 -4 -6 -9 -10 -11 -9 -7 -5 -4 -5 -5 -4 -1 -0 -2 -7 -11 -13 -14 -14 -14 -12 -12 -15 -19 -23 -26 -26 -25 -25 -24 -23 -23 -23 -21 -18 -14 -9 -5 -3 -3 -3 -6 -9 -12 -15 -17 -17 -17 -15 -12 -2 18 40 46 49 53 56 57 58 59 58 57 55 54 52 48 45 41 38 35 31 26 20 17 18 23 28 30 31 34 39 42 41 39 37 34 31 29 30 32 32 31 30 33 37 41 43 44 45 46 48 50 52 54 56 57 58 59 60 60 59 58 56 55 54 54 52 50 47 43 40 38 35 32 30 27 25 23 21 20 19 19 20 20 19 19 18 17 16 15 14 13 12 10 8 7 5 4 3 2 1 1 1 2 2 2 2 1 1 1 1 2 3 3 3 2 2 3 4 4 4 4 4 4 4 4 4 3 3 2 2 2 1 1 0 0 0 -0 -0 -0 -0 0 0 1 1 1 1 1 0 0 0 1 1 2 3 3 4 3 3 2 1 -0 -2 -3 -4 -4 -5 -5 -3 1 6 12 16 18 17 15 15 15 16 16 16 15 15 15 15 15 14 14 13 13 13 14 15 16 17 17 17 16 15 14 14 14 14 13 12 11 9 8 8 7 6 5 4 4 3 2 1 0 -1 -1 -2 -2 -2 -3 -3 -3 -4 -4 -4 -3 -3 -3 -4 -5 -6 -7 -6 -4 -2 2 4 5 5 4 2 -0 -2 -3 -4 -5 -5 -6 -7 -8 -9 -10 -9 -5 2 9 15 18 18 15 12 9 7 5 3 -0 -4 -9 -14 -17 -18 -18 -17 -14 -11 -8 -6 -5 -5 -5 -6 -6 -6 -7 -7 -9 -10 -11 -12 -12 -13 -16 -19 -22 -24 -25 -25 -25 -26 -26 -25 -25 -25 -26 -26 -26 -25 -22 -18 -13 -8 -3 1 3 4 5 5 5 5 5 5 4 4 2 2 2 4 6 8 9 8 6 3 2 2 1 1 2 2 4 -20 -21 -22 -23 -24 -23 -22 -21 -20 -20 -19 -19 -18 -16 -12 -8 -4 -4 -5 -6 -8 -10 -9 -7 -5 -3 -3 -4 -4 -2 2 3 1 -5 -10 -14 -16 -17 -18 -17 -18 -20 -22 -25 -25 -25 -25 -26 -27 -27 -26 -22 -18 -12 -7 -4 -3 -2 -1 -2 -6 -9 -12 -15 -16 -16 -16 -17 -15 7 41 45 47 51 54 57 59 60 59 56 54 53 51 47 44 40 36 32 26 20 17 17 21 27 29 29 30 32 37 41 40 40 40 38 33 29 28 30 32 33 32 31 33 38 42 44 45 47 48 51 53 56 58 59 60 61 62 62 62 60 59 57 56 55 54 51 49 45 42 39 36 34 31 29 26 24 22 21 20 20 20 20 20 19 19 18 17 16 15 14 12 11 9 8 6 5 4 3 3 2 2 3 3 3 3 3 2 2 3 3 4 4 4 4 5 5 6 6 6 6 6 6 6 6 5 4 4 3 2 2 1 1 2 2 2 1 1 1 1 1 2 3 3 4 3 3 2 2 2 3 3 4 5 5 6 6 6 6 5 4 3 2 0 -1 -2 -3 -3 -1 4 10 15 19 18 17 16 16 16 17 17 16 16 16 16 16 16 15 14 14 14 14 15 16 17 18 18 17 16 15 15 14 14 14 13 12 10 9 9 8 7 6 5 5 4 3 2 1 0 -0 -1 -1 -1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -5 -5 -6 -5 -3 -0 2 4 5 5 4 2 0 -1 -2 -3 -3 -4 -5 -5 -6 -8 -8 -5 1 9 16 21 21 20 17 14 11 9 7 4 0 -5 -11 -15 -17 -18 -17 -15 -11 -8 -5 -3 -3 -4 -4 -5 -5 -5 -5 -6 -7 -8 -8 -8 -9 -10 -13 -17 -20 -21 -22 -22 -23 -23 -22 -21 -22 -24 -26 -27 -26 -25 -21 -17 -11 -5 -1 2 4 5 5 5 5 5 5 4 3 2 2 2 3 6 9 10 9 6 4 2 2 1 1 1 1 2 -17 -18 -18 -19 -18 -18 -17 -16 -15 -15 -16 -17 -17 -16 -14 -11 -7 -6 -6 -8 -10 -12 -12 -11 -9 -6 -4 -4 -4 -2 1 4 5 3 -2 -7 -11 -14 -17 -18 -19 -20 -22 -23 -24 -24 -26 -27 -30 -31 -29 -25 -18 -10 -3 1 1 1 1 0 -3 -8 -11 -12 -14 -14 -15 -17 -21 -13 10 40 45 50 54 58 60 61 58 55 53 52 50 47 43 39 35 29 24 18 17 19 24 28 28 27 27 31 36 40 41 43 44 42 35 30 28 30 33 35 34 31 31 34 39 43 45 47 49 51 54 57 59 61 62 63 64 64 64 63 61 59 58 57 55 53 50 47 44 41 38 35 33 30 28 25 23 21 21 20 21 21 21 20 20 18 17 16 15 14 13 12 11 9 8 7 6 5 4 4 4 4 4 4 4 4 4 4 5 5 6 6 6 7 7 7 8 8 8 8 8 7 7 7 6 5 5 4 3 2 2 2 3 3 3 2 2 2 2 3 3 4 5 6 5 5 4 4 4 4 4 4 5 6 6 7 7 8 7 7 7 6 5 4 2 0 -1 -1 2 7 14 19 20 19 17 17 17 18 18 18 17 17 17 17 17 16 16 15 14 15 15 16 17 18 19 18 17 16 15 15 15 14 13 13 12 11 10 8 7 7 6 6 5 4 3 2 1 1 0 0 -0 -0 -0 -0 -0 -1 -1 -1 -1 -1 -1 -2 -3 -4 -4 -5 -4 -2 1 3 5 6 5 4 3 1 0 -0 -1 -1 -2 -2 -3 -4 -4 -3 2 9 17 23 25 24 22 19 16 13 11 9 5 1 -5 -11 -15 -17 -16 -14 -11 -7 -3 -1 -0 -1 -1 -2 -2 -2 -2 -3 -4 -4 -4 -4 -3 -3 -6 -9 -13 -16 -17 -18 -18 -18 -17 -17 -18 -20 -23 -26 -27 -26 -23 -19 -14 -8 -3 1 3 5 5 5 5 5 5 4 3 2 1 1 3 6 9 10 10 7 5 3 2 1 1 0 0 1 -9 -9 -9 -8 -8 -8 -8 -8 -9 -10 -11 -13 -14 -15 -15 -14 -12 -11 -12 -14 -15 -16 -17 -16 -13 -9 -6 -4 -4 -4 -2 1 3 4 3 0 -4 -8 -12 -15 -17 -19 -20 -22 -22 -23 -24 -27 -30 -33 -33 -28 -20 -10 2 11 12 8 5 2 -2 -8 -10 -10 -11 -13 -14 -17 -21 -25 -16 28 43 49 54 59 61 60 57 54 51 50 49 46 43 39 34 28 23 19 19 22 25 26 26 25 26 29 34 39 43 47 47 44 38 33 30 31 35 36 35 34 32 32 34 38 44 47 49 52 55 58 60 62 64 64 65 65 65 64 63 61 60 58 56 54 52 49 46 43 39 37 34 32 29 27 24 22 22 21 21 22 22 21 21 20 18 17 16 15 14 13 12 11 10 8 7 7 6 5 5 5 5 5 5 6 6 6 7 7 8 8 9 9 9 10 10 10 10 10 10 9 9 8 7 6 6 4 3 3 3 4 4 4 4 3 3 3 3 4 5 6 7 7 7 7 6 5 5 4 4 4 4 4 5 6 6 7 7 8 9 9 9 8 7 5 2 1 2 6 11 18 21 21 19 18 18 19 19 18 18 18 18 18 18 17 17 16 15 15 15 16 17 19 19 19 18 17 16 16 15 15 14 14 13 12 11 10 8 7 7 7 6 5 4 3 2 1 1 1 1 1 1 1 1 1 1 1 1 1 0 -0 -1 -2 -2 -3 -3 -2 0 2 5 7 7 7 6 5 3 2 2 1 1 0 0 0 -0 0 3 9 17 24 28 28 26 23 20 18 15 13 11 7 1 -5 -10 -13 -14 -12 -9 -5 -1 2 3 3 3 2 2 1 1 1 -0 -1 -0 1 3 4 3 -1 -5 -9 -11 -11 -12 -12 -12 -11 -12 -14 -18 -23 -25 -25 -24 -21 -16 -10 -5 -1 2 4 5 6 6 5 5 4 3 2 1 1 2 5 9 11 11 8 6 4 3 2 1 0 -0 0 -1 -1 -1 -2 -3 -5 -7 -9 -9 -9 -9 -9 -9 -11 -12 -13 -14 -15 -16 -17 -18 -18 -18 -18 -16 -11 -7 -4 -4 -5 -6 -5 -3 -1 1 1 0 -2 -5 -8 -11 -14 -16 -18 -20 -21 -22 -24 -27 -31 -33 -31 -24 -13 4 22 25 21 14 7 1 -9 -9 -8 -9 -10 -12 -16 -21 -26 -21 13 39 48 54 59 61 59 55 51 49 48 48 45 42 38 34 29 24 22 23 25 26 26 25 25 26 29 32 36 43 48 49 47 43 38 35 34 36 36 37 36 35 32 30 32 39 45 50 52 55 58 61 63 65 66 66 66 66 65 64 63 61 59 57 56 54 51 48 45 41 38 36 34 31 28 25 24 23 22 22 23 23 23 22 21 19 18 17 16 16 15 14 13 11 10 9 8 8 7 7 6 6 6 7 7 8 8 9 9 10 11 11 12 12 13 13 13 13 12 12 11 10 9 9 8 6 5 4 4 5 5 6 5 5 4 4 4 4 5 6 6 7 8 8 8 7 5 4 3 2 1 1 1 2 2 3 3 4 5 7 8 10 10 10 9 7 5 4 5 10 16 21 22 21 20 19 19 19 19 19 18 18 18 18 18 18 17 16 16 16 16 17 19 20 20 20 19 18 17 16 16 15 15 14 13 12 11 9 8 8 7 7 6 5 4 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 0 -0 -1 -1 -1 0 2 5 7 9 9 9 8 6 5 4 3 3 3 3 4 4 5 6 10 17 25 30 31 30 27 24 22 20 18 16 13 8 3 -3 -7 -9 -9 -7 -3 1 4 6 7 7 7 6 6 5 4 4 3 4 6 8 10 10 8 3 -1 -3 -4 -5 -5 -5 -5 -5 -7 -11 -16 -20 -22 -23 -21 -17 -12 -7 -3 0 3 4 5 5 5 5 4 3 2 1 0 1 4 8 11 12 10 8 6 5 3 2 1 0 0 -1 -3 -6 -9 -12 -15 -15 -14 -12 -9 -6 -4 -4 -5 -6 -9 -11 -12 -14 -15 -15 -16 -17 -19 -18 -15 -10 -6 -5 -6 -8 -9 -9 -7 -5 -4 -2 -2 -2 -3 -5 -7 -10 -12 -15 -16 -18 -19 -22 -25 -30 -31 -30 -23 -8 17 28 28 22 14 7 -4 -4 -4 -5 -7 -10 -14 -20 -26 -25 1 32 44 53 60 62 58 53 49 46 46 46 44 41 37 34 30 26 26 28 28 28 28 28 28 29 29 30 31 37 45 49 48 45 42 40 38 36 34 36 37 36 34 31 30 34 41 47 52 56 59 62 64 66 67 67 67 66 66 65 64 62 60 58 56 55 53 50 47 43 40 38 36 33 30 27 25 24 23 23 23 23 23 23 22 21 19 18 18 17 16 15 14 13 12 11 10 10 9 8 8 8 8 8 9 9 10 11 12 12 13 14 14 15 15 15 15 15 14 13 12 12 11 10 9 7 6 6 6 6 7 7 6 6 6 5 5 5 5 6 7 8 8 8 7 6 4 2 0 -1 -2 -3 -3 -3 -3 -3 -2 -1 0 2 5 7 9 11 12 10 8 7 7 9 15 20 23 23 22 20 20 20 20 19 19 19 19 19 19 18 18 17 16 16 16 17 18 19 20 21 21 20 18 17 17 16 16 15 15 13 12 11 10 9 8 8 7 6 5 4 4 3 3 3 3 3 3 3 3 4 4 4 4 4 3 2 2 2 1 1 1 2 3 5 7 10 11 12 11 10 8 6 5 4 5 6 8 9 10 10 11 17 25 31 34 33 31 28 25 23 21 20 18 15 10 6 1 -3 -5 -4 -2 2 6 8 10 11 11 11 11 10 9 8 7 7 10 12 15 16 15 11 7 5 3 3 2 2 2 2 1 -3 -8 -12 -16 -18 -19 -17 -14 -10 -6 -2 1 3 4 5 5 4 4 3 2 1 -0 0 3 8 11 13 12 10 8 7 5 4 3 2 1 -11 -14 -17 -19 -19 -18 -16 -12 -9 -5 -2 0 2 2 -0 -3 -5 -6 -7 -8 -11 -13 -16 -18 -19 -17 -14 -10 -8 -8 -9 -10 -11 -11 -11 -10 -8 -7 -6 -5 -4 -4 -4 -5 -7 -9 -11 -13 -15 -18 -23 -27 -32 -37 -37 -18 1 11 13 12 12 16 9 4 -0 -2 -5 -8 -14 -21 -21 1 25 42 55 63 64 58 52 47 45 45 45 42 40 37 34 31 30 32 32 32 31 32 34 33 31 29 28 29 36 45 50 48 45 44 42 38 33 30 30 32 35 38 39 38 35 36 42 50 56 59 62 65 66 67 67 67 67 66 66 64 63 61 59 57 56 54 52 49 45 42 40 38 35 31 28 26 24 24 24 24 24 24 24 23 22 20 19 19 18 18 17 16 15 14 13 12 11 11 10 9 9 9 10 10 11 12 13 14 15 16 16 17 18 18 18 17 17 16 15 14 13 12 11 10 9 8 7 8 8 8 8 7 7 7 6 6 6 6 7 7 8 8 8 7 5 3 0 -2 -3 -5 -6 -7 -7 -8 -8 -7 -7 -6 -4 -2 1 5 8 11 12 11 10 9 10 14 19 23 24 23 21 20 20 20 20 20 19 19 19 19 19 18 17 16 16 16 16 17 19 21 22 22 22 20 19 18 17 17 16 16 15 14 13 12 11 10 9 8 8 7 5 5 4 4 3 3 4 4 4 4 5 5 5 5 5 4 3 3 3 3 4 4 4 5 6 7 10 12 13 13 12 11 9 7 6 7 9 11 14 15 14 13 17 24 31 35 36 34 31 28 26 24 23 21 19 16 13 9 4 1 -1 -1 2 5 8 11 12 14 14 14 14 13 12 11 11 13 15 18 21 21 19 16 13 11 10 10 10 9 9 8 6 2 -3 -7 -10 -14 -15 -14 -12 -8 -5 -2 0 2 3 3 3 3 3 2 1 0 0 2 7 11 14 14 12 10 9 8 6 5 3 2 -18 -20 -20 -19 -16 -13 -9 -6 -3 -1 0 2 3 3 2 -0 -2 -2 -1 -2 -5 -10 -15 -17 -18 -18 -17 -15 -12 -10 -9 -10 -11 -12 -13 -13 -14 -14 -13 -13 -11 -9 -6 -4 -3 -2 -3 -4 -7 -11 -16 -20 -23 -28 -37 -48 -49 -40 -28 -15 -1 21 24 19 13 9 6 2 -3 -6 -3 10 26 42 56 63 64 59 52 46 44 45 44 38 35 33 32 34 37 37 36 36 36 37 38 37 34 31 28 29 35 41 41 37 37 40 38 34 32 33 33 31 31 35 39 38 33 31 35 44 53 59 62 65 67 68 68 68 67 67 66 65 64 62 60 58 57 55 53 50 47 44 42 40 37 33 30 27 25 25 24 24 25 25 24 23 23 22 21 20 20 19 18 17 16 15 14 14 13 12 11 11 11 11 11 12 13 14 15 16 17 18 19 19 20 20 20 19 18 17 16 15 14 13 12 11 10 9 9 9 8 8 8 8 8 8 8 7 7 7 7 8 8 8 7 6 4 2 -1 -3 -5 -6 -7 -8 -9 -10 -10 -10 -10 -10 -9 -8 -5 -2 2 7 10 12 12 12 12 14 19 22 25 24 23 22 21 21 21 20 20 20 20 20 20 19 18 17 16 15 15 16 18 20 22 24 24 23 21 20 18 17 17 16 16 15 14 13 12 11 10 9 9 8 7 6 5 5 4 4 4 5 5 5 5 6 6 6 6 5 4 4 4 5 6 7 7 7 7 8 10 12 14 15 15 13 12 10 9 10 12 15 18 19 19 16 17 22 30 37 39 37 34 31 28 26 25 24 23 21 18 15 11 7 3 1 1 3 6 9 12 14 16 17 18 17 16 15 14 15 17 21 24 26 26 23 21 18 17 17 16 16 15 14 12 10 7 4 1 -4 -10 -13 -13 -11 -7 -4 -2 -1 1 1 2 2 2 2 1 0 0 2 6 11 15 15 14 12 10 9 8 7 6 4 -20 -19 -15 -11 -7 -5 -3 -2 -2 -2 -3 -3 -2 -2 -2 -3 -3 -2 0 1 -1 -6 -13 -17 -17 -17 -18 -18 -17 -15 -13 -12 -11 -12 -12 -13 -15 -16 -18 -18 -17 -15 -13 -11 -8 -5 -2 -1 -1 -3 -6 -10 -14 -18 -25 -34 -41 -38 -30 -20 -12 20 27 27 23 19 15 11 7 4 4 12 25 40 53 61 63 59 52 45 42 42 41 36 33 33 34 38 41 42 41 41 41 41 39 37 33 29 29 31 32 33 32 29 29 31 32 32 33 35 34 31 29 31 35 38 36 35 38 41 43 49 58 64 67 68 68 68 68 67 67 66 64 63 61 60 58 56 54 52 49 47 45 42 39 35 31 28 26 25 25 25 25 25 25 24 24 23 22 22 21 20 20 19 18 17 16 15 14 14 13 13 12 12 12 13 14 16 17 18 19 20 21 21 22 22 22 21 20 19 18 17 16 15 14 13 12 11 10 9 9 8 8 9 9 9 9 8 8 8 8 9 9 8 7 6 4 1 -1 -3 -5 -7 -8 -9 -9 -10 -11 -11 -12 -12 -12 -12 -11 -9 -6 -1 5 9 12 14 14 16 19 22 25 25 24 23 22 22 21 21 20 20 20 20 20 20 19 18 17 15 14 15 16 19 21 24 25 25 23 22 20 18 18 17 17 16 15 15 14 12 12 11 10 9 8 7 6 5 5 5 5 5 5 6 6 6 6 7 7 6 5 5 5 6 7 9 10 10 9 9 10 12 14 16 17 16 15 14 13 14 16 18 20 22 22 20 18 21 28 37 41 40 37 33 31 29 27 26 25 24 22 19 16 12 7 3 0 0 2 6 9 13 16 18 20 20 19 18 16 17 19 23 27 30 31 30 28 25 24 23 22 21 20 19 17 16 15 14 13 9 -1 -9 -14 -13 -10 -7 -4 -3 -2 -1 -0 1 1 2 1 1 1 2 6 11 15 16 15 13 12 11 10 9 8 6 -15 -10 -6 -4 -3 -3 -5 -7 -8 -9 -10 -10 -9 -8 -8 -8 -8 -6 -4 -2 -1 -2 -8 -15 -16 -17 -18 -19 -19 -19 -17 -16 -14 -14 -13 -13 -14 -16 -17 -18 -17 -16 -16 -15 -13 -11 -8 -5 -2 0 1 -1 -4 -9 -17 -25 -33 -34 -28 -20 -15 12 26 29 27 23 19 16 11 6 4 9 21 36 48 56 60 58 51 44 40 38 37 33 33 35 39 43 46 47 47 46 45 42 39 36 32 30 31 32 31 30 28 26 24 26 28 32 34 36 36 32 29 29 30 34 38 40 43 44 44 46 53 61 67 69 69 69 69 68 68 67 66 64 63 61 59 57 55 53 51 49 47 44 41 37 33 29 27 26 25 25 25 25 25 25 25 24 24 23 22 22 21 20 19 18 17 16 16 15 15 14 14 14 14 15 16 17 19 20 21 22 23 23 24 24 24 23 21 20 19 18 18 17 16 15 13 12 10 9 9 9 9 10 10 10 10 10 9 9 10 10 10 9 8 6 4 2 -1 -3 -5 -6 -8 -8 -9 -10 -10 -11 -11 -12 -13 -13 -13 -13 -12 -8 -3 3 9 13 16 18 20 23 25 26 26 24 23 23 23 22 21 21 21 21 21 21 20 19 18 16 14 14 14 17 20 23 25 26 25 24 22 20 18 17 17 16 16 15 15 14 13 13 12 10 9 8 7 6 6 6 6 6 6 6 6 6 7 7 7 7 6 5 5 6 8 10 11 12 12 12 11 12 14 16 18 18 18 18 17 18 19 20 22 23 24 22 18 18 24 35 42 42 40 36 33 31 29 28 27 26 24 22 20 15 10 4 -0 -2 -2 1 5 10 14 17 20 21 21 20 18 18 20 25 30 34 36 35 34 31 29 28 27 25 24 23 21 20 20 20 21 19 11 -2 -13 -15 -12 -9 -6 -5 -4 -3 -2 -1 -0 1 2 1 1 2 5 10 15 17 16 15 13 12 12 11 9 8 -5 -2 -2 -4 -7 -11 -14 -17 -18 -18 -17 -15 -13 -11 -10 -9 -10 -10 -9 -8 -5 -4 -4 -9 -16 -18 -18 -17 -17 -18 -19 -19 -18 -17 -16 -15 -15 -15 -17 -18 -18 -18 -17 -17 -16 -15 -14 -11 -8 -5 -1 2 2 -0 -5 -13 -21 -25 -24 -21 -18 -4 21 29 26 22 20 18 12 7 4 6 15 27 39 49 55 54 49 43 38 34 32 30 32 38 44 48 51 52 51 49 46 43 39 35 33 31 32 32 30 29 27 24 21 24 28 32 34 35 34 31 30 29 29 29 34 39 43 46 48 50 54 58 63 68 70 70 70 70 69 68 67 66 64 63 61 58 56 54 52 50 48 46 43 39 34 30 28 27 26 26 26 26 26 26 26 25 25 25 24 23 22 21 20 19 18 17 17 16 16 16 15 15 15 16 17 19 20 22 23 23 24 25 26 26 25 24 23 22 21 20 19 19 18 16 14 12 10 10 9 10 10 11 11 11 11 10 10 10 11 11 11 10 9 7 5 3 0 -2 -4 -6 -7 -8 -8 -9 -9 -10 -11 -12 -13 -14 -14 -15 -15 -13 -9 -4 2 9 15 19 22 24 26 27 27 26 25 24 24 24 23 22 22 22 22 22 22 21 19 18 15 14 14 15 17 21 24 26 27 26 24 22 20 18 17 17 16 16 16 15 15 14 14 12 11 9 8 7 7 7 7 6 6 6 6 6 7 7 7 7 6 5 5 6 8 10 12 14 14 14 14 14 15 16 18 20 21 21 21 21 21 21 22 23 24 22 17 15 19 30 40 43 42 39 35 33 31 30 28 27 25 24 22 18 12 6 0 -3 -5 -3 -0 5 10 15 18 20 21 20 20 20 23 27 33 37 39 40 38 36 34 33 31 29 28 26 25 24 24 24 24 23 18 6 -9 -15 -13 -11 -8 -6 -6 -5 -5 -4 -2 -0 1 2 2 3 5 10 15 17 17 16 14 13 13 12 11 9 0 -2 -7 -12 -16 -19 -21 -22 -23 -23 -21 -18 -14 -12 -10 -9 -10 -11 -12 -13 -11 -9 -6 -5 -11 -16 -17 -15 -15 -16 -18 -19 -20 -19 -18 -17 -17 -17 -19 -20 -21 -21 -20 -19 -18 -17 -17 -17 -15 -13 -8 -3 1 3 3 -1 -7 -14 -18 -20 -20 -18 14 27 24 19 17 16 13 10 7 6 9 16 26 37 46 47 45 42 36 30 26 27 33 40 46 49 52 53 52 50 47 43 38 34 33 32 32 31 29 27 24 21 20 24 28 31 32 32 30 29 30 30 29 27 29 35 41 46 50 55 58 59 61 63 66 70 71 71 70 70 69 68 66 64 62 59 57 55 53 51 50 48 44 40 36 32 29 27 27 27 26 26 26 26 26 27 27 26 25 25 24 23 21 20 19 19 18 17 17 17 16 16 17 17 19 20 22 23 24 25 26 26 27 27 27 26 25 23 22 22 21 20 19 17 14 12 11 10 10 11 11 12 12 11 11 11 10 10 11 11 11 11 10 8 6 4 1 -1 -3 -4 -6 -6 -7 -7 -8 -10 -11 -13 -14 -14 -15 -15 -16 -15 -13 -10 -5 2 10 17 23 27 28 29 28 28 27 26 26 26 25 24 24 23 24 24 23 23 21 20 17 15 14 14 16 19 22 25 27 28 26 24 21 19 18 17 17 17 16 16 16 16 16 15 13 11 10 9 8 8 8 7 7 7 6 6 6 7 7 7 6 5 5 6 7 10 12 14 16 16 17 17 17 18 19 21 22 23 24 24 23 22 21 21 21 20 15 11 11 23 36 43 44 41 37 35 33 31 29 27 26 25 23 19 14 7 1 -3 -6 -7 -5 -1 4 10 14 18 20 20 21 23 25 30 36 40 43 44 42 40 38 37 35 33 31 29 28 27 26 26 25 24 21 11 -4 -14 -14 -12 -10 -8 -7 -7 -7 -6 -4 -2 -0 1 3 4 5 9 14 17 18 17 15 14 14 13 12 11 -6 -12 -17 -19 -20 -19 -18 -20 -21 -22 -22 -19 -16 -15 -15 -15 -15 -16 -16 -16 -16 -14 -11 -7 -7 -11 -15 -16 -14 -14 -15 -17 -19 -19 -19 -19 -20 -21 -23 -24 -25 -25 -24 -22 -21 -19 -19 -19 -19 -18 -15 -11 -6 -1 3 5 2 -4 -10 -15 -18 -22 0 17 22 15 12 14 15 15 12 8 4 5 12 21 30 34 37 37 32 25 21 26 34 41 46 49 51 51 50 48 45 40 35 32 31 30 29 28 26 23 21 19 20 25 27 29 30 29 28 29 30 31 29 26 27 33 41 47 53 57 61 63 63 62 64 67 68 70 71 71 70 69 67 65 63 60 58 56 54 53 51 49 46 43 38 34 30 28 27 27 27 27 27 27 27 27 28 27 27 26 25 24 23 21 20 20 19 18 18 18 17 17 17 18 20 21 23 25 26 27 27 28 28 28 28 27 26 25 24 23 22 21 20 18 15 13 11 11 11 11 12 12 12 11 11 10 10 10 11 11 12 12 11 10 8 5 2 0 -2 -3 -4 -5 -5 -6 -7 -9 -11 -13 -15 -15 -16 -16 -16 -15 -14 -13 -9 -4 3 13 21 28 31 31 30 29 28 28 28 28 27 26 26 25 25 25 25 24 23 22 19 17 16 15 15 17 20 23 25 27 27 26 24 22 20 18 18 17 17 16 16 16 17 16 16 14 12 11 10 10 9 9 8 7 6 6 6 7 7 6 6 5 4 5 6 8 10 13 15 17 19 20 20 20 21 22 23 24 25 25 24 22 20 19 18 16 12 5 2 13 29 40 44 43 40 37 35 32 30 28 26 25 23 21 16 9 3 -3 -7 -9 -10 -7 -3 3 9 14 17 20 22 25 28 33 39 44 47 47 46 44 42 40 38 36 34 32 31 29 28 27 26 24 21 14 0 -11 -14 -13 -11 -9 -8 -8 -8 -8 -7 -5 -2 0 2 4 6 9 13 17 18 18 16 15 14 14 13 12 -17 -21 -22 -21 -19 -18 -17 -17 -18 -18 -17 -16 -15 -17 -19 -21 -21 -21 -20 -20 -20 -19 -16 -11 -8 -8 -11 -14 -15 -14 -14 -15 -16 -17 -18 -19 -21 -23 -25 -27 -28 -28 -27 -24 -22 -20 -20 -20 -20 -19 -19 -16 -13 -8 -4 1 4 2 -2 -7 -12 -17 -19 -2 15 16 13 16 18 19 16 10 5 2 2 5 10 16 24 27 25 21 19 26 34 41 45 47 49 48 47 45 42 35 30 28 27 26 24 22 21 19 19 21 23 25 26 27 27 27 26 27 29 31 30 27 28 35 43 51 55 60 63 67 69 71 69 66 65 66 68 69 70 70 69 67 64 61 59 57 56 54 52 50 48 45 40 35 31 29 28 28 27 27 27 27 27 28 28 28 28 27 26 25 24 22 21 21 20 19 19 18 18 18 18 19 21 22 24 26 27 28 28 29 29 29 29 28 27 26 25 24 23 22 21 19 16 14 12 12 12 12 12 12 12 11 11 10 10 11 11 12 12 13 12 11 9 6 3 1 -1 -2 -3 -3 -4 -4 -6 -8 -11 -14 -16 -17 -17 -17 -16 -15 -14 -13 -11 -8 -2 7 18 27 33 33 32 30 29 29 29 30 29 29 28 27 27 27 27 26 25 24 22 20 18 16 15 16 17 20 23 25 27 27 26 24 22 20 19 19 18 17 16 16 17 17 17 17 15 13 12 11 11 11 10 8 7 7 6 7 7 6 5 4 3 3 4 6 8 11 14 17 19 21 23 24 24 24 24 24 25 25 25 23 20 16 14 11 7 -1 -8 2 19 34 43 44 42 39 36 34 31 29 27 25 24 22 19 12 5 -1 -7 -11 -13 -12 -10 -5 1 7 13 17 22 26 31 37 42 47 50 51 50 47 45 43 41 39 37 35 33 31 30 28 26 24 21 16 5 -6 -11 -12 -11 -10 -9 -8 -8 -9 -8 -7 -5 -2 1 3 5 8 12 16 19 19 18 16 15 15 14 13 -22 -23 -22 -18 -15 -13 -12 -11 -11 -11 -12 -11 -11 -14 -18 -21 -23 -23 -22 -21 -21 -20 -18 -15 -11 -9 -8 -10 -14 -14 -14 -14 -14 -14 -16 -17 -20 -23 -26 -27 -28 -28 -27 -24 -22 -20 -19 -19 -18 -17 -18 -18 -17 -14 -10 -6 -1 2 3 0 -4 -8 -15 -21 -9 17 19 19 19 19 17 13 10 6 1 -2 -1 6 14 17 18 18 21 28 34 39 43 45 46 45 43 40 36 30 27 25 24 22 19 16 15 17 21 28 33 33 31 28 26 27 27 27 29 31 31 30 32 39 48 55 59 61 63 66 70 73 74 74 71 67 62 63 68 70 70 68 65 63 61 59 57 55 53 52 50 47 43 37 33 30 28 28 28 27 27 27 28 28 29 29 29 28 27 26 25 23 22 21 20 20 19 19 18 18 19 20 21 23 26 27 29 29 29 29 30 30 30 29 28 27 26 25 24 23 22 20 17 15 13 12 12 13 13 13 12 12 11 11 11 11 11 12 13 13 12 11 9 7 4 1 -1 -2 -3 -3 -3 -3 -5 -8 -12 -15 -17 -18 -18 -18 -17 -15 -14 -12 -11 -9 -6 2 12 24 33 35 34 32 30 30 30 31 31 31 30 30 29 29 29 28 27 25 24 22 20 18 17 16 16 17 19 22 25 27 27 26 25 23 22 20 19 18 17 16 16 16 18 18 18 16 15 14 13 13 12 10 9 8 7 7 7 6 4 3 1 1 2 4 6 8 11 14 18 21 25 27 27 26 25 24 25 25 24 23 20 15 11 7 1 -7 -18 -10 7 25 40 45 44 41 38 36 33 30 28 26 25 24 22 16 8 1 -6 -11 -15 -16 -16 -13 -8 -2 5 12 19 26 32 39 45 50 54 55 53 51 48 46 44 42 40 37 35 33 31 28 26 24 21 17 10 -1 -7 -10 -11 -10 -9 -8 -8 -9 -9 -9 -7 -5 -2 1 4 7 10 14 18 20 19 18 17 16 15 15 -20 -19 -15 -11 -9 -6 -5 -4 -3 -3 -5 -6 -7 -9 -12 -17 -20 -21 -21 -20 -20 -19 -18 -16 -14 -11 -9 -7 -8 -11 -13 -14 -13 -13 -14 -15 -17 -20 -23 -25 -26 -26 -25 -24 -22 -20 -19 -18 -17 -16 -16 -17 -17 -16 -14 -11 -7 -2 2 3 2 -2 -6 -13 -19 -16 5 16 19 18 16 15 14 10 6 3 4 8 12 14 15 17 22 28 33 36 40 42 43 41 38 35 31 29 26 25 24 22 16 11 11 15 22 30 35 36 35 32 29 29 28 27 28 29 31 30 34 43 50 55 55 53 54 58 64 71 74 76 76 74 71 67 66 68 71 70 67 65 62 60 58 56 54 52 51 48 45 40 34 31 29 28 28 28 28 28 28 29 29 29 29 29 28 27 25 24 23 22 21 20 20 19 19 19 19 20 22 24 26 28 30 30 30 30 30 30 30 30 29 28 27 26 25 24 23 21 19 16 15 14 14 14 14 13 13 12 12 11 11 11 11 12 13 13 12 11 9 7 4 1 -1 -2 -3 -3 -2 -3 -5 -8 -11 -15 -17 -18 -18 -18 -17 -15 -13 -11 -9 -9 -7 -2 7 19 31 36 36 33 31 30 31 32 33 33 32 32 31 31 31 30 29 27 25 24 22 20 19 17 16 16 17 19 22 24 26 27 27 26 25 23 21 20 18 15 14 15 16 18 19 19 17 16 15 15 14 13 11 9 8 8 7 6 4 2 0 -1 -0 1 3 5 7 10 14 19 24 28 30 30 28 26 25 25 24 23 20 16 11 4 -3 -13 -25 -22 -8 12 32 44 45 43 40 37 34 32 29 28 27 27 25 20 12 4 -5 -12 -17 -20 -20 -19 -16 -12 -6 1 9 19 29 38 45 52 57 58 57 54 51 49 47 45 42 39 37 35 32 30 27 25 22 19 13 5 -2 -7 -9 -9 -9 -8 -8 -9 -9 -10 -9 -8 -5 -3 1 4 7 11 16 20 21 20 19 18 17 16 -13 -10 -8 -7 -6 -5 -4 -3 -1 0 -0 -2 -5 -6 -8 -11 -15 -17 -17 -17 -18 -18 -18 -17 -15 -14 -12 -10 -7 -5 -7 -10 -13 -14 -14 -14 -15 -17 -19 -21 -22 -23 -24 -24 -24 -22 -20 -18 -16 -15 -15 -15 -15 -15 -15 -14 -12 -8 -4 1 3 3 -0 -5 -11 -14 -10 -3 9 15 15 15 13 10 8 6 7 9 12 13 15 17 22 27 30 33 36 39 41 40 36 33 30 28 26 27 27 24 15 10 12 19 27 33 36 37 36 34 32 32 30 29 28 29 30 32 38 44 50 53 55 52 54 57 60 61 65 71 75 76 74 69 66 70 72 72 69 66 64 62 59 57 55 53 51 49 46 41 36 32 29 28 28 28 28 28 29 29 30 30 30 29 28 27 26 25 24 22 22 21 20 20 20 20 20 21 23 25 27 29 31 31 31 31 31 31 31 31 30 29 28 27 26 25 24 23 20 18 16 15 15 15 15 14 14 13 12 12 11 11 11 12 12 12 12 11 9 7 4 1 -1 -3 -3 -3 -2 -3 -4 -7 -10 -13 -15 -17 -17 -18 -17 -15 -13 -11 -8 -8 -7 -4 2 13 26 35 37 35 32 31 31 32 33 34 34 33 33 33 33 32 31 29 27 25 24 22 21 19 18 17 16 17 19 21 24 26 27 28 27 26 24 22 19 16 14 13 14 17 19 20 20 19 17 17 16 15 13 11 10 9 8 6 4 2 -1 -2 -2 -1 0 2 4 6 9 14 20 27 31 33 32 29 27 25 24 23 21 17 12 5 -5 -17 -30 -30 -21 -4 18 37 44 44 41 38 35 33 31 30 30 30 28 24 16 7 -3 -11 -18 -22 -24 -23 -21 -18 -15 -10 -4 5 20 32 42 52 58 61 59 57 54 51 50 47 44 42 39 36 34 31 28 26 24 21 17 10 4 -2 -5 -7 -8 -8 -8 -8 -9 -9 -10 -10 -9 -7 -4 -0 3 7 12 18 21 22 21 20 19 19 -7 -7 -8 -9 -10 -11 -11 -11 -9 -7 -4 -3 -4 -7 -7 -8 -10 -13 -14 -15 -16 -16 -17 -18 -18 -17 -15 -13 -11 -7 -5 -5 -7 -10 -12 -13 -15 -16 -17 -17 -18 -19 -21 -23 -25 -25 -22 -19 -16 -14 -14 -14 -14 -14 -15 -15 -15 -14 -11 -5 0 4 3 0 -4 -8 -10 -8 -2 6 11 12 11 9 7 6 7 7 8 9 12 16 22 25 28 31 34 36 38 38 36 33 30 28 27 28 28 25 18 14 17 26 35 39 38 38 36 35 35 34 33 31 30 30 32 37 40 42 45 50 52 52 54 56 58 59 61 64 67 70 73 70 67 70 73 74 72 69 66 63 61 58 55 53 51 49 47 43 37 33 29 28 28 28 29 29 29 29 30 30 30 30 29 28 27 26 24 23 22 21 21 21 20 20 21 22 23 25 28 30 31 32 32 32 31 32 32 32 31 31 29 28 27 26 25 24 21 19 18 17 16 16 16 16 15 14 13 12 12 11 11 12 12 12 11 10 9 6 4 1 -1 -3 -4 -3 -2 -2 -3 -5 -8 -10 -12 -13 -14 -15 -15 -14 -12 -11 -8 -7 -7 -6 -2 7 20 32 38 38 34 32 32 33 34 35 35 35 35 35 34 34 33 31 29 27 25 24 23 21 20 18 17 17 17 19 21 24 26 27 28 27 26 25 22 18 15 13 12 14 18 20 22 21 20 19 18 17 16 14 12 10 9 7 5 2 -1 -3 -4 -4 -2 -1 1 3 5 8 15 22 29 34 35 33 30 27 25 24 22 19 14 7 -2 -17 -31 -34 -29 -19 -1 24 38 43 43 40 36 34 33 32 32 32 31 28 21 11 -0 -10 -18 -23 -25 -24 -22 -20 -19 -18 -16 -12 -0 18 35 48 59 62 61 59 57 54 52 50 47 44 40 38 35 33 30 28 26 23 20 15 9 3 -1 -4 -6 -6 -7 -7 -8 -9 -10 -11 -11 -11 -9 -5 -2 2 7 14 19 23 24 23 21 21 -9 -12 -16 -18 -20 -22 -23 -23 -23 -22 -19 -14 -9 -7 -8 -8 -8 -10 -13 -14 -15 -15 -16 -18 -19 -18 -17 -15 -14 -12 -10 -8 -7 -7 -8 -10 -12 -13 -15 -15 -15 -16 -17 -20 -23 -25 -23 -19 -16 -13 -12 -12 -13 -13 -14 -16 -17 -18 -16 -12 -6 0 3 3 1 -3 -6 -6 -7 -3 3 8 7 6 6 6 6 6 5 5 7 11 17 21 26 30 33 35 37 38 37 34 31 28 27 27 27 25 22 20 26 35 42 44 41 38 37 36 36 36 36 35 34 33 34 35 34 35 39 46 49 51 53 55 57 60 61 62 63 65 68 68 70 72 74 75 74 71 68 65 62 59 55 53 51 49 47 44 39 34 30 29 28 29 29 29 29 30 30 30 30 30 30 29 28 26 25 24 22 22 21 21 21 21 21 22 24 26 28 31 32 33 33 32 32 32 33 33 32 32 31 29 28 27 26 24 23 21 19 18 18 18 18 17 16 15 14 13 12 12 11 12 12 12 11 10 8 6 4 1 -1 -2 -3 -2 -1 -0 -0 -2 -3 -5 -7 -8 -10 -11 -12 -12 -12 -11 -9 -8 -7 -7 -5 1 14 28 37 39 37 33 33 33 34 35 35 35 36 36 36 36 35 33 31 29 27 25 24 23 21 20 19 18 17 18 19 21 23 25 27 28 27 26 24 21 17 14 12 13 16 19 22 23 22 21 20 19 18 16 14 12 10 8 6 2 -1 -4 -5 -6 -5 -3 -2 -1 1 3 8 16 24 32 36 36 33 30 27 25 23 21 17 11 3 -11 -29 -35 -34 -27 -18 3 24 38 43 41 37 35 33 33 34 35 34 31 25 15 3 -8 -17 -24 -26 -25 -22 -20 -20 -20 -20 -20 -16 -1 21 42 57 62 63 61 59 57 55 53 50 46 42 39 36 34 32 30 28 26 23 19 14 9 4 -0 -3 -4 -6 -6 -7 -8 -10 -11 -13 -14 -13 -11 -8 -4 -0 7 15 22 26 26 24 23 -16 -20 -23 -24 -25 -27 -29 -31 -34 -34 -31 -25 -16 -8 -6 -7 -9 -11 -12 -13 -14 -15 -16 -16 -17 -17 -17 -16 -16 -16 -15 -13 -11 -10 -10 -10 -11 -13 -14 -14 -12 -11 -12 -16 -20 -24 -23 -20 -16 -13 -11 -11 -12 -14 -16 -18 -20 -21 -21 -19 -14 -6 1 4 4 1 -3 -4 -6 -8 -6 -0 3 4 5 6 6 5 5 4 3 3 6 13 19 25 29 32 35 37 36 33 29 25 22 19 17 17 18 22 31 41 46 46 42 38 35 34 34 36 39 39 37 35 33 29 26 27 34 43 46 48 51 54 57 59 61 62 62 63 64 66 68 71 72 72 70 68 68 67 64 60 56 53 51 49 48 45 40 36 32 29 29 29 29 29 30 30 31 31 31 31 30 29 28 27 25 24 23 22 22 21 21 22 22 23 25 27 29 31 33 33 33 33 33 33 34 34 34 33 32 31 29 28 27 25 24 22 21 20 19 19 19 18 17 16 14 13 13 12 12 12 12 12 11 10 8 6 4 2 0 -1 -1 -0 1 3 3 3 2 1 -0 -2 -4 -6 -8 -10 -11 -11 -10 -9 -8 -8 -7 -3 8 22 34 41 40 36 34 34 34 35 35 36 37 37 38 37 36 34 32 30 28 27 25 24 23 21 20 19 18 18 19 20 22 23 25 26 27 27 26 23 19 16 13 12 14 17 21 24 24 23 22 20 19 18 16 14 12 10 7 3 -0 -4 -6 -7 -7 -6 -5 -4 -2 -1 2 8 16 25 33 36 36 33 29 26 25 22 20 15 9 -3 -21 -33 -35 -31 -25 -15 4 24 38 42 39 35 34 33 35 36 36 33 27 17 5 -6 -16 -24 -27 -25 -21 -19 -18 -18 -20 -21 -21 -14 4 34 53 61 63 62 60 59 58 56 52 48 44 40 38 36 34 32 30 28 25 22 18 13 8 4 0 -2 -4 -5 -6 -8 -10 -12 -13 -15 -16 -16 -14 -11 -8 -2 7 18 25 28 27 26 -19 -21 -23 -23 -23 -24 -27 -31 -35 -35 -33 -26 -17 -9 -5 -5 -7 -10 -11 -11 -13 -15 -17 -17 -17 -17 -16 -15 -16 -18 -17 -15 -14 -14 -15 -15 -15 -15 -14 -12 -9 -8 -9 -13 -18 -21 -20 -19 -17 -14 -11 -11 -13 -16 -20 -24 -25 -25 -25 -24 -21 -12 -4 2 5 4 1 -2 -5 -8 -11 -11 -2 2 5 8 9 7 5 2 -1 -4 -4 1 6 10 14 19 24 28 27 24 18 13 8 2 -3 -5 -2 10 26 39 46 45 40 35 33 31 29 31 36 37 37 34 30 24 20 22 30 38 41 45 49 52 55 57 59 61 62 63 64 65 66 68 69 68 66 67 69 69 66 62 58 54 52 50 48 46 42 37 33 30 29 29 29 30 30 31 31 31 31 31 30 30 28 27 26 24 23 22 22 22 22 22 23 24 26 28 30 32 33 34 34 34 34 34 34 35 35 34 33 32 31 29 28 26 25 23 22 21 21 21 20 19 18 16 15 14 13 13 13 12 12 12 11 9 8 6 4 2 1 1 1 2 4 5 7 7 7 7 5 3 1 -2 -4 -7 -9 -10 -10 -10 -9 -9 -9 -6 3 16 30 40 43 39 36 35 35 35 35 36 37 38 39 38 37 36 34 32 30 28 26 25 24 22 21 20 20 20 20 21 21 22 24 25 26 27 27 25 22 18 15 13 13 15 19 23 25 25 24 22 21 20 18 16 14 11 8 5 1 -3 -6 -8 -8 -8 -7 -6 -5 -4 -2 1 7 15 24 31 35 35 32 29 26 24 22 20 15 7 -9 -24 -34 -33 -29 -23 -13 2 23 38 39 36 33 32 33 34 34 31 25 16 5 -5 -15 -23 -27 -25 -21 -17 -16 -16 -17 -18 -19 -19 -8 22 47 60 63 62 61 60 59 58 55 51 46 42 39 37 36 34 32 30 28 25 22 17 12 8 4 1 -2 -3 -5 -7 -9 -12 -14 -16 -18 -19 -19 -18 -15 -11 -4 8 22 27 29 29 -21 -20 -20 -19 -19 -20 -22 -26 -30 -31 -29 -24 -17 -12 -7 -4 -5 -8 -10 -10 -12 -15 -18 -19 -19 -18 -16 -16 -16 -19 -19 -17 -15 -14 -16 -17 -18 -17 -14 -10 -7 -6 -8 -11 -14 -15 -15 -16 -16 -15 -13 -14 -16 -19 -24 -28 -30 -29 -30 -30 -28 -20 -10 -2 3 4 4 1 -1 -6 -12 -19 -13 -6 1 8 11 10 6 1 -4 -7 -7 -5 -6 -7 -7 -5 -1 1 1 -3 -7 -9 -10 -11 -13 -15 -15 -7 11 30 42 44 38 34 31 28 25 25 26 28 28 26 19 11 9 13 21 30 36 41 46 49 52 55 57 59 62 65 68 68 68 69 69 68 68 70 71 70 66 62 59 56 54 51 50 48 44 40 35 32 30 29 29 30 30 31 31 32 32 32 31 30 29 27 26 24 23 22 22 22 22 23 24 25 27 29 31 33 34 34 34 34 34 35 35 36 36 36 35 34 32 31 29 27 26 24 23 23 23 22 21 20 19 17 16 15 14 14 13 13 12 11 10 9 8 6 4 3 2 2 2 3 5 7 9 10 10 10 9 8 5 3 -0 -4 -6 -9 -10 -11 -11 -11 -10 -9 -2 10 25 38 45 42 39 36 35 35 35 36 37 38 39 39 38 36 35 33 31 29 27 26 24 23 22 21 20 20 21 22 23 23 24 24 25 27 27 26 24 20 17 14 13 14 17 21 25 26 26 24 22 21 19 17 15 12 9 6 2 -1 -5 -7 -8 -9 -9 -9 -8 -7 -6 -3 -0 5 13 22 29 33 33 30 28 26 24 23 20 15 5 -11 -26 -32 -29 -26 -21 -13 -0 21 32 34 32 29 27 27 26 22 17 10 2 -6 -14 -22 -26 -25 -21 -17 -14 -12 -14 -15 -16 -17 -12 8 40 57 63 62 60 60 60 59 56 52 47 43 40 38 37 36 34 33 30 28 25 21 16 11 7 3 0 -2 -4 -6 -9 -12 -14 -16 -19 -21 -23 -23 -20 -18 -14 -9 11 23 29 31 -19 -18 -17 -15 -15 -15 -17 -19 -23 -24 -22 -20 -18 -16 -11 -7 -5 -7 -10 -11 -12 -14 -17 -20 -21 -20 -19 -18 -19 -22 -23 -20 -15 -12 -12 -14 -15 -15 -13 -10 -7 -5 -5 -6 -9 -11 -12 -13 -14 -16 -16 -17 -18 -22 -26 -31 -32 -31 -32 -34 -35 -29 -19 -9 -1 3 3 1 1 -1 -6 -12 -19 -24 -17 -4 5 8 3 -3 -7 -8 -6 -4 -6 -10 -12 -13 -12 -12 -13 -13 -12 -10 -9 -9 -12 -14 -16 -15 -5 12 30 40 37 32 29 28 27 27 25 22 15 8 5 3 4 8 15 24 32 38 43 47 50 53 56 60 66 73 77 74 71 70 70 71 71 71 70 67 64 61 60 57 55 54 52 49 46 42 37 33 31 30 30 30 31 31 32 32 32 32 31 30 29 28 26 25 23 23 22 22 22 23 24 26 27 29 32 34 35 35 35 35 35 35 36 37 37 37 37 36 34 32 31 29 27 26 25 24 24 24 23 21 20 18 17 16 15 14 14 13 12 11 10 9 8 6 5 4 3 2 2 3 4 7 9 10 11 11 10 10 8 6 3 -0 -3 -7 -9 -11 -12 -13 -13 -11 -6 4 18 33 44 44 41 38 36 36 36 36 37 38 39 39 38 37 35 34 32 30 28 26 25 24 22 21 20 20 21 22 23 24 25 26 26 27 27 27 25 22 19 16 14 13 15 18 23 26 27 26 24 22 20 18 16 13 11 8 4 1 -2 -5 -8 -9 -10 -10 -10 -10 -9 -7 -5 -2 3 10 18 26 30 30 28 26 25 24 23 20 15 4 -12 -26 -27 -26 -23 -20 -15 -2 14 24 28 25 20 15 12 10 7 4 -0 -6 -13 -20 -25 -25 -22 -17 -13 -10 -11 -12 -13 -14 -14 -5 32 54 62 62 60 60 60 59 57 53 48 44 41 40 39 38 37 35 33 31 28 23 18 14 10 6 3 -0 -3 -5 -8 -11 -14 -16 -19 -22 -25 -26 -25 -22 -19 -17 -11 10 26 31 -17 -15 -14 -12 -12 -12 -12 -14 -16 -16 -15 -15 -17 -19 -17 -13 -10 -9 -12 -14 -14 -14 -16 -18 -20 -21 -21 -21 -23 -26 -25 -19 -13 -10 -11 -13 -14 -14 -13 -9 -5 -2 -1 -3 -5 -8 -10 -11 -12 -13 -13 -15 -18 -22 -26 -29 -29 -29 -32 -37 -39 -36 -27 -16 -6 0 1 -1 -1 -1 -2 -5 -11 -17 -21 -20 -12 4 6 2 -3 -6 -5 -4 -5 -8 -10 -11 -12 -13 -14 -13 -10 -7 -7 -8 -11 -13 -16 -17 -15 -6 7 23 29 28 26 24 23 20 15 10 6 5 5 4 5 9 14 22 30 37 42 47 51 55 58 66 76 83 82 75 71 70 71 73 72 70 69 68 68 65 59 56 55 56 55 52 48 44 39 34 31 30 30 30 31 32 33 33 33 33 32 31 29 28 26 25 24 23 22 22 23 23 25 26 28 30 32 34 35 35 35 35 35 36 37 38 39 39 38 37 36 34 32 30 28 27 26 26 26 25 24 22 20 19 18 17 16 15 14 13 12 11 10 10 9 7 6 4 2 1 1 2 3 5 6 7 8 8 9 9 9 8 6 3 -1 -4 -8 -11 -13 -15 -15 -14 -11 -3 9 26 41 45 44 40 38 37 36 36 36 37 38 38 38 37 36 34 32 31 29 27 26 24 23 21 20 19 19 21 22 24 25 27 28 28 28 28 26 24 21 17 15 13 13 15 20 24 27 28 26 24 21 19 16 14 12 10 7 4 0 -3 -5 -8 -10 -11 -12 -12 -11 -10 -9 -7 -5 -0 7 15 23 27 27 25 24 23 23 22 20 14 3 -15 -22 -24 -23 -22 -20 -15 -4 7 17 20 14 8 4 2 2 1 -1 -5 -11 -18 -23 -24 -22 -18 -13 -9 -8 -9 -10 -12 -13 -13 24 51 62 62 60 60 60 59 58 54 48 44 42 41 40 40 39 37 36 34 30 26 21 16 13 9 6 2 -1 -4 -8 -11 -14 -16 -19 -22 -26 -29 -28 -26 -21 -18 -17 -3 16 27 -13 -12 -11 -9 -9 -9 -10 -12 -13 -11 -9 -10 -13 -18 -19 -18 -16 -15 -15 -16 -16 -16 -15 -15 -17 -19 -21 -21 -22 -22 -17 -12 -8 -7 -8 -9 -10 -11 -11 -10 -4 0 2 1 -3 -6 -8 -10 -10 -10 -10 -12 -15 -20 -26 -29 -31 -33 -36 -39 -41 -39 -33 -23 -12 -3 1 -1 -3 -4 -4 -5 -8 -11 -13 -13 -13 -14 2 5 3 -1 -2 -1 -2 -4 -6 -8 -10 -11 -12 -11 -9 -6 -6 -7 -9 -11 -14 -16 -16 -14 -8 2 12 15 16 15 13 10 7 5 4 5 5 5 6 10 16 23 30 36 42 49 55 60 68 78 85 86 81 74 70 69 69 69 68 68 69 70 71 70 66 62 58 56 57 54 51 46 40 35 31 30 30 30 32 33 34 34 34 33 32 31 30 28 27 25 24 23 22 22 23 24 25 27 29 31 33 35 36 36 36 35 35 36 38 39 40 40 40 39 38 36 33 31 29 28 27 27 27 26 25 23 21 19 18 17 16 15 15 14 13 12 11 10 9 8 6 4 2 1 1 1 2 3 4 4 5 5 5 6 7 7 6 4 2 -2 -6 -10 -14 -16 -18 -17 -15 -10 -0 15 34 44 46 43 40 38 37 36 36 36 37 37 37 37 36 34 33 31 30 28 27 25 23 21 20 18 18 19 20 22 24 27 29 30 30 29 28 25 22 19 16 14 12 13 16 21 26 29 28 25 22 20 17 15 13 11 9 6 4 1 -2 -5 -8 -10 -12 -12 -13 -12 -12 -11 -10 -8 -4 4 13 20 23 23 21 19 19 20 21 19 12 -3 -15 -20 -22 -22 -21 -19 -15 -8 1 10 11 7 4 2 2 1 -0 -4 -9 -15 -20 -22 -21 -18 -14 -9 -7 -7 -8 -9 -11 -15 17 47 61 62 60 60 60 59 58 54 49 45 42 42 42 41 40 39 38 36 33 28 23 19 16 12 9 5 1 -3 -7 -11 -14 -16 -19 -22 -27 -30 -31 -28 -24 -20 -18 -15 -6 18 -9 -9 -8 -8 -8 -9 -11 -14 -13 -11 -8 -8 -9 -12 -16 -18 -19 -19 -19 -18 -18 -18 -17 -17 -17 -19 -21 -24 -25 -25 -21 -15 -11 -8 -6 -5 -4 -5 -5 -6 -6 -2 2 2 -1 -5 -7 -9 -9 -9 -9 -10 -14 -20 -26 -30 -34 -37 -40 -42 -43 -41 -37 -29 -19 -8 -1 -1 -4 -6 -7 -6 -8 -8 -5 -2 -3 -10 -10 -0 6 5 4 4 2 -0 -3 -5 -7 -8 -9 -8 -7 -5 -5 -6 -8 -10 -13 -15 -16 -16 -15 -11 -3 5 10 12 12 9 8 7 7 6 6 7 10 14 19 25 32 37 44 52 63 75 82 87 89 86 80 73 68 65 64 65 67 70 72 74 74 73 70 67 63 59 55 52 51 47 42 35 32 30 29 30 32 34 35 35 35 34 33 32 30 29 27 26 25 24 23 23 23 24 25 27 29 31 33 35 36 36 36 35 36 37 38 39 41 41 41 41 39 37 35 33 31 29 29 28 28 27 25 23 21 19 18 17 16 15 15 14 14 13 12 11 10 8 6 4 3 1 1 1 1 2 2 2 2 1 2 3 4 5 5 4 2 -1 -5 -10 -14 -17 -20 -21 -20 -17 -10 3 23 39 46 45 42 39 38 37 36 36 36 36 36 36 35 35 33 32 31 29 28 26 24 22 20 18 17 17 18 19 21 25 28 31 32 32 30 27 23 20 17 15 12 12 13 17 22 27 28 27 24 22 19 16 14 13 11 9 7 4 1 -2 -5 -8 -10 -12 -13 -13 -14 -14 -14 -13 -11 -7 2 12 18 20 19 17 15 16 17 18 15 4 -7 -15 -19 -20 -21 -19 -18 -15 -10 -3 3 6 5 3 2 1 0 -2 -7 -12 -17 -20 -20 -18 -15 -10 -7 -6 -6 -7 -9 -14 11 42 60 62 60 59 59 59 58 54 49 45 43 42 43 42 42 41 39 38 35 31 26 22 19 16 12 8 3 -1 -6 -10 -14 -16 -19 -22 -26 -30 -32 -31 -26 -22 -19 -17 -14 -10 -4 -6 -7 -9 -11 -13 -15 -15 -13 -12 -11 -10 -8 -6 -7 -9 -12 -15 -18 -19 -19 -19 -20 -21 -22 -23 -26 -29 -31 -31 -25 -19 -15 -12 -10 -7 -4 -2 -1 -1 -3 -4 -3 -0 -0 -4 -6 -7 -8 -7 -8 -9 -12 -18 -24 -30 -35 -39 -42 -44 -44 -43 -40 -34 -25 -14 -5 -2 -3 -5 -6 -6 -8 -7 -2 3 7 5 -12 -8 2 8 10 9 6 2 -2 -4 -5 -6 -5 -5 -5 -5 -5 -7 -10 -13 -15 -16 -17 -17 -17 -15 -10 -1 7 13 15 13 12 11 9 8 8 10 14 18 24 30 36 41 47 56 69 85 90 90 88 83 78 71 65 62 62 64 69 74 77 77 74 70 69 69 68 65 62 58 53 44 36 33 32 30 29 30 31 34 35 36 36 35 34 32 30 29 27 26 25 24 24 24 24 25 26 28 30 31 33 35 36 36 36 35 35 36 38 39 41 42 42 42 41 39 37 34 32 31 30 29 29 28 26 24 21 19 17 16 16 15 15 15 15 14 13 12 10 8 7 5 3 2 1 1 1 1 1 0 -1 -1 -2 -1 0 2 3 3 2 -1 -5 -9 -13 -18 -21 -23 -24 -24 -20 -10 10 30 43 47 44 40 38 37 36 36 35 35 35 35 35 34 34 33 32 30 29 27 25 23 21 19 18 16 16 16 18 21 26 30 33 34 32 28 25 22 19 16 13 11 11 13 18 23 26 27 26 24 21 18 16 15 13 12 10 7 4 1 -2 -5 -8 -10 -11 -13 -14 -15 -16 -17 -17 -15 -7 2 11 17 18 15 13 12 13 15 14 7 -2 -10 -15 -18 -19 -19 -17 -16 -14 -11 -6 -1 3 3 2 1 0 -2 -5 -10 -15 -18 -19 -18 -15 -11 -7 -5 -4 -5 -7 -12 5 35 59 62 60 59 59 59 58 54 50 46 44 43 43 43 43 42 41 39 37 33 29 25 23 19 16 11 7 1 -4 -10 -14 -17 -19 -21 -25 -29 -32 -32 -28 -24 -20 -18 -16 -15 -4 -6 -9 -13 -14 -13 -12 -12 -12 -13 -13 -12 -10 -8 -6 -5 -7 -10 -14 -17 -19 -21 -22 -24 -24 -25 -28 -31 -34 -34 -28 -22 -18 -17 -15 -13 -9 -4 -1 1 0 -3 -5 -5 -3 -3 -5 -6 -6 -6 -5 -6 -9 -13 -20 -27 -34 -40 -43 -45 -46 -45 -42 -37 -30 -20 -10 -4 -3 -3 -4 -4 -5 -4 -1 3 7 10 1 -11 -7 7 14 13 9 3 -2 -6 -8 -7 -6 -6 -7 -7 -8 -11 -14 -16 -17 -16 -16 -15 -15 -15 -14 -8 2 11 17 19 16 13 11 9 9 12 17 23 29 35 41 47 52 60 71 85 85 83 80 76 72 68 65 64 63 65 71 77 79 78 73 68 66 66 66 67 68 64 56 45 36 33 31 28 27 29 31 34 36 37 37 36 35 33 31 29 28 27 26 25 25 25 25 26 27 28 30 32 34 35 36 36 36 35 35 36 38 39 41 42 43 43 42 41 39 36 34 32 31 31 30 29 27 24 21 19 17 16 15 15 15 15 15 14 14 13 11 9 7 6 4 2 1 1 1 1 0 -1 -2 -3 -4 -4 -4 -2 -0 1 2 -0 -4 -8 -13 -17 -21 -24 -26 -28 -27 -22 -5 18 37 47 46 41 38 37 37 36 35 35 35 35 34 34 34 33 33 32 30 28 26 24 23 21 19 17 15 14 14 16 21 27 32 35 34 31 27 23 20 17 14 12 10 11 13 17 21 24 25 25 24 21 19 17 16 14 12 9 6 4 1 -2 -5 -7 -9 -10 -13 -15 -17 -19 -20 -20 -16 -7 2 11 17 15 12 10 10 11 11 8 2 -5 -11 -16 -17 -17 -17 -15 -13 -12 -11 -8 -3 2 2 1 0 -2 -4 -8 -13 -16 -18 -17 -15 -12 -8 -5 -3 -2 -4 -10 -0 26 57 61 60 59 58 58 57 55 51 47 44 44 44 44 44 43 42 41 39 36 32 29 26 23 19 15 10 4 -1 -8 -13 -17 -19 -21 -24 -28 -32 -33 -30 -26 -22 -19 -16 -14 -9 -9 -9 -11 -11 -12 -12 -13 -14 -16 -16 -16 -15 -13 -10 -8 -7 -8 -11 -14 -17 -19 -21 -23 -24 -24 -26 -29 -32 -32 -27 -23 -20 -19 -18 -17 -15 -11 -6 -3 -0 -1 -4 -7 -7 -4 -4 -5 -5 -4 -3 -3 -5 -8 -15 -23 -32 -39 -43 -45 -46 -46 -43 -39 -33 -25 -16 -8 -4 -3 -2 -2 -2 -2 -1 1 4 8 5 -7 -10 0 13 14 11 3 -5 -13 -16 -15 -14 -13 -13 -13 -14 -16 -17 -17 -13 -9 -7 -7 -8 -12 -16 -14 -6 5 16 22 20 16 13 11 11 15 21 27 33 39 46 52 58 65 73 77 72 71 69 67 66 67 68 67 64 64 71 77 79 78 73 68 66 64 62 63 65 62 55 47 39 35 33 29 27 26 28 33 37 39 39 38 36 34 31 29 28 27 27 26 26 26 26 27 28 29 31 32 34 35 36 36 35 35 35 36 37 39 40 42 43 43 43 43 41 39 36 34 33 32 31 30 28 25 22 19 17 15 14 14 14 14 14 14 14 13 12 10 9 7 5 3 2 1 0 0 -0 -1 -3 -4 -6 -6 -6 -5 -4 -1 0 0 -3 -7 -11 -16 -21 -24 -27 -29 -31 -29 -18 3 26 43 47 41 38 37 37 36 36 35 35 34 34 34 34 34 33 33 31 30 28 26 24 22 21 18 16 14 12 13 16 22 28 34 36 34 30 25 21 18 15 12 10 10 11 13 16 19 21 23 25 24 23 21 19 17 14 12 9 6 3 0 -2 -4 -5 -7 -9 -12 -15 -18 -21 -23 -22 -16 -8 2 10 13 12 10 8 8 8 8 5 -0 -7 -12 -15 -16 -16 -15 -13 -11 -10 -10 -9 -4 0 1 0 -2 -4 -7 -11 -14 -16 -17 -15 -12 -9 -5 -2 -1 -1 -7 -5 12 53 60 60 58 57 57 57 55 53 49 45 44 44 45 45 44 43 42 41 38 35 33 30 27 23 19 14 8 2 -4 -11 -16 -18 -20 -23 -27 -31 -33 -31 -28 -24 -20 -18 -16 -9 -8 -9 -12 -14 -14 -14 -14 -14 -15 -17 -19 -19 -19 -16 -13 -12 -11 -11 -13 -14 -16 -19 -22 -22 -21 -21 -23 -26 -27 -24 -21 -20 -19 -18 -18 -18 -16 -13 -10 -7 -3 -3 -5 -8 -8 -6 -4 -3 -2 -0 -0 -2 -5 -11 -20 -30 -37 -41 -44 -45 -45 -43 -40 -35 -29 -20 -12 -7 -4 -2 -0 -0 -1 -0 0 2 5 7 2 -8 -11 6 10 6 -2 -11 -18 -18 -11 -6 -3 -4 -6 -9 -11 -12 -11 -8 -6 -4 -3 -4 -8 -13 -15 -12 -3 9 19 21 19 17 16 17 20 25 29 35 41 48 55 63 71 76 72 64 63 63 64 66 68 69 67 64 63 66 72 76 77 76 70 67 64 62 60 61 59 54 48 43 40 37 32 28 25 25 30 37 40 41 39 38 35 32 30 29 28 28 27 27 27 27 28 29 30 31 33 34 35 36 36 35 34 34 35 36 38 40 41 43 44 44 44 43 41 38 36 34 33 32 31 28 25 22 18 16 14 13 12 13 13 13 14 14 14 13 12 10 8 6 4 2 1 0 0 -1 -2 -4 -5 -7 -8 -9 -8 -7 -5 -2 -0 -1 -4 -9 -14 -19 -23 -26 -29 -31 -32 -26 -12 10 33 45 42 38 36 36 37 37 36 35 35 34 34 34 34 34 33 32 31 29 27 26 24 22 20 17 15 12 11 12 15 22 30 36 36 33 28 23 19 16 13 11 10 10 11 12 14 16 18 21 24 25 25 23 20 17 14 11 8 5 2 1 -1 -2 -4 -6 -9 -12 -16 -20 -23 -24 -23 -18 -11 -2 5 8 8 7 5 6 6 5 2 -3 -9 -13 -14 -14 -14 -13 -10 -8 -7 -10 -10 -4 -0 0 -1 -4 -7 -10 -13 -15 -16 -15 -13 -9 -6 -2 1 1 -3 -7 -2 43 58 60 58 56 56 57 56 54 50 46 44 44 45 46 45 44 44 43 41 38 36 33 30 26 22 17 12 6 -0 -7 -13 -16 -19 -22 -25 -30 -32 -32 -30 -25 -22 -19 -17 -7 -9 -13 -16 -16 -16 -15 -14 -13 -13 -15 -17 -19 -20 -19 -17 -16 -14 -13 -13 -13 -14 -17 -20 -19 -17 -17 -18 -21 -23 -23 -20 -19 -18 -17 -18 -18 -18 -17 -15 -14 -10 -6 -5 -6 -9 -10 -7 -4 -2 -0 1 0 -3 -9 -18 -28 -34 -38 -41 -42 -43 -43 -40 -36 -31 -23 -16 -10 -6 -3 -0 -1 -1 -1 1 3 6 9 9 -0 -11 -11 3 5 0 -7 -13 -12 -6 -2 -0 -2 -3 -5 -7 -8 -9 -8 -7 -7 -8 -8 -8 -9 -11 -11 -9 -3 6 14 19 21 23 25 27 29 33 38 44 50 58 67 73 73 67 62 62 64 66 67 66 65 64 62 61 62 65 68 72 74 70 69 68 67 67 65 62 56 52 48 44 39 34 29 27 27 31 37 41 43 42 40 37 34 31 30 29 29 28 28 28 28 29 30 31 32 33 34 35 36 36 35 34 34 35 36 38 40 41 42 44 45 46 45 43 41 38 36 35 34 32 29 26 22 18 15 13 12 11 11 12 13 13 14 14 13 13 11 10 7 5 3 2 1 0 -1 -2 -4 -6 -8 -10 -10 -11 -10 -8 -5 -1 -0 -1 -5 -11 -17 -21 -25 -28 -30 -32 -30 -23 -7 15 35 40 39 36 35 36 37 37 36 35 35 34 34 34 34 34 33 32 31 29 27 25 23 21 19 16 13 10 9 10 14 22 32 36 36 32 26 21 17 14 12 10 10 10 11 11 12 12 15 20 24 26 27 25 21 18 14 10 7 4 2 1 0 -1 -2 -5 -8 -12 -16 -20 -23 -24 -24 -20 -15 -9 -3 2 4 3 3 3 3 2 -2 -7 -11 -12 -13 -13 -12 -10 -7 -5 -5 -10 -8 -3 0 -1 -3 -6 -9 -12 -14 -15 -15 -13 -10 -7 -3 1 3 1 -5 -12 30 53 60 58 56 56 57 57 56 52 47 45 44 45 46 46 46 46 45 43 41 39 36 33 29 25 20 15 9 4 -3 -9 -13 -16 -20 -23 -28 -31 -33 -32 -28 -24 -20 -19 -6 -10 -15 -18 -18 -17 -15 -14 -13 -13 -13 -14 -15 -16 -17 -17 -17 -16 -15 -14 -14 -15 -16 -16 -15 -13 -14 -16 -19 -22 -24 -24 -24 -24 -21 -18 -15 -13 -13 -13 -16 -15 -12 -9 -6 -6 -10 -12 -9 -5 -2 -1 -2 -5 -10 -16 -22 -28 -32 -35 -38 -41 -42 -41 -38 -32 -26 -19 -13 -8 -4 -2 -2 -2 -0 2 5 8 12 12 6 -6 -19 -12 -7 -3 -1 -5 -5 -4 -2 -0 1 -0 -3 -4 -5 -5 -6 -7 -8 -10 -10 -9 -8 -9 -10 -10 -8 -5 0 8 15 21 27 30 32 35 40 45 51 55 58 60 60 61 63 66 67 67 65 63 61 60 60 60 62 65 67 68 69 70 73 76 76 75 70 65 61 57 52 45 38 33 30 30 32 37 41 43 44 44 42 39 36 33 31 30 30 30 29 29 29 29 30 31 32 33 34 35 36 35 35 34 34 35 36 38 39 41 42 44 45 47 47 46 43 40 38 36 35 33 31 27 23 18 15 13 12 11 11 11 12 13 14 14 14 14 12 11 9 6 5 3 2 1 -0 -2 -5 -7 -9 -11 -12 -13 -13 -11 -8 -4 -1 0 -2 -7 -13 -18 -22 -25 -27 -30 -31 -28 -20 -5 16 30 36 36 34 35 37 37 37 36 36 35 34 34 34 35 34 33 32 30 29 27 25 23 21 18 15 11 8 7 8 13 23 33 38 37 31 24 19 15 12 11 11 11 11 10 9 7 9 12 17 23 27 27 26 22 18 14 10 7 4 2 2 1 -0 -2 -4 -7 -11 -15 -19 -23 -25 -24 -20 -17 -12 -7 -3 -1 -1 -1 -1 -1 -3 -7 -9 -11 -11 -12 -12 -11 -9 -5 -2 -6 -9 -7 -2 0 -2 -5 -8 -11 -13 -15 -15 -14 -11 -7 -4 0 4 4 0 -12 13 42 59 59 56 56 57 58 57 54 49 45 44 45 47 47 48 48 47 45 43 42 39 35 32 27 22 17 12 7 1 -4 -9 -13 -17 -21 -26 -30 -33 -33 -31 -26 -23 -21 -7 -11 -15 -17 -17 -15 -14 -14 -14 -14 -13 -13 -13 -13 -14 -14 -15 -15 -15 -15 -13 -12 -11 -11 -12 -12 -13 -15 -19 -22 -23 -25 -26 -24 -20 -15 -13 -12 -12 -12 -13 -12 -11 -9 -7 -5 -7 -10 -12 -9 -3 -1 -3 -6 -9 -13 -18 -23 -27 -30 -32 -36 -40 -41 -39 -34 -28 -21 -16 -11 -7 -4 -3 -2 0 3 7 10 12 13 8 -2 -17 -15 -13 -11 -10 -7 -3 -2 -2 -0 2 1 -2 -3 -3 -3 -4 -6 -9 -11 -11 -9 -6 -6 -6 -6 -7 -9 -9 -5 1 9 16 22 27 31 35 40 44 46 46 47 51 58 66 69 69 67 65 63 61 61 61 61 63 65 66 67 67 72 79 84 86 83 75 68 64 59 52 44 39 34 31 29 31 37 41 42 42 42 40 38 37 35 33 32 31 31 30 30 30 30 30 31 32 33 34 35 35 35 35 34 33 34 36 38 39 41 42 44 46 48 49 48 46 43 40 38 36 35 32 28 24 19 16 13 12 11 11 11 12 13 14 15 15 14 13 12 10 8 7 5 4 2 1 -1 -4 -7 -10 -12 -14 -15 -15 -15 -12 -8 -3 -0 0 -3 -8 -14 -19 -22 -24 -27 -29 -29 -26 -18 -4 12 23 30 32 34 36 37 38 37 37 36 35 35 35 35 34 33 32 31 30 29 27 25 23 20 17 13 9 6 3 5 13 25 34 39 36 29 22 17 13 12 12 12 12 11 8 5 4 5 9 14 20 24 26 25 23 19 15 11 7 5 3 2 1 -0 -2 -4 -6 -10 -15 -19 -23 -24 -22 -19 -16 -12 -8 -4 -2 -2 -4 -6 -7 -9 -10 -11 -11 -11 -11 -12 -10 -7 -3 -3 -7 -9 -5 0 -1 -4 -7 -10 -13 -14 -15 -14 -12 -9 -4 -0 3 6 5 -4 -6 23 52 60 57 57 58 58 58 55 50 46 44 45 46 48 49 49 48 46 45 44 41 38 34 29 24 19 15 10 5 0 -5 -9 -14 -18 -24 -29 -32 -33 -34 -30 -25 -23 -7 -11 -14 -15 -13 -11 -10 -10 -12 -13 -14 -14 -13 -12 -12 -12 -12 -12 -13 -13 -11 -10 -9 -10 -11 -13 -15 -17 -19 -22 -25 -26 -25 -23 -20 -17 -14 -12 -12 -11 -11 -10 -9 -7 -6 -6 -6 -7 -9 -11 -8 -3 -4 -7 -9 -12 -15 -19 -24 -27 -30 -34 -38 -39 -38 -34 -29 -23 -17 -13 -9 -7 -6 -4 -1 2 5 8 10 11 8 -1 -13 -13 -13 -14 -15 -14 -8 -3 -1 0 1 0 -2 -3 -2 -2 -2 -4 -7 -10 -10 -8 -5 -5 -5 -7 -8 -10 -13 -12 -9 -3 2 7 11 14 17 20 22 22 22 24 29 41 53 60 63 63 62 63 64 65 65 64 66 66 65 65 68 76 84 89 91 90 85 77 68 59 52 50 46 40 34 29 26 25 25 25 26 26 25 28 32 35 35 34 33 32 32 31 30 30 30 31 32 33 34 35 35 35 34 33 33 34 36 38 39 41 43 45 47 49 50 50 48 45 42 40 38 36 33 30 25 21 17 15 13 12 12 13 13 14 14 15 15 14 14 13 11 10 9 7 6 4 2 0 -3 -6 -9 -12 -14 -16 -17 -17 -15 -12 -7 -3 0 -0 -4 -9 -14 -18 -21 -23 -25 -27 -27 -23 -16 -6 5 14 22 27 32 36 37 38 37 37 36 35 35 35 34 34 33 32 31 30 28 27 25 22 19 15 11 7 2 0 4 13 25 36 39 34 26 20 15 13 13 13 14 13 9 5 2 1 2 4 9 15 19 22 23 22 20 16 12 8 6 4 2 0 -1 -2 -3 -5 -9 -15 -20 -22 -22 -20 -17 -14 -10 -5 -1 -1 -3 -8 -11 -12 -13 -12 -11 -11 -11 -12 -12 -10 -6 -3 -4 -7 -9 -2 -1 -3 -6 -9 -12 -13 -14 -14 -13 -10 -6 -1 3 6 8 3 -9 6 36 57 58 57 58 59 59 56 51 47 44 44 46 48 49 49 49 47 47 46 44 40 36 31 25 21 16 12 8 4 -1 -5 -10 -15 -22 -28 -31 -32 -34 -32 -29 -25 -6 -9 -11 -10 -6 -3 -2 -3 -6 -9 -12 -13 -13 -12 -12 -11 -11 -10 -10 -11 -10 -9 -9 -10 -12 -15 -17 -20 -22 -24 -26 -25 -22 -20 -19 -17 -15 -13 -13 -12 -11 -10 -9 -8 -8 -8 -7 -5 -6 -9 -11 -8 -5 -6 -9 -12 -14 -18 -23 -27 -31 -34 -36 -37 -37 -34 -30 -24 -18 -13 -10 -9 -9 -8 -5 -2 1 4 5 7 7 1 -10 -11 -12 -10 -11 -15 -15 -6 -1 1 0 -1 -2 -2 -2 -1 -1 -3 -6 -7 -7 -6 -5 -6 -8 -11 -13 -14 -15 -15 -13 -10 -7 -5 -3 -1 -1 -1 -1 -2 -3 -2 2 11 21 31 38 42 45 49 54 59 61 62 67 69 68 68 72 80 87 91 91 88 84 76 66 58 54 54 51 43 35 29 26 25 25 25 25 24 23 23 24 25 29 34 35 34 33 32 31 31 31 31 32 33 34 34 35 34 34 33 33 34 36 38 40 41 43 45 48 50 52 52 50 48 44 41 39 37 35 32 27 23 19 16 15 14 14 14 15 15 15 15 15 14 14 13 12 11 10 9 8 6 5 2 -1 -4 -8 -11 -14 -16 -17 -18 -17 -15 -12 -7 -3 -1 -2 -5 -9 -14 -17 -19 -22 -23 -24 -23 -20 -16 -11 -4 4 12 20 28 33 37 37 37 36 35 35 35 34 34 33 33 32 31 30 28 26 24 21 18 14 10 5 -0 -2 2 12 25 35 36 31 24 18 15 15 15 15 14 11 6 2 -0 -2 -2 0 4 8 12 16 19 20 20 18 15 11 7 4 1 -1 -2 -2 -3 -5 -9 -15 -19 -20 -20 -18 -15 -11 -6 -1 2 0 -5 -9 -13 -15 -15 -13 -11 -11 -12 -13 -13 -10 -6 -4 -5 -10 -7 -3 -2 -5 -8 -11 -13 -14 -15 -14 -12 -7 -2 2 5 8 6 -3 -6 4 42 54 57 58 59 59 57 53 48 45 44 45 47 49 49 48 48 48 48 46 43 39 34 28 22 18 14 11 7 3 -1 -6 -12 -19 -26 -30 -30 -31 -32 -31 -28 -7 -9 -9 -7 -1 3 4 4 1 -4 -7 -10 -10 -10 -10 -11 -11 -11 -10 -9 -8 -8 -9 -12 -15 -19 -21 -22 -23 -23 -23 -23 -22 -20 -19 -18 -16 -15 -15 -15 -14 -12 -10 -10 -10 -11 -9 -6 -6 -7 -10 -10 -5 -4 -7 -13 -17 -20 -24 -28 -32 -34 -35 -35 -35 -34 -30 -25 -19 -14 -11 -11 -12 -12 -11 -8 -5 -3 -1 2 5 3 -7 -11 -12 -10 -8 -8 -16 -11 -5 -1 -0 -1 -1 -2 -2 -2 -2 -4 -5 -5 -4 -4 -5 -6 -9 -12 -16 -17 -17 -16 -14 -12 -9 -6 -5 -5 -7 -10 -12 -14 -15 -16 -16 -14 -9 -4 2 7 10 14 19 25 31 36 49 60 67 73 78 85 89 90 88 84 79 72 65 60 56 55 51 43 34 27 25 27 27 27 26 26 25 24 24 24 25 30 35 36 34 33 32 32 31 31 32 33 33 34 34 34 33 33 33 34 36 38 40 42 44 46 49 51 53 53 52 50 46 43 40 38 36 34 29 25 21 18 17 17 17 17 17 16 16 16 15 14 14 13 13 12 12 11 10 8 7 5 2 -2 -6 -9 -12 -15 -17 -18 -18 -17 -15 -11 -7 -2 -1 -2 -5 -9 -13 -15 -18 -20 -20 -20 -19 -17 -16 -14 -11 -6 2 10 19 27 31 33 34 33 33 33 34 34 34 34 34 33 32 30 29 26 23 20 17 13 9 3 -3 -5 -1 10 24 32 32 28 22 17 17 17 17 16 13 8 4 1 -2 -3 -4 -4 -2 1 5 9 13 17 20 20 17 13 8 4 -0 -2 -2 -2 -2 -5 -10 -15 -18 -18 -18 -16 -13 -8 -2 2 3 -1 -6 -11 -15 -17 -16 -13 -12 -12 -13 -14 -12 -9 -6 -4 -7 -9 -5 -3 -4 -7 -10 -12 -13 -15 -15 -13 -9 -4 1 5 7 7 3 -4 -8 4 35 51 57 58 59 58 55 50 46 44 45 47 48 48 48 48 49 49 48 46 42 37 31 25 20 16 13 9 6 3 -2 -8 -16 -23 -29 -30 -27 -31 -32 -29 -12 -14 -13 -10 -5 0 4 5 4 -0 -4 -6 -7 -8 -8 -9 -10 -10 -9 -8 -7 -8 -11 -15 -19 -22 -23 -23 -22 -21 -21 -22 -23 -22 -21 -19 -18 -18 -18 -18 -16 -14 -12 -12 -12 -12 -10 -8 -7 -7 -8 -11 -9 -5 -5 -11 -19 -25 -29 -32 -35 -36 -36 -36 -35 -33 -29 -25 -20 -15 -12 -13 -14 -15 -14 -13 -12 -10 -8 -4 2 4 -3 -10 -11 -9 -7 -4 -7 -12 -11 -6 -2 -2 -2 -3 -4 -4 -4 -5 -6 -4 -3 -3 -7 -10 -11 -12 -15 -17 -18 -18 -17 -14 -9 -6 -4 -5 -7 -9 -11 -12 -14 -15 -17 -17 -20 -23 -24 -24 -24 -23 -21 -17 -10 -4 11 30 52 70 82 89 91 90 85 80 75 69 65 62 60 58 52 43 33 26 25 28 27 26 27 30 30 28 25 24 25 29 31 31 32 34 34 33 32 32 33 33 34 34 35 34 34 33 34 35 37 39 41 42 44 47 49 52 54 55 54 51 48 44 42 40 38 35 32 27 24 21 19 19 19 19 19 19 18 17 16 15 13 13 13 13 12 12 11 10 9 7 4 1 -3 -7 -10 -13 -15 -17 -17 -18 -16 -14 -10 -5 -2 -0 -2 -5 -8 -12 -14 -16 -17 -17 -16 -15 -15 -15 -15 -15 -13 -9 -3 6 15 21 24 25 24 24 26 28 30 33 34 34 33 32 31 30 28 25 22 18 14 8 1 -6 -9 -6 7 20 29 31 27 22 20 19 19 18 15 11 7 3 0 -2 -4 -5 -6 -6 -5 -2 3 8 14 19 21 19 14 8 2 -2 -4 -3 -1 -2 -6 -11 -14 -16 -16 -16 -14 -11 -5 0 4 2 -3 -9 -13 -16 -16 -15 -14 -13 -14 -15 -14 -12 -9 -5 -5 -9 -8 -5 -4 -7 -9 -11 -13 -14 -15 -14 -11 -6 -0 4 6 6 4 1 -4 -7 3 25 48 57 59 58 56 52 48 45 45 46 47 47 47 48 50 50 49 48 45 40 35 29 24 19 15 11 9 6 2 -4 -11 -20 -28 -33 -29 -30 -31 -30 -15 -16 -16 -15 -12 -8 -3 1 3 1 -2 -4 -5 -6 -6 -8 -8 -8 -8 -7 -5 -7 -12 -17 -21 -22 -22 -21 -21 -20 -20 -22 -24 -24 -23 -20 -19 -20 -20 -20 -19 -17 -15 -14 -13 -12 -10 -9 -7 -6 -7 -11 -15 -11 -5 -5 -15 -27 -34 -38 -40 -40 -39 -38 -35 -32 -28 -24 -20 -16 -14 -14 -15 -15 -15 -14 -14 -14 -13 -9 -3 1 0 -8 -9 -8 -7 -5 -3 -6 -9 -9 -6 -4 -7 -6 -5 -4 -5 -7 -9 -8 -5 -5 -7 -9 -12 -14 -15 -14 -15 -16 -17 -16 -11 -6 -4 -4 -5 -7 -8 -10 -12 -14 -16 -17 -20 -22 -25 -25 -26 -27 -27 -27 -26 -24 -25 -10 17 48 74 89 92 89 83 76 71 67 64 63 63 60 54 43 33 26 26 27 26 25 28 33 33 31 29 28 28 30 30 29 29 29 30 32 33 33 34 34 35 36 35 35 34 34 35 36 38 40 42 44 45 48 50 53 55 55 55 52 49 46 43 41 39 37 34 30 26 23 21 21 21 21 21 21 20 19 17 15 14 13 13 13 13 13 12 12 11 9 7 3 -0 -4 -8 -10 -13 -14 -16 -17 -17 -15 -12 -7 -3 0 1 -1 -4 -8 -11 -13 -14 -14 -14 -13 -13 -14 -14 -14 -15 -15 -16 -14 -8 -1 6 9 9 8 8 10 13 17 21 23 25 26 27 27 27 27 27 25 22 15 7 -1 -9 -14 -8 5 18 28 29 26 23 23 22 21 17 13 9 6 3 0 -2 -4 -6 -7 -8 -8 -6 -3 3 11 18 21 20 15 7 -1 -4 -5 -3 -1 -2 -6 -10 -13 -14 -15 -14 -13 -9 -4 2 2 -1 -6 -11 -14 -15 -15 -15 -14 -15 -15 -15 -14 -11 -8 -5 -7 -9 -8 -5 -7 -9 -11 -12 -13 -15 -15 -13 -8 -2 3 5 5 3 2 1 -1 -4 -1 13 42 54 58 57 54 50 46 46 47 47 46 47 48 50 50 50 49 47 43 39 34 29 23 18 14 11 8 5 0 -7 -16 -25 -33 -34 -33 -32 -31 -16 -16 -15 -14 -14 -13 -10 -6 -2 -0 -1 -3 -4 -5 -5 -6 -7 -7 -6 -6 -4 -7 -12 -16 -18 -18 -18 -18 -19 -19 -20 -23 -25 -25 -23 -21 -21 -22 -22 -21 -20 -20 -19 -17 -15 -14 -13 -11 -9 -7 -8 -11 -17 -19 -13 -4 -4 -20 -34 -42 -45 -43 -41 -38 -35 -31 -27 -22 -18 -16 -15 -16 -17 -16 -15 -14 -13 -14 -14 -12 -7 -2 0 -6 -9 -8 -7 -6 -4 -5 -8 -10 -8 -4 -5 -8 -8 -6 -4 -5 -6 -6 -4 -2 -3 -6 -9 -12 -12 -10 -10 -12 -15 -15 -13 -8 -4 -3 -4 -5 -6 -8 -10 -13 -16 -17 -18 -20 -22 -24 -25 -26 -29 -31 -30 -26 -25 -26 -19 2 43 74 87 88 82 74 70 66 64 63 63 61 55 46 36 29 27 26 26 27 29 31 32 33 34 33 32 32 32 29 27 26 26 27 29 31 34 36 36 37 37 36 36 36 37 39 41 43 44 46 47 49 51 54 55 56 55 54 51 48 45 42 40 38 36 33 29 25 23 23 23 23 23 23 22 20 19 17 15 14 14 14 14 14 13 13 12 11 9 6 2 -2 -5 -8 -10 -12 -14 -15 -16 -16 -14 -10 -5 -0 2 2 -1 -4 -7 -10 -12 -12 -12 -11 -12 -12 -13 -13 -13 -14 -15 -16 -17 -15 -12 -8 -6 -7 -8 -7 -5 -2 1 4 5 7 8 9 11 15 21 26 27 24 17 7 -3 -12 -15 -8 3 16 24 25 26 26 25 24 20 16 12 9 5 2 -0 -2 -4 -6 -7 -8 -9 -9 -7 -2 7 16 21 20 13 3 -3 -6 -5 -2 -1 -3 -6 -9 -11 -12 -13 -13 -12 -9 -4 -0 -1 -3 -8 -11 -13 -14 -15 -15 -16 -16 -15 -14 -13 -10 -7 -6 -8 -10 -7 -7 -9 -10 -11 -12 -14 -15 -14 -11 -5 1 4 3 2 0 2 5 3 -1 -3 2 31 48 55 55 51 48 47 47 46 45 46 48 50 51 50 50 48 45 42 38 34 28 23 17 13 10 7 3 -3 -11 -21 -29 -34 -35 -34 -32 -14 -14 -13 -12 -13 -14 -13 -11 -8 -5 -2 -2 -3 -4 -4 -4 -5 -5 -5 -4 -3 -6 -10 -12 -13 -11 -10 -10 -12 -15 -19 -23 -24 -23 -21 -20 -22 -24 -25 -24 -22 -22 -22 -21 -19 -16 -14 -12 -11 -10 -10 -13 -17 -22 -22 -16 -6 -15 -30 -42 -47 -45 -41 -38 -34 -31 -27 -22 -18 -17 -17 -17 -18 -17 -15 -14 -12 -12 -12 -11 -9 -6 -3 -5 -11 -11 -8 -7 -7 -6 -7 -10 -13 -8 -5 -6 -7 -8 -7 -5 -4 -3 -2 -1 -1 -3 -6 -9 -10 -8 -8 -9 -11 -12 -12 -9 -6 -3 -3 -4 -5 -7 -9 -11 -14 -16 -17 -18 -20 -23 -24 -25 -26 -28 -29 -29 -27 -25 -24 -23 -25 32 66 79 80 75 72 70 67 64 62 61 56 49 41 33 28 28 29 29 29 28 30 33 35 35 34 34 33 30 28 26 24 24 25 28 33 36 37 38 38 38 37 38 39 41 44 46 48 49 50 51 52 54 55 56 56 55 52 49 46 43 41 39 37 35 32 28 25 25 25 25 25 25 24 22 20 18 16 15 15 15 15 15 15 14 13 12 10 7 4 1 -2 -5 -7 -9 -11 -13 -14 -15 -14 -11 -7 -2 2 4 2 -0 -3 -6 -8 -9 -9 -9 -10 -10 -11 -12 -12 -13 -13 -14 -15 -16 -15 -12 -8 -6 -7 -8 -10 -10 -10 -9 -9 -8 -7 -7 -6 -3 1 9 18 23 24 18 8 -3 -11 -14 -12 -5 7 16 22 26 28 27 23 19 15 12 8 5 2 -0 -2 -4 -5 -7 -8 -10 -11 -11 -6 4 14 21 18 9 0 -6 -7 -4 -2 -2 -3 -5 -7 -9 -11 -12 -13 -12 -9 -5 -3 -2 -5 -8 -10 -12 -14 -15 -16 -16 -16 -15 -14 -12 -9 -7 -8 -10 -9 -8 -9 -10 -11 -11 -12 -14 -15 -13 -8 -1 3 3 1 -1 -0 5 9 9 5 -3 3 22 42 52 52 49 47 47 46 45 46 48 49 50 50 50 48 46 44 41 38 33 28 22 16 12 9 5 0 -7 -17 -26 -32 -35 -36 -34 -12 -12 -12 -11 -12 -13 -13 -12 -12 -10 -6 -3 -1 -2 -3 -4 -3 -3 -3 -3 -3 -4 -6 -8 -9 -10 -10 -10 -10 -13 -18 -23 -26 -24 -21 -19 -21 -23 -25 -24 -24 -24 -26 -26 -24 -21 -17 -15 -14 -14 -15 -17 -19 -22 -24 -23 -21 -18 -26 -36 -43 -44 -41 -37 -33 -29 -25 -21 -18 -18 -19 -20 -20 -19 -17 -15 -12 -10 -10 -10 -9 -8 -6 -7 -14 -15 -12 -9 -10 -8 -7 -8 -12 -13 -7 -5 -6 -8 -10 -7 -4 -2 -1 -1 -0 -1 -2 -5 -8 -9 -8 -7 -7 -8 -10 -11 -9 -6 -4 -3 -5 -7 -8 -10 -13 -15 -17 -18 -20 -24 -26 -26 -25 -25 -27 -29 -28 -27 -26 -25 -24 -19 10 42 64 71 68 64 64 68 69 65 58 51 43 35 29 29 30 30 29 29 31 33 35 36 35 34 33 30 28 26 25 25 25 26 29 34 37 39 39 39 39 39 41 44 47 50 51 52 52 52 53 54 55 56 56 55 54 51 48 44 41 40 39 37 35 31 28 27 26 27 27 26 26 24 22 20 18 17 16 16 16 16 16 15 14 13 11 9 5 2 -0 -2 -5 -6 -8 -10 -12 -14 -14 -12 -9 -5 1 4 4 3 0 -3 -5 -6 -7 -7 -8 -8 -10 -11 -11 -12 -12 -13 -14 -15 -16 -14 -9 -5 -4 -4 -6 -7 -7 -8 -9 -10 -11 -11 -12 -12 -11 -8 -1 7 15 21 20 11 1 -11 -21 -18 -10 -1 10 20 27 29 27 23 19 15 11 8 4 2 -0 -2 -4 -5 -7 -9 -11 -13 -13 -9 1 13 18 13 5 -3 -7 -6 -3 -2 -2 -3 -5 -6 -8 -10 -12 -12 -12 -10 -7 -5 -4 -5 -7 -9 -12 -15 -16 -17 -16 -15 -14 -13 -11 -8 -7 -9 -10 -9 -9 -10 -10 -10 -11 -13 -15 -14 -11 -4 1 3 1 -3 -2 2 8 12 14 11 3 5 16 37 47 49 48 47 46 45 45 47 49 50 50 49 48 46 44 43 40 37 32 27 21 15 11 7 2 -4 -14 -23 -29 -34 -36 -36 -12 -11 -10 -10 -10 -9 -10 -12 -14 -14 -11 -7 -4 -2 -3 -5 -5 -5 -5 -5 -5 -4 -5 -7 -10 -13 -12 -10 -10 -11 -15 -19 -23 -24 -23 -20 -20 -23 -24 -24 -24 -26 -30 -32 -31 -28 -24 -20 -18 -18 -19 -20 -21 -22 -22 -23 -26 -26 -27 -31 -37 -40 -39 -35 -31 -26 -22 -18 -17 -17 -19 -20 -21 -20 -18 -16 -14 -11 -9 -8 -8 -8 -8 -9 -15 -19 -18 -12 -11 -11 -8 -7 -9 -14 -11 -6 -5 -7 -9 -9 -7 -4 -2 -2 -0 1 0 -2 -6 -9 -9 -8 -7 -7 -8 -10 -11 -10 -7 -5 -6 -6 -8 -10 -12 -15 -16 -17 -20 -25 -27 -27 -25 -24 -25 -28 -30 -30 -30 -28 -26 -27 -19 -10 -4 6 20 25 35 50 64 70 64 52 41 34 28 26 28 30 32 33 34 34 35 35 35 34 32 29 27 25 25 25 25 26 26 30 35 38 39 39 40 41 44 47 50 53 54 54 54 54 54 54 54 55 56 56 55 53 50 46 42 40 39 38 37 34 31 29 28 28 28 28 27 26 24 22 20 18 17 17 17 17 17 16 15 14 13 10 7 4 2 -0 -2 -4 -6 -8 -10 -12 -13 -13 -11 -7 -2 3 5 5 4 1 -1 -3 -4 -5 -6 -6 -8 -9 -10 -11 -12 -12 -14 -15 -16 -15 -11 -7 -4 -3 -5 -6 -6 -7 -7 -9 -10 -10 -10 -11 -12 -13 -12 -8 -3 5 16 18 11 -5 -19 -10 -6 -7 -5 2 16 25 28 26 23 19 15 11 7 4 2 -0 -2 -3 -5 -7 -10 -13 -15 -15 -11 -1 12 15 10 1 -5 -6 -4 -3 -2 -3 -3 -4 -6 -8 -10 -11 -11 -11 -11 -9 -6 -4 -4 -6 -9 -13 -16 -17 -17 -16 -15 -14 -12 -10 -8 -8 -10 -10 -10 -11 -11 -9 -9 -11 -14 -15 -13 -7 -1 2 0 -3 -3 -0 5 11 15 17 16 10 6 13 33 44 48 47 45 45 45 47 48 49 49 48 47 45 44 43 42 39 35 31 25 19 13 8 4 -3 -12 -21 -28 -32 -34 -36 -16 -13 -9 -8 -7 -7 -9 -12 -15 -16 -14 -12 -10 -7 -4 -3 -2 -2 -3 -5 -6 -5 -6 -7 -9 -11 -10 -9 -10 -12 -14 -16 -19 -22 -22 -21 -21 -24 -25 -24 -24 -27 -32 -35 -36 -33 -29 -24 -22 -21 -22 -22 -22 -22 -21 -20 -22 -28 -29 -29 -31 -34 -35 -33 -28 -22 -17 -14 -13 -14 -15 -18 -20 -20 -19 -18 -16 -14 -11 -8 -6 -6 -7 -9 -13 -19 -21 -18 -13 -12 -11 -9 -7 -11 -13 -10 -7 -6 -6 -8 -10 -9 -6 -4 -1 0 0 -2 -5 -7 -10 -11 -10 -8 -7 -8 -10 -11 -11 -9 -7 -6 -6 -8 -10 -13 -14 -16 -20 -25 -28 -28 -27 -25 -24 -27 -31 -33 -33 -31 -30 -28 -27 -26 -26 -21 -12 -7 -3 7 31 54 59 50 36 28 23 28 32 33 32 30 31 33 35 35 33 32 30 27 25 24 24 24 25 25 26 28 30 34 38 40 41 43 46 50 53 55 56 56 56 55 54 54 54 54 55 56 56 54 52 48 44 41 40 39 38 37 33 31 30 30 29 29 28 27 26 24 23 21 19 19 19 19 18 17 16 15 14 11 9 6 4 2 1 -1 -3 -5 -7 -10 -11 -12 -11 -9 -5 0 4 6 7 5 3 0 -1 -2 -3 -5 -6 -8 -9 -10 -11 -12 -13 -14 -15 -16 -13 -8 -4 -2 -2 -4 -5 -6 -7 -9 -10 -11 -10 -10 -9 -10 -11 -13 -13 -11 -3 8 7 -3 -12 -4 -4 -6 -8 -8 -5 8 19 25 26 23 19 14 10 6 4 2 0 -2 -4 -6 -9 -13 -16 -17 -16 -12 1 11 13 7 -1 -3 -4 -3 -3 -3 -3 -3 -4 -6 -9 -10 -10 -10 -11 -11 -10 -7 -4 -4 -6 -10 -14 -17 -18 -17 -16 -15 -13 -12 -10 -9 -10 -11 -11 -11 -11 -10 -9 -10 -13 -15 -15 -10 -4 0 0 -4 -5 -2 3 9 13 16 18 19 17 8 16 29 40 44 42 42 43 45 48 49 49 48 46 45 44 43 42 40 37 34 29 23 17 11 5 -2 -11 -20 -28 -32 -33 -35 -16 -13 -11 -11 -9 -8 -10 -12 -14 -16 -16 -15 -14 -12 -8 -4 -1 0 -1 -5 -8 -9 -8 -8 -9 -10 -9 -9 -10 -12 -14 -14 -17 -19 -21 -21 -23 -26 -27 -26 -25 -28 -32 -35 -36 -34 -29 -25 -22 -22 -22 -22 -21 -20 -19 -19 -18 -19 -24 -27 -28 -29 -31 -30 -26 -20 -14 -11 -10 -10 -12 -16 -19 -19 -19 -18 -18 -16 -14 -10 -6 -4 -4 -6 -9 -15 -21 -25 -21 -17 -15 -13 -10 -8 -12 -13 -11 -7 -6 -5 -7 -10 -10 -6 -3 -1 -1 -1 -3 -6 -9 -12 -13 -10 -7 -6 -7 -9 -12 -13 -11 -8 -5 -4 -6 -9 -10 -13 -18 -24 -29 -30 -29 -26 -24 -26 -30 -33 -34 -33 -33 -31 -28 -26 -26 -25 -22 -19 -17 -14 -2 18 34 37 30 25 26 32 35 34 31 27 29 32 35 35 34 31 27 24 22 21 21 21 22 24 26 27 27 29 34 40 43 45 48 52 55 57 58 58 57 56 54 53 53 54 54 55 56 55 53 50 45 42 40 40 40 39 36 34 32 31 31 30 30 29 28 27 25 23 21 21 21 21 20 19 17 16 15 13 11 9 7 5 3 2 -0 -3 -5 -7 -10 -11 -11 -10 -7 -3 2 5 8 8 7 4 2 0 -1 -3 -5 -7 -8 -10 -11 -12 -13 -14 -15 -15 -14 -10 -5 -1 -0 -2 -3 -5 -6 -8 -10 -11 -11 -10 -9 -9 -9 -9 -10 -13 -16 -9 -4 -4 -4 -1 -3 -6 -7 -8 -9 -8 -1 10 20 24 21 17 12 8 5 4 2 0 -2 -4 -8 -12 -15 -17 -17 -15 -8 2 11 11 5 0 -2 -3 -3 -4 -4 -4 -4 -5 -7 -9 -9 -9 -10 -10 -11 -10 -7 -4 -4 -7 -11 -15 -18 -18 -17 -16 -14 -13 -12 -10 -10 -11 -12 -12 -12 -11 -9 -8 -11 -15 -15 -13 -8 -2 -0 -4 -6 -5 -0 7 12 14 16 19 22 23 13 15 21 28 31 34 36 39 43 47 49 48 46 44 43 43 43 41 39 35 31 25 20 13 6 -2 -12 -21 -28 -32 -33 -33 -8 -10 -13 -13 -11 -9 -10 -12 -13 -14 -15 -16 -17 -16 -14 -9 -4 -2 -3 -7 -12 -14 -13 -12 -11 -10 -9 -10 -11 -12 -14 -15 -17 -20 -22 -23 -26 -27 -27 -26 -27 -30 -32 -34 -33 -31 -27 -23 -21 -20 -21 -21 -20 -18 -17 -17 -16 -15 -18 -24 -28 -27 -27 -27 -25 -21 -15 -11 -9 -9 -11 -15 -18 -18 -17 -17 -17 -17 -15 -12 -8 -5 -3 -3 -5 -9 -16 -26 -29 -24 -18 -15 -12 -10 -9 -12 -13 -10 -6 -6 -5 -6 -9 -12 -7 -3 -1 -1 -2 -4 -8 -12 -14 -12 -9 -6 -6 -7 -9 -12 -12 -11 -8 -5 -3 -4 -6 -10 -15 -21 -26 -29 -29 -27 -24 -24 -27 -29 -32 -34 -34 -32 -29 -27 -26 -26 -24 -20 -17 -14 -15 -9 6 18 23 27 31 34 36 35 31 28 29 33 35 36 34 31 28 25 22 19 18 19 21 23 24 24 24 27 33 41 44 47 50 54 57 59 60 59 58 56 55 54 53 53 54 55 55 55 54 51 47 44 41 40 40 40 38 36 34 33 32 32 32 31 30 29 27 25 24 23 23 23 22 20 19 17 16 15 13 12 10 8 6 5 3 0 -2 -5 -8 -10 -10 -10 -8 -6 -2 3 7 10 10 8 6 3 0 -2 -4 -6 -8 -9 -11 -13 -14 -14 -15 -15 -14 -12 -8 -3 0 -0 -2 -4 -6 -8 -10 -11 -11 -10 -9 -8 -8 -8 -8 -8 -12 -16 -11 -3 1 0 -3 -5 -7 -8 -9 -9 -8 -6 1 13 19 18 14 9 6 5 4 3 1 -2 -6 -10 -13 -16 -17 -16 -12 -5 4 12 9 5 2 -0 -2 -4 -5 -5 -5 -5 -6 -8 -8 -8 -8 -9 -10 -11 -10 -8 -5 -5 -9 -13 -16 -18 -18 -17 -16 -14 -13 -11 -11 -11 -12 -13 -13 -12 -9 -8 -9 -13 -15 -14 -11 -5 -1 -4 -7 -8 -4 3 9 13 15 17 20 24 24 15 6 8 10 17 23 28 31 37 42 45 46 45 44 44 43 42 40 36 31 26 21 15 8 -1 -11 -21 -29 -33 -33 -33 -6 -8 -12 -15 -14 -12 -12 -12 -12 -12 -12 -14 -16 -17 -16 -14 -11 -9 -8 -11 -17 -18 -17 -16 -14 -12 -11 -12 -13 -14 -15 -18 -21 -25 -27 -28 -27 -26 -24 -24 -25 -29 -31 -31 -29 -26 -23 -21 -19 -18 -19 -20 -19 -17 -16 -15 -14 -14 -16 -22 -28 -28 -24 -23 -22 -21 -18 -13 -10 -9 -9 -11 -14 -14 -14 -14 -14 -15 -15 -13 -11 -8 -6 -4 -4 -5 -10 -19 -30 -28 -21 -15 -12 -12 -10 -10 -12 -13 -10 -8 -7 -5 -5 -8 -11 -7 -4 -3 -4 -6 -8 -10 -13 -14 -12 -9 -7 -6 -7 -9 -10 -11 -11 -8 -4 -3 -4 -7 -10 -14 -19 -24 -27 -28 -26 -24 -25 -27 -30 -34 -34 -31 -28 -25 -25 -26 -25 -23 -19 -15 -13 -16 -10 2 15 27 32 34 35 36 34 32 32 34 35 36 33 29 26 23 20 17 17 18 20 22 22 23 23 27 34 42 45 48 51 54 57 59 60 60 59 57 55 54 54 53 53 54 55 55 55 53 50 46 43 41 41 41 40 37 35 34 33 33 33 33 32 31 30 28 27 26 26 26 25 22 20 19 18 17 16 15 13 11 10 8 6 4 1 -2 -6 -8 -9 -9 -8 -7 -5 -1 4 9 12 12 9 6 3 -0 -3 -5 -6 -8 -10 -12 -14 -15 -15 -14 -14 -13 -10 -5 -1 0 -1 -3 -5 -7 -9 -11 -11 -10 -8 -7 -7 -7 -8 -8 -9 -12 -10 -3 3 1 -2 -4 -6 -8 -9 -9 -9 -9 -8 -4 5 12 13 10 8 7 7 5 3 -0 -4 -8 -11 -14 -15 -15 -13 -10 -3 8 11 9 5 2 0 -2 -4 -6 -6 -6 -7 -7 -7 -7 -7 -8 -9 -10 -10 -10 -9 -7 -7 -10 -14 -17 -18 -18 -17 -15 -14 -13 -12 -11 -12 -14 -14 -13 -10 -8 -7 -11 -14 -15 -13 -8 -3 -5 -8 -10 -7 -2 5 10 14 17 19 22 24 21 12 0 -5 0 8 14 18 20 25 31 38 43 45 45 44 43 41 36 31 26 20 14 8 0 -10 -21 -30 -34 -34 -34 -7 -9 -11 -14 -16 -14 -12 -11 -11 -12 -14 -16 -17 -17 -16 -17 -18 -17 -17 -17 -19 -18 -17 -16 -16 -14 -13 -14 -15 -16 -18 -20 -23 -25 -27 -28 -26 -23 -22 -21 -22 -25 -25 -23 -21 -19 -18 -19 -19 -19 -19 -20 -20 -18 -16 -15 -15 -15 -16 -21 -26 -29 -23 -18 -18 -18 -17 -15 -13 -11 -10 -9 -10 -10 -11 -11 -12 -13 -14 -13 -12 -10 -8 -6 -5 -4 -6 -12 -23 -27 -22 -16 -13 -13 -12 -11 -11 -13 -13 -10 -8 -7 -5 -5 -8 -10 -9 -6 -5 -6 -7 -8 -10 -13 -13 -10 -7 -5 -6 -7 -8 -10 -11 -10 -8 -5 -4 -5 -8 -12 -15 -19 -24 -28 -29 -25 -22 -23 -26 -30 -31 -31 -28 -25 -23 -23 -23 -22 -19 -15 -12 -14 -14 -7 6 21 30 33 35 36 36 36 35 36 37 38 34 28 25 24 21 16 16 18 19 21 22 22 24 27 32 38 42 44 49 54 57 59 60 61 60 58 56 55 54 54 54 54 54 55 55 54 52 48 45 42 41 42 41 39 37 35 34 34 34 34 34 33 32 30 29 29 29 29 27 25 23 21 21 20 19 18 16 14 13 11 9 7 4 0 -3 -6 -7 -7 -6 -6 -6 -4 -0 6 12 13 12 9 6 3 -0 -2 -4 -6 -8 -11 -14 -16 -15 -14 -13 -12 -11 -9 -4 -1 -0 -2 -4 -7 -9 -11 -11 -10 -9 -7 -6 -6 -7 -7 -9 -12 -12 -6 1 1 -1 -3 -6 -8 -9 -10 -9 -8 -8 -9 -6 -0 7 10 10 9 9 7 5 2 -2 -6 -10 -12 -13 -13 -13 -11 -9 0 9 11 9 6 3 1 -2 -5 -7 -8 -8 -8 -7 -7 -7 -7 -8 -9 -10 -10 -11 -10 -9 -9 -11 -15 -17 -18 -17 -16 -15 -14 -13 -12 -12 -14 -15 -14 -12 -9 -6 -9 -13 -15 -15 -11 -5 -5 -8 -11 -10 -6 1 7 12 16 19 22 23 21 14 7 2 -1 -2 2 9 8 8 9 14 25 37 43 46 45 42 36 30 24 18 12 6 -1 -9 -19 -29 -34 -36 -36 -7 -10 -12 -14 -16 -14 -11 -10 -11 -14 -18 -21 -22 -20 -18 -17 -21 -23 -22 -19 -16 -14 -13 -13 -13 -12 -11 -11 -12 -13 -14 -15 -16 -17 -19 -21 -22 -22 -22 -21 -20 -20 -19 -17 -15 -14 -14 -17 -19 -20 -21 -21 -21 -20 -18 -17 -16 -16 -17 -20 -25 -29 -24 -17 -15 -15 -15 -14 -15 -14 -11 -8 -7 -7 -8 -9 -11 -13 -13 -12 -12 -11 -9 -7 -6 -5 -5 -8 -15 -22 -20 -15 -14 -15 -16 -14 -13 -13 -13 -11 -9 -8 -7 -6 -6 -9 -11 -10 -8 -7 -7 -8 -9 -10 -11 -10 -8 -6 -7 -10 -10 -10 -10 -11 -10 -8 -5 -5 -7 -12 -15 -18 -21 -24 -27 -24 -20 -18 -19 -23 -26 -28 -28 -26 -22 -21 -21 -20 -19 -16 -12 -12 -15 -12 -3 12 26 32 34 35 36 37 38 39 40 40 36 31 28 26 23 18 16 17 18 19 20 21 23 26 30 37 41 44 48 54 57 59 60 60 60 59 57 56 56 55 55 54 54 55 56 56 55 51 48 44 42 42 42 40 38 36 35 35 35 35 35 35 34 33 32 31 32 31 29 27 25 25 24 24 22 21 19 18 16 14 12 10 7 3 -1 -3 -5 -4 -4 -5 -6 -6 -4 2 9 13 14 11 9 6 3 1 -1 -2 -5 -8 -12 -16 -16 -14 -12 -11 -10 -11 -8 -4 -1 -1 -3 -6 -8 -10 -11 -10 -9 -7 -6 -5 -6 -7 -8 -11 -13 -10 -1 1 -0 -2 -5 -7 -9 -10 -10 -9 -8 -7 -9 -7 -2 7 10 11 10 9 7 3 -1 -5 -8 -10 -11 -12 -11 -11 -10 -7 4 11 12 8 6 3 0 -3 -6 -8 -10 -9 -8 -6 -6 -7 -8 -9 -10 -10 -10 -10 -10 -9 -9 -12 -15 -17 -17 -17 -16 -15 -14 -13 -13 -14 -15 -15 -14 -10 -6 -7 -11 -14 -15 -13 -8 -6 -8 -12 -12 -9 -4 3 9 14 18 21 23 22 16 7 4 4 3 -5 2 3 0 -3 -4 -1 8 24 41 46 44 37 29 22 15 9 3 -3 -9 -17 -27 -34 -38 -38 -4 -8 -10 -12 -13 -12 -10 -9 -9 -10 -12 -13 -15 -16 -15 -15 -18 -21 -21 -16 -12 -10 -10 -10 -9 -9 -8 -8 -9 -10 -11 -11 -10 -11 -12 -13 -15 -16 -17 -17 -16 -16 -15 -14 -13 -12 -13 -15 -18 -20 -22 -22 -22 -21 -20 -19 -18 -17 -18 -19 -23 -28 -27 -20 -14 -12 -12 -13 -14 -14 -13 -10 -6 -5 -5 -7 -10 -12 -12 -12 -11 -10 -9 -7 -6 -5 -5 -5 -9 -16 -16 -14 -13 -16 -18 -17 -15 -13 -12 -11 -10 -9 -8 -8 -7 -7 -10 -12 -11 -8 -8 -9 -9 -9 -9 -9 -8 -8 -8 -9 -8 -9 -10 -11 -12 -11 -9 -7 -6 -8 -13 -16 -19 -20 -22 -22 -20 -17 -15 -17 -21 -24 -25 -23 -19 -16 -16 -18 -19 -17 -15 -14 -14 -14 -10 2 16 25 30 32 36 39 40 40 40 41 40 36 32 28 25 19 16 17 19 19 17 18 20 24 29 36 42 47 52 56 57 58 60 60 59 58 57 57 57 56 56 55 55 56 57 58 58 55 51 47 44 43 43 41 39 37 36 35 36 36 36 36 36 35 34 34 34 34 32 30 29 29 28 27 26 24 22 20 19 17 15 13 10 6 2 -1 -2 -2 -2 -3 -4 -6 -7 -2 5 10 13 13 11 9 7 4 3 1 -1 -4 -9 -13 -15 -14 -11 -9 -9 -11 -11 -8 -4 -1 -2 -5 -8 -10 -10 -10 -9 -8 -6 -5 -6 -6 -7 -10 -13 -13 -4 -1 -1 -2 -4 -6 -8 -9 -10 -10 -9 -7 -7 -8 -8 1 8 11 11 10 8 5 1 -3 -6 -8 -9 -10 -10 -10 -9 -10 -1 8 13 11 8 5 3 -0 -3 -7 -10 -11 -9 -7 -6 -6 -8 -9 -11 -11 -10 -10 -11 -11 -10 -11 -13 -16 -17 -17 -16 -16 -16 -16 -15 -16 -17 -17 -16 -13 -8 -7 -9 -13 -15 -15 -10 -7 -8 -12 -13 -11 -7 -2 5 11 16 20 22 22 17 8 4 6 10 6 -4 -2 1 -3 -8 -12 -10 -5 7 38 43 39 30 20 13 7 1 -4 -10 -16 -25 -34 -39 -41 -6 -5 -4 -5 -6 -8 -9 -9 -6 -3 -2 -5 -8 -9 -9 -11 -15 -16 -14 -11 -9 -10 -10 -9 -9 -8 -9 -10 -12 -14 -15 -15 -13 -12 -12 -13 -14 -14 -15 -14 -13 -12 -12 -12 -12 -11 -12 -14 -16 -19 -21 -22 -22 -22 -22 -21 -20 -19 -18 -19 -21 -25 -29 -23 -16 -11 -10 -11 -12 -13 -13 -12 -8 -6 -5 -6 -8 -10 -12 -12 -11 -11 -9 -8 -7 -6 -5 -5 -6 -11 -14 -14 -13 -15 -18 -17 -16 -14 -12 -11 -11 -10 -9 -10 -9 -8 -9 -11 -13 -10 -9 -10 -11 -10 -9 -8 -7 -7 -8 -8 -8 -8 -8 -10 -11 -12 -12 -10 -9 -8 -12 -16 -18 -19 -20 -23 -23 -20 -16 -14 -16 -20 -22 -21 -17 -13 -14 -16 -19 -19 -17 -17 -15 -14 -14 -8 4 10 14 21 32 41 42 39 37 40 44 42 39 34 28 21 19 20 22 20 15 14 17 21 28 34 42 50 56 57 58 59 59 59 59 58 57 57 57 57 57 57 57 58 59 61 61 60 56 51 47 44 43 42 40 38 36 36 36 36 37 37 37 36 36 36 36 36 35 34 33 34 33 32 29 27 25 23 21 19 18 16 13 9 5 3 1 1 1 -0 -3 -5 -7 -5 0 6 11 13 13 12 10 8 6 5 3 -0 -5 -9 -12 -12 -10 -7 -7 -10 -12 -12 -8 -3 -2 -4 -7 -9 -10 -10 -9 -8 -7 -5 -5 -6 -6 -8 -12 -14 -7 -3 -1 -2 -4 -5 -7 -9 -10 -10 -9 -8 -7 -8 -10 -4 5 10 11 10 9 6 3 -1 -5 -7 -7 -8 -9 -9 -8 -10 -5 4 14 14 10 8 5 2 -1 -5 -9 -11 -10 -8 -6 -6 -7 -10 -12 -12 -11 -10 -10 -12 -12 -11 -13 -15 -17 -18 -18 -18 -18 -20 -21 -20 -20 -20 -21 -18 -11 -7 -8 -11 -15 -15 -12 -9 -8 -12 -13 -12 -10 -5 1 8 14 18 21 21 17 9 5 8 14 15 -3 -6 -2 -1 -4 -9 -12 -15 -13 0 26 36 34 24 13 7 2 -3 -8 -12 -19 -33 -42 -43 -9 -5 -1 0 -1 -4 -7 -9 -6 -0 2 -3 -7 -8 -8 -10 -12 -12 -10 -9 -9 -10 -10 -11 -11 -11 -11 -13 -16 -19 -20 -20 -18 -16 -15 -15 -15 -16 -16 -14 -13 -12 -12 -11 -11 -10 -11 -12 -14 -17 -19 -20 -22 -23 -23 -22 -22 -21 -20 -19 -20 -22 -28 -27 -20 -13 -9 -9 -10 -11 -12 -12 -12 -10 -7 -5 -5 -7 -9 -11 -11 -12 -12 -11 -9 -8 -7 -5 -5 -7 -11 -15 -15 -14 -15 -15 -14 -14 -13 -12 -11 -11 -11 -11 -11 -9 -9 -10 -13 -13 -11 -10 -11 -12 -11 -8 -6 -5 -6 -8 -9 -9 -8 -8 -10 -12 -13 -13 -12 -10 -11 -15 -17 -19 -20 -24 -25 -23 -20 -16 -15 -17 -20 -20 -17 -12 -12 -16 -19 -20 -19 -19 -16 -15 -15 -15 -5 -1 2 7 17 31 38 40 40 42 46 46 43 37 30 23 21 23 24 25 21 16 16 20 27 34 42 52 58 59 58 59 59 58 57 57 57 56 57 57 58 58 59 60 62 64 65 64 61 56 50 46 44 43 41 39 37 35 35 35 36 37 38 37 37 37 37 37 37 38 38 38 37 35 33 30 27 24 22 21 20 19 15 12 8 5 4 3 3 1 -1 -4 -7 -6 -3 2 8 12 15 15 14 11 9 7 6 3 -0 -5 -8 -9 -8 -7 -6 -9 -12 -13 -11 -7 -3 -3 -5 -8 -10 -10 -9 -8 -7 -6 -5 -5 -6 -8 -11 -15 -9 -5 -2 -2 -3 -5 -6 -8 -9 -9 -9 -8 -8 -8 -10 -8 0 7 10 10 9 7 4 0 -4 -6 -6 -6 -7 -7 -7 -8 -8 -0 13 16 13 10 7 5 1 -4 -8 -11 -11 -9 -6 -6 -7 -10 -13 -14 -13 -12 -10 -11 -14 -14 -15 -16 -17 -20 -22 -23 -23 -25 -27 -26 -26 -26 -27 -25 -17 -11 -8 -10 -14 -16 -14 -11 -9 -12 -13 -13 -11 -8 -3 4 11 16 19 20 16 9 6 10 17 20 6 -7 -11 -2 -3 -7 -9 -10 -10 -14 -3 16 33 32 22 13 7 2 -2 -4 -4 -13 -26 -43 -7 -4 -2 -2 -5 -8 -10 -10 -9 -6 -2 -3 -5 -7 -9 -11 -13 -13 -11 -10 -9 -10 -10 -11 -12 -13 -13 -14 -16 -19 -20 -21 -20 -18 -16 -15 -16 -16 -16 -15 -14 -13 -13 -13 -12 -11 -10 -10 -13 -16 -18 -19 -21 -24 -25 -25 -24 -23 -22 -21 -20 -20 -24 -27 -24 -17 -10 -8 -8 -9 -10 -12 -14 -14 -12 -7 -4 -3 -5 -8 -10 -13 -14 -14 -13 -11 -9 -7 -6 -6 -8 -13 -16 -15 -14 -14 -13 -13 -14 -13 -13 -12 -12 -13 -12 -11 -9 -9 -10 -14 -13 -12 -12 -13 -12 -10 -6 -3 -2 -4 -8 -10 -10 -8 -9 -11 -12 -13 -12 -10 -10 -13 -16 -19 -20 -23 -26 -26 -23 -19 -16 -16 -19 -21 -19 -14 -13 -15 -19 -21 -20 -20 -17 -15 -15 -18 -10 -5 -3 -2 1 12 24 33 40 44 46 47 45 40 31 24 20 19 20 24 24 21 19 19 25 33 43 52 58 58 57 58 57 56 55 56 56 56 56 57 58 60 61 63 65 67 69 68 66 61 55 49 46 44 42 40 37 35 35 35 35 36 37 37 38 38 38 39 41 42 43 43 41 39 36 32 29 26 23 22 22 21 17 14 11 8 6 6 5 3 1 -3 -6 -6 -5 -1 5 11 16 18 17 14 12 10 8 6 3 -1 -4 -7 -7 -6 -6 -8 -11 -12 -12 -9 -4 -3 -4 -6 -9 -10 -9 -9 -8 -6 -4 -5 -5 -7 -9 -14 -11 -6 -3 -3 -3 -5 -6 -7 -8 -9 -9 -9 -8 -8 -10 -11 -4 4 9 10 9 7 4 1 -3 -6 -6 -6 -5 -6 -6 -6 -8 -4 10 17 15 12 9 6 3 -2 -7 -11 -12 -10 -7 -6 -7 -10 -13 -16 -16 -15 -13 -12 -15 -18 -20 -20 -18 -22 -27 -28 -28 -30 -30 -29 -30 -33 -36 -33 -26 -17 -11 -10 -13 -16 -15 -13 -10 -12 -13 -14 -12 -10 -7 -0 7 13 17 19 15 10 8 12 20 23 10 -6 -14 -6 -4 -6 -9 -10 -7 -6 -12 -6 10 35 31 24 18 14 12 13 28 33 12 -38 -8 -7 -8 -10 -13 -14 -12 -11 -11 -10 -8 -5 -5 -5 -7 -10 -14 -15 -14 -13 -11 -10 -10 -11 -12 -12 -11 -12 -13 -15 -16 -18 -18 -17 -15 -14 -13 -13 -13 -14 -14 -14 -14 -14 -13 -12 -11 -10 -11 -14 -17 -20 -23 -26 -28 -28 -27 -26 -25 -23 -22 -20 -21 -25 -26 -21 -14 -8 -7 -7 -9 -11 -14 -15 -15 -13 -9 -5 -4 -6 -9 -11 -14 -16 -16 -15 -14 -11 -9 -7 -7 -11 -16 -19 -16 -13 -12 -11 -13 -15 -15 -14 -13 -13 -12 -11 -10 -9 -9 -11 -15 -15 -13 -11 -11 -10 -7 -3 1 -0 -5 -8 -9 -7 -7 -9 -11 -11 -11 -10 -9 -11 -14 -18 -21 -23 -25 -25 -23 -20 -17 -17 -20 -22 -22 -18 -15 -15 -19 -22 -22 -21 -18 -16 -16 -19 -14 -8 -4 -3 -6 -3 5 17 30 40 44 48 48 43 35 27 21 18 18 21 20 17 15 17 23 31 39 45 48 47 47 50 56 59 58 55 56 56 56 57 58 61 64 66 68 70 72 72 70 66 60 54 49 46 44 42 39 36 34 34 34 35 36 37 37 37 38 41 43 46 48 47 45 42 38 35 31 27 24 23 23 23 19 16 13 10 9 8 7 5 2 -1 -4 -5 -4 -2 3 10 16 19 19 17 14 12 10 8 5 2 -1 -4 -6 -7 -6 -7 -9 -11 -12 -11 -6 -3 -2 -5 -8 -10 -10 -9 -8 -7 -4 -4 -4 -5 -7 -13 -11 -7 -4 -3 -3 -4 -5 -6 -7 -8 -8 -9 -8 -8 -10 -11 -7 -0 6 9 8 6 4 1 -2 -5 -7 -6 -5 -4 -4 -5 -7 -7 4 16 18 15 12 8 4 -1 -6 -10 -12 -10 -7 -6 -7 -11 -15 -18 -20 -21 -20 -16 -16 -21 -25 -27 -21 -25 -30 -31 -30 -31 -29 -29 -31 -36 -43 -40 -34 -25 -16 -11 -14 -16 -16 -15 -12 -13 -14 -14 -13 -12 -9 -4 3 10 15 17 15 11 10 15 22 23 10 -5 -11 -8 -6 -7 -8 -11 -9 -5 -4 -9 -12 12 30 33 30 26 25 28 34 36 22 -27 -11 -11 -13 -15 -16 -15 -13 -12 -12 -12 -11 -9 -7 -6 -5 -7 -12 -16 -16 -15 -14 -12 -11 -11 -11 -10 -8 -9 -9 -10 -11 -13 -14 -14 -13 -12 -10 -10 -11 -12 -13 -13 -12 -12 -13 -13 -12 -11 -11 -13 -15 -19 -23 -25 -26 -26 -25 -24 -23 -23 -23 -22 -21 -22 -24 -22 -17 -11 -7 -7 -9 -12 -15 -17 -16 -15 -13 -9 -6 -6 -8 -9 -11 -14 -17 -18 -17 -15 -12 -8 -7 -8 -13 -20 -21 -17 -13 -13 -16 -17 -17 -16 -16 -14 -12 -11 -11 -10 -11 -11 -14 -16 -17 -12 -10 -10 -8 -5 -1 -0 -3 -6 -7 -7 -6 -7 -8 -10 -11 -11 -10 -10 -11 -14 -18 -23 -25 -26 -24 -22 -19 -19 -21 -23 -25 -21 -17 -15 -18 -22 -23 -22 -19 -16 -17 -20 -16 -10 -5 -3 -5 -9 -7 1 13 27 35 43 46 45 39 30 23 20 19 19 18 17 17 19 23 27 33 39 44 47 47 51 57 61 61 58 55 54 55 57 59 62 65 68 71 73 74 75 74 71 66 59 53 49 47 45 41 38 35 33 33 34 35 36 36 37 39 42 46 49 51 49 47 45 41 37 33 29 26 26 26 25 21 17 14 12 11 10 9 7 4 1 -1 -1 -1 -0 2 7 14 18 20 19 17 14 12 9 7 4 1 -3 -6 -7 -7 -7 -8 -10 -11 -11 -8 -4 -2 -3 -7 -9 -10 -10 -9 -8 -5 -3 -3 -3 -5 -11 -12 -8 -4 -3 -3 -4 -5 -5 -6 -6 -7 -8 -8 -8 -9 -11 -9 -4 2 6 7 6 3 1 -2 -5 -7 -7 -6 -4 -3 -3 -5 -7 -4 11 18 18 15 11 6 1 -5 -10 -13 -11 -8 -6 -7 -12 -19 -23 -26 -28 -30 -24 -18 -20 -27 -32 -28 -30 -32 -32 -30 -30 -30 -30 -33 -38 -45 -44 -38 -30 -21 -16 -17 -17 -17 -17 -14 -14 -15 -16 -15 -13 -11 -8 -2 6 12 14 14 13 13 18 23 22 10 -6 -9 -8 -7 -8 -9 -11 -10 -7 -3 -2 -7 -11 14 30 37 35 33 34 35 36 27 -21 -15 -16 -16 -16 -15 -14 -13 -13 -14 -14 -14 -13 -12 -10 -8 -7 -11 -15 -16 -16 -16 -15 -13 -12 -11 -10 -8 -8 -8 -8 -7 -8 -8 -8 -8 -8 -7 -7 -8 -9 -9 -8 -8 -9 -11 -13 -13 -12 -11 -11 -13 -16 -19 -21 -22 -21 -20 -20 -20 -22 -23 -23 -22 -21 -22 -21 -18 -11 -7 -6 -7 -11 -15 -17 -16 -14 -12 -10 -8 -8 -8 -8 -9 -12 -16 -18 -18 -18 -15 -11 -7 -7 -10 -16 -22 -19 -15 -15 -17 -17 -16 -17 -19 -17 -13 -12 -11 -11 -12 -13 -15 -17 -17 -15 -11 -10 -9 -7 -3 0 -1 -3 -4 -3 -3 -4 -6 -8 -9 -9 -10 -9 -8 -8 -13 -19 -22 -24 -23 -22 -21 -21 -23 -25 -26 -22 -17 -15 -16 -21 -23 -21 -18 -17 -18 -22 -18 -12 -7 -4 -4 -7 -10 -9 -4 7 17 28 37 43 43 33 25 20 18 17 17 16 16 17 17 18 20 25 32 39 43 47 51 55 57 56 54 52 52 55 59 63 66 70 73 75 76 77 77 75 71 65 59 54 50 48 45 41 37 34 34 34 35 35 36 36 39 43 47 51 52 51 49 47 44 40 36 33 31 31 31 29 24 19 15 13 13 12 11 9 7 4 3 3 3 2 2 5 10 15 19 20 19 16 13 11 9 6 3 -1 -5 -8 -8 -8 -8 -9 -11 -11 -9 -5 -2 -2 -5 -8 -10 -10 -9 -8 -6 -3 -2 -2 -3 -8 -11 -9 -4 -2 -3 -4 -5 -5 -5 -5 -6 -7 -8 -8 -9 -11 -10 -7 -3 2 5 5 3 1 -2 -5 -7 -9 -8 -6 -5 -3 -3 -5 -8 2 13 18 17 13 8 2 -4 -9 -13 -12 -9 -6 -6 -12 -23 -29 -32 -35 -38 -31 -19 -16 -24 -34 -36 -36 -36 -35 -31 -29 -32 -34 -37 -41 -46 -45 -40 -33 -28 -21 -20 -19 -18 -18 -16 -16 -17 -17 -16 -15 -14 -12 -7 -0 6 9 11 11 14 20 24 22 9 -8 -8 -8 -8 -8 -9 -11 -10 -8 -4 -1 0 -8 -4 13 34 39 38 36 35 35 32 -19 -20 -19 -17 -15 -13 -12 -12 -13 -15 -15 -16 -16 -15 -13 -13 -14 -16 -15 -12 -11 -11 -11 -10 -10 -10 -10 -11 -10 -10 -9 -8 -7 -7 -6 -5 -5 -5 -5 -5 -6 -6 -6 -6 -7 -8 -10 -12 -13 -12 -11 -11 -12 -15 -17 -19 -18 -17 -15 -16 -19 -21 -22 -22 -22 -21 -21 -19 -12 -6 -4 -5 -8 -12 -15 -15 -13 -11 -10 -9 -8 -8 -8 -8 -10 -14 -16 -18 -18 -16 -12 -9 -7 -8 -12 -19 -20 -17 -16 -16 -15 -15 -17 -19 -16 -14 -13 -11 -11 -11 -14 -16 -17 -18 -16 -12 -10 -10 -9 -5 0 1 -0 -2 -2 -0 -2 -6 -9 -9 -8 -9 -9 -8 -8 -11 -17 -21 -22 -23 -24 -24 -24 -25 -26 -27 -23 -18 -15 -16 -20 -21 -19 -17 -18 -21 -24 -20 -14 -10 -6 -4 -6 -9 -12 -13 -9 -2 8 19 31 39 34 26 19 15 13 13 15 16 16 14 12 11 12 16 21 27 33 38 42 46 47 47 46 47 50 54 59 64 70 73 76 77 78 79 78 76 71 65 59 54 52 50 45 41 37 35 35 36 36 36 36 39 43 48 51 52 51 51 49 46 43 40 37 35 34 33 31 25 19 14 12 13 13 12 10 8 7 6 7 7 6 4 4 6 10 15 19 19 17 15 13 10 8 5 0 -4 -8 -9 -9 -8 -9 -10 -11 -10 -7 -3 -1 -4 -7 -10 -11 -10 -9 -7 -4 -1 0 -1 -5 -10 -10 -4 -1 -2 -4 -4 -5 -4 -4 -5 -6 -7 -7 -8 -10 -10 -7 -5 -2 1 4 4 1 -2 -4 -7 -9 -10 -9 -7 -5 -3 -3 -6 -4 4 14 18 15 10 4 -2 -8 -13 -13 -11 -7 -5 -12 -25 -33 -37 -40 -41 -35 -22 -17 -21 -27 -39 -44 -44 -39 -33 -32 -36 -39 -40 -43 -46 -46 -43 -37 -32 -24 -21 -21 -21 -21 -19 -18 -18 -19 -19 -18 -18 -17 -14 -7 -3 2 6 10 14 19 24 22 9 -10 -9 -8 -8 -8 -9 -10 -10 -8 -5 -2 0 0 -8 -5 13 35 38 37 33 24 -0 -24 -25 -22 -19 -16 -14 -12 -12 -13 -14 -15 -16 -16 -15 -13 -11 -10 -12 -12 -13 -13 -12 -10 -10 -10 -10 -10 -11 -10 -8 -8 -7 -6 -5 -5 -4 -4 -4 -4 -4 -5 -6 -6 -5 -6 -7 -8 -10 -11 -12 -11 -11 -10 -12 -14 -17 -17 -15 -12 -13 -15 -18 -21 -22 -22 -21 -21 -19 -13 -6 -2 -1 -4 -8 -11 -12 -12 -10 -9 -8 -8 -9 -9 -9 -10 -12 -15 -17 -18 -17 -14 -10 -9 -8 -10 -16 -20 -19 -15 -15 -15 -16 -16 -17 -15 -14 -13 -12 -10 -11 -13 -15 -17 -18 -17 -13 -10 -10 -10 -8 -2 2 2 0 -1 -0 -2 -6 -9 -9 -7 -8 -10 -12 -11 -11 -14 -17 -20 -22 -25 -26 -26 -27 -27 -27 -25 -20 -16 -15 -17 -19 -19 -19 -21 -25 -25 -21 -17 -13 -8 -4 -6 -9 -13 -14 -13 -10 -7 -3 6 20 26 23 17 12 9 12 17 20 19 15 11 9 7 6 7 10 16 22 27 32 35 36 38 41 46 52 56 62 68 73 76 78 79 80 81 79 76 70 64 59 56 55 51 46 42 39 38 37 36 36 37 40 44 47 49 50 51 52 51 49 46 43 39 32 26 26 27 24 18 14 12 12 12 11 9 8 7 8 9 10 9 7 4 3 5 9 14 17 18 16 14 12 10 6 2 -3 -8 -10 -10 -9 -8 -9 -10 -11 -9 -5 -1 -2 -6 -9 -11 -11 -9 -8 -5 -2 1 1 -2 -8 -11 -5 -1 -2 -3 -4 -5 -4 -4 -4 -5 -6 -6 -8 -9 -10 -8 -5 -4 -2 1 3 3 -0 -3 -6 -9 -11 -11 -10 -8 -5 -3 -3 -5 -3 4 14 15 11 6 -0 -7 -12 -14 -12 -8 -4 -9 -23 -34 -39 -41 -39 -34 -26 -20 -23 -23 -32 -39 -41 -35 -33 -36 -40 -42 -42 -43 -45 -45 -43 -38 -31 -23 -21 -23 -26 -25 -24 -21 -20 -22 -22 -22 -23 -24 -21 -16 -12 -5 3 10 14 18 23 21 8 -13 -9 -8 -8 -9 -9 -10 -10 -9 -6 -3 -1 1 0 -7 -19 13 31 37 31 16 -16 -26 -27 -25 -23 -20 -18 -16 -15 -15 -15 -16 -18 -21 -20 -15 -9 -5 -6 -9 -10 -10 -10 -10 -11 -12 -12 -12 -12 -10 -7 -6 -5 -4 -5 -6 -6 -5 -4 -4 -4 -5 -6 -6 -7 -7 -7 -7 -9 -10 -11 -12 -11 -10 -10 -12 -15 -16 -15 -12 -10 -11 -15 -18 -20 -21 -21 -21 -18 -14 -6 -1 1 -1 -5 -8 -10 -10 -9 -8 -8 -8 -9 -9 -10 -10 -11 -13 -16 -17 -17 -15 -13 -12 -12 -11 -13 -19 -20 -16 -14 -16 -17 -17 -16 -15 -14 -13 -11 -11 -11 -12 -14 -16 -18 -18 -14 -11 -10 -10 -11 -7 -1 2 1 -1 -3 -5 -8 -9 -9 -7 -8 -11 -14 -15 -14 -14 -15 -17 -20 -23 -25 -25 -25 -26 -26 -25 -21 -16 -14 -14 -17 -19 -21 -23 -27 -25 -22 -19 -15 -10 -5 -5 -7 -10 -12 -12 -11 -10 -10 -8 -2 8 15 18 17 16 19 21 23 21 15 11 8 6 5 3 2 5 10 15 21 25 27 31 36 44 50 54 60 67 72 76 78 80 81 82 83 80 75 69 63 59 58 56 53 48 44 41 39 38 37 38 41 44 45 47 48 50 52 52 50 48 43 33 21 11 11 16 18 17 16 14 13 11 9 6 5 5 7 10 11 11 9 6 3 2 3 7 13 16 16 15 14 11 8 4 -1 -7 -11 -12 -10 -8 -8 -10 -11 -10 -6 -1 -1 -4 -8 -11 -11 -10 -9 -6 -3 1 3 1 -6 -11 -8 -1 -1 -2 -4 -5 -4 -4 -3 -4 -4 -5 -6 -9 -10 -8 -5 -5 -4 -1 2 3 1 -2 -5 -7 -10 -12 -12 -11 -8 -5 -2 -3 -4 -4 6 12 12 7 1 -5 -11 -13 -13 -10 -5 -6 -18 -31 -40 -39 -34 -31 -28 -26 -28 -24 -26 -32 -35 -29 -32 -39 -44 -43 -42 -42 -43 -42 -40 -36 -28 -21 -19 -23 -28 -29 -30 -27 -24 -25 -28 -27 -29 -30 -28 -24 -20 -11 0 9 13 17 21 18 5 -19 -13 -9 -8 -9 -9 -10 -10 -9 -7 -3 -1 -0 1 1 -7 -19 9 29 31 13 -15 -26 -25 -25 -24 -22 -21 -20 -19 -19 -20 -20 -21 -21 -19 -14 -7 -1 -3 -8 -10 -11 -11 -12 -13 -12 -12 -14 -15 -14 -10 -6 -4 -4 -5 -6 -7 -6 -5 -5 -5 -5 -6 -7 -8 -9 -9 -9 -10 -11 -11 -12 -12 -11 -10 -11 -13 -15 -15 -13 -8 -7 -10 -15 -19 -20 -20 -20 -18 -15 -8 -2 1 -0 -4 -6 -7 -7 -6 -6 -7 -8 -9 -10 -11 -13 -13 -13 -14 -17 -19 -18 -18 -17 -17 -16 -15 -17 -19 -17 -14 -15 -17 -18 -18 -16 -14 -12 -11 -11 -12 -13 -14 -15 -16 -17 -16 -12 -9 -9 -10 -11 -7 -2 1 -1 -5 -8 -9 -8 -8 -7 -8 -12 -16 -18 -17 -15 -14 -15 -17 -21 -23 -23 -23 -23 -24 -23 -20 -16 -13 -13 -16 -19 -22 -25 -27 -24 -22 -20 -17 -11 -5 -4 -6 -9 -11 -12 -12 -11 -11 -10 -8 -1 7 14 17 16 17 19 21 21 17 12 9 7 6 4 2 3 6 10 15 19 23 28 35 43 50 56 63 69 73 76 79 80 82 84 85 84 80 74 67 61 60 60 58 54 49 46 43 40 39 40 43 43 43 43 45 49 52 52 50 46 36 22 9 2 0 5 11 17 20 19 15 12 8 5 1 1 4 8 11 13 11 8 5 2 -0 1 6 11 14 16 15 13 10 6 1 -6 -11 -12 -11 -8 -7 -9 -11 -11 -8 -2 -1 -3 -7 -10 -12 -11 -9 -8 -5 -0 3 3 -3 -10 -10 -2 -0 -2 -4 -5 -5 -4 -4 -3 -3 -4 -5 -8 -10 -9 -5 -5 -5 -4 -1 1 1 -1 -3 -6 -8 -10 -11 -12 -11 -8 -4 -2 -2 -5 -3 6 10 8 2 -4 -9 -13 -13 -12 -7 -4 -11 -24 -36 -34 -30 -30 -31 -33 -34 -28 -25 -28 -31 -29 -31 -39 -43 -42 -40 -40 -40 -39 -35 -32 -26 -19 -17 -22 -29 -32 -34 -33 -30 -31 -35 -35 -36 -37 -34 -31 -24 -14 -2 8 12 16 19 16 3 -23 -19 -12 -8 -9 -10 -10 -10 -10 -8 -5 -2 -1 1 2 2 -6 -18 -6 32 14 -13 -27 -21 -21 -21 -20 -20 -19 -19 -18 -19 -20 -21 -21 -18 -13 -7 -2 -3 -9 -12 -14 -15 -16 -15 -13 -11 -11 -14 -15 -12 -9 -6 -5 -5 -6 -7 -7 -7 -6 -6 -6 -7 -9 -10 -11 -12 -13 -13 -13 -13 -13 -13 -12 -10 -10 -11 -13 -14 -14 -9 -6 -7 -12 -18 -19 -20 -19 -18 -16 -10 -5 -2 -3 -5 -6 -6 -5 -5 -5 -6 -7 -9 -10 -13 -15 -15 -14 -13 -14 -18 -21 -22 -22 -23 -21 -18 -16 -15 -15 -11 -9 -12 -16 -17 -17 -15 -12 -11 -11 -12 -13 -14 -14 -14 -16 -17 -15 -11 -8 -8 -11 -11 -8 -2 1 -2 -4 -5 -5 -6 -8 -10 -14 -17 -19 -17 -14 -12 -12 -14 -19 -23 -23 -21 -20 -21 -21 -19 -16 -13 -13 -16 -20 -23 -26 -26 -23 -22 -20 -18 -13 -6 -2 -3 -7 -11 -13 -13 -13 -12 -11 -10 -7 1 9 17 21 22 23 23 20 16 12 8 6 4 2 3 4 7 10 13 18 22 28 36 45 53 61 68 73 75 78 80 81 83 85 87 87 84 79 71 64 62 62 62 60 55 51 47 43 39 38 38 37 36 36 40 45 48 49 45 37 24 13 5 1 -2 2 9 18 24 23 18 14 9 5 1 -2 -1 3 9 13 13 10 7 4 0 -2 0 5 10 14 15 14 12 8 3 -4 -10 -12 -11 -8 -7 -9 -11 -12 -10 -4 -0 -1 -5 -9 -11 -11 -10 -9 -7 -2 2 3 -1 -8 -12 -4 -0 -1 -4 -5 -6 -5 -5 -4 -3 -3 -4 -6 -9 -10 -6 -5 -5 -5 -4 -1 -0 -1 -3 -5 -7 -9 -10 -10 -11 -9 -6 -3 -1 -2 -7 -1 6 8 3 -3 -8 -11 -13 -13 -10 -6 -7 -14 -25 -28 -34 -37 -39 -40 -37 -31 -28 -27 -29 -30 -31 -37 -40 -37 -36 -38 -39 -36 -30 -29 -25 -18 -16 -21 -30 -34 -35 -35 -34 -35 -37 -40 -42 -42 -40 -36 -26 -15 -5 5 10 15 17 14 -1 -25 -23 -14 -9 -9 -10 -10 -11 -11 -10 -8 -5 -3 -1 1 3 0 -8 -5 27 15 -10 -27 -18 -18 -18 -17 -15 -13 -12 -12 -14 -15 -17 -19 -18 -14 -9 -6 -7 -10 -13 -15 -17 -18 -17 -14 -11 -9 -9 -11 -12 -12 -10 -7 -6 -6 -7 -9 -9 -9 -8 -8 -9 -11 -12 -12 -14 -14 -14 -13 -13 -13 -13 -12 -11 -10 -11 -12 -14 -15 -12 -9 -8 -11 -16 -19 -20 -19 -18 -17 -14 -10 -7 -6 -7 -7 -6 -5 -5 -5 -6 -6 -8 -10 -12 -14 -15 -14 -13 -12 -15 -20 -23 -25 -25 -24 -20 -17 -16 -16 -15 -8 -5 -7 -11 -12 -12 -12 -13 -14 -12 -12 -13 -13 -14 -15 -16 -16 -13 -10 -8 -9 -11 -12 -10 -3 0 0 1 -0 -3 -8 -11 -14 -16 -17 -16 -13 -11 -11 -13 -19 -23 -25 -23 -21 -20 -20 -18 -16 -14 -15 -18 -21 -24 -27 -26 -23 -21 -20 -19 -16 -7 -1 -1 -5 -10 -13 -13 -13 -13 -12 -12 -10 -5 4 15 22 23 23 22 19 15 11 6 2 -1 -1 2 6 10 12 14 17 21 28 38 48 56 63 69 73 75 79 82 83 85 86 88 89 88 83 76 68 63 63 64 64 62 58 52 46 38 31 30 29 27 25 27 31 35 35 30 21 14 10 7 3 1 4 12 21 27 25 19 14 10 6 2 -2 -4 -1 5 12 14 12 9 6 3 -1 -2 -0 5 11 14 15 14 10 6 -1 -7 -10 -10 -8 -7 -9 -12 -13 -12 -7 -1 -0 -3 -8 -11 -12 -11 -9 -8 -5 -0 2 1 -6 -13 -6 -1 -1 -3 -5 -6 -6 -6 -5 -3 -3 -3 -5 -8 -11 -8 -6 -5 -6 -6 -4 -3 -2 -4 -6 -7 -8 -9 -9 -10 -10 -8 -5 -2 -1 -5 -5 0 5 3 -3 -7 -11 -13 -13 -12 -9 -7 -8 -15 -24 -39 -46 -46 -43 -38 -34 -30 -29 -28 -29 -31 -34 -36 -33 -34 -38 -40 -36 -29 -29 -26 -20 -17 -22 -34 -37 -37 -36 -35 -36 -36 -40 -44 -45 -44 -39 -28 -17 -9 -0 8 14 16 12 -5 -24 -24 -15 -9 -9 -10 -11 -11 -12 -12 -11 -10 -7 -4 -2 1 3 -0 -10 -21 3 -4 -18 -18 -18 -16 -13 -11 -9 -9 -10 -10 -11 -13 -16 -16 -14 -12 -10 -10 -11 -13 -15 -17 -19 -18 -15 -13 -12 -13 -14 -13 -12 -11 -9 -9 -8 -7 -7 -8 -9 -9 -11 -13 -14 -12 -11 -12 -13 -13 -13 -13 -14 -14 -13 -12 -11 -11 -13 -14 -15 -15 -13 -12 -13 -15 -17 -19 -18 -17 -16 -16 -15 -12 -9 -9 -7 -6 -5 -6 -7 -7 -7 -7 -9 -11 -13 -14 -14 -13 -12 -14 -19 -23 -25 -26 -25 -22 -20 -18 -18 -19 -10 -5 -4 -7 -10 -11 -13 -14 -15 -14 -13 -13 -13 -13 -14 -15 -15 -14 -13 -11 -10 -10 -12 -14 -12 -4 1 2 1 -3 -6 -10 -13 -15 -14 -10 -9 -9 -10 -13 -18 -25 -28 -28 -25 -22 -20 -17 -16 -16 -18 -20 -21 -23 -25 -25 -22 -20 -20 -20 -19 -9 -1 1 -2 -8 -12 -14 -14 -14 -13 -13 -12 -9 -1 10 19 22 22 21 18 14 9 5 2 0 -0 1 2 5 9 13 16 21 27 36 46 52 58 63 68 73 79 84 86 87 88 90 91 90 87 81 72 66 64 65 67 66 64 59 51 37 27 28 27 22 18 17 17 17 16 14 11 9 8 6 4 4 8 15 23 28 25 19 14 10 6 3 -2 -5 -5 -0 8 13 13 11 8 5 1 -2 -2 1 6 11 14 14 12 8 2 -3 -7 -8 -7 -7 -9 -12 -13 -13 -9 -3 -1 -2 -6 -10 -12 -11 -10 -9 -8 -4 0 1 -3 -12 -7 -2 -0 -3 -5 -7 -7 -7 -6 -5 -3 -3 -4 -6 -10 -9 -7 -6 -7 -8 -7 -5 -4 -5 -7 -8 -9 -9 -8 -8 -9 -9 -7 -5 -2 -3 -6 -4 1 2 -3 -7 -11 -13 -13 -14 -14 -12 -10 -13 -23 -37 -45 -46 -41 -36 -34 -32 -30 -28 -27 -28 -31 -33 -31 -34 -39 -41 -39 -33 -30 -26 -21 -19 -24 -38 -43 -41 -38 -37 -36 -37 -40 -44 -46 -46 -41 -33 -23 -16 -7 3 11 15 11 -6 -22 -24 -16 -9 -10 -11 -12 -12 -12 -14 -14 -15 -14 -9 -5 -0 5 5 -4 -25 -5 -2 -7 -20 -19 -16 -14 -11 -10 -10 -11 -10 -9 -10 -12 -12 -11 -11 -12 -13 -14 -15 -16 -17 -17 -17 -17 -16 -16 -17 -19 -19 -16 -11 -8 -8 -9 -9 -7 -5 -5 -6 -8 -10 -11 -10 -9 -10 -11 -12 -12 -12 -13 -15 -15 -14 -12 -12 -14 -15 -16 -17 -16 -15 -15 -14 -15 -17 -18 -17 -15 -15 -15 -15 -13 -10 -8 -7 -7 -9 -10 -9 -9 -8 -8 -10 -12 -13 -13 -13 -13 -14 -18 -21 -23 -23 -23 -23 -22 -20 -20 -20 -13 -7 -5 -6 -8 -11 -13 -15 -17 -18 -16 -14 -13 -14 -15 -15 -14 -13 -13 -13 -13 -12 -12 -13 -15 -12 -4 1 1 -2 -4 -8 -11 -13 -12 -10 -9 -10 -11 -14 -20 -26 -30 -30 -27 -23 -19 -16 -15 -15 -17 -18 -20 -22 -23 -23 -19 -18 -19 -20 -21 -13 -4 1 1 -5 -10 -13 -14 -14 -13 -13 -13 -12 -8 1 12 19 21 20 18 14 10 5 1 -1 -2 -1 1 3 5 9 12 16 22 28 33 36 39 43 49 59 71 82 89 90 89 91 92 92 90 85 76 69 65 65 67 69 70 67 57 37 24 27 28 22 16 13 11 9 7 4 4 4 4 4 3 4 8 16 23 28 25 18 13 8 6 3 -1 -5 -7 -5 3 10 13 13 10 7 3 -0 -2 -2 2 7 12 14 13 10 5 1 -3 -5 -6 -7 -9 -11 -13 -13 -11 -6 -2 -1 -5 -9 -11 -12 -11 -10 -10 -7 -3 -0 -2 -10 -9 -4 -1 -3 -5 -7 -8 -8 -8 -6 -5 -4 -4 -5 -7 -9 -9 -8 -8 -9 -8 -7 -7 -7 -9 -10 -10 -9 -8 -7 -7 -8 -8 -7 -4 -4 -6 -7 -4 -0 -4 -8 -11 -14 -14 -15 -18 -20 -18 -19 -26 -35 -41 -42 -39 -34 -32 -31 -29 -26 -24 -23 -25 -28 -30 -34 -39 -42 -40 -36 -33 -28 -23 -22 -26 -41 -48 -48 -45 -43 -40 -41 -43 -45 -48 -47 -41 -35 -30 -24 -13 -2 7 12 11 -3 -18 -22 -16 -10 -12 -15 -15 -13 -14 -15 -17 -20 -21 -15 -8 -1 5 8 3 -18 -13 -6 -2 -22 -21 -18 -16 -14 -13 -12 -10 -9 -8 -7 -7 -8 -9 -10 -11 -13 -17 -19 -19 -19 -18 -19 -19 -18 -17 -17 -18 -19 -17 -13 -9 -7 -7 -8 -9 -8 -4 -3 -5 -8 -11 -11 -10 -10 -10 -10 -10 -11 -12 -14 -16 -15 -13 -14 -15 -16 -17 -18 -18 -18 -16 -13 -12 -14 -16 -16 -14 -12 -13 -14 -14 -13 -11 -10 -10 -11 -11 -11 -10 -9 -8 -9 -10 -12 -13 -13 -14 -16 -17 -18 -19 -19 -20 -21 -22 -21 -20 -19 -15 -10 -7 -6 -8 -11 -13 -15 -17 -18 -16 -14 -14 -15 -17 -16 -14 -13 -13 -14 -14 -13 -13 -13 -15 -16 -11 -5 -1 0 -2 -5 -9 -11 -11 -9 -10 -11 -13 -16 -21 -27 -30 -30 -26 -21 -15 -11 -9 -11 -16 -21 -24 -25 -24 -21 -18 -18 -19 -21 -23 -18 -10 -2 2 -1 -8 -13 -15 -15 -14 -13 -13 -13 -12 -8 3 12 17 18 17 14 10 6 1 -2 -3 -2 -2 -2 -1 3 7 12 16 19 19 20 20 21 23 30 43 59 74 85 90 93 94 94 92 88 80 73 67 65 67 70 73 72 62 36 20 23 27 23 17 12 9 6 3 -0 -1 -1 -1 -1 -1 -0 4 12 20 25 23 17 11 8 6 4 1 -3 -6 -8 -3 5 11 13 12 9 6 2 -1 -3 -2 3 8 12 13 11 8 4 1 -3 -5 -7 -9 -10 -11 -12 -11 -8 -4 -2 -4 -8 -10 -12 -11 -11 -11 -10 -7 -4 -3 -8 -9 -7 -3 -3 -6 -7 -8 -9 -9 -8 -7 -5 -5 -5 -6 -6 -7 -8 -9 -10 -9 -8 -9 -10 -12 -14 -14 -11 -9 -7 -6 -7 -8 -9 -7 -5 -7 -9 -9 -5 -6 -9 -13 -15 -17 -18 -23 -26 -25 -23 -28 -34 -38 -40 -39 -35 -32 -30 -28 -24 -22 -19 -19 -23 -26 -33 -38 -41 -40 -38 -37 -32 -26 -25 -29 -42 -50 -54 -54 -53 -48 -46 -45 -47 -50 -47 -42 -37 -36 -30 -19 -7 5 14 14 2 -12 -19 -18 -13 -15 -20 -21 -18 -18 -19 -21 -23 -24 -19 -11 -3 5 9 7 -10 -16 -10 3 -21 -21 -19 -17 -14 -13 -13 -13 -13 -12 -11 -10 -10 -11 -12 -14 -17 -20 -22 -21 -21 -21 -22 -22 -21 -20 -19 -20 -19 -16 -13 -11 -9 -8 -8 -9 -10 -7 -5 -5 -9 -12 -13 -12 -10 -10 -9 -9 -9 -11 -14 -16 -16 -14 -15 -16 -17 -18 -19 -19 -18 -16 -13 -9 -10 -12 -13 -12 -10 -10 -11 -13 -15 -14 -13 -12 -12 -12 -11 -10 -9 -9 -9 -10 -11 -12 -14 -16 -18 -19 -18 -17 -17 -18 -21 -21 -20 -20 -19 -17 -13 -9 -6 -7 -10 -12 -14 -15 -15 -14 -13 -13 -14 -17 -16 -14 -13 -13 -14 -14 -14 -14 -14 -14 -16 -16 -12 -6 -0 2 1 -3 -7 -9 -9 -10 -12 -14 -17 -20 -25 -28 -29 -26 -20 -12 -7 -6 -10 -16 -22 -24 -24 -22 -20 -19 -19 -19 -21 -23 -22 -16 -7 0 1 -5 -11 -14 -15 -14 -13 -13 -13 -14 -13 -7 2 10 15 15 14 11 8 4 0 0 -0 -1 -2 0 3 6 10 14 16 16 15 13 11 10 10 14 23 38 56 71 83 92 96 95 91 84 76 69 66 67 71 74 73 61 29 13 16 22 23 18 13 9 6 2 -1 -4 -5 -6 -5 -5 -6 -4 2 11 19 19 14 9 6 6 5 3 0 -4 -7 -7 -1 6 11 12 11 8 4 0 -3 -4 -1 4 8 11 11 9 7 3 0 -3 -6 -8 -9 -10 -10 -10 -8 -6 -4 -4 -7 -10 -11 -12 -11 -11 -11 -10 -8 -5 -8 -10 -9 -5 -5 -6 -8 -9 -10 -10 -10 -9 -7 -6 -6 -5 -5 -5 -7 -9 -10 -10 -10 -11 -15 -18 -21 -20 -16 -12 -9 -7 -6 -7 -9 -8 -7 -8 -11 -15 -11 -10 -12 -16 -19 -21 -23 -26 -28 -27 -25 -29 -35 -39 -41 -40 -37 -33 -30 -28 -25 -22 -19 -17 -18 -22 -29 -35 -38 -38 -38 -40 -36 -29 -27 -30 -41 -49 -53 -57 -57 -54 -50 -48 -48 -49 -46 -41 -38 -40 -34 -24 -10 5 18 18 6 -8 -19 -21 -19 -20 -24 -26 -23 -23 -23 -24 -26 -26 -21 -14 -4 4 10 9 -2 -12 -13 0 -19 -19 -17 -17 -17 -17 -17 -16 -15 -15 -15 -15 -16 -17 -17 -17 -18 -21 -22 -22 -22 -22 -24 -24 -23 -23 -23 -22 -19 -16 -14 -13 -13 -10 -9 -10 -11 -11 -9 -9 -11 -13 -15 -13 -11 -10 -10 -9 -10 -12 -15 -17 -17 -15 -15 -16 -17 -18 -19 -18 -17 -16 -13 -8 -5 -6 -9 -10 -9 -9 -11 -12 -14 -15 -14 -13 -12 -12 -10 -9 -9 -9 -10 -10 -10 -12 -15 -19 -21 -23 -22 -19 -17 -18 -21 -21 -20 -19 -20 -19 -15 -11 -7 -6 -9 -12 -15 -16 -14 -12 -10 -10 -12 -15 -16 -15 -14 -13 -14 -14 -14 -15 -15 -15 -16 -16 -15 -12 -5 2 4 2 -2 -5 -8 -10 -13 -15 -18 -20 -23 -27 -29 -27 -21 -12 -6 -6 -10 -17 -22 -23 -23 -22 -22 -22 -21 -20 -20 -22 -22 -18 -10 -2 2 -2 -7 -12 -15 -15 -13 -13 -13 -13 -13 -12 -8 -1 7 12 12 12 10 8 6 4 4 5 7 10 14 15 16 17 18 17 14 12 9 6 2 -0 1 7 17 31 50 69 84 94 94 88 80 73 67 66 70 74 69 49 10 3 7 13 19 18 15 11 8 4 -0 -5 -7 -8 -6 -6 -8 -9 -7 -2 9 12 8 4 2 4 5 4 2 -1 -5 -7 -6 -1 5 11 12 11 8 3 -2 -4 -4 -1 4 8 10 9 8 6 3 -1 -4 -7 -9 -10 -10 -9 -8 -7 -5 -5 -7 -9 -11 -12 -12 -12 -12 -12 -11 -9 -10 -12 -12 -9 -8 -9 -10 -12 -12 -13 -12 -11 -9 -8 -7 -7 -5 -4 -5 -9 -11 -13 -13 -15 -20 -23 -25 -24 -22 -19 -14 -9 -6 -6 -8 -9 -8 -9 -12 -20 -19 -18 -19 -22 -26 -28 -31 -31 -29 -28 -27 -31 -36 -41 -43 -41 -38 -34 -30 -28 -25 -23 -20 -18 -16 -19 -25 -31 -36 -37 -39 -41 -38 -31 -29 -32 -39 -45 -49 -56 -58 -55 -51 -49 -48 -47 -43 -40 -39 -42 -37 -28 -13 5 17 16 6 -9 -20 -22 -23 -24 -26 -28 -27 -26 -26 -26 -27 -28 -25 -18 -8 2 10 11 4 -6 -13 -10 -16 -16 -17 -17 -17 -16 -16 -17 -16 -16 -15 -16 -17 -18 -18 -18 -19 -21 -22 -22 -22 -23 -24 -24 -24 -25 -26 -24 -20 -17 -15 -15 -15 -12 -12 -13 -14 -15 -15 -14 -13 -13 -15 -14 -12 -11 -11 -11 -11 -13 -15 -17 -18 -16 -16 -16 -17 -18 -18 -17 -16 -16 -16 -10 -5 -4 -6 -9 -10 -12 -15 -16 -16 -14 -13 -12 -10 -10 -9 -8 -8 -8 -10 -10 -10 -12 -16 -20 -22 -25 -25 -22 -18 -18 -21 -22 -21 -20 -21 -21 -19 -15 -10 -7 -8 -12 -16 -18 -15 -12 -10 -10 -11 -15 -17 -16 -14 -14 -14 -14 -14 -15 -16 -16 -16 -16 -17 -16 -12 -5 -0 2 1 -2 -6 -9 -13 -16 -19 -21 -24 -27 -29 -27 -22 -14 -8 -7 -11 -17 -20 -21 -21 -22 -22 -23 -22 -21 -20 -20 -19 -18 -14 -7 -1 -1 -5 -10 -15 -16 -14 -13 -12 -12 -13 -13 -12 -10 -5 2 7 10 12 13 14 14 12 12 13 20 29 30 27 23 19 16 14 11 7 2 -2 -6 -8 -8 -6 0 12 30 52 73 81 80 77 74 70 65 68 68 56 28 -0 -2 -0 3 10 15 16 14 12 8 3 -3 -6 -7 -6 -6 -8 -10 -11 -10 -3 3 2 -0 -0 2 3 4 4 2 -2 -4 -6 -5 -2 6 12 13 11 6 0 -4 -5 -4 -0 4 7 8 8 7 5 1 -2 -6 -8 -10 -10 -9 -8 -8 -7 -6 -7 -9 -12 -13 -13 -13 -13 -13 -13 -13 -15 -17 -17 -15 -14 -14 -15 -17 -18 -18 -16 -14 -12 -10 -9 -9 -8 -6 -5 -10 -14 -17 -19 -19 -23 -25 -26 -26 -25 -24 -20 -13 -7 -5 -7 -8 -9 -10 -14 -25 -28 -29 -30 -32 -35 -38 -38 -35 -31 -28 -29 -31 -34 -39 -42 -41 -37 -34 -30 -27 -25 -23 -21 -19 -15 -17 -22 -29 -35 -38 -40 -40 -38 -32 -31 -34 -37 -41 -45 -55 -58 -56 -52 -48 -45 -43 -40 -37 -37 -40 -37 -30 -17 1 10 12 3 -9 -19 -19 -22 -25 -26 -27 -28 -27 -27 -26 -26 -29 -27 -22 -13 -1 11 14 8 -3 -12 -17 -15 -17 -17 -16 -15 -14 -14 -16 -16 -15 -15 -15 -16 -16 -16 -17 -19 -20 -21 -22 -23 -23 -25 -25 -26 -26 -25 -24 -20 -18 -16 -15 -15 -14 -14 -16 -17 -18 -19 -18 -16 -13 -12 -13 -13 -12 -12 -12 -12 -13 -15 -16 -17 -17 -17 -17 -17 -17 -18 -18 -18 -17 -18 -15 -8 -5 -5 -10 -12 -15 -19 -21 -20 -16 -14 -12 -11 -9 -8 -8 -8 -8 -10 -11 -12 -13 -15 -18 -21 -24 -25 -24 -20 -17 -19 -21 -22 -22 -21 -22 -21 -19 -15 -11 -11 -13 -16 -15 -12 -10 -10 -11 -12 -14 -16 -16 -15 -14 -13 -13 -14 -14 -15 -16 -16 -16 -16 -17 -17 -13 -6 -1 2 1 -3 -8 -12 -16 -20 -23 -26 -29 -29 -27 -23 -17 -12 -10 -12 -16 -18 -18 -19 -20 -21 -22 -21 -21 -21 -20 -18 -17 -16 -13 -6 -3 -4 -9 -14 -17 -16 -14 -13 -12 -12 -13 -13 -12 -11 -9 -5 1 8 13 16 16 15 14 14 21 30 32 28 23 19 16 13 10 5 -1 -6 -9 -12 -14 -15 -14 -11 -2 12 31 44 48 52 59 63 60 58 49 30 1 -3 -3 -3 -4 -1 9 14 16 15 12 6 1 -3 -5 -4 -5 -7 -8 -9 -11 -12 -5 -1 1 2 2 2 2 3 3 1 -1 -4 -6 -6 -0 9 13 14 10 3 -2 -5 -5 -3 0 4 6 8 8 7 3 -1 -5 -8 -10 -11 -10 -10 -9 -9 -8 -9 -11 -14 -15 -16 -16 -15 -15 -16 -18 -20 -23 -23 -22 -21 -21 -22 -23 -24 -24 -22 -20 -17 -13 -12 -13 -12 -9 -7 -13 -17 -20 -23 -22 -23 -25 -26 -26 -25 -22 -19 -14 -8 -6 -6 -7 -9 -10 -14 -28 -35 -37 -37 -38 -40 -42 -42 -38 -33 -30 -30 -30 -30 -32 -36 -37 -35 -32 -29 -26 -24 -23 -21 -19 -15 -16 -20 -27 -35 -39 -41 -41 -39 -34 -34 -35 -36 -38 -44 -55 -57 -55 -51 -46 -42 -39 -36 -34 -35 -37 -35 -30 -21 -6 3 7 1 -10 -18 -18 -21 -24 -26 -27 -27 -27 -27 -26 -25 -29 -29 -27 -19 -3 12 15 9 -2 -10 -15 -15 -17 -17 -16 -13 -12 -12 -14 -15 -14 -14 -14 -14 -14 -14 -15 -16 -18 -21 -22 -24 -25 -26 -29 -28 -26 -23 -20 -19 -18 -17 -17 -17 -17 -17 -17 -17 -18 -18 -18 -17 -14 -11 -12 -13 -13 -13 -13 -14 -16 -16 -15 -14 -14 -14 -15 -16 -17 -19 -19 -19 -17 -16 -16 -13 -9 -6 -7 -10 -14 -17 -18 -17 -14 -12 -11 -10 -9 -8 -9 -9 -9 -10 -14 -16 -16 -16 -17 -20 -23 -24 -25 -23 -18 -16 -18 -21 -23 -22 -22 -23 -23 -19 -12 -9 -10 -12 -13 -12 -10 -10 -11 -13 -13 -13 -14 -14 -13 -12 -13 -14 -14 -14 -14 -15 -16 -17 -18 -18 -16 -12 -6 1 4 0 -5 -10 -15 -19 -24 -28 -30 -31 -30 -27 -21 -16 -13 -12 -14 -15 -15 -16 -17 -18 -19 -20 -21 -22 -20 -17 -17 -17 -17 -13 -8 -7 -8 -12 -15 -16 -16 -14 -13 -12 -12 -12 -12 -12 -12 -12 -10 -5 3 13 18 18 15 14 21 31 33 30 24 20 16 13 11 8 3 -4 -10 -15 -18 -19 -18 -18 -17 -15 -7 2 7 14 25 39 40 34 22 6 -8 -6 -5 -6 -8 -7 2 10 16 17 14 10 5 1 -2 -4 -5 -7 -7 -7 -8 -12 -8 -1 4 7 4 1 -0 1 3 3 1 -1 -4 -7 -5 3 11 15 13 6 0 -4 -5 -5 -2 1 4 6 8 8 5 1 -3 -7 -10 -11 -11 -11 -11 -11 -12 -13 -16 -19 -21 -21 -21 -20 -20 -20 -22 -25 -27 -27 -26 -25 -25 -25 -25 -26 -26 -26 -25 -24 -19 -19 -18 -16 -14 -9 -15 -18 -20 -23 -22 -23 -24 -24 -23 -21 -15 -13 -11 -8 -7 -6 -7 -8 -10 -15 -28 -37 -40 -39 -38 -40 -43 -43 -40 -35 -32 -30 -28 -26 -27 -30 -32 -32 -30 -27 -25 -23 -23 -22 -20 -17 -18 -20 -26 -34 -39 -41 -42 -43 -38 -36 -36 -37 -39 -46 -54 -55 -53 -49 -46 -42 -37 -34 -32 -33 -33 -32 -30 -25 -14 -2 5 1 -10 -18 -16 -19 -23 -27 -28 -28 -27 -27 -25 -24 -27 -31 -31 -24 -6 9 14 9 -2 -10 -13 -14 -15 -16 -14 -12 -10 -10 -13 -13 -13 -12 -13 -13 -13 -13 -13 -13 -13 -18 -21 -23 -24 -28 -31 -31 -27 -22 -17 -16 -16 -17 -18 -18 -19 -20 -20 -19 -18 -17 -16 -16 -16 -15 -12 -11 -13 -15 -16 -15 -14 -11 -10 -10 -10 -11 -12 -14 -16 -17 -18 -18 -17 -16 -15 -16 -15 -11 -5 -5 -10 -14 -15 -15 -14 -13 -12 -11 -11 -10 -10 -10 -10 -10 -13 -16 -17 -17 -17 -19 -21 -24 -27 -27 -22 -16 -15 -17 -21 -21 -22 -22 -23 -21 -15 -10 -8 -10 -12 -13 -12 -11 -11 -12 -12 -13 -13 -13 -12 -11 -13 -14 -15 -14 -14 -14 -16 -18 -19 -18 -15 -14 -11 -7 0 1 -2 -7 -11 -16 -21 -26 -29 -31 -32 -29 -23 -16 -11 -11 -14 -16 -14 -13 -13 -16 -17 -18 -19 -20 -19 -17 -17 -18 -18 -17 -14 -10 -9 -9 -12 -15 -16 -16 -15 -13 -12 -12 -12 -12 -12 -14 -16 -15 -11 -1 11 18 20 19 23 31 33 30 24 20 16 13 11 8 6 0 -7 -14 -19 -21 -20 -21 -21 -21 -20 -19 -18 -15 -8 8 14 12 5 -4 -9 -8 -8 -9 -11 -11 -3 6 14 16 15 11 8 4 -0 -3 -4 -5 -5 -6 -6 -9 -7 -1 6 9 5 0 -3 -2 1 3 3 1 -2 -6 -8 -2 6 13 14 9 3 -2 -5 -5 -4 -2 1 4 6 7 6 3 -2 -6 -10 -12 -13 -14 -14 -15 -17 -19 -21 -26 -27 -27 -26 -26 -26 -26 -26 -28 -29 -29 -28 -27 -27 -26 -25 -25 -26 -27 -28 -27 -25 -23 -19 -16 -14 -8 -11 -13 -15 -19 -21 -21 -21 -19 -17 -16 -11 -9 -9 -9 -8 -8 -9 -10 -12 -17 -28 -37 -41 -40 -37 -40 -42 -42 -40 -37 -34 -30 -26 -24 -24 -28 -31 -32 -30 -26 -24 -24 -23 -22 -21 -20 -21 -22 -26 -33 -37 -41 -45 -48 -44 -39 -37 -39 -42 -47 -52 -53 -51 -47 -46 -44 -39 -34 -31 -32 -33 -31 -29 -27 -21 -6 4 2 -9 -18 -15 -16 -20 -27 -29 -29 -28 -26 -25 -24 -27 -32 -34 -29 -11 3 10 9 -1 -9 -12 -13 -14 -13 -12 -10 -9 -9 -11 -12 -11 -11 -11 -12 -11 -10 -9 -8 -9 -11 -14 -15 -17 -21 -25 -27 -26 -23 -19 -16 -16 -17 -17 -19 -20 -21 -21 -20 -19 -17 -16 -15 -14 -13 -11 -11 -11 -12 -13 -12 -11 -10 -9 -9 -9 -11 -12 -14 -15 -16 -16 -16 -16 -16 -16 -17 -18 -15 -8 -4 -7 -11 -15 -15 -15 -14 -13 -13 -13 -13 -13 -13 -12 -11 -12 -15 -16 -17 -17 -18 -20 -23 -27 -30 -28 -21 -15 -14 -17 -20 -20 -20 -21 -21 -18 -11 -8 -9 -12 -13 -12 -12 -11 -11 -12 -13 -13 -12 -12 -11 -13 -14 -15 -15 -14 -14 -15 -17 -18 -18 -15 -14 -14 -12 -6 -0 -0 -4 -9 -15 -19 -22 -25 -27 -29 -28 -23 -16 -11 -9 -10 -9 -8 -7 -9 -14 -18 -20 -19 -18 -17 -18 -18 -18 -18 -18 -17 -14 -11 -9 -11 -14 -16 -18 -17 -14 -13 -12 -13 -13 -13 -14 -16 -19 -19 -14 -3 10 20 23 26 31 32 29 23 19 16 13 11 8 5 0 -6 -13 -20 -24 -25 -24 -23 -23 -21 -20 -19 -18 -17 -13 -2 3 2 -4 -8 -9 -10 -12 -14 -14 -7 2 10 15 14 11 9 6 2 -2 -4 -4 -4 -5 -7 -9 -8 -3 5 9 5 -0 -4 -5 -2 2 4 3 0 -5 -8 -7 1 10 14 10 4 -1 -4 -5 -5 -3 -1 1 4 6 6 4 -1 -6 -11 -14 -16 -18 -18 -20 -23 -26 -27 -29 -30 -29 -29 -29 -28 -27 -26 -28 -30 -30 -29 -27 -27 -26 -25 -25 -27 -28 -29 -29 -29 -23 -16 -10 -10 -7 -6 -6 -7 -11 -16 -14 -13 -12 -9 -11 -11 -10 -9 -10 -10 -10 -12 -14 -15 -20 -27 -35 -41 -42 -39 -40 -42 -42 -40 -37 -34 -30 -26 -23 -22 -28 -33 -35 -31 -26 -24 -24 -25 -23 -23 -23 -24 -25 -27 -32 -36 -42 -48 -52 -46 -41 -39 -40 -43 -46 -49 -51 -50 -47 -48 -46 -40 -35 -34 -36 -36 -33 -29 -27 -23 -10 0 1 -8 -17 -16 -15 -19 -27 -29 -30 -29 -27 -24 -24 -27 -33 -37 -35 -20 -7 4 7 -1 -9 -12 -13 -13 -12 -10 -8 -8 -8 -10 -12 -12 -12 -12 -12 -9 -4 -2 -3 -6 -5 -4 -5 -7 -11 -17 -21 -23 -23 -21 -18 -17 -16 -17 -18 -19 -19 -19 -19 -18 -17 -16 -14 -13 -12 -11 -10 -10 -10 -10 -10 -9 -10 -10 -11 -12 -13 -14 -15 -16 -15 -14 -14 -15 -17 -17 -17 -18 -17 -13 -8 -7 -10 -13 -16 -16 -15 -14 -13 -14 -16 -17 -16 -15 -13 -12 -13 -14 -15 -16 -18 -20 -22 -26 -30 -32 -27 -19 -14 -13 -17 -18 -18 -19 -20 -18 -12 -8 -8 -11 -13 -13 -12 -11 -11 -11 -12 -13 -13 -12 -12 -13 -14 -15 -15 -14 -13 -13 -15 -17 -17 -15 -14 -14 -14 -10 -4 -2 -4 -9 -15 -17 -19 -20 -22 -25 -26 -22 -15 -9 -5 -4 -4 -6 -10 -16 -21 -25 -25 -24 -21 -21 -21 -20 -17 -15 -17 -17 -17 -14 -12 -11 -12 -15 -17 -18 -16 -14 -13 -13 -14 -14 -13 -15 -18 -21 -19 -15 -3 12 23 27 30 29 25 19 17 16 14 11 8 5 2 -4 -10 -18 -24 -27 -28 -28 -25 -23 -21 -20 -19 -19 -18 -10 -3 0 -2 -6 -7 -9 -12 -14 -16 -11 -3 5 11 12 10 8 6 3 -1 -4 -5 -5 -6 -9 -11 -10 -5 3 7 4 -1 -5 -7 -5 0 4 5 2 -3 -8 -9 -4 4 12 10 6 1 -3 -5 -5 -5 -3 -1 1 4 6 4 1 -6 -12 -17 -21 -25 -25 -26 -28 -29 -30 -30 -31 -31 -31 -31 -30 -28 -26 -26 -29 -30 -28 -25 -24 -24 -24 -25 -27 -29 -30 -31 -29 -20 -11 -7 -8 -7 -6 -4 -4 -7 -9 -5 -2 -4 -7 -10 -12 -12 -11 -11 -11 -12 -16 -20 -20 -22 -25 -32 -39 -44 -43 -44 -44 -43 -41 -38 -35 -32 -28 -23 -22 -28 -35 -37 -33 -29 -26 -27 -29 -26 -24 -25 -26 -28 -29 -31 -36 -43 -50 -53 -48 -43 -41 -41 -44 -43 -45 -49 -52 -51 -49 -45 -40 -36 -37 -39 -39 -35 -30 -27 -23 -13 -5 -2 -5 -16 -18 -18 -20 -27 -30 -31 -30 -28 -24 -23 -27 -35 -41 -41 -31 -18 -4 3 -2 -8 -12 -13 -12 -11 -10 -8 -8 -10 -12 -13 -14 -14 -15 -16 -14 -9 -5 -3 -4 -2 0 1 -0 -3 -8 -14 -17 -19 -19 -19 -18 -17 -16 -16 -17 -17 -18 -18 -18 -17 -16 -16 -15 -13 -11 -10 -9 -9 -8 -8 -9 -10 -12 -14 -14 -14 -15 -17 -18 -16 -13 -12 -13 -16 -18 -17 -17 -16 -15 -13 -10 -10 -13 -16 -17 -16 -13 -12 -14 -17 -19 -20 -18 -15 -12 -10 -11 -13 -15 -17 -20 -22 -24 -28 -32 -31 -24 -16 -12 -15 -17 -18 -18 -19 -19 -14 -10 -8 -10 -12 -14 -13 -12 -11 -11 -12 -13 -13 -13 -13 -14 -14 -15 -15 -14 -12 -12 -13 -15 -15 -15 -14 -14 -14 -12 -9 -6 -6 -9 -12 -11 -11 -13 -17 -23 -25 -21 -13 -6 -3 -2 -3 -6 -12 -18 -23 -25 -27 -28 -27 -26 -23 -20 -16 -14 -16 -18 -18 -16 -14 -13 -13 -14 -17 -19 -19 -16 -14 -13 -14 -14 -14 -14 -16 -19 -20 -19 -14 -2 16 25 26 22 15 8 8 12 14 12 9 6 3 -2 -9 -17 -23 -27 -29 -29 -26 -23 -21 -21 -20 -19 -19 -15 -7 -1 -0 -4 -6 -8 -10 -13 -16 -15 -9 -1 6 7 7 6 5 2 -3 -7 -8 -8 -8 -11 -13 -12 -7 1 6 4 -1 -6 -8 -7 -3 2 5 4 -1 -7 -10 -8 -1 8 9 7 3 -1 -4 -6 -6 -5 -3 -1 1 3 3 0 -7 -15 -22 -28 -31 -31 -30 -30 -30 -30 -30 -31 -32 -32 -31 -31 -28 -26 -26 -27 -27 -26 -25 -23 -23 -24 -25 -27 -30 -31 -32 -28 -18 -9 -7 -8 -9 -7 -5 -3 -5 -8 -7 -5 -4 -6 -10 -12 -14 -14 -13 -13 -15 -19 -24 -23 -22 -25 -30 -36 -43 -44 -44 -45 -45 -42 -39 -37 -34 -30 -23 -22 -27 -33 -35 -34 -32 -31 -31 -31 -28 -26 -25 -27 -29 -30 -31 -36 -43 -50 -53 -50 -46 -43 -42 -43 -40 -40 -45 -53 -52 -48 -42 -37 -35 -38 -39 -38 -34 -30 -27 -24 -18 -11 -6 -4 -14 -18 -20 -23 -28 -31 -32 -31 -29 -24 -22 -25 -33 -43 -45 -39 -27 -13 -3 -6 -9 -11 -9 -8 -8 -8 -7 -8 -10 -13 -15 -16 -16 -16 -17 -18 -17 -14 -10 -8 -4 -1 0 0 0 -2 -5 -9 -12 -14 -17 -19 -18 -16 -15 -16 -16 -17 -17 -17 -17 -17 -17 -17 -16 -13 -10 -9 -8 -8 -7 -8 -10 -12 -15 -15 -15 -15 -16 -17 -16 -14 -12 -11 -13 -15 -16 -15 -14 -15 -18 -17 -15 -14 -15 -16 -14 -12 -12 -14 -18 -19 -20 -19 -18 -14 -11 -10 -11 -13 -16 -20 -22 -24 -25 -28 -31 -27 -20 -13 -13 -17 -19 -18 -18 -19 -17 -13 -9 -8 -11 -13 -14 -13 -12 -11 -12 -13 -14 -14 -14 -14 -14 -15 -14 -13 -12 -12 -12 -13 -14 -14 -14 -14 -14 -12 -11 -10 -9 -9 -8 -6 -5 -8 -14 -22 -26 -23 -16 -7 -0 -0 -4 -9 -14 -19 -21 -24 -27 -30 -31 -29 -25 -20 -16 -15 -16 -18 -18 -18 -16 -14 -13 -13 -15 -19 -20 -19 -16 -14 -14 -14 -15 -16 -16 -18 -20 -20 -20 -15 1 18 20 14 5 -5 -4 4 11 13 10 7 4 -2 -9 -17 -22 -26 -29 -29 -27 -24 -22 -21 -20 -18 -18 -18 -13 -5 -0 -3 -5 -7 -9 -11 -14 -16 -13 -7 0 3 3 3 1 -1 -6 -11 -13 -14 -13 -15 -16 -14 -10 -2 4 3 -2 -6 -9 -9 -6 -1 3 5 1 -5 -10 -10 -6 4 8 8 4 0 -3 -6 -7 -7 -5 -4 -2 -2 -2 -4 -10 -19 -26 -31 -32 -32 -31 -30 -30 -29 -29 -29 -30 -31 -29 -28 -25 -24 -24 -24 -25 -25 -25 -24 -24 -25 -25 -27 -30 -32 -31 -25 -17 -12 -10 -10 -10 -9 -7 -4 -3 -7 -10 -11 -9 -7 -10 -13 -15 -16 -16 -16 -18 -22 -27 -24 -22 -24 -29 -35 -41 -42 -43 -44 -45 -44 -41 -38 -35 -30 -23 -20 -22 -26 -31 -34 -36 -35 -33 -32 -29 -26 -26 -27 -29 -28 -30 -35 -41 -48 -53 -53 -50 -46 -43 -41 -37 -38 -43 -50 -49 -44 -39 -36 -35 -37 -36 -35 -32 -29 -27 -26 -22 -16 -10 -6 -12 -18 -20 -24 -29 -32 -33 -32 -31 -26 -22 -23 -30 -43 -46 -43 -35 -22 -9 -9 -10 -12 -7 -7 -8 -8 -8 -10 -12 -15 -16 -17 -16 -16 -16 -18 -18 -17 -14 -11 -8 -6 -4 -2 1 2 1 -2 -5 -10 -15 -19 -19 -18 -16 -16 -16 -16 -16 -16 -17 -17 -18 -19 -20 -18 -13 -10 -8 -7 -6 -6 -7 -9 -12 -13 -14 -14 -15 -14 -14 -14 -12 -10 -8 -9 -12 -14 -16 -17 -20 -21 -18 -13 -10 -11 -11 -11 -12 -14 -17 -18 -18 -18 -17 -14 -11 -10 -10 -12 -15 -19 -21 -21 -22 -23 -27 -30 -28 -22 -16 -16 -17 -18 -18 -20 -21 -18 -13 -8 -9 -12 -13 -13 -12 -11 -12 -13 -14 -15 -15 -15 -15 -15 -15 -14 -13 -13 -13 -13 -14 -14 -14 -14 -14 -13 -12 -12 -12 -11 -7 -4 -4 -7 -13 -21 -26 -26 -20 -10 1 1 -4 -11 -16 -18 -19 -22 -26 -30 -32 -31 -27 -21 -16 -14 -16 -18 -19 -19 -17 -15 -14 -13 -14 -17 -19 -19 -18 -16 -15 -16 -18 -20 -20 -20 -21 -22 -21 -20 -17 7 15 12 3 -6 -8 -2 8 14 11 8 4 -1 -9 -17 -22 -25 -27 -28 -28 -26 -23 -21 -19 -17 -18 -20 -17 -9 -1 -2 -4 -7 -9 -10 -12 -15 -15 -10 -2 2 1 -1 -3 -5 -9 -14 -17 -19 -19 -20 -20 -18 -14 -6 1 0 -4 -8 -11 -11 -10 -6 -0 4 1 -5 -10 -12 -9 0 7 8 5 1 -3 -7 -10 -11 -9 -8 -8 -9 -10 -12 -15 -20 -26 -30 -32 -31 -31 -31 -30 -28 -28 -27 -27 -26 -24 -24 -22 -22 -22 -23 -23 -24 -24 -24 -25 -25 -25 -27 -29 -31 -27 -20 -17 -16 -14 -11 -12 -12 -10 -6 -3 -5 -10 -16 -18 -13 -12 -14 -18 -20 -20 -21 -23 -27 -30 -27 -24 -25 -30 -35 -38 -39 -41 -43 -45 -44 -42 -39 -35 -29 -21 -17 -16 -20 -28 -34 -38 -38 -35 -32 -28 -26 -26 -28 -30 -27 -28 -33 -40 -46 -51 -54 -52 -49 -44 -40 -37 -38 -42 -47 -44 -41 -38 -36 -35 -36 -35 -33 -31 -29 -27 -27 -26 -21 -14 -9 -12 -17 -21 -25 -30 -34 -35 -34 -33 -28 -23 -21 -27 -40 -45 -45 -40 -29 -14 -11 -12 -14 -10 -10 -11 -10 -11 -12 -14 -15 -15 -15 -14 -14 -16 -18 -18 -16 -14 -12 -11 -10 -7 -4 -1 1 2 1 -3 -9 -15 -19 -20 -19 -17 -15 -14 -14 -15 -16 -17 -17 -18 -19 -21 -21 -18 -14 -9 -6 -4 -3 -4 -5 -7 -9 -10 -10 -11 -12 -13 -12 -11 -9 -7 -7 -10 -14 -18 -20 -20 -22 -21 -17 -10 -8 -9 -10 -11 -13 -14 -15 -16 -15 -15 -15 -13 -12 -11 -12 -15 -18 -20 -20 -19 -18 -22 -27 -29 -25 -16 -11 -12 -14 -15 -16 -19 -19 -16 -10 -6 -9 -11 -12 -12 -11 -12 -13 -14 -15 -16 -17 -17 -17 -16 -16 -17 -16 -15 -13 -14 -15 -15 -14 -13 -13 -13 -14 -15 -14 -8 -2 -2 -5 -11 -18 -24 -26 -21 -11 0 1 -5 -11 -15 -16 -17 -20 -24 -28 -32 -33 -30 -25 -20 -17 -17 -19 -21 -20 -18 -16 -15 -14 -14 -16 -18 -19 -19 -18 -17 -19 -21 -23 -24 -23 -24 -23 -22 -22 -26 -6 8 13 9 2 -3 1 9 15 12 8 4 -2 -9 -15 -20 -23 -25 -26 -27 -27 -25 -22 -19 -18 -18 -21 -19 -13 -4 -2 -3 -6 -8 -9 -10 -13 -14 -13 -5 2 3 1 -2 -3 -7 -12 -16 -20 -22 -24 -24 -23 -19 -12 -5 -5 -8 -12 -14 -15 -14 -11 -5 2 -0 -7 -12 -14 -13 -3 5 7 5 0 -4 -9 -13 -16 -15 -14 -13 -14 -15 -16 -18 -21 -25 -29 -31 -31 -31 -31 -30 -28 -28 -27 -26 -24 -20 -21 -21 -21 -23 -23 -22 -23 -24 -24 -25 -26 -26 -27 -29 -30 -27 -22 -22 -23 -20 -15 -14 -14 -13 -10 -5 -4 -8 -16 -26 -21 -18 -19 -24 -28 -28 -28 -30 -34 -36 -33 -29 -28 -30 -34 -36 -37 -38 -40 -43 -43 -41 -38 -34 -28 -21 -17 -16 -19 -27 -34 -38 -38 -36 -32 -28 -26 -26 -29 -31 -28 -28 -31 -37 -43 -49 -53 -53 -51 -47 -43 -40 -39 -41 -43 -41 -39 -37 -37 -36 -37 -36 -34 -31 -28 -27 -27 -28 -26 -18 -11 -12 -17 -22 -26 -33 -37 -38 -36 -34 -29 -23 -20 -24 -36 -41 -45 -43 -36 -23 -20 -20 -21 -13 -13 -13 -12 -12 -12 -13 -13 -13 -12 -12 -14 -17 -20 -18 -14 -10 -10 -11 -10 -8 -6 -5 -5 -3 -2 -5 -11 -17 -18 -17 -15 -11 -10 -11 -12 -14 -16 -18 -18 -17 -15 -13 -14 -15 -16 -14 -11 -7 -5 -4 -5 -6 -6 -6 -6 -6 -8 -10 -11 -12 -12 -11 -10 -11 -14 -18 -20 -21 -21 -20 -17 -11 -7 -7 -9 -11 -12 -13 -14 -14 -14 -14 -13 -13 -13 -12 -13 -14 -17 -19 -19 -17 -15 -17 -22 -27 -27 -19 -11 -8 -10 -14 -15 -16 -17 -16 -13 -8 -7 -8 -10 -12 -12 -12 -12 -13 -15 -17 -19 -20 -20 -19 -18 -19 -19 -17 -15 -15 -16 -15 -14 -13 -13 -14 -15 -15 -15 -10 -1 2 -0 -6 -13 -21 -24 -22 -14 -2 -1 -7 -13 -14 -13 -15 -17 -20 -25 -29 -32 -32 -30 -26 -22 -21 -21 -21 -21 -20 -18 -17 -17 -17 -17 -17 -19 -20 -20 -19 -20 -23 -25 -25 -25 -25 -24 -23 -24 -28 -17 -3 7 10 6 1 3 9 13 12 8 3 -3 -8 -11 -14 -18 -22 -24 -25 -25 -25 -23 -21 -20 -20 -22 -21 -17 -8 -3 -3 -5 -8 -10 -10 -11 -13 -13 -9 -0 3 3 -0 -2 -5 -9 -13 -16 -20 -23 -26 -26 -23 -16 -11 -11 -13 -16 -18 -19 -19 -17 -12 -5 -5 -10 -16 -18 -17 -9 -0 3 2 -3 -8 -12 -17 -20 -21 -19 -18 -17 -16 -15 -17 -20 -24 -28 -30 -30 -30 -29 -29 -28 -28 -28 -26 -23 -19 -20 -21 -23 -24 -25 -23 -24 -24 -24 -25 -26 -26 -26 -27 -29 -30 -28 -29 -30 -28 -21 -18 -17 -17 -13 -8 -4 -5 -12 -26 -27 -25 -25 -30 -37 -37 -36 -36 -38 -42 -40 -35 -31 -30 -33 -35 -36 -35 -36 -38 -39 -37 -35 -31 -27 -23 -21 -20 -19 -24 -30 -35 -37 -37 -32 -28 -26 -26 -29 -31 -30 -30 -32 -35 -41 -48 -53 -54 -53 -50 -48 -44 -42 -42 -42 -40 -38 -38 -38 -38 -37 -37 -36 -31 -28 -27 -27 -28 -30 -22 -15 -14 -18 -22 -27 -35 -41 -42 -39 -35 -29 -22 -18 -19 -30 -37 -42 -44 -41 -32 -30 -30 -30 -14 -14 -13 -12 -12 -11 -11 -10 -10 -10 -11 -14 -19 -20 -14 -8 -5 -7 -9 -10 -9 -8 -9 -11 -10 -9 -9 -9 -9 -10 -10 -9 -6 -6 -7 -10 -14 -18 -21 -22 -21 -18 -16 -14 -15 -17 -17 -15 -12 -9 -7 -6 -6 -6 -5 -5 -5 -7 -10 -12 -13 -14 -14 -13 -12 -13 -16 -19 -20 -21 -20 -18 -13 -8 -7 -8 -10 -11 -13 -15 -15 -15 -13 -11 -12 -12 -13 -13 -14 -16 -18 -18 -17 -14 -14 -18 -24 -28 -24 -14 -8 -8 -13 -16 -16 -17 -17 -16 -11 -7 -6 -8 -11 -12 -12 -12 -13 -16 -20 -22 -23 -23 -22 -21 -21 -20 -19 -17 -16 -16 -16 -15 -14 -14 -16 -16 -15 -14 -10 -1 3 2 -2 -7 -14 -19 -21 -17 -8 -5 -8 -13 -13 -11 -12 -14 -17 -21 -26 -29 -31 -32 -31 -28 -25 -22 -21 -21 -21 -21 -20 -20 -20 -19 -18 -18 -18 -18 -18 -20 -22 -25 -25 -25 -25 -24 -24 -25 -28 -22 -13 -4 3 5 3 2 2 3 2 0 -1 -2 -3 -3 -8 -14 -19 -22 -23 -23 -23 -23 -22 -22 -23 -23 -23 -21 -12 -5 -3 -4 -7 -10 -11 -11 -11 -13 -11 -3 3 4 2 -0 -1 -4 -8 -14 -18 -22 -24 -24 -21 -17 -14 -15 -17 -20 -21 -21 -21 -20 -18 -12 -10 -13 -18 -21 -21 -15 -8 -4 -5 -10 -13 -16 -18 -20 -20 -20 -19 -18 -16 -15 -16 -19 -22 -26 -30 -30 -29 -29 -29 -29 -29 -28 -28 -26 -21 -21 -23 -25 -27 -27 -26 -26 -27 -26 -25 -27 -27 -26 -25 -27 -30 -32 -33 -33 -31 -27 -23 -22 -23 -17 -13 -8 -5 -9 -22 -28 -30 -30 -34 -42 -43 -41 -39 -41 -43 -41 -36 -30 -27 -29 -34 -37 -36 -34 -34 -34 -33 -31 -28 -26 -24 -23 -22 -19 -20 -24 -30 -35 -36 -31 -27 -25 -26 -28 -30 -31 -33 -35 -36 -42 -49 -53 -55 -54 -52 -51 -49 -46 -45 -42 -40 -39 -39 -39 -39 -38 -38 -37 -33 -30 -29 -29 -30 -31 -26 -20 -17 -19 -22 -26 -34 -42 -45 -43 -37 -29 -21 -16 -14 -24 -31 -37 -40 -41 -38 -36 -35 -34 -14 -14 -13 -13 -12 -10 -9 -8 -7 -8 -9 -12 -14 -12 -6 -2 -2 -7 -13 -15 -16 -16 -17 -19 -17 -14 -12 -12 -14 -13 -10 -7 -4 -4 -7 -10 -14 -18 -22 -21 -18 -16 -15 -16 -17 -18 -19 -18 -16 -13 -10 -8 -7 -7 -7 -8 -8 -10 -12 -13 -15 -17 -17 -15 -13 -13 -14 -17 -20 -21 -20 -19 -15 -10 -7 -7 -8 -11 -13 -15 -16 -15 -13 -10 -9 -10 -12 -13 -14 -15 -16 -17 -16 -14 -13 -15 -21 -26 -26 -19 -11 -9 -11 -16 -18 -18 -18 -18 -15 -10 -6 -6 -8 -10 -12 -13 -14 -17 -21 -24 -25 -25 -23 -23 -23 -22 -20 -19 -18 -18 -17 -16 -16 -16 -18 -17 -16 -15 -13 -4 2 3 -1 -6 -9 -12 -15 -17 -15 -12 -13 -14 -13 -11 -11 -13 -15 -18 -22 -26 -28 -30 -30 -29 -25 -22 -20 -21 -23 -22 -21 -21 -21 -20 -17 -15 -15 -15 -16 -18 -21 -23 -24 -24 -24 -24 -24 -26 -27 -23 -19 -15 -9 -2 0 1 1 1 2 2 1 -0 0 -1 -6 -13 -18 -21 -21 -21 -21 -22 -23 -24 -25 -25 -24 -22 -16 -8 -3 -3 -6 -11 -12 -11 -11 -12 -13 -7 1 5 4 2 1 -1 -4 -9 -13 -18 -21 -21 -19 -14 -12 -13 -17 -20 -21 -20 -20 -21 -20 -18 -14 -14 -17 -21 -22 -18 -11 -6 -6 -10 -13 -15 -17 -18 -19 -19 -18 -17 -16 -16 -16 -18 -20 -24 -28 -29 -28 -27 -27 -27 -28 -28 -29 -28 -24 -24 -26 -28 -28 -27 -29 -30 -30 -29 -26 -27 -28 -27 -25 -25 -29 -33 -35 -35 -33 -30 -27 -27 -29 -24 -20 -15 -11 -12 -17 -27 -31 -32 -33 -42 -45 -44 -42 -41 -41 -39 -34 -28 -24 -25 -31 -38 -41 -38 -35 -32 -30 -29 -27 -25 -25 -24 -23 -20 -16 -20 -26 -32 -35 -30 -26 -25 -24 -25 -28 -32 -35 -37 -38 -43 -49 -53 -54 -53 -51 -51 -50 -47 -44 -42 -40 -40 -41 -42 -41 -40 -40 -39 -34 -31 -30 -31 -33 -31 -29 -25 -21 -21 -21 -25 -31 -39 -44 -44 -39 -30 -21 -16 -12 -19 -26 -31 -34 -37 -38 -37 -36 -34 -13 -13 -12 -11 -10 -8 -5 -5 -5 -5 -5 -6 -6 -6 -6 -7 -10 -14 -18 -20 -19 -18 -18 -19 -17 -15 -13 -13 -14 -15 -13 -10 -7 -6 -9 -12 -15 -18 -21 -20 -19 -17 -17 -18 -17 -18 -19 -19 -18 -15 -12 -10 -9 -9 -10 -11 -13 -13 -14 -15 -17 -19 -19 -17 -15 -13 -14 -15 -18 -20 -20 -19 -16 -12 -8 -6 -7 -9 -12 -14 -15 -15 -14 -9 -6 -6 -9 -12 -13 -14 -16 -17 -16 -15 -13 -13 -17 -22 -26 -23 -17 -11 -9 -12 -16 -18 -18 -18 -17 -13 -9 -6 -6 -9 -13 -15 -17 -19 -21 -24 -25 -24 -23 -23 -24 -23 -22 -20 -20 -20 -20 -18 -18 -18 -20 -19 -17 -16 -17 -9 -1 3 1 -1 -3 -6 -12 -18 -21 -20 -18 -16 -14 -12 -11 -11 -12 -14 -18 -22 -25 -27 -28 -27 -24 -21 -20 -21 -23 -23 -22 -21 -21 -20 -18 -15 -13 -13 -14 -17 -19 -22 -23 -24 -24 -24 -25 -26 -27 -22 -20 -20 -18 -12 -6 -3 -1 -0 2 3 1 -1 -2 -2 -6 -11 -16 -19 -21 -21 -20 -21 -22 -24 -25 -25 -24 -22 -18 -11 -5 -3 -6 -11 -12 -12 -12 -12 -14 -11 -4 4 6 5 5 3 1 -4 -10 -15 -19 -20 -19 -15 -13 -13 -17 -21 -22 -21 -21 -21 -21 -19 -16 -14 -15 -19 -21 -19 -13 -7 -6 -9 -11 -12 -13 -16 -17 -18 -17 -17 -16 -16 -17 -18 -19 -21 -23 -25 -25 -23 -23 -24 -25 -27 -30 -30 -27 -27 -28 -28 -27 -27 -29 -32 -33 -31 -27 -28 -29 -29 -27 -25 -28 -32 -36 -38 -36 -33 -30 -30 -32 -31 -28 -24 -19 -20 -19 -24 -29 -32 -34 -41 -45 -45 -42 -39 -38 -35 -31 -28 -24 -24 -29 -37 -45 -45 -39 -33 -29 -28 -27 -26 -26 -25 -23 -21 -16 -17 -22 -27 -32 -30 -28 -25 -23 -22 -26 -31 -36 -38 -39 -43 -48 -52 -54 -52 -50 -49 -48 -46 -42 -42 -43 -44 -45 -45 -43 -43 -44 -43 -37 -31 -29 -30 -33 -31 -31 -30 -26 -23 -21 -23 -28 -35 -41 -42 -38 -32 -24 -18 -12 -16 -22 -27 -28 -32 -34 -34 -33 -32 -14 -12 -10 -8 -6 -4 -4 -5 -6 -5 -6 -6 -8 -10 -11 -14 -16 -19 -21 -19 -17 -16 -16 -17 -16 -15 -14 -14 -15 -16 -16 -14 -11 -10 -12 -15 -18 -19 -18 -16 -15 -16 -17 -17 -16 -16 -17 -17 -17 -15 -12 -11 -10 -11 -12 -14 -15 -16 -16 -17 -19 -20 -20 -17 -15 -13 -13 -13 -16 -19 -19 -18 -16 -14 -10 -6 -5 -7 -10 -12 -14 -15 -15 -10 -5 -3 -5 -9 -12 -13 -15 -17 -17 -16 -14 -13 -14 -19 -24 -25 -21 -15 -9 -8 -11 -14 -15 -14 -15 -16 -14 -10 -6 -7 -13 -17 -20 -21 -20 -21 -21 -22 -22 -23 -24 -23 -23 -22 -23 -23 -22 -21 -20 -20 -22 -21 -20 -19 -20 -16 -9 -2 1 3 1 -3 -10 -17 -22 -23 -21 -18 -15 -14 -11 -9 -9 -9 -13 -17 -21 -24 -25 -25 -24 -22 -21 -21 -21 -22 -21 -20 -19 -19 -19 -17 -14 -12 -12 -15 -19 -21 -23 -25 -25 -25 -26 -27 -27 -22 -20 -20 -21 -20 -14 -8 -4 -2 1 4 4 2 -0 -3 -6 -10 -13 -17 -19 -20 -21 -21 -22 -24 -25 -25 -24 -22 -19 -13 -7 -4 -6 -10 -13 -13 -12 -13 -15 -14 -9 -1 6 6 6 5 3 -0 -7 -13 -17 -20 -19 -14 -11 -12 -16 -20 -21 -21 -20 -21 -21 -21 -18 -16 -14 -16 -19 -19 -14 -9 -7 -10 -11 -10 -10 -13 -16 -17 -16 -16 -16 -17 -17 -18 -18 -18 -17 -19 -19 -17 -19 -21 -23 -27 -31 -31 -30 -29 -28 -27 -26 -26 -29 -32 -33 -29 -26 -28 -31 -34 -31 -27 -28 -31 -36 -40 -39 -36 -33 -32 -34 -34 -32 -29 -25 -23 -21 -22 -25 -31 -38 -42 -44 -43 -40 -36 -34 -33 -31 -29 -27 -25 -29 -36 -45 -44 -38 -33 -29 -28 -28 -28 -27 -25 -21 -23 -18 -17 -18 -22 -29 -31 -29 -26 -24 -21 -25 -30 -35 -37 -38 -42 -47 -51 -53 -50 -46 -44 -43 -44 -42 -43 -45 -47 -47 -46 -45 -46 -47 -47 -39 -32 -29 -30 -32 -33 -34 -33 -29 -26 -22 -23 -26 -32 -38 -39 -37 -32 -26 -21 -14 -15 -19 -21 -20 -24 -27 -30 -32 -32 -14 -11 -8 -6 -6 -7 -8 -9 -11 -10 -11 -11 -13 -16 -18 -20 -22 -23 -22 -19 -17 -15 -14 -16 -16 -16 -16 -16 -17 -19 -19 -18 -15 -13 -15 -18 -19 -19 -15 -11 -9 -9 -12 -13 -14 -13 -13 -13 -13 -13 -12 -10 -10 -11 -12 -14 -17 -19 -18 -19 -21 -22 -20 -16 -13 -11 -10 -11 -15 -18 -18 -18 -16 -14 -11 -6 -4 -4 -7 -11 -13 -15 -15 -12 -5 -1 -2 -7 -11 -14 -15 -17 -17 -17 -16 -15 -15 -18 -22 -24 -23 -19 -14 -9 -9 -10 -11 -11 -14 -17 -18 -15 -10 -8 -12 -17 -19 -20 -19 -18 -18 -19 -21 -23 -23 -23 -23 -23 -24 -24 -24 -23 -23 -24 -23 -23 -22 -21 -22 -22 -18 -10 -3 3 3 -2 -9 -15 -20 -23 -23 -20 -17 -15 -12 -9 -7 -6 -9 -14 -19 -23 -25 -25 -25 -24 -23 -21 -21 -22 -21 -20 -19 -20 -20 -18 -16 -13 -12 -15 -18 -22 -25 -27 -27 -27 -27 -28 -27 -22 -19 -19 -19 -21 -19 -14 -8 -3 -1 3 4 4 2 -1 -4 -7 -11 -14 -16 -19 -20 -22 -23 -24 -24 -24 -24 -23 -19 -14 -8 -5 -5 -9 -12 -13 -13 -13 -15 -16 -13 -7 2 4 4 4 4 2 -4 -10 -15 -19 -19 -14 -11 -10 -14 -18 -20 -20 -20 -20 -21 -21 -20 -18 -15 -14 -17 -18 -15 -11 -9 -11 -11 -9 -6 -9 -14 -15 -15 -15 -15 -16 -17 -18 -19 -19 -16 -15 -14 -16 -20 -24 -27 -29 -32 -32 -31 -30 -28 -27 -26 -25 -28 -32 -33 -28 -25 -28 -33 -38 -36 -31 -28 -30 -35 -39 -40 -38 -35 -32 -34 -35 -34 -31 -27 -24 -22 -21 -23 -27 -36 -40 -40 -38 -36 -34 -34 -33 -33 -31 -30 -27 -29 -36 -44 -41 -35 -31 -29 -29 -29 -30 -28 -22 -18 -24 -23 -18 -15 -17 -26 -30 -29 -26 -24 -22 -24 -28 -34 -36 -37 -40 -45 -50 -52 -49 -42 -37 -37 -41 -43 -44 -46 -49 -47 -45 -45 -46 -48 -48 -42 -35 -32 -32 -32 -35 -38 -37 -33 -30 -25 -23 -25 -31 -36 -37 -35 -33 -28 -23 -17 -14 -14 -13 -12 -13 -18 -25 -35 -35 -13 -11 -9 -8 -9 -10 -11 -12 -14 -15 -16 -17 -18 -19 -21 -23 -24 -24 -24 -22 -20 -18 -17 -17 -19 -19 -19 -19 -21 -23 -22 -20 -17 -15 -17 -18 -17 -15 -13 -12 -10 -9 -8 -9 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -12 -15 -17 -19 -19 -20 -22 -22 -20 -15 -12 -9 -8 -8 -11 -15 -18 -18 -17 -16 -13 -8 -4 -2 -5 -9 -12 -14 -16 -15 -9 -3 -0 -2 -8 -12 -16 -18 -19 -19 -17 -15 -16 -18 -22 -23 -22 -20 -15 -9 -8 -9 -11 -12 -13 -15 -16 -15 -14 -12 -11 -13 -15 -16 -16 -16 -16 -17 -19 -22 -22 -22 -22 -23 -25 -25 -25 -25 -26 -26 -25 -24 -23 -21 -21 -24 -23 -16 -5 3 4 -0 -7 -13 -18 -22 -22 -21 -18 -16 -14 -11 -7 -4 -6 -11 -18 -23 -25 -24 -24 -23 -23 -22 -21 -20 -19 -19 -19 -20 -20 -20 -18 -15 -12 -13 -17 -22 -26 -28 -28 -27 -27 -28 -27 -22 -19 -18 -18 -18 -19 -17 -13 -7 -3 -2 -1 0 2 2 -0 -3 -6 -10 -14 -17 -19 -21 -23 -23 -23 -24 -23 -23 -19 -13 -8 -4 -4 -8 -11 -13 -14 -15 -16 -18 -16 -12 -3 2 3 4 4 3 -1 -7 -13 -18 -19 -16 -12 -11 -13 -16 -18 -19 -18 -18 -19 -20 -20 -20 -18 -17 -17 -17 -15 -12 -11 -12 -11 -7 -3 -6 -11 -13 -13 -13 -14 -15 -17 -19 -20 -21 -20 -17 -15 -17 -21 -27 -31 -33 -33 -33 -32 -31 -30 -28 -25 -24 -26 -30 -32 -27 -26 -29 -34 -39 -39 -35 -31 -29 -32 -36 -38 -37 -35 -31 -33 -35 -34 -31 -28 -26 -25 -23 -23 -25 -31 -34 -35 -34 -33 -35 -36 -36 -35 -33 -32 -30 -30 -34 -41 -37 -32 -29 -30 -30 -29 -31 -28 -21 -19 -26 -25 -20 -13 -15 -22 -27 -29 -27 -24 -22 -24 -28 -33 -35 -36 -39 -43 -49 -51 -47 -39 -32 -33 -39 -42 -45 -47 -49 -47 -43 -42 -43 -46 -46 -42 -38 -35 -34 -33 -37 -40 -40 -38 -35 -27 -23 -24 -31 -36 -37 -37 -34 -28 -23 -18 -13 -8 -9 -9 -10 -15 -23 -36 -38 -11 -11 -11 -10 -11 -12 -12 -13 -15 -17 -18 -18 -19 -19 -20 -21 -22 -23 -24 -25 -25 -24 -24 -24 -24 -23 -21 -21 -23 -25 -24 -21 -18 -17 -19 -19 -16 -14 -16 -16 -13 -10 -9 -10 -12 -12 -11 -9 -9 -9 -9 -9 -10 -12 -13 -15 -16 -18 -19 -20 -21 -21 -19 -15 -13 -10 -7 -6 -8 -11 -15 -17 -17 -17 -15 -12 -7 -3 -3 -6 -10 -13 -15 -16 -12 -6 -0 1 -3 -9 -14 -17 -19 -20 -18 -16 -14 -15 -18 -21 -22 -20 -16 -12 -10 -9 -10 -11 -12 -12 -14 -17 -20 -19 -15 -13 -12 -12 -14 -16 -17 -18 -19 -22 -23 -22 -22 -22 -24 -25 -24 -25 -27 -28 -27 -25 -23 -22 -20 -22 -20 -13 -2 4 5 3 -2 -8 -14 -19 -21 -20 -18 -17 -16 -13 -8 -3 -3 -7 -14 -19 -22 -21 -21 -22 -24 -24 -22 -20 -18 -18 -18 -20 -21 -21 -19 -16 -13 -13 -16 -22 -27 -28 -28 -28 -28 -27 -27 -22 -18 -16 -15 -16 -17 -17 -16 -13 -9 -7 -7 -4 1 4 4 3 -1 -6 -12 -15 -18 -20 -21 -22 -22 -23 -23 -23 -19 -13 -8 -5 -5 -8 -11 -13 -14 -16 -17 -19 -18 -15 -7 -0 4 5 4 3 -0 -6 -11 -16 -19 -17 -14 -13 -13 -16 -18 -19 -18 -16 -17 -19 -21 -21 -20 -19 -19 -18 -16 -13 -12 -12 -10 -6 -3 -4 -8 -10 -12 -13 -13 -14 -16 -18 -20 -22 -21 -17 -15 -19 -23 -27 -30 -33 -35 -35 -35 -34 -32 -29 -26 -23 -24 -27 -31 -28 -26 -29 -35 -39 -39 -37 -34 -30 -29 -33 -36 -36 -35 -31 -31 -33 -33 -31 -30 -29 -27 -26 -25 -25 -27 -29 -30 -32 -33 -34 -34 -35 -37 -35 -34 -32 -30 -32 -35 -32 -30 -29 -30 -30 -31 -33 -31 -25 -24 -27 -26 -21 -13 -14 -20 -25 -28 -26 -24 -22 -24 -28 -33 -35 -36 -38 -42 -49 -51 -47 -38 -31 -31 -38 -43 -47 -49 -50 -46 -42 -40 -41 -44 -46 -44 -41 -39 -36 -34 -36 -39 -41 -41 -37 -29 -23 -25 -31 -36 -38 -39 -36 -25 -19 -16 -11 -4 -8 -9 -9 -13 -21 -35 -39 -13 -14 -14 -12 -12 -12 -12 -13 -14 -16 -17 -17 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -27 -25 -23 -24 -24 -23 -21 -18 -18 -20 -22 -25 -27 -27 -22 -17 -13 -12 -13 -13 -13 -11 -8 -8 -8 -7 -7 -9 -12 -13 -14 -16 -18 -19 -20 -20 -19 -18 -17 -15 -12 -9 -7 -7 -9 -12 -15 -17 -18 -17 -16 -12 -7 -4 -5 -8 -11 -14 -16 -14 -9 -3 1 -0 -5 -10 -15 -18 -20 -19 -16 -14 -13 -16 -19 -21 -20 -17 -14 -13 -12 -10 -9 -9 -11 -15 -20 -24 -24 -21 -17 -13 -10 -11 -14 -17 -19 -20 -22 -22 -21 -21 -22 -24 -25 -24 -25 -27 -28 -27 -26 -25 -22 -20 -21 -22 -17 -4 5 7 6 2 -4 -11 -16 -19 -18 -16 -14 -14 -13 -10 -5 -1 -3 -8 -14 -17 -18 -18 -21 -24 -26 -24 -21 -19 -18 -18 -20 -21 -21 -19 -17 -14 -13 -16 -20 -25 -27 -28 -28 -28 -27 -27 -23 -18 -15 -14 -14 -14 -14 -15 -16 -13 -8 -5 -3 0 4 7 7 3 -4 -9 -12 -15 -18 -19 -20 -21 -22 -23 -23 -20 -14 -9 -5 -4 -7 -9 -12 -14 -16 -18 -20 -20 -18 -12 -4 2 4 3 2 -1 -5 -11 -16 -19 -19 -17 -14 -12 -15 -18 -19 -19 -17 -17 -19 -21 -22 -22 -21 -21 -19 -17 -13 -13 -13 -11 -7 -4 -4 -6 -10 -13 -14 -13 -14 -15 -18 -20 -20 -19 -17 -17 -22 -28 -31 -32 -34 -36 -38 -38 -37 -35 -32 -27 -24 -23 -26 -30 -31 -29 -31 -36 -39 -39 -39 -37 -33 -30 -32 -34 -36 -35 -31 -30 -32 -33 -32 -32 -32 -30 -28 -26 -24 -23 -25 -28 -31 -33 -32 -30 -31 -36 -37 -36 -34 -31 -29 -28 -27 -27 -29 -31 -31 -33 -35 -36 -31 -29 -29 -27 -22 -16 -15 -19 -24 -27 -25 -23 -22 -23 -27 -32 -34 -35 -37 -42 -49 -52 -48 -39 -32 -32 -40 -46 -50 -51 -50 -45 -41 -39 -38 -41 -45 -47 -46 -43 -38 -34 -34 -35 -39 -42 -38 -30 -24 -26 -32 -38 -41 -40 -31 -20 -15 -12 -9 -2 -7 -9 -9 -10 -17 -32 -38 -15 -16 -16 -14 -13 -12 -12 -12 -13 -15 -16 -15 -15 -14 -15 -16 -18 -19 -20 -21 -21 -21 -21 -23 -26 -26 -24 -23 -24 -25 -26 -23 -20 -18 -21 -24 -28 -30 -28 -22 -17 -16 -16 -18 -18 -14 -10 -7 -6 -7 -7 -7 -8 -11 -13 -13 -15 -17 -19 -20 -19 -17 -16 -17 -17 -15 -13 -11 -10 -9 -10 -12 -15 -17 -18 -18 -17 -14 -8 -6 -6 -8 -12 -15 -16 -13 -7 -0 2 -1 -6 -11 -16 -19 -20 -17 -14 -11 -14 -18 -20 -19 -17 -15 -15 -16 -15 -14 -12 -13 -16 -19 -22 -23 -23 -21 -16 -11 -9 -11 -14 -18 -21 -21 -20 -20 -21 -23 -25 -25 -25 -25 -27 -28 -27 -27 -25 -22 -19 -20 -21 -17 -3 6 8 7 4 -2 -8 -13 -16 -17 -15 -10 -8 -8 -9 -9 -4 -2 -3 -7 -11 -13 -15 -18 -23 -27 -25 -22 -20 -19 -18 -19 -20 -20 -19 -17 -15 -14 -15 -18 -23 -25 -27 -27 -27 -27 -28 -25 -19 -14 -13 -13 -12 -12 -12 -15 -15 -12 -7 -3 -1 1 4 6 4 -1 -6 -10 -14 -16 -17 -18 -20 -21 -22 -23 -21 -16 -11 -5 -3 -5 -8 -11 -14 -16 -18 -20 -22 -21 -17 -7 0 3 2 -0 -3 -6 -11 -16 -19 -19 -16 -12 -10 -12 -17 -20 -20 -18 -17 -18 -20 -23 -24 -23 -22 -21 -18 -13 -12 -12 -14 -14 -11 -9 -9 -12 -16 -18 -16 -15 -15 -17 -20 -20 -19 -20 -22 -27 -32 -34 -35 -35 -37 -39 -39 -38 -38 -33 -27 -25 -24 -26 -30 -34 -35 -34 -36 -38 -40 -40 -39 -35 -32 -31 -33 -35 -35 -32 -30 -32 -35 -34 -34 -34 -32 -29 -25 -22 -21 -23 -27 -31 -32 -32 -32 -33 -37 -38 -37 -35 -32 -27 -22 -22 -25 -28 -31 -33 -35 -38 -38 -35 -32 -30 -27 -22 -17 -16 -20 -24 -26 -24 -23 -22 -22 -25 -31 -33 -33 -35 -41 -49 -52 -49 -42 -35 -35 -41 -47 -50 -51 -48 -44 -40 -37 -35 -38 -42 -46 -47 -43 -37 -33 -31 -32 -36 -42 -40 -33 -26 -28 -35 -41 -44 -40 -27 -20 -16 -12 -8 -4 -7 -9 -8 -8 -13 -25 -33 -17 -17 -17 -16 -15 -13 -12 -12 -13 -14 -15 -15 -14 -14 -14 -15 -17 -19 -21 -23 -23 -24 -24 -25 -27 -26 -24 -22 -23 -27 -30 -30 -26 -20 -18 -19 -20 -21 -19 -14 -12 -13 -16 -18 -16 -13 -10 -7 -6 -5 -6 -7 -8 -11 -13 -13 -14 -16 -18 -19 -18 -17 -15 -16 -17 -17 -17 -15 -13 -10 -9 -10 -12 -15 -17 -19 -20 -19 -14 -8 -5 -5 -9 -14 -16 -15 -11 -4 1 1 -2 -7 -13 -17 -19 -18 -14 -11 -12 -15 -18 -18 -16 -14 -15 -17 -19 -18 -15 -13 -13 -15 -16 -18 -21 -22 -19 -14 -8 -8 -11 -16 -19 -19 -19 -19 -21 -23 -25 -25 -25 -26 -27 -27 -27 -26 -25 -22 -19 -19 -20 -19 -6 6 9 8 6 2 -3 -8 -11 -14 -14 -10 -6 -5 -7 -11 -11 -7 -3 -2 -7 -10 -12 -15 -18 -23 -24 -22 -20 -18 -18 -18 -19 -19 -19 -17 -15 -14 -14 -17 -20 -23 -26 -27 -27 -27 -27 -26 -21 -15 -13 -13 -12 -11 -11 -14 -16 -14 -10 -5 -2 -0 1 2 2 -0 -4 -7 -10 -12 -14 -17 -20 -21 -22 -23 -21 -17 -12 -6 -4 -5 -8 -11 -13 -15 -18 -20 -22 -23 -21 -12 -3 3 1 -3 -5 -8 -11 -16 -20 -21 -19 -14 -10 -12 -17 -20 -21 -19 -17 -17 -19 -22 -24 -23 -22 -21 -19 -14 -11 -13 -17 -21 -19 -15 -13 -13 -16 -20 -21 -19 -17 -18 -20 -22 -24 -27 -29 -31 -36 -38 -38 -37 -38 -39 -39 -39 -39 -34 -27 -25 -26 -27 -31 -37 -39 -39 -37 -38 -40 -41 -40 -37 -34 -32 -33 -34 -35 -33 -31 -33 -36 -36 -36 -35 -33 -29 -24 -21 -20 -22 -26 -30 -30 -34 -39 -41 -41 -38 -36 -35 -32 -25 -20 -19 -22 -26 -29 -33 -36 -38 -37 -34 -31 -29 -25 -21 -17 -18 -21 -25 -26 -25 -24 -22 -21 -23 -28 -31 -32 -33 -39 -48 -51 -49 -44 -38 -38 -42 -47 -49 -48 -44 -42 -39 -35 -32 -34 -38 -42 -43 -39 -33 -30 -28 -29 -34 -40 -40 -35 -29 -29 -35 -42 -45 -41 -29 -23 -19 -15 -11 -7 -8 -9 -9 -6 -9 -16 -24 -16 -16 -16 -16 -15 -14 -13 -13 -13 -13 -12 -13 -13 -14 -15 -16 -17 -19 -20 -21 -23 -24 -26 -28 -29 -27 -24 -23 -24 -27 -29 -28 -24 -18 -16 -14 -14 -13 -13 -10 -9 -11 -13 -13 -13 -13 -12 -10 -6 -4 -4 -5 -7 -10 -12 -13 -14 -16 -19 -20 -19 -17 -16 -16 -17 -17 -17 -16 -14 -12 -10 -9 -9 -12 -16 -19 -21 -21 -18 -11 -5 -3 -5 -11 -15 -16 -14 -9 -3 -1 -1 -4 -9 -14 -17 -18 -15 -12 -10 -12 -16 -17 -15 -12 -12 -14 -16 -17 -14 -10 -9 -9 -11 -14 -17 -20 -20 -18 -12 -8 -9 -12 -17 -18 -19 -20 -22 -23 -24 -25 -25 -26 -27 -27 -26 -25 -24 -22 -19 -18 -20 -21 -10 5 9 9 7 4 -1 -6 -10 -13 -14 -11 -6 -3 -4 -9 -12 -10 -6 -3 -3 -7 -9 -12 -14 -18 -21 -21 -21 -19 -19 -19 -19 -19 -19 -18 -16 -14 -13 -14 -17 -21 -24 -26 -26 -27 -27 -27 -23 -16 -13 -13 -12 -11 -11 -13 -16 -17 -15 -10 -4 -1 -1 -1 -1 0 -0 -2 -6 -9 -12 -16 -19 -22 -23 -23 -22 -19 -14 -8 -4 -4 -6 -10 -12 -14 -17 -20 -22 -25 -24 -17 -8 -0 -2 -7 -9 -11 -12 -16 -20 -22 -20 -16 -11 -12 -16 -19 -21 -19 -17 -17 -18 -20 -22 -22 -22 -21 -20 -15 -12 -14 -19 -23 -22 -16 -12 -10 -12 -19 -23 -23 -22 -19 -20 -23 -27 -32 -34 -34 -37 -40 -41 -40 -40 -40 -40 -41 -41 -36 -29 -26 -27 -30 -33 -36 -39 -40 -39 -38 -40 -42 -41 -39 -35 -33 -33 -34 -35 -34 -33 -34 -37 -38 -37 -36 -33 -28 -24 -21 -20 -22 -24 -27 -28 -36 -44 -48 -43 -38 -36 -36 -33 -24 -19 -18 -19 -22 -26 -30 -34 -35 -33 -30 -29 -27 -23 -20 -17 -18 -21 -25 -27 -25 -24 -22 -20 -21 -26 -29 -30 -31 -37 -46 -50 -48 -43 -38 -38 -42 -46 -48 -45 -41 -38 -35 -31 -29 -31 -34 -38 -41 -37 -31 -27 -24 -24 -29 -36 -41 -40 -32 -30 -34 -40 -43 -41 -34 -28 -23 -20 -18 -10 -9 -9 -9 -6 -7 -10 -15 -12 -12 -12 -12 -11 -10 -10 -11 -12 -13 -13 -13 -14 -15 -16 -17 -17 -18 -18 -18 -19 -21 -24 -29 -31 -28 -25 -23 -25 -28 -29 -27 -22 -18 -16 -14 -13 -11 -11 -11 -11 -13 -13 -12 -12 -15 -16 -13 -7 -4 -3 -4 -5 -7 -9 -12 -15 -17 -20 -20 -19 -18 -17 -16 -16 -16 -16 -15 -13 -12 -10 -8 -6 -9 -14 -18 -20 -21 -20 -15 -8 -3 -2 -6 -12 -16 -17 -14 -9 -3 -1 -2 -6 -11 -15 -17 -17 -14 -9 -9 -13 -17 -18 -14 -11 -9 -9 -10 -10 -8 -6 -6 -9 -12 -14 -16 -19 -20 -17 -13 -10 -11 -13 -16 -19 -20 -21 -22 -23 -24 -26 -26 -26 -26 -25 -24 -23 -21 -20 -18 -19 -21 -14 2 8 9 7 5 0 -5 -9 -13 -14 -11 -7 -4 -3 -5 -8 -9 -8 -5 -3 -4 -6 -8 -11 -13 -17 -20 -21 -21 -19 -19 -20 -21 -22 -22 -19 -15 -12 -11 -14 -18 -21 -24 -25 -27 -28 -28 -25 -19 -14 -12 -11 -11 -10 -13 -16 -18 -18 -15 -8 -3 -2 -3 -4 -1 1 -0 -4 -8 -10 -15 -19 -22 -24 -23 -22 -20 -16 -12 -6 -4 -5 -9 -12 -14 -16 -19 -22 -25 -26 -21 -12 -4 -3 -7 -10 -11 -12 -13 -17 -19 -18 -14 -11 -11 -14 -17 -21 -21 -19 -18 -18 -19 -20 -21 -21 -21 -21 -17 -13 -14 -18 -21 -22 -17 -13 -10 -11 -16 -20 -22 -23 -22 -22 -26 -32 -36 -36 -35 -36 -39 -42 -43 -42 -41 -42 -44 -43 -39 -32 -29 -28 -31 -35 -38 -38 -39 -40 -40 -41 -42 -42 -40 -37 -35 -34 -34 -35 -35 -34 -34 -36 -38 -37 -35 -32 -29 -26 -23 -21 -21 -23 -26 -29 -36 -43 -48 -42 -38 -37 -37 -35 -26 -21 -19 -19 -19 -23 -27 -30 -31 -30 -28 -27 -25 -22 -19 -18 -19 -22 -25 -27 -24 -22 -20 -20 -21 -24 -27 -29 -31 -36 -44 -48 -47 -41 -35 -35 -39 -44 -46 -44 -40 -35 -31 -27 -25 -27 -32 -37 -40 -37 -31 -25 -21 -20 -23 -30 -37 -42 -37 -33 -35 -39 -42 -41 -39 -34 -29 -26 -25 -15 -11 -10 -10 -6 -7 -8 -11 -9 -10 -11 -11 -10 -10 -10 -12 -13 -14 -15 -15 -16 -17 -18 -18 -18 -18 -17 -17 -16 -17 -20 -25 -28 -27 -24 -24 -26 -31 -33 -30 -25 -20 -19 -17 -14 -12 -12 -13 -15 -17 -17 -13 -11 -13 -15 -14 -10 -5 -3 -3 -4 -5 -7 -10 -14 -17 -18 -18 -17 -17 -17 -16 -15 -15 -14 -14 -13 -12 -12 -10 -8 -8 -11 -15 -19 -21 -21 -19 -14 -7 -2 -3 -8 -13 -16 -16 -13 -7 -2 -1 -4 -9 -12 -15 -17 -17 -13 -9 -12 -17 -21 -19 -13 -9 -7 -8 -9 -7 -5 -4 -5 -9 -12 -14 -17 -20 -21 -18 -14 -11 -11 -13 -17 -20 -22 -23 -24 -25 -26 -26 -25 -24 -24 -24 -23 -21 -20 -18 -18 -20 -20 -4 5 8 7 6 2 -3 -8 -11 -12 -12 -10 -7 -4 -1 -4 -7 -9 -8 -6 -5 -5 -6 -7 -10 -14 -19 -22 -22 -19 -19 -20 -22 -24 -24 -22 -17 -13 -10 -11 -14 -17 -21 -25 -27 -29 -29 -27 -22 -15 -12 -11 -11 -11 -12 -16 -18 -20 -19 -13 -7 -4 -4 -5 -3 0 0 -3 -8 -11 -14 -18 -22 -24 -23 -22 -21 -18 -14 -9 -6 -6 -9 -13 -14 -16 -18 -21 -23 -24 -22 -16 -7 -3 -4 -7 -9 -11 -12 -14 -15 -15 -12 -10 -10 -12 -16 -20 -21 -20 -19 -19 -20 -20 -21 -22 -22 -22 -19 -15 -14 -16 -19 -21 -19 -15 -11 -11 -14 -16 -20 -24 -25 -27 -30 -33 -36 -37 -35 -35 -36 -39 -43 -43 -43 -44 -45 -45 -42 -36 -31 -29 -31 -36 -39 -39 -37 -37 -39 -40 -41 -42 -41 -39 -37 -35 -35 -35 -36 -35 -35 -35 -37 -35 -33 -32 -31 -28 -25 -23 -22 -23 -25 -31 -37 -43 -45 -40 -38 -38 -39 -37 -30 -24 -21 -19 -18 -21 -24 -28 -30 -30 -29 -27 -25 -22 -19 -18 -19 -22 -25 -26 -23 -20 -20 -21 -24 -26 -27 -29 -31 -36 -43 -48 -47 -40 -33 -32 -36 -42 -46 -45 -39 -32 -25 -22 -21 -25 -31 -38 -42 -39 -32 -25 -21 -19 -21 -25 -32 -39 -39 -36 -39 -43 -46 -44 -41 -38 -34 -32 -30 -21 -14 -13 -12 -7 -7 -8 -11 -11 -11 -12 -12 -12 -11 -11 -12 -13 -14 -15 -16 -17 -18 -20 -20 -20 -20 -19 -18 -17 -15 -16 -18 -22 -22 -22 -22 -25 -29 -32 -30 -25 -21 -20 -19 -16 -15 -15 -15 -14 -14 -14 -11 -9 -9 -11 -12 -12 -9 -7 -5 -4 -4 -6 -8 -11 -14 -16 -17 -16 -16 -16 -16 -15 -15 -14 -14 -13 -13 -13 -13 -12 -10 -10 -12 -16 -20 -23 -22 -19 -14 -6 -1 -5 -10 -15 -17 -16 -12 -6 -2 -2 -5 -9 -13 -17 -19 -17 -13 -12 -14 -18 -19 -17 -13 -10 -8 -8 -8 -7 -5 -4 -7 -11 -16 -19 -22 -23 -21 -16 -12 -9 -12 -16 -20 -23 -24 -26 -27 -27 -26 -24 -24 -24 -24 -23 -22 -21 -18 -16 -18 -25 -12 -1 6 7 7 4 0 -4 -8 -10 -12 -13 -11 -6 -1 -2 -5 -8 -8 -7 -7 -6 -6 -6 -8 -12 -16 -19 -20 -19 -18 -19 -21 -24 -25 -24 -20 -15 -11 -11 -13 -15 -17 -22 -27 -29 -30 -29 -24 -17 -12 -10 -11 -11 -12 -14 -17 -20 -21 -18 -11 -7 -5 -5 -4 -1 1 -1 -6 -10 -14 -18 -21 -24 -24 -23 -22 -20 -17 -13 -8 -7 -10 -15 -17 -18 -19 -20 -20 -21 -22 -19 -12 -4 -1 -3 -6 -9 -11 -12 -13 -12 -10 -9 -10 -12 -15 -18 -20 -20 -20 -19 -19 -21 -22 -22 -22 -22 -20 -17 -14 -14 -18 -21 -20 -18 -14 -11 -12 -14 -19 -24 -27 -30 -32 -34 -35 -35 -36 -37 -39 -40 -41 -42 -44 -45 -45 -45 -43 -39 -34 -30 -30 -36 -40 -41 -39 -36 -37 -39 -41 -41 -41 -40 -38 -36 -35 -35 -36 -36 -35 -34 -36 -33 -31 -31 -34 -31 -28 -25 -24 -25 -26 -30 -36 -41 -44 -40 -38 -39 -41 -39 -33 -28 -23 -20 -19 -20 -22 -26 -29 -30 -29 -27 -25 -21 -19 -18 -19 -21 -24 -27 -24 -21 -20 -23 -27 -28 -28 -29 -31 -36 -44 -49 -49 -40 -31 -29 -34 -41 -47 -46 -39 -29 -20 -18 -19 -24 -31 -39 -44 -41 -34 -26 -21 -19 -19 -21 -26 -33 -37 -36 -37 -41 -46 -44 -40 -38 -37 -36 -33 -26 -20 -17 -16 -9 -7 -8 -11 -13 -13 -13 -13 -14 -13 -12 -12 -13 -14 -14 -15 -16 -18 -20 -22 -23 -24 -24 -23 -21 -19 -18 -18 -20 -21 -20 -20 -19 -20 -23 -24 -22 -20 -18 -19 -20 -19 -16 -13 -12 -12 -11 -9 -8 -8 -9 -10 -12 -12 -10 -8 -6 -4 -5 -7 -9 -12 -14 -16 -16 -15 -15 -15 -14 -13 -13 -13 -13 -13 -14 -15 -16 -16 -13 -11 -12 -16 -21 -21 -21 -17 -12 -4 -3 -7 -12 -17 -19 -16 -12 -7 -3 -4 -7 -11 -16 -19 -20 -17 -13 -12 -15 -19 -19 -17 -13 -9 -8 -8 -8 -7 -5 -7 -12 -15 -18 -19 -20 -19 -17 -13 -9 -11 -15 -19 -22 -24 -26 -26 -26 -25 -23 -23 -24 -24 -23 -23 -21 -17 -13 -14 -24 -19 -9 1 6 7 8 7 3 -3 -8 -12 -14 -13 -9 -3 -1 -2 -5 -7 -7 -7 -7 -7 -6 -7 -9 -12 -16 -18 -19 -18 -19 -21 -24 -26 -26 -23 -19 -15 -12 -12 -14 -16 -20 -25 -29 -30 -29 -25 -18 -12 -10 -10 -11 -11 -12 -15 -19 -22 -21 -16 -10 -4 -3 -3 -1 1 0 -4 -8 -12 -16 -20 -24 -25 -24 -23 -21 -19 -16 -11 -8 -9 -15 -18 -19 -20 -20 -19 -18 -19 -19 -16 -8 -2 -0 -3 -7 -9 -10 -11 -11 -9 -9 -11 -13 -15 -17 -19 -19 -19 -18 -18 -21 -23 -23 -23 -22 -22 -20 -17 -14 -17 -20 -21 -19 -16 -11 -10 -12 -17 -22 -28 -30 -32 -33 -34 -33 -34 -37 -41 -42 -43 -44 -45 -45 -44 -43 -42 -41 -38 -32 -30 -35 -40 -43 -41 -36 -36 -38 -40 -40 -40 -40 -39 -38 -36 -35 -35 -35 -35 -34 -34 -31 -30 -31 -36 -35 -31 -28 -26 -27 -27 -29 -33 -38 -41 -42 -42 -42 -42 -39 -35 -31 -26 -23 -21 -20 -21 -24 -28 -28 -27 -26 -23 -19 -18 -17 -18 -20 -23 -27 -27 -24 -22 -24 -29 -30 -29 -28 -30 -36 -44 -49 -49 -40 -31 -28 -32 -42 -49 -48 -39 -26 -17 -15 -17 -22 -30 -39 -44 -42 -35 -27 -21 -19 -19 -19 -21 -27 -33 -35 -35 -37 -42 -42 -38 -35 -36 -37 -34 -29 -26 -24 -21 -13 -9 -9 -11 -14 -13 -13 -14 -14 -13 -14 -15 -15 -14 -14 -14 -15 -16 -17 -19 -22 -24 -26 -26 -26 -24 -23 -22 -23 -23 -22 -20 -18 -18 -19 -20 -20 -18 -16 -16 -17 -17 -16 -14 -12 -10 -9 -7 -7 -8 -9 -9 -10 -11 -11 -10 -9 -7 -6 -7 -8 -11 -13 -14 -15 -15 -14 -14 -13 -12 -12 -12 -13 -14 -15 -17 -18 -19 -16 -13 -11 -13 -17 -19 -19 -18 -16 -9 -4 -4 -8 -14 -19 -19 -17 -13 -8 -6 -9 -12 -15 -18 -20 -20 -17 -15 -15 -17 -18 -17 -14 -12 -9 -9 -9 -9 -8 -9 -11 -14 -15 -16 -17 -18 -17 -16 -14 -13 -14 -16 -20 -24 -26 -26 -25 -24 -24 -24 -24 -24 -23 -23 -22 -17 -12 -9 -16 -23 -14 -0 9 11 11 10 7 2 -4 -9 -13 -14 -12 -7 -3 -3 -5 -6 -5 -5 -7 -7 -7 -6 -7 -9 -13 -16 -18 -19 -19 -21 -24 -26 -27 -26 -24 -19 -14 -12 -13 -15 -19 -23 -28 -30 -29 -25 -19 -13 -9 -9 -10 -11 -12 -14 -17 -21 -22 -20 -14 -8 -5 -4 -2 1 1 -2 -5 -8 -11 -15 -21 -24 -25 -24 -23 -21 -18 -14 -10 -8 -13 -17 -19 -19 -20 -19 -17 -17 -18 -19 -14 -6 -1 -1 -5 -6 -8 -9 -9 -8 -9 -11 -13 -15 -16 -17 -18 -18 -18 -18 -20 -22 -23 -23 -22 -22 -22 -21 -18 -16 -19 -20 -20 -16 -10 -6 -6 -11 -19 -27 -30 -31 -32 -33 -33 -34 -37 -40 -40 -41 -43 -44 -42 -39 -37 -38 -40 -41 -37 -32 -34 -38 -42 -42 -38 -36 -36 -39 -39 -39 -40 -40 -39 -37 -35 -34 -34 -34 -33 -32 -30 -29 -31 -37 -38 -35 -31 -27 -29 -29 -30 -34 -37 -40 -44 -45 -44 -42 -39 -35 -33 -30 -27 -24 -22 -22 -24 -27 -26 -26 -25 -23 -19 -18 -17 -17 -18 -22 -28 -30 -29 -25 -26 -29 -30 -30 -29 -29 -35 -43 -48 -48 -39 -29 -25 -29 -41 -49 -48 -39 -25 -14 -13 -15 -21 -28 -38 -43 -42 -36 -28 -22 -20 -19 -19 -19 -22 -29 -34 -36 -36 -39 -39 -36 -33 -34 -35 -34 -31 -29 -30 -26 -17 -12 -11 -12 -12 -12 -13 -13 -14 -15 -16 -17 -18 -18 -18 -17 -16 -15 -15 -17 -18 -20 -22 -24 -25 -25 -25 -26 -26 -26 -24 -21 -18 -18 -20 -21 -19 -15 -11 -11 -12 -13 -14 -13 -11 -10 -8 -6 -6 -7 -8 -9 -9 -10 -10 -11 -11 -11 -10 -10 -9 -10 -10 -11 -12 -13 -13 -13 -12 -12 -12 -12 -13 -14 -16 -18 -20 -20 -19 -16 -13 -12 -14 -15 -16 -16 -17 -15 -9 -5 -4 -8 -15 -19 -20 -19 -15 -11 -11 -12 -14 -16 -20 -22 -21 -19 -16 -15 -15 -14 -14 -14 -12 -11 -11 -12 -12 -10 -10 -11 -12 -13 -15 -16 -18 -20 -19 -17 -14 -15 -17 -22 -24 -24 -24 -24 -25 -24 -24 -23 -23 -24 -22 -18 -12 -6 -8 -22 -16 -1 10 12 13 12 10 6 1 -5 -10 -13 -15 -15 -12 -9 -7 -8 -7 -5 -5 -6 -8 -8 -8 -8 -11 -15 -18 -19 -20 -21 -23 -25 -27 -28 -28 -24 -16 -13 -13 -15 -19 -22 -26 -29 -29 -26 -20 -13 -9 -8 -10 -11 -12 -13 -16 -20 -23 -22 -17 -11 -6 -4 -1 3 7 5 1 -3 -6 -11 -17 -22 -24 -24 -24 -22 -20 -16 -12 -8 -12 -16 -18 -18 -20 -19 -17 -15 -15 -18 -17 -12 -5 0 -2 -5 -7 -9 -10 -9 -8 -9 -12 -14 -15 -16 -17 -18 -19 -18 -19 -21 -23 -23 -22 -22 -23 -22 -21 -17 -18 -19 -20 -18 -14 -9 -7 -10 -18 -25 -28 -30 -31 -33 -35 -36 -38 -38 -37 -37 -41 -42 -40 -36 -33 -34 -37 -42 -40 -36 -35 -37 -41 -42 -40 -37 -35 -36 -38 -38 -38 -39 -39 -37 -35 -33 -33 -32 -31 -30 -29 -29 -30 -37 -40 -38 -33 -29 -29 -29 -32 -36 -39 -41 -45 -46 -44 -41 -38 -35 -32 -31 -30 -27 -24 -23 -24 -25 -24 -24 -24 -23 -20 -18 -17 -16 -17 -21 -28 -33 -33 -29 -27 -28 -30 -31 -30 -30 -35 -42 -48 -49 -38 -25 -18 -21 -37 -47 -48 -40 -25 -14 -11 -13 -18 -27 -37 -43 -42 -37 -29 -23 -21 -20 -20 -19 -20 -26 -33 -39 -39 -39 -37 -34 -32 -33 -35 -35 -32 -29 -32 -29 -22 -16 -15 -15 -10 -11 -13 -14 -16 -18 -21 -23 -24 -24 -23 -21 -20 -19 -18 -17 -17 -17 -17 -18 -18 -18 -19 -21 -24 -25 -24 -21 -18 -18 -21 -21 -18 -12 -8 -8 -9 -10 -11 -11 -9 -8 -7 -5 -5 -7 -9 -10 -10 -9 -9 -10 -11 -12 -13 -13 -12 -10 -8 -8 -9 -10 -11 -11 -11 -11 -12 -12 -13 -14 -16 -18 -20 -22 -22 -20 -18 -16 -15 -13 -12 -13 -15 -18 -16 -10 -4 -2 -8 -14 -18 -20 -21 -17 -14 -13 -13 -15 -20 -24 -24 -22 -17 -14 -12 -12 -13 -15 -15 -13 -13 -13 -13 -11 -8 -7 -8 -10 -12 -15 -18 -21 -23 -21 -18 -15 -15 -18 -21 -22 -22 -23 -25 -24 -23 -22 -23 -24 -22 -18 -12 -5 -4 -19 -16 -3 8 11 13 13 13 9 4 -2 -8 -13 -18 -22 -22 -18 -13 -10 -9 -5 -3 -4 -7 -9 -9 -10 -11 -13 -15 -17 -19 -21 -21 -22 -25 -29 -31 -28 -20 -15 -13 -15 -19 -21 -24 -26 -28 -26 -21 -16 -12 -9 -9 -11 -12 -13 -15 -18 -22 -22 -20 -15 -9 -6 -1 4 9 6 0 -5 -8 -12 -17 -21 -23 -25 -25 -23 -21 -17 -12 -6 -11 -15 -16 -16 -19 -19 -17 -14 -12 -15 -17 -16 -10 -3 -0 -4 -7 -10 -11 -10 -9 -9 -11 -13 -13 -13 -15 -18 -20 -20 -19 -20 -22 -23 -22 -22 -23 -23 -24 -20 -18 -18 -20 -21 -18 -14 -12 -13 -18 -23 -25 -26 -29 -35 -38 -39 -39 -38 -36 -34 -38 -40 -39 -36 -35 -36 -38 -41 -40 -39 -37 -37 -39 -41 -41 -39 -36 -34 -37 -36 -36 -37 -39 -38 -35 -33 -31 -30 -30 -29 -28 -27 -29 -35 -38 -39 -35 -31 -31 -31 -33 -38 -42 -43 -45 -45 -43 -41 -39 -36 -32 -29 -29 -26 -24 -23 -24 -23 -23 -22 -22 -22 -20 -19 -17 -15 -16 -20 -28 -35 -37 -34 -29 -28 -29 -31 -30 -31 -35 -42 -49 -49 -38 -23 -12 -13 -30 -42 -46 -41 -28 -16 -11 -11 -16 -25 -36 -42 -42 -37 -30 -25 -22 -21 -21 -21 -20 -24 -32 -40 -42 -41 -37 -34 -31 -32 -34 -36 -34 -31 -31 -29 -24 -20 -19 -20 -10 -12 -14 -16 -18 -22 -24 -26 -27 -27 -25 -24 -22 -21 -20 -19 -18 -18 -17 -16 -15 -13 -12 -13 -15 -19 -21 -20 -18 -18 -20 -19 -16 -11 -8 -7 -8 -8 -8 -8 -7 -6 -5 -4 -4 -7 -10 -12 -11 -9 -9 -9 -10 -11 -13 -15 -15 -13 -10 -8 -7 -7 -8 -8 -9 -9 -10 -12 -13 -14 -15 -17 -20 -23 -24 -23 -22 -21 -20 -16 -12 -10 -13 -18 -21 -18 -9 -1 -0 -5 -10 -16 -21 -23 -19 -15 -11 -12 -17 -23 -25 -24 -19 -13 -10 -10 -11 -13 -14 -14 -13 -13 -12 -10 -7 -5 -4 -5 -8 -11 -15 -19 -23 -24 -21 -17 -14 -15 -18 -20 -21 -22 -23 -23 -22 -21 -21 -22 -21 -18 -13 -6 -2 -14 -16 -8 5 10 12 13 14 12 7 1 -6 -13 -20 -24 -26 -25 -21 -16 -11 -8 -6 -6 -7 -9 -10 -10 -11 -11 -13 -15 -17 -18 -17 -19 -24 -28 -30 -29 -22 -16 -14 -15 -19 -21 -22 -24 -26 -26 -23 -19 -15 -10 -9 -10 -12 -13 -14 -18 -21 -23 -22 -19 -12 -7 -2 4 8 5 -2 -7 -11 -12 -14 -17 -21 -23 -25 -25 -23 -19 -13 -4 -9 -13 -14 -15 -17 -19 -17 -14 -12 -13 -16 -18 -16 -8 -2 -2 -6 -11 -13 -11 -9 -9 -11 -13 -13 -13 -15 -19 -23 -22 -20 -20 -21 -23 -22 -22 -23 -23 -25 -24 -20 -18 -19 -20 -19 -16 -14 -14 -17 -19 -22 -25 -29 -34 -38 -40 -41 -40 -37 -34 -36 -39 -39 -39 -39 -40 -39 -39 -40 -40 -39 -37 -38 -40 -41 -40 -37 -33 -35 -35 -34 -35 -38 -38 -36 -34 -31 -28 -29 -28 -27 -25 -27 -32 -37 -39 -37 -33 -34 -34 -36 -39 -43 -45 -46 -46 -43 -42 -40 -37 -33 -29 -28 -26 -23 -22 -22 -22 -22 -21 -20 -20 -20 -19 -17 -16 -16 -20 -28 -37 -42 -38 -33 -30 -30 -31 -31 -32 -36 -42 -49 -50 -40 -24 -10 -8 -24 -35 -41 -41 -32 -19 -12 -11 -15 -23 -34 -41 -42 -38 -31 -27 -24 -23 -23 -22 -21 -24 -31 -40 -43 -42 -38 -34 -31 -32 -34 -35 -34 -32 -31 -30 -26 -22 -20 -23 -12 -13 -14 -16 -18 -21 -23 -25 -26 -26 -25 -23 -22 -21 -20 -20 -20 -20 -20 -19 -17 -14 -11 -9 -10 -13 -16 -18 -18 -17 -15 -14 -13 -12 -10 -8 -7 -6 -5 -6 -6 -5 -4 -4 -5 -8 -11 -12 -11 -10 -10 -10 -10 -10 -11 -12 -13 -13 -12 -10 -8 -7 -6 -5 -5 -7 -9 -12 -14 -14 -14 -15 -17 -21 -24 -24 -24 -23 -23 -22 -17 -14 -14 -17 -22 -23 -19 -9 1 2 -2 -8 -15 -21 -22 -19 -13 -10 -12 -19 -23 -25 -23 -16 -11 -10 -11 -11 -12 -12 -11 -10 -9 -10 -8 -5 -2 -1 -3 -7 -11 -16 -20 -22 -20 -17 -14 -15 -18 -20 -22 -22 -22 -22 -21 -21 -20 -20 -19 -17 -13 -7 -2 -11 -17 -14 1 9 11 12 13 12 8 3 -4 -12 -19 -23 -26 -27 -27 -23 -17 -13 -10 -8 -7 -9 -11 -12 -12 -11 -13 -15 -17 -17 -16 -17 -22 -27 -30 -30 -24 -18 -15 -15 -18 -20 -21 -22 -24 -25 -24 -20 -15 -11 -9 -10 -11 -13 -15 -18 -20 -23 -23 -22 -16 -10 -5 -0 3 1 -3 -7 -10 -11 -11 -14 -17 -21 -23 -24 -24 -22 -17 -6 -6 -9 -12 -14 -15 -18 -18 -15 -12 -12 -16 -19 -20 -15 -6 -3 -5 -10 -14 -15 -14 -14 -14 -14 -15 -14 -16 -19 -23 -22 -20 -19 -20 -22 -22 -22 -23 -23 -25 -26 -22 -19 -17 -18 -18 -17 -16 -15 -17 -19 -21 -24 -27 -32 -37 -40 -42 -41 -39 -36 -35 -37 -38 -40 -40 -40 -39 -38 -39 -40 -40 -39 -39 -40 -41 -41 -38 -34 -34 -33 -33 -34 -37 -38 -37 -34 -31 -27 -27 -27 -25 -24 -26 -31 -37 -41 -40 -37 -38 -38 -38 -39 -43 -46 -48 -47 -45 -43 -41 -37 -33 -30 -29 -26 -23 -20 -20 -21 -21 -20 -19 -18 -17 -18 -18 -17 -16 -19 -28 -38 -45 -42 -36 -32 -31 -32 -32 -33 -37 -42 -49 -49 -41 -27 -11 -7 -20 -29 -35 -37 -35 -24 -16 -12 -14 -22 -33 -39 -41 -38 -33 -29 -26 -26 -26 -25 -23 -24 -30 -40 -43 -42 -40 -36 -32 -33 -35 -35 -33 -32 -33 -33 -31 -25 -21 -24 -12 -13 -14 -15 -16 -18 -19 -20 -21 -22 -22 -21 -19 -18 -18 -18 -19 -20 -22 -23 -21 -18 -15 -12 -10 -11 -14 -17 -18 -15 -9 -9 -11 -14 -13 -10 -7 -5 -5 -5 -6 -6 -6 -6 -6 -9 -11 -13 -12 -10 -10 -11 -11 -11 -10 -9 -10 -11 -12 -13 -12 -10 -7 -5 -4 -4 -6 -9 -13 -14 -14 -14 -15 -18 -21 -23 -23 -23 -23 -24 -23 -18 -12 -11 -17 -21 -20 -14 -5 -0 0 -2 -8 -16 -21 -21 -18 -12 -9 -12 -17 -22 -26 -24 -19 -15 -12 -9 -8 -10 -11 -11 -10 -11 -10 -7 -4 -1 -2 -4 -8 -11 -15 -17 -18 -18 -16 -15 -16 -19 -22 -22 -21 -21 -21 -21 -21 -19 -18 -16 -14 -9 -3 -8 -17 -18 -3 8 11 13 13 12 9 6 -0 -8 -16 -19 -22 -25 -27 -27 -22 -18 -14 -10 -6 -7 -9 -11 -12 -13 -16 -18 -18 -17 -15 -16 -21 -25 -29 -30 -26 -21 -17 -16 -18 -19 -19 -19 -20 -23 -24 -22 -17 -12 -9 -9 -11 -13 -15 -17 -19 -21 -23 -24 -20 -14 -10 -6 -3 -2 -3 -6 -9 -10 -9 -12 -16 -20 -22 -23 -24 -24 -21 -15 -8 -7 -10 -15 -16 -17 -17 -15 -12 -13 -16 -20 -22 -20 -13 -7 -6 -9 -14 -17 -18 -18 -17 -18 -18 -17 -17 -19 -23 -22 -20 -18 -19 -21 -22 -23 -23 -23 -25 -26 -24 -20 -16 -16 -18 -18 -17 -15 -16 -18 -20 -21 -23 -28 -34 -40 -44 -46 -42 -37 -35 -35 -37 -40 -38 -36 -35 -37 -38 -39 -40 -40 -39 -41 -41 -41 -38 -35 -33 -32 -31 -33 -36 -38 -37 -35 -31 -27 -27 -26 -24 -24 -26 -29 -35 -41 -42 -42 -42 -41 -39 -39 -42 -45 -47 -47 -45 -43 -39 -36 -33 -31 -29 -26 -23 -20 -20 -20 -20 -19 -19 -17 -15 -16 -18 -18 -16 -19 -27 -38 -47 -44 -39 -34 -33 -33 -33 -34 -37 -42 -48 -49 -43 -30 -15 -10 -18 -26 -31 -35 -36 -28 -21 -16 -14 -21 -31 -38 -40 -38 -34 -31 -29 -28 -29 -28 -25 -25 -31 -40 -43 -43 -41 -39 -35 -35 -36 -35 -33 -34 -35 -37 -36 -31 -25 -26 -12 -12 -13 -13 -14 -14 -15 -16 -16 -17 -18 -17 -16 -15 -15 -15 -16 -18 -20 -22 -22 -21 -18 -15 -14 -14 -17 -21 -21 -12 -6 -7 -11 -14 -14 -11 -9 -8 -7 -6 -8 -10 -11 -11 -9 -12 -14 -15 -13 -11 -12 -14 -16 -16 -14 -10 -8 -8 -9 -11 -12 -11 -9 -7 -4 -3 -4 -6 -10 -13 -14 -15 -15 -16 -19 -21 -22 -23 -23 -23 -24 -23 -18 -11 -12 -16 -19 -17 -12 -6 -2 -0 -3 -10 -16 -19 -19 -16 -10 -9 -11 -17 -24 -25 -23 -19 -14 -10 -7 -8 -9 -11 -11 -11 -11 -10 -7 -4 -4 -4 -6 -9 -13 -16 -18 -18 -18 -16 -16 -18 -20 -22 -21 -20 -20 -21 -21 -19 -18 -17 -15 -11 -6 -8 -16 -20 -10 4 13 17 17 15 11 7 3 -3 -10 -15 -18 -21 -23 -25 -24 -21 -17 -11 -5 -4 -6 -8 -11 -15 -18 -19 -18 -15 -13 -15 -19 -24 -28 -30 -28 -24 -20 -16 -17 -18 -17 -16 -16 -20 -23 -24 -20 -14 -10 -9 -10 -12 -14 -15 -17 -20 -23 -24 -22 -18 -14 -11 -7 -2 -2 -4 -7 -9 -10 -12 -15 -19 -20 -22 -23 -24 -23 -21 -14 -8 -8 -13 -16 -18 -19 -18 -16 -17 -20 -22 -23 -22 -18 -13 -9 -9 -12 -15 -18 -19 -20 -21 -20 -19 -19 -20 -23 -22 -20 -19 -20 -21 -23 -23 -23 -23 -25 -26 -25 -22 -18 -17 -20 -20 -18 -13 -12 -14 -16 -17 -18 -23 -30 -38 -44 -46 -44 -39 -36 -35 -38 -41 -38 -33 -30 -33 -35 -37 -38 -40 -40 -41 -42 -41 -39 -35 -33 -31 -31 -33 -36 -38 -37 -35 -31 -28 -26 -25 -24 -24 -25 -29 -33 -38 -42 -44 -44 -42 -39 -37 -40 -42 -44 -44 -43 -41 -37 -34 -33 -32 -30 -27 -24 -20 -20 -19 -19 -19 -18 -16 -15 -15 -17 -18 -17 -20 -27 -39 -47 -45 -41 -36 -34 -33 -33 -35 -38 -42 -47 -49 -45 -35 -19 -13 -17 -24 -29 -33 -35 -30 -23 -18 -16 -21 -29 -36 -38 -37 -35 -33 -32 -31 -32 -31 -27 -26 -31 -40 -45 -46 -45 -41 -37 -36 -36 -36 -36 -36 -37 -39 -41 -39 -32 -31 -11 -11 -11 -11 -11 -11 -12 -12 -12 -14 -15 -16 -16 -15 -14 -14 -14 -15 -16 -18 -19 -19 -18 -18 -18 -19 -22 -22 -19 -11 -7 -9 -12 -15 -15 -13 -11 -8 -7 -8 -11 -13 -12 -11 -9 -10 -12 -14 -15 -13 -11 -11 -12 -12 -13 -11 -9 -8 -8 -9 -10 -11 -12 -10 -7 -5 -4 -5 -7 -10 -12 -14 -15 -15 -17 -18 -21 -23 -24 -23 -23 -23 -23 -18 -14 -15 -18 -20 -17 -11 -6 -2 -2 -6 -11 -15 -17 -16 -13 -10 -10 -14 -20 -24 -25 -23 -19 -15 -12 -12 -13 -13 -12 -11 -12 -12 -10 -6 -3 -3 -5 -9 -13 -16 -18 -19 -18 -17 -16 -17 -19 -21 -21 -20 -19 -20 -22 -21 -20 -18 -16 -13 -9 -9 -14 -18 -15 -0 12 18 20 17 11 7 3 -1 -7 -11 -14 -16 -18 -21 -22 -21 -17 -12 -6 -3 -3 -5 -9 -13 -16 -17 -16 -14 -12 -13 -17 -22 -26 -30 -30 -27 -22 -18 -17 -18 -17 -15 -15 -17 -21 -23 -21 -16 -10 -8 -9 -11 -14 -16 -18 -20 -22 -24 -24 -21 -17 -13 -9 -3 -0 -1 -4 -7 -10 -12 -15 -18 -20 -21 -22 -23 -24 -24 -20 -15 -10 -12 -17 -19 -20 -20 -19 -20 -22 -23 -22 -22 -21 -18 -14 -9 -9 -12 -16 -20 -21 -22 -22 -21 -21 -22 -22 -21 -20 -19 -19 -20 -22 -23 -23 -23 -24 -25 -26 -25 -22 -20 -20 -20 -18 -12 -9 -9 -11 -13 -14 -19 -26 -34 -41 -45 -44 -41 -38 -36 -38 -42 -40 -34 -27 -28 -31 -34 -37 -39 -41 -42 -41 -41 -39 -36 -33 -31 -31 -33 -36 -38 -38 -35 -31 -29 -26 -24 -24 -24 -25 -28 -32 -36 -41 -44 -45 -43 -38 -36 -38 -39 -39 -41 -39 -38 -36 -35 -34 -33 -31 -28 -25 -21 -20 -20 -20 -19 -18 -15 -15 -15 -16 -17 -17 -21 -28 -41 -47 -46 -42 -38 -34 -32 -32 -34 -37 -41 -46 -49 -47 -40 -26 -18 -18 -22 -28 -32 -34 -30 -24 -19 -17 -21 -28 -35 -37 -37 -36 -35 -34 -34 -35 -34 -31 -28 -32 -40 -45 -47 -47 -43 -38 -36 -36 -37 -37 -36 -38 -41 -44 -43 -37 -34 -10 -11 -11 -10 -10 -10 -10 -10 -11 -13 -15 -17 -18 -18 -17 -16 -16 -15 -14 -14 -14 -16 -18 -20 -21 -21 -21 -22 -22 -20 -19 -19 -20 -19 -19 -19 -18 -15 -11 -8 -8 -9 -10 -10 -10 -10 -11 -11 -12 -11 -10 -10 -10 -11 -11 -10 -9 -8 -8 -7 -8 -9 -10 -10 -9 -8 -7 -6 -6 -8 -10 -12 -14 -15 -16 -17 -19 -22 -23 -22 -21 -21 -22 -23 -17 -14 -16 -19 -18 -14 -10 -7 -5 -4 -8 -12 -14 -15 -15 -14 -12 -13 -15 -20 -23 -24 -23 -19 -16 -15 -14 -14 -12 -10 -10 -11 -11 -10 -7 -6 -7 -10 -14 -16 -18 -18 -17 -16 -16 -16 -18 -20 -22 -20 -19 -19 -21 -23 -23 -21 -18 -15 -12 -11 -13 -16 -18 -6 8 18 20 17 12 7 4 1 -2 -5 -7 -8 -10 -15 -17 -17 -16 -13 -9 -4 -2 -2 -5 -8 -11 -13 -14 -13 -11 -12 -15 -19 -25 -29 -31 -29 -25 -19 -18 -17 -16 -14 -13 -14 -18 -21 -21 -18 -13 -10 -8 -10 -14 -17 -19 -20 -21 -23 -23 -21 -17 -13 -11 -7 -2 2 0 -5 -8 -11 -14 -17 -19 -20 -21 -22 -23 -25 -24 -21 -15 -12 -15 -18 -19 -20 -20 -20 -20 -20 -20 -21 -22 -22 -20 -14 -9 -11 -14 -18 -20 -22 -21 -21 -21 -22 -21 -19 -18 -18 -18 -19 -21 -23 -24 -25 -24 -25 -25 -25 -22 -21 -20 -19 -18 -14 -9 -7 -7 -10 -12 -16 -22 -29 -37 -42 -44 -43 -40 -36 -38 -42 -42 -36 -28 -26 -29 -32 -35 -38 -42 -42 -41 -39 -39 -36 -34 -32 -31 -33 -36 -38 -38 -36 -31 -28 -26 -24 -24 -24 -24 -26 -30 -35 -41 -44 -46 -44 -38 -37 -37 -37 -36 -38 -37 -36 -35 -35 -34 -33 -31 -29 -26 -22 -19 -20 -20 -20 -17 -15 -15 -16 -16 -17 -18 -22 -30 -42 -46 -46 -42 -37 -33 -30 -30 -32 -35 -40 -45 -47 -47 -43 -34 -24 -20 -22 -27 -32 -33 -30 -24 -19 -18 -22 -28 -34 -36 -37 -38 -38 -38 -37 -38 -38 -36 -31 -33 -39 -44 -47 -47 -43 -39 -37 -37 -37 -37 -37 -38 -41 -44 -45 -41 -36 -9 -10 -11 -10 -10 -9 -9 -9 -10 -12 -15 -18 -20 -22 -22 -21 -20 -18 -16 -15 -15 -16 -18 -19 -19 -19 -20 -20 -19 -19 -19 -20 -21 -23 -24 -25 -24 -21 -17 -12 -9 -9 -10 -11 -12 -14 -14 -13 -13 -14 -14 -13 -13 -12 -12 -10 -9 -8 -7 -6 -6 -6 -7 -7 -8 -9 -9 -9 -8 -8 -9 -11 -13 -15 -16 -18 -20 -22 -23 -22 -21 -19 -19 -21 -19 -14 -12 -14 -16 -16 -14 -12 -9 -7 -7 -9 -12 -14 -16 -16 -15 -14 -13 -15 -19 -22 -23 -22 -17 -13 -12 -11 -10 -8 -8 -8 -10 -12 -12 -11 -11 -11 -14 -16 -17 -17 -17 -16 -16 -16 -17 -18 -20 -20 -19 -18 -19 -22 -23 -22 -21 -18 -15 -13 -14 -16 -19 -14 -1 11 18 17 14 11 8 5 3 0 -2 -4 -8 -11 -12 -13 -13 -13 -11 -7 -3 -1 -2 -4 -7 -10 -11 -11 -11 -12 -14 -17 -22 -28 -31 -32 -28 -22 -18 -17 -16 -14 -12 -12 -15 -18 -19 -18 -14 -11 -9 -9 -12 -16 -18 -20 -21 -22 -23 -22 -19 -15 -12 -9 -3 3 4 -1 -7 -10 -13 -16 -18 -20 -21 -21 -23 -24 -25 -24 -20 -14 -14 -15 -16 -18 -19 -19 -19 -18 -19 -22 -24 -24 -23 -20 -14 -11 -11 -12 -15 -18 -20 -20 -20 -20 -19 -18 -18 -19 -20 -20 -21 -23 -25 -26 -25 -25 -25 -24 -22 -19 -18 -18 -19 -17 -11 -7 -6 -8 -11 -14 -18 -24 -31 -39 -43 -44 -42 -37 -38 -41 -42 -37 -30 -27 -28 -32 -36 -40 -43 -42 -39 -36 -36 -35 -34 -32 -31 -33 -36 -39 -40 -38 -32 -28 -26 -24 -24 -23 -23 -25 -30 -35 -42 -48 -50 -47 -40 -39 -37 -36 -34 -35 -35 -34 -34 -34 -34 -33 -31 -29 -27 -22 -19 -19 -20 -19 -17 -15 -15 -16 -17 -17 -19 -23 -31 -43 -45 -45 -41 -35 -31 -29 -29 -30 -33 -38 -43 -46 -46 -44 -38 -27 -22 -23 -27 -32 -33 -31 -25 -19 -18 -22 -28 -34 -36 -38 -39 -41 -41 -40 -41 -42 -41 -36 -34 -38 -42 -45 -46 -43 -39 -37 -37 -38 -37 -37 -38 -40 -44 -46 -44 -40 -9 -10 -10 -10 -10 -9 -8 -8 -9 -10 -12 -15 -18 -21 -23 -24 -23 -21 -19 -18 -17 -16 -17 -17 -18 -18 -17 -15 -13 -12 -14 -17 -20 -22 -25 -24 -24 -22 -20 -15 -11 -11 -11 -13 -14 -17 -19 -19 -19 -21 -20 -18 -15 -14 -13 -11 -9 -7 -6 -6 -6 -5 -5 -5 -6 -8 -10 -12 -13 -11 -10 -11 -13 -16 -18 -20 -22 -22 -22 -22 -21 -19 -17 -17 -20 -16 -12 -11 -14 -15 -15 -14 -14 -11 -7 -6 -8 -12 -14 -16 -16 -16 -15 -14 -15 -18 -21 -21 -16 -11 -8 -7 -8 -7 -6 -6 -8 -12 -15 -16 -13 -11 -11 -13 -15 -15 -15 -15 -16 -17 -17 -17 -19 -20 -19 -18 -18 -21 -23 -24 -23 -21 -18 -17 -17 -18 -19 -19 -10 2 13 16 16 14 11 8 6 3 -1 -5 -9 -10 -9 -8 -9 -10 -10 -9 -6 -2 -0 -1 -4 -7 -10 -11 -11 -12 -13 -16 -20 -26 -31 -33 -32 -26 -20 -17 -15 -15 -13 -12 -12 -14 -16 -17 -16 -13 -10 -9 -11 -16 -18 -19 -20 -21 -23 -23 -22 -17 -14 -11 -6 0 5 3 -3 -9 -13 -15 -17 -19 -20 -21 -22 -24 -25 -25 -23 -19 -16 -14 -13 -14 -17 -19 -21 -21 -22 -23 -24 -25 -25 -24 -19 -14 -11 -11 -15 -20 -22 -23 -22 -21 -19 -18 -19 -20 -21 -21 -22 -24 -26 -27 -26 -25 -24 -24 -22 -19 -17 -17 -19 -19 -15 -10 -7 -8 -11 -13 -16 -21 -28 -37 -43 -45 -44 -39 -38 -40 -41 -38 -32 -29 -30 -34 -39 -42 -43 -42 -38 -34 -34 -34 -33 -33 -32 -34 -36 -39 -40 -40 -35 -29 -25 -24 -23 -23 -23 -25 -28 -35 -43 -50 -53 -50 -43 -41 -38 -35 -33 -33 -33 -32 -32 -32 -33 -33 -31 -29 -26 -22 -19 -18 -18 -17 -16 -16 -17 -17 -17 -18 -19 -24 -33 -43 -44 -42 -39 -33 -30 -29 -29 -30 -31 -36 -42 -47 -49 -48 -40 -29 -23 -23 -27 -31 -34 -33 -27 -21 -19 -22 -28 -35 -37 -39 -41 -43 -44 -43 -43 -44 -44 -41 -36 -37 -41 -44 -45 -43 -40 -37 -37 -38 -38 -37 -37 -40 -44 -46 -47 -43 -9 -9 -10 -9 -9 -8 -8 -8 -8 -8 -8 -9 -12 -15 -19 -23 -23 -22 -21 -20 -18 -16 -16 -16 -17 -17 -14 -11 -9 -9 -11 -13 -16 -19 -20 -19 -19 -18 -17 -15 -13 -12 -13 -15 -16 -18 -21 -23 -24 -25 -23 -20 -17 -15 -12 -10 -9 -9 -8 -7 -6 -5 -4 -5 -5 -7 -10 -13 -15 -14 -11 -11 -12 -15 -18 -21 -23 -23 -22 -22 -21 -19 -15 -13 -16 -18 -16 -11 -10 -12 -12 -14 -15 -16 -11 -7 -4 -7 -10 -13 -15 -18 -19 -17 -15 -15 -17 -18 -15 -10 -7 -6 -7 -7 -6 -5 -6 -11 -16 -16 -13 -8 -6 -8 -10 -11 -11 -13 -17 -18 -18 -18 -19 -20 -20 -20 -20 -22 -23 -24 -24 -23 -21 -20 -20 -20 -20 -20 -16 -6 7 15 17 15 12 9 8 5 0 -5 -9 -8 -7 -6 -5 -5 -6 -6 -6 -4 -1 -1 -2 -5 -7 -10 -11 -12 -13 -15 -19 -26 -31 -34 -34 -30 -23 -17 -15 -14 -14 -12 -11 -12 -13 -16 -17 -16 -12 -9 -11 -15 -17 -18 -18 -20 -22 -24 -23 -20 -15 -12 -9 -3 5 5 -0 -7 -13 -15 -16 -18 -20 -21 -23 -24 -25 -25 -24 -21 -18 -14 -12 -11 -15 -19 -22 -24 -24 -24 -24 -25 -25 -25 -23 -18 -15 -14 -19 -23 -24 -24 -24 -23 -21 -19 -18 -19 -19 -20 -21 -24 -26 -27 -26 -25 -24 -25 -24 -20 -17 -15 -18 -20 -18 -13 -9 -9 -12 -13 -15 -19 -28 -37 -43 -46 -46 -43 -39 -39 -39 -38 -34 -32 -32 -35 -39 -42 -43 -41 -39 -35 -35 -34 -33 -33 -33 -35 -36 -38 -39 -39 -35 -29 -25 -23 -23 -23 -24 -25 -27 -35 -43 -51 -55 -54 -48 -43 -39 -35 -32 -31 -31 -30 -30 -30 -32 -32 -31 -28 -25 -22 -19 -18 -16 -15 -15 -17 -18 -19 -18 -18 -20 -24 -34 -42 -42 -40 -37 -34 -32 -31 -30 -30 -30 -35 -42 -49 -53 -51 -41 -30 -24 -25 -28 -32 -35 -35 -30 -24 -21 -23 -29 -37 -39 -42 -44 -46 -46 -45 -45 -45 -45 -43 -38 -37 -39 -43 -44 -43 -40 -38 -37 -38 -38 -37 -37 -39 -44 -48 -49 -47 -10 -9 -8 -7 -7 -7 -7 -7 -6 -6 -5 -5 -5 -8 -12 -17 -18 -19 -19 -20 -17 -15 -13 -14 -15 -15 -13 -11 -9 -10 -10 -11 -12 -14 -14 -13 -12 -12 -12 -13 -13 -13 -14 -16 -16 -17 -20 -22 -22 -21 -22 -24 -26 -25 -19 -13 -10 -8 -7 -6 -5 -4 -4 -4 -5 -6 -9 -11 -14 -14 -14 -13 -13 -14 -16 -20 -22 -23 -22 -22 -21 -19 -16 -13 -13 -16 -17 -14 -10 -10 -11 -13 -15 -17 -17 -13 -7 -3 -6 -10 -14 -17 -18 -17 -14 -13 -13 -15 -13 -10 -7 -5 -6 -8 -7 -6 -5 -8 -13 -15 -13 -9 -6 -6 -6 -8 -10 -12 -15 -17 -19 -19 -19 -21 -23 -23 -22 -23 -24 -24 -24 -24 -24 -23 -22 -21 -19 -19 -18 -11 1 13 17 15 12 9 8 6 2 -2 -5 -5 -4 -3 -3 -3 -3 -4 -5 -5 -3 -1 -1 -3 -5 -7 -9 -12 -15 -16 -19 -24 -30 -34 -35 -33 -26 -19 -14 -14 -16 -15 -14 -12 -12 -14 -17 -18 -15 -11 -11 -13 -15 -16 -17 -19 -22 -24 -25 -22 -18 -14 -11 -6 2 5 1 -6 -13 -15 -17 -18 -19 -21 -23 -24 -25 -26 -25 -22 -19 -15 -11 -9 -12 -17 -21 -23 -24 -23 -24 -24 -24 -24 -24 -21 -18 -17 -20 -23 -25 -25 -24 -22 -19 -17 -17 -18 -18 -20 -21 -23 -25 -26 -26 -25 -24 -25 -25 -22 -18 -15 -17 -21 -20 -16 -11 -11 -14 -15 -15 -18 -26 -35 -42 -46 -48 -45 -40 -38 -39 -39 -37 -34 -33 -34 -36 -41 -42 -40 -36 -34 -34 -33 -33 -33 -35 -36 -37 -37 -36 -36 -33 -29 -25 -23 -23 -24 -24 -24 -26 -35 -44 -51 -55 -54 -48 -44 -40 -34 -32 -30 -29 -29 -29 -30 -32 -32 -31 -29 -26 -22 -19 -17 -16 -14 -15 -17 -18 -19 -19 -18 -20 -24 -34 -41 -42 -41 -39 -36 -33 -31 -31 -31 -31 -36 -42 -49 -53 -51 -42 -32 -26 -26 -29 -33 -37 -38 -33 -29 -25 -26 -32 -38 -42 -44 -46 -48 -46 -45 -45 -46 -45 -43 -38 -36 -37 -42 -44 -43 -41 -38 -37 -38 -38 -37 -37 -40 -45 -49 -50 -49 -8 -7 -6 -5 -5 -5 -5 -5 -5 -4 -3 -2 -1 -2 -5 -9 -12 -15 -17 -17 -14 -11 -9 -9 -11 -13 -14 -14 -13 -12 -11 -10 -10 -11 -10 -10 -10 -11 -12 -14 -15 -14 -13 -12 -14 -16 -17 -18 -19 -22 -25 -27 -28 -27 -21 -12 -5 -1 -0 -1 -1 -2 -3 -4 -6 -8 -9 -11 -12 -14 -15 -16 -15 -15 -16 -18 -19 -19 -19 -20 -20 -19 -17 -15 -14 -14 -16 -16 -12 -10 -10 -11 -14 -16 -18 -18 -15 -8 -5 -8 -12 -15 -16 -15 -14 -12 -11 -12 -12 -9 -6 -4 -4 -7 -8 -8 -5 -4 -8 -11 -12 -11 -8 -6 -6 -7 -8 -10 -12 -15 -17 -19 -20 -23 -25 -26 -25 -24 -24 -25 -25 -25 -25 -24 -23 -21 -18 -18 -18 -15 -6 9 16 17 13 10 8 6 4 1 -0 0 -0 -1 -1 -1 -2 -2 -3 -3 -3 -2 -1 -2 -3 -4 -7 -11 -14 -16 -17 -22 -28 -33 -35 -34 -28 -21 -15 -14 -16 -17 -17 -14 -11 -13 -17 -19 -18 -14 -11 -11 -12 -14 -16 -19 -21 -24 -26 -25 -21 -17 -14 -10 -3 2 -1 -8 -15 -16 -17 -18 -19 -20 -22 -24 -25 -25 -25 -22 -19 -17 -14 -10 -10 -14 -18 -22 -23 -22 -23 -23 -24 -24 -25 -23 -22 -20 -21 -23 -24 -23 -22 -20 -17 -16 -17 -18 -19 -21 -22 -23 -24 -26 -26 -26 -25 -24 -25 -24 -21 -18 -17 -20 -21 -18 -13 -10 -12 -14 -16 -19 -26 -34 -41 -45 -47 -45 -39 -36 -38 -42 -40 -36 -32 -30 -33 -39 -41 -38 -34 -34 -35 -33 -32 -32 -35 -37 -37 -35 -32 -32 -31 -28 -26 -24 -25 -25 -25 -24 -24 -35 -44 -50 -52 -51 -46 -43 -39 -34 -32 -31 -29 -28 -28 -30 -32 -32 -31 -29 -26 -23 -19 -16 -16 -15 -15 -17 -17 -17 -18 -17 -19 -24 -34 -41 -44 -44 -43 -39 -34 -31 -31 -33 -33 -38 -43 -47 -50 -48 -42 -34 -28 -27 -30 -34 -38 -39 -36 -32 -29 -29 -33 -40 -44 -46 -48 -49 -47 -46 -45 -44 -45 -42 -38 -34 -34 -38 -42 -43 -41 -38 -37 -38 -38 -38 -37 -40 -45 -49 -51 -51 -8 -6 -5 -5 -5 -5 -5 -5 -5 -4 -2 -1 -1 -1 -3 -5 -9 -13 -15 -13 -9 -6 -5 -5 -8 -11 -13 -14 -14 -14 -12 -12 -12 -12 -12 -11 -11 -11 -13 -14 -16 -16 -15 -13 -12 -12 -15 -18 -22 -26 -29 -28 -24 -19 -13 -8 -3 -1 0 1 1 0 -1 -3 -5 -8 -10 -11 -12 -14 -16 -18 -19 -18 -18 -19 -18 -17 -15 -16 -18 -18 -17 -16 -15 -15 -16 -17 -15 -12 -11 -11 -12 -14 -17 -19 -20 -17 -10 -7 -8 -10 -12 -13 -13 -12 -11 -11 -11 -9 -7 -5 -4 -6 -8 -8 -6 -4 -4 -7 -10 -11 -9 -7 -6 -6 -6 -7 -11 -15 -18 -20 -22 -25 -26 -28 -28 -27 -26 -26 -26 -25 -25 -24 -22 -19 -16 -17 -18 -17 -12 3 15 19 17 12 9 7 5 4 5 5 2 -1 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -2 -3 -6 -10 -13 -16 -18 -21 -26 -31 -34 -34 -30 -25 -19 -16 -16 -16 -15 -13 -10 -12 -16 -18 -19 -16 -13 -11 -10 -12 -15 -18 -21 -24 -26 -27 -23 -19 -16 -14 -10 -4 -5 -9 -15 -17 -17 -18 -19 -20 -23 -25 -26 -26 -26 -23 -20 -18 -17 -15 -13 -14 -17 -21 -22 -22 -21 -22 -23 -25 -26 -25 -24 -23 -22 -22 -21 -20 -19 -18 -16 -16 -16 -17 -20 -22 -23 -24 -25 -26 -26 -26 -25 -25 -25 -25 -24 -20 -18 -19 -21 -20 -15 -11 -11 -14 -16 -20 -26 -33 -39 -44 -47 -43 -38 -36 -38 -43 -41 -36 -31 -29 -32 -38 -40 -39 -35 -35 -36 -34 -31 -31 -34 -36 -36 -33 -29 -30 -30 -29 -27 -26 -27 -26 -25 -23 -23 -33 -42 -46 -47 -47 -45 -42 -38 -33 -31 -31 -30 -29 -29 -31 -32 -32 -31 -29 -26 -23 -19 -17 -16 -16 -16 -16 -17 -16 -15 -15 -18 -25 -35 -43 -47 -47 -46 -41 -35 -31 -31 -33 -35 -39 -42 -44 -46 -45 -42 -37 -30 -27 -30 -34 -38 -40 -37 -33 -30 -29 -33 -38 -41 -44 -47 -49 -48 -46 -44 -43 -44 -42 -37 -33 -30 -34 -39 -42 -41 -38 -37 -38 -39 -39 -38 -40 -45 -49 -50 -51 -8 -8 -7 -7 -7 -7 -6 -6 -6 -5 -4 -3 -4 -5 -7 -9 -12 -14 -13 -10 -7 -5 -5 -5 -7 -9 -9 -10 -11 -12 -11 -11 -11 -12 -13 -13 -12 -11 -11 -12 -13 -13 -13 -12 -12 -11 -12 -13 -15 -19 -23 -25 -25 -22 -17 -11 -6 -3 -1 0 1 -0 -2 -4 -5 -7 -9 -11 -14 -14 -16 -18 -20 -23 -23 -22 -19 -16 -12 -14 -16 -17 -16 -15 -16 -16 -16 -17 -17 -15 -12 -11 -11 -12 -14 -18 -21 -22 -17 -10 -7 -7 -9 -11 -12 -13 -13 -12 -11 -9 -7 -6 -5 -6 -7 -8 -7 -5 -3 -4 -7 -9 -10 -9 -7 -6 -4 -5 -8 -12 -16 -20 -24 -27 -28 -28 -29 -29 -28 -27 -26 -26 -26 -25 -22 -18 -15 -16 -18 -19 -17 -7 9 19 21 15 10 7 6 4 4 3 0 -3 -6 -7 -6 -5 -3 -1 -1 -1 -1 -1 -1 -3 -5 -8 -12 -16 -20 -23 -26 -29 -32 -32 -30 -27 -24 -19 -16 -14 -12 -11 -11 -13 -15 -18 -19 -18 -15 -11 -9 -10 -13 -17 -20 -23 -26 -28 -25 -21 -17 -15 -14 -10 -7 -8 -12 -16 -17 -17 -17 -20 -23 -25 -26 -27 -27 -24 -21 -19 -18 -17 -15 -14 -16 -19 -22 -21 -20 -21 -22 -25 -26 -26 -25 -23 -22 -21 -19 -18 -18 -17 -17 -16 -16 -17 -19 -21 -23 -24 -25 -26 -27 -27 -26 -26 -26 -27 -26 -23 -21 -20 -21 -21 -18 -12 -12 -14 -17 -19 -24 -30 -35 -41 -46 -42 -37 -36 -38 -42 -40 -36 -33 -31 -34 -38 -41 -41 -38 -37 -36 -34 -31 -30 -33 -36 -36 -33 -28 -30 -31 -30 -27 -27 -27 -26 -25 -22 -21 -31 -39 -42 -41 -43 -43 -41 -37 -33 -32 -31 -30 -30 -30 -31 -31 -30 -30 -29 -27 -24 -21 -18 -18 -17 -17 -16 -16 -15 -14 -14 -18 -27 -38 -46 -49 -49 -48 -43 -36 -32 -30 -32 -35 -38 -40 -41 -43 -45 -45 -40 -32 -28 -30 -34 -38 -42 -39 -33 -29 -28 -32 -37 -39 -41 -44 -46 -46 -46 -44 -42 -43 -42 -38 -33 -28 -31 -37 -41 -42 -39 -37 -37 -39 -39 -38 -40 -44 -47 -49 -50 -10 -10 -11 -10 -9 -8 -7 -7 -7 -8 -8 -9 -11 -12 -12 -12 -13 -12 -10 -8 -6 -6 -5 -6 -6 -7 -7 -8 -9 -9 -10 -10 -10 -11 -11 -12 -12 -12 -12 -12 -12 -11 -10 -11 -11 -11 -11 -11 -11 -12 -15 -18 -21 -23 -21 -16 -11 -7 -4 -2 -1 -1 -3 -4 -4 -5 -8 -11 -14 -16 -17 -17 -19 -22 -25 -24 -21 -17 -13 -14 -16 -16 -15 -15 -16 -17 -17 -17 -18 -16 -14 -12 -11 -11 -12 -15 -19 -22 -22 -17 -11 -7 -9 -10 -11 -13 -14 -13 -11 -9 -8 -7 -6 -6 -6 -6 -7 -6 -4 -2 -3 -6 -9 -10 -9 -7 -5 -4 -6 -10 -14 -19 -24 -26 -27 -28 -29 -30 -29 -27 -26 -26 -26 -26 -23 -20 -17 -17 -18 -19 -20 -16 -4 9 18 19 13 5 1 1 4 4 2 -1 -3 -7 -10 -9 -4 1 2 0 -0 -0 -1 -2 -3 -5 -8 -14 -21 -25 -27 -29 -30 -29 -29 -28 -26 -23 -17 -13 -11 -10 -11 -14 -16 -17 -19 -20 -18 -14 -10 -7 -10 -14 -19 -22 -26 -28 -27 -23 -20 -17 -18 -15 -10 -6 -7 -13 -16 -17 -17 -19 -23 -25 -27 -28 -27 -24 -21 -19 -19 -19 -18 -17 -17 -20 -23 -22 -21 -20 -21 -24 -26 -26 -25 -23 -21 -19 -18 -17 -17 -18 -18 -17 -16 -16 -19 -21 -23 -24 -25 -27 -28 -28 -28 -27 -27 -28 -27 -24 -21 -20 -22 -23 -21 -15 -13 -15 -18 -18 -21 -26 -32 -38 -43 -41 -37 -36 -37 -40 -39 -36 -33 -30 -32 -36 -40 -43 -42 -39 -37 -34 -32 -31 -34 -35 -36 -33 -28 -29 -31 -31 -29 -27 -26 -25 -24 -21 -21 -29 -36 -38 -37 -40 -41 -39 -36 -34 -33 -32 -31 -30 -32 -31 -29 -28 -29 -29 -28 -26 -23 -21 -20 -19 -18 -17 -16 -15 -14 -14 -18 -29 -40 -46 -48 -47 -47 -44 -38 -33 -30 -31 -34 -37 -38 -39 -43 -46 -46 -43 -35 -31 -32 -35 -39 -44 -41 -34 -28 -27 -32 -37 -40 -41 -43 -45 -46 -47 -46 -43 -44 -42 -39 -34 -29 -30 -35 -40 -41 -39 -36 -36 -38 -40 -39 -40 -43 -47 -48 -49 -11 -11 -10 -8 -7 -5 -4 -5 -8 -11 -16 -17 -16 -12 -9 -8 -9 -10 -9 -7 -5 -5 -5 -6 -6 -7 -7 -8 -8 -8 -8 -9 -9 -10 -10 -11 -11 -12 -12 -12 -11 -10 -10 -11 -12 -12 -12 -12 -11 -10 -10 -11 -15 -19 -21 -18 -14 -10 -7 -5 -3 -3 -3 -3 -2 -4 -8 -12 -14 -16 -17 -17 -16 -18 -22 -23 -21 -18 -14 -14 -16 -15 -14 -14 -16 -17 -18 -18 -18 -18 -16 -14 -12 -12 -13 -14 -16 -18 -22 -22 -17 -11 -10 -11 -11 -13 -14 -14 -12 -10 -9 -8 -8 -6 -5 -4 -4 -5 -4 -2 -1 -4 -7 -9 -10 -9 -8 -7 -9 -12 -15 -19 -24 -26 -27 -28 -29 -30 -29 -28 -26 -26 -27 -27 -26 -22 -19 -19 -19 -19 -20 -20 -14 -5 7 16 13 5 1 2 5 5 4 3 2 -3 -9 -9 -6 0 4 3 1 0 0 0 -0 -1 -4 -10 -19 -25 -28 -28 -28 -27 -27 -28 -27 -24 -18 -13 -9 -9 -12 -15 -16 -18 -18 -20 -19 -16 -11 -6 -6 -10 -15 -21 -25 -28 -27 -25 -21 -19 -19 -18 -14 -6 -1 -8 -14 -17 -17 -17 -21 -25 -27 -28 -28 -25 -22 -20 -20 -21 -20 -20 -20 -21 -23 -22 -21 -19 -20 -24 -26 -27 -26 -23 -20 -18 -17 -16 -17 -19 -19 -18 -17 -17 -19 -21 -23 -25 -26 -28 -29 -29 -29 -28 -28 -28 -28 -25 -21 -19 -21 -25 -25 -18 -15 -16 -19 -18 -18 -22 -29 -36 -41 -41 -39 -37 -37 -38 -38 -37 -35 -33 -31 -32 -36 -42 -44 -42 -39 -36 -33 -33 -34 -36 -35 -33 -28 -28 -29 -30 -28 -25 -24 -24 -22 -20 -20 -27 -33 -34 -35 -37 -38 -36 -35 -34 -33 -32 -31 -30 -31 -30 -29 -28 -28 -29 -29 -27 -25 -22 -21 -20 -19 -18 -16 -15 -14 -14 -17 -29 -41 -46 -47 -46 -47 -46 -41 -35 -30 -30 -32 -35 -37 -39 -43 -46 -48 -45 -38 -33 -33 -36 -41 -45 -43 -37 -30 -27 -32 -37 -40 -42 -43 -47 -49 -49 -48 -44 -43 -42 -41 -36 -31 -30 -34 -39 -40 -38 -36 -35 -37 -39 -39 -40 -43 -47 -48 -48 -8 -6 -4 -3 -3 -3 -5 -9 -14 -19 -24 -24 -18 -11 -6 -4 -6 -8 -8 -6 -5 -5 -5 -6 -7 -7 -7 -8 -9 -8 -8 -7 -7 -8 -9 -9 -10 -10 -11 -11 -11 -11 -11 -12 -13 -13 -13 -12 -11 -10 -10 -10 -12 -15 -18 -18 -15 -12 -9 -7 -5 -3 -2 -2 -3 -5 -9 -12 -12 -13 -15 -16 -15 -17 -21 -22 -22 -19 -15 -13 -14 -13 -12 -12 -15 -17 -19 -20 -20 -19 -18 -17 -15 -14 -14 -14 -14 -15 -18 -22 -21 -18 -14 -14 -13 -13 -12 -13 -12 -11 -10 -10 -10 -7 -4 -2 -1 -2 -2 -2 -1 -2 -4 -7 -9 -12 -13 -14 -15 -16 -17 -18 -23 -25 -27 -27 -27 -29 -29 -28 -26 -26 -27 -29 -28 -25 -23 -21 -20 -20 -20 -20 -19 -14 -7 2 6 4 3 4 5 4 5 6 5 0 -5 -5 -2 3 7 7 5 3 2 0 -1 -2 -4 -7 -14 -20 -24 -25 -24 -24 -26 -27 -27 -24 -18 -12 -9 -9 -13 -16 -18 -18 -18 -19 -20 -18 -14 -7 -3 -6 -12 -19 -25 -27 -28 -26 -23 -20 -19 -20 -17 -11 -4 -5 -10 -14 -15 -16 -21 -25 -28 -29 -29 -26 -23 -21 -21 -21 -22 -22 -21 -22 -22 -21 -19 -17 -19 -22 -25 -26 -26 -25 -22 -19 -16 -15 -17 -19 -20 -19 -17 -17 -19 -21 -23 -25 -28 -30 -31 -31 -30 -29 -29 -29 -29 -27 -22 -20 -21 -26 -27 -22 -18 -16 -19 -18 -17 -20 -27 -34 -39 -42 -42 -40 -38 -37 -37 -36 -35 -33 -30 -29 -33 -40 -44 -45 -43 -40 -35 -35 -35 -35 -35 -33 -29 -28 -29 -29 -27 -24 -23 -23 -21 -18 -18 -24 -31 -33 -33 -34 -34 -33 -33 -34 -33 -32 -31 -29 -31 -31 -30 -30 -29 -30 -28 -26 -25 -23 -22 -21 -20 -18 -17 -15 -13 -13 -15 -28 -41 -47 -46 -45 -47 -47 -43 -37 -31 -30 -31 -33 -35 -38 -42 -46 -49 -48 -42 -36 -35 -37 -41 -45 -44 -39 -32 -29 -32 -36 -41 -43 -44 -48 -50 -51 -50 -44 -42 -42 -42 -38 -33 -31 -33 -37 -38 -36 -34 -33 -35 -38 -39 -39 -42 -47 -49 -48 -3 -2 -2 -3 -5 -8 -11 -15 -19 -23 -27 -25 -18 -10 -3 -0 -4 -6 -7 -6 -5 -6 -7 -7 -7 -7 -7 -8 -9 -9 -8 -7 -6 -7 -7 -8 -8 -9 -10 -10 -10 -11 -11 -12 -13 -13 -12 -11 -10 -9 -13 -15 -16 -14 -13 -14 -15 -13 -9 -8 -7 -5 -3 -2 -3 -5 -8 -10 -9 -9 -11 -13 -16 -19 -20 -21 -22 -21 -17 -13 -11 -10 -9 -10 -14 -18 -21 -21 -20 -20 -20 -20 -18 -16 -15 -15 -15 -15 -16 -18 -20 -21 -19 -18 -17 -14 -11 -10 -11 -10 -11 -12 -12 -9 -5 -1 1 2 1 -0 -1 -1 -1 -4 -8 -13 -19 -22 -22 -20 -17 -15 -18 -22 -24 -26 -26 -27 -28 -28 -27 -26 -27 -28 -29 -28 -25 -23 -22 -21 -20 -20 -20 -18 -15 -11 -6 -4 -2 0 2 3 6 8 9 6 4 4 5 7 6 4 2 1 0 -2 -6 -8 -7 -5 -5 -10 -14 -17 -19 -21 -23 -25 -25 -22 -17 -13 -10 -10 -14 -18 -19 -19 -18 -17 -19 -18 -16 -10 -3 -3 -9 -16 -23 -26 -27 -27 -24 -20 -19 -19 -18 -15 -10 -7 -7 -9 -11 -14 -20 -25 -28 -29 -29 -27 -23 -21 -21 -22 -23 -22 -21 -21 -20 -19 -16 -14 -17 -20 -23 -25 -26 -26 -23 -19 -17 -16 -17 -18 -19 -19 -18 -19 -20 -22 -23 -25 -28 -31 -31 -31 -30 -29 -29 -29 -30 -28 -25 -22 -23 -27 -29 -27 -23 -19 -19 -19 -18 -18 -21 -28 -36 -42 -45 -43 -39 -38 -37 -36 -35 -32 -29 -28 -30 -38 -42 -45 -45 -43 -37 -36 -35 -35 -35 -33 -29 -29 -29 -29 -26 -24 -23 -22 -21 -18 -17 -22 -30 -34 -33 -32 -31 -31 -32 -33 -33 -32 -30 -29 -30 -31 -32 -32 -30 -30 -28 -25 -24 -22 -21 -21 -20 -19 -18 -15 -13 -12 -13 -27 -40 -47 -47 -45 -48 -48 -45 -38 -32 -30 -30 -31 -34 -37 -41 -46 -50 -50 -45 -40 -38 -38 -41 -44 -44 -41 -35 -31 -32 -36 -41 -44 -46 -49 -52 -53 -52 -47 -45 -44 -43 -41 -35 -32 -33 -35 -34 -34 -33 -33 -34 -38 -39 -39 -42 -48 -50 -50 -2 -2 -4 -7 -10 -13 -16 -17 -19 -21 -23 -22 -16 -9 -2 1 -2 -5 -6 -6 -5 -7 -8 -8 -8 -7 -7 -8 -9 -9 -8 -7 -6 -6 -7 -7 -8 -8 -9 -10 -11 -11 -11 -11 -12 -12 -12 -10 -8 -7 -9 -12 -14 -13 -11 -11 -11 -11 -10 -9 -9 -8 -7 -7 -5 -5 -6 -7 -6 -7 -8 -10 -12 -15 -17 -19 -20 -19 -17 -14 -13 -11 -9 -8 -12 -17 -21 -23 -22 -21 -22 -23 -21 -18 -16 -15 -15 -15 -16 -17 -19 -21 -19 -17 -17 -18 -17 -14 -12 -11 -11 -11 -10 -8 -5 -2 1 3 4 2 -1 -3 -4 -4 -7 -13 -20 -23 -22 -20 -18 -14 -14 -18 -23 -26 -26 -26 -27 -28 -27 -26 -26 -28 -29 -29 -25 -23 -22 -22 -22 -22 -21 -20 -18 -17 -15 -13 -10 -7 -2 2 6 10 11 8 8 9 9 8 4 1 -1 -1 -2 -4 -8 -11 -9 -5 -3 -3 -6 -11 -16 -18 -19 -19 -21 -22 -22 -19 -15 -13 -14 -17 -19 -20 -19 -17 -17 -17 -17 -14 -6 -3 -5 -11 -19 -23 -26 -26 -24 -21 -18 -18 -19 -18 -13 -8 -7 -7 -8 -11 -18 -24 -28 -30 -29 -26 -22 -20 -21 -23 -24 -23 -21 -19 -18 -15 -13 -11 -14 -18 -21 -24 -26 -26 -24 -21 -19 -18 -18 -19 -20 -21 -20 -18 -19 -21 -24 -27 -29 -31 -31 -31 -30 -29 -28 -28 -29 -28 -26 -24 -24 -26 -28 -29 -27 -23 -19 -18 -17 -18 -22 -29 -35 -41 -44 -43 -40 -39 -38 -37 -35 -33 -30 -29 -31 -37 -42 -44 -45 -44 -39 -36 -36 -36 -35 -33 -30 -30 -31 -32 -27 -24 -22 -22 -21 -19 -17 -21 -30 -35 -34 -32 -31 -31 -33 -34 -33 -32 -30 -30 -31 -32 -33 -33 -32 -31 -28 -25 -23 -21 -20 -20 -21 -20 -18 -15 -13 -11 -13 -26 -39 -47 -47 -46 -48 -49 -47 -40 -33 -31 -30 -30 -32 -36 -40 -45 -50 -52 -49 -44 -41 -38 -40 -43 -45 -43 -37 -33 -33 -36 -42 -45 -48 -51 -53 -55 -54 -50 -47 -45 -44 -43 -38 -34 -33 -33 -32 -33 -34 -33 -34 -38 -39 -40 -41 -47 -49 -50 -4 -5 -7 -10 -14 -16 -17 -16 -16 -17 -19 -18 -14 -9 -3 1 -2 -4 -5 -5 -5 -6 -8 -9 -9 -8 -8 -8 -8 -9 -9 -9 -8 -8 -7 -7 -7 -8 -9 -11 -12 -10 -9 -8 -9 -9 -10 -10 -10 -8 -8 -9 -11 -11 -11 -11 -11 -10 -10 -10 -9 -9 -9 -8 -6 -5 -4 -3 -3 -4 -6 -8 -11 -14 -16 -16 -16 -16 -15 -16 -15 -13 -10 -8 -9 -13 -18 -22 -23 -23 -23 -23 -22 -19 -16 -15 -15 -15 -16 -17 -18 -19 -20 -17 -16 -17 -19 -17 -13 -11 -10 -11 -10 -6 -3 -0 2 3 3 1 -1 -4 -7 -8 -8 -11 -16 -19 -19 -18 -17 -16 -15 -17 -21 -25 -26 -26 -26 -26 -26 -26 -27 -28 -29 -30 -27 -25 -24 -24 -24 -24 -23 -21 -19 -18 -18 -16 -15 -12 -7 -1 3 6 8 8 9 9 10 9 7 5 2 -0 -3 -5 -8 -9 -8 -5 -3 -2 -3 -6 -11 -14 -16 -19 -22 -24 -23 -20 -16 -13 -14 -17 -21 -23 -22 -19 -18 -19 -19 -19 -11 -5 -4 -8 -15 -19 -22 -24 -23 -21 -19 -19 -18 -18 -15 -12 -10 -9 -8 -10 -16 -22 -27 -29 -28 -24 -21 -21 -22 -24 -24 -24 -22 -19 -16 -14 -12 -10 -11 -14 -18 -22 -25 -26 -25 -23 -20 -19 -19 -19 -20 -22 -22 -20 -18 -19 -23 -27 -30 -31 -31 -31 -30 -28 -27 -27 -27 -28 -27 -25 -24 -25 -27 -29 -29 -27 -21 -17 -17 -20 -24 -29 -32 -35 -39 -41 -40 -39 -39 -38 -37 -34 -32 -31 -32 -36 -41 -44 -46 -46 -41 -38 -37 -36 -35 -32 -31 -32 -34 -35 -30 -26 -23 -22 -22 -21 -19 -21 -30 -37 -35 -33 -31 -32 -35 -36 -36 -34 -31 -31 -32 -32 -33 -34 -33 -32 -30 -26 -23 -21 -20 -21 -21 -21 -18 -15 -14 -12 -12 -24 -38 -47 -47 -46 -48 -50 -48 -41 -34 -31 -30 -30 -31 -34 -39 -45 -50 -52 -51 -48 -43 -39 -40 -44 -46 -46 -41 -35 -33 -36 -41 -45 -49 -52 -54 -57 -56 -52 -49 -46 -44 -44 -39 -35 -32 -31 -32 -34 -35 -34 -35 -38 -39 -40 -40 -45 -48 -49 -7 -8 -10 -13 -15 -16 -15 -13 -14 -16 -19 -19 -15 -9 -3 1 -0 -3 -4 -4 -4 -5 -7 -8 -8 -8 -8 -9 -9 -9 -9 -9 -9 -8 -8 -7 -8 -9 -10 -12 -13 -12 -9 -7 -6 -6 -7 -9 -11 -11 -11 -10 -10 -10 -11 -11 -11 -11 -10 -10 -9 -8 -8 -8 -7 -5 -3 -1 -0 -1 -3 -5 -8 -11 -13 -14 -14 -14 -14 -15 -15 -14 -12 -9 -9 -10 -13 -17 -20 -22 -24 -24 -23 -19 -17 -16 -16 -17 -17 -17 -18 -18 -20 -19 -15 -14 -15 -17 -15 -12 -11 -11 -11 -9 -5 -0 3 3 1 -0 -1 -1 -2 -4 -7 -11 -15 -16 -16 -16 -17 -18 -16 -15 -17 -22 -26 -27 -26 -25 -26 -27 -27 -27 -28 -30 -28 -26 -25 -25 -27 -26 -25 -23 -20 -19 -18 -18 -17 -17 -15 -10 -7 -4 -0 4 7 7 8 11 13 12 9 4 -2 -4 -6 -6 -6 -6 -6 -5 -4 -3 -4 -5 -8 -14 -20 -23 -23 -20 -16 -14 -14 -16 -19 -21 -21 -18 -17 -18 -20 -22 -17 -11 -7 -7 -12 -15 -18 -20 -22 -22 -20 -19 -18 -17 -17 -16 -13 -11 -9 -9 -12 -18 -24 -28 -27 -24 -22 -20 -21 -23 -24 -25 -24 -20 -17 -16 -14 -10 -8 -11 -15 -20 -23 -25 -25 -23 -20 -18 -18 -18 -19 -22 -24 -22 -21 -20 -22 -26 -29 -31 -32 -31 -30 -29 -28 -27 -27 -28 -28 -26 -23 -24 -25 -28 -29 -29 -23 -18 -17 -19 -23 -26 -29 -33 -37 -40 -41 -40 -40 -39 -37 -35 -32 -31 -34 -36 -39 -42 -45 -48 -43 -40 -38 -37 -34 -31 -32 -35 -38 -38 -33 -29 -25 -24 -24 -23 -21 -23 -30 -36 -35 -33 -32 -32 -35 -36 -35 -34 -32 -32 -32 -32 -32 -34 -34 -33 -31 -28 -24 -22 -21 -21 -22 -21 -18 -16 -14 -12 -13 -24 -38 -47 -46 -46 -48 -50 -49 -42 -35 -31 -30 -30 -29 -32 -37 -44 -50 -53 -53 -50 -44 -40 -41 -44 -48 -49 -44 -38 -35 -37 -41 -45 -49 -52 -54 -56 -56 -52 -49 -46 -46 -44 -39 -34 -31 -30 -31 -33 -34 -33 -33 -36 -38 -39 -39 -43 -46 -48 -10 -10 -12 -14 -15 -15 -13 -12 -14 -18 -22 -23 -18 -10 -4 -1 -1 -3 -3 -4 -4 -6 -7 -7 -7 -7 -8 -8 -8 -8 -9 -9 -8 -8 -8 -8 -8 -9 -11 -13 -13 -13 -11 -8 -6 -5 -6 -8 -10 -12 -12 -11 -10 -10 -10 -11 -11 -11 -10 -9 -8 -7 -7 -8 -8 -7 -5 -2 -0 -0 -1 -3 -6 -8 -11 -13 -14 -14 -13 -14 -15 -14 -12 -11 -10 -9 -10 -12 -16 -20 -23 -24 -23 -20 -18 -18 -18 -18 -19 -18 -18 -18 -19 -19 -16 -13 -12 -14 -15 -14 -14 -13 -14 -13 -9 -3 2 3 1 -1 -1 2 4 2 -4 -10 -15 -16 -16 -17 -18 -19 -17 -15 -16 -19 -23 -25 -25 -25 -25 -25 -26 -26 -27 -29 -30 -28 -25 -25 -26 -27 -26 -24 -21 -19 -19 -19 -18 -18 -18 -15 -10 -7 -5 -4 -2 1 5 9 12 13 11 7 2 0 -1 -1 -3 -5 -6 -5 -2 2 6 5 -0 -8 -16 -21 -21 -19 -16 -14 -13 -15 -18 -21 -22 -20 -19 -18 -20 -23 -22 -19 -13 -9 -9 -10 -12 -16 -20 -22 -21 -20 -19 -18 -18 -18 -16 -12 -8 -7 -10 -16 -23 -27 -26 -24 -21 -20 -21 -22 -24 -25 -26 -22 -20 -19 -19 -16 -11 -10 -14 -18 -22 -25 -25 -23 -19 -16 -15 -16 -17 -20 -24 -24 -23 -21 -20 -23 -27 -30 -31 -31 -29 -28 -28 -27 -27 -28 -29 -28 -26 -25 -26 -27 -29 -30 -25 -20 -17 -18 -22 -25 -29 -33 -37 -40 -42 -42 -41 -40 -38 -36 -34 -33 -34 -35 -36 -39 -44 -49 -45 -41 -39 -37 -33 -30 -32 -35 -38 -37 -34 -31 -28 -26 -25 -25 -23 -24 -30 -34 -33 -32 -32 -33 -34 -33 -33 -33 -31 -32 -32 -32 -33 -35 -36 -35 -33 -30 -25 -23 -22 -22 -23 -22 -20 -17 -15 -13 -13 -23 -36 -45 -43 -44 -46 -49 -49 -43 -36 -31 -30 -30 -29 -31 -35 -42 -48 -53 -55 -52 -45 -41 -42 -45 -48 -50 -47 -40 -36 -37 -41 -45 -48 -51 -53 -56 -54 -51 -48 -45 -46 -44 -38 -33 -30 -29 -30 -30 -30 -30 -30 -33 -37 -38 -38 -42 -45 -46 -11 -11 -13 -15 -15 -15 -13 -12 -15 -20 -24 -25 -18 -11 -5 -3 -3 -4 -3 -4 -5 -6 -7 -7 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -10 -11 -12 -13 -12 -11 -10 -7 -6 -6 -8 -9 -10 -11 -11 -11 -11 -10 -11 -12 -12 -11 -8 -7 -7 -7 -7 -7 -7 -6 -4 -2 -1 -1 -1 -3 -6 -9 -11 -13 -14 -13 -13 -13 -13 -12 -12 -11 -10 -9 -10 -12 -17 -21 -23 -23 -22 -20 -20 -20 -20 -20 -20 -19 -18 -17 -18 -17 -15 -11 -10 -13 -15 -16 -16 -16 -16 -13 -8 -2 3 2 1 0 2 5 4 -1 -9 -15 -15 -15 -16 -17 -18 -17 -16 -16 -17 -20 -23 -25 -26 -26 -25 -26 -27 -28 -29 -30 -30 -28 -25 -25 -25 -25 -24 -22 -20 -19 -18 -18 -18 -17 -15 -11 -7 -6 -9 -10 -6 1 9 13 13 11 8 6 4 5 5 5 3 2 2 5 11 15 11 4 -4 -12 -16 -18 -17 -16 -14 -13 -14 -16 -19 -21 -21 -20 -20 -20 -23 -24 -22 -18 -12 -9 -9 -12 -16 -21 -22 -21 -21 -20 -18 -18 -18 -16 -13 -8 -7 -10 -16 -23 -25 -24 -22 -21 -21 -21 -22 -24 -26 -27 -25 -22 -21 -20 -17 -11 -10 -12 -16 -20 -23 -25 -23 -19 -14 -13 -13 -15 -19 -23 -24 -24 -22 -20 -21 -25 -28 -30 -30 -29 -27 -27 -27 -27 -28 -29 -29 -28 -27 -28 -29 -30 -30 -26 -21 -18 -18 -21 -25 -28 -32 -37 -40 -43 -44 -43 -42 -40 -38 -35 -33 -32 -32 -34 -37 -44 -50 -47 -42 -39 -36 -33 -31 -31 -33 -36 -37 -38 -36 -33 -29 -28 -26 -24 -25 -31 -32 -30 -30 -32 -33 -32 -32 -32 -31 -31 -31 -32 -33 -34 -36 -38 -38 -35 -31 -27 -24 -23 -24 -25 -24 -22 -19 -16 -13 -14 -23 -34 -42 -40 -42 -45 -48 -49 -43 -36 -31 -29 -30 -29 -30 -34 -40 -46 -52 -54 -53 -47 -43 -43 -45 -48 -51 -49 -43 -38 -37 -41 -44 -47 -50 -53 -56 -53 -49 -46 -45 -48 -46 -40 -34 -30 -29 -29 -29 -27 -27 -28 -31 -35 -37 -38 -41 -44 -46 -11 -12 -14 -15 -15 -15 -13 -13 -15 -18 -21 -21 -15 -10 -6 -6 -6 -6 -5 -6 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -8 -8 -8 -9 -10 -11 -11 -11 -11 -11 -11 -10 -8 -7 -7 -8 -9 -10 -12 -13 -14 -12 -11 -12 -13 -12 -9 -7 -6 -6 -6 -7 -6 -5 -5 -4 -3 -2 -1 -1 -3 -6 -9 -11 -12 -11 -10 -10 -11 -11 -12 -12 -11 -10 -10 -11 -15 -19 -22 -23 -23 -23 -23 -22 -22 -22 -21 -21 -20 -18 -17 -18 -17 -15 -10 -11 -14 -16 -17 -17 -17 -16 -13 -7 -1 2 3 1 1 1 -0 -4 -9 -14 -14 -14 -14 -15 -17 -18 -18 -17 -16 -19 -23 -26 -28 -28 -27 -27 -28 -28 -30 -31 -31 -30 -27 -25 -24 -24 -23 -21 -20 -19 -18 -18 -17 -17 -17 -15 -11 -7 -9 -12 -11 -8 -4 2 7 11 12 9 9 10 12 11 7 5 7 13 19 17 12 5 -1 -8 -12 -14 -14 -14 -14 -13 -14 -15 -17 -19 -21 -21 -21 -21 -22 -23 -23 -21 -16 -10 -8 -9 -12 -16 -18 -19 -20 -20 -18 -17 -17 -17 -16 -12 -10 -13 -18 -24 -23 -22 -22 -22 -23 -22 -23 -24 -27 -28 -27 -25 -23 -21 -16 -12 -11 -13 -16 -19 -23 -25 -25 -21 -17 -14 -12 -13 -17 -22 -24 -24 -22 -19 -20 -22 -26 -28 -29 -28 -27 -26 -26 -26 -27 -28 -28 -27 -26 -27 -28 -30 -30 -27 -24 -22 -20 -20 -24 -27 -31 -35 -40 -44 -46 -46 -45 -42 -39 -37 -34 -31 -31 -34 -39 -45 -50 -48 -42 -37 -34 -33 -32 -31 -32 -33 -37 -42 -44 -40 -34 -31 -28 -25 -24 -30 -32 -31 -30 -32 -32 -31 -31 -32 -31 -31 -32 -32 -33 -35 -37 -40 -41 -38 -32 -28 -25 -25 -25 -26 -26 -24 -21 -17 -14 -15 -22 -32 -39 -38 -40 -43 -46 -47 -43 -37 -31 -30 -30 -30 -30 -32 -38 -45 -50 -53 -53 -49 -45 -44 -45 -49 -51 -50 -45 -40 -37 -40 -43 -46 -50 -55 -56 -53 -49 -46 -47 -50 -50 -45 -38 -31 -29 -29 -29 -28 -26 -28 -31 -33 -35 -38 -41 -44 -46 -12 -13 -13 -15 -15 -15 -13 -12 -14 -16 -17 -16 -11 -8 -7 -8 -8 -7 -8 -9 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -7 -7 -7 -8 -8 -9 -9 -10 -10 -10 -10 -11 -11 -11 -10 -8 -7 -8 -10 -12 -13 -15 -16 -15 -12 -12 -12 -12 -9 -7 -6 -6 -6 -7 -6 -6 -5 -4 -4 -4 -3 -2 -1 -3 -6 -8 -10 -10 -9 -9 -9 -10 -11 -12 -12 -12 -12 -13 -16 -18 -20 -22 -23 -24 -25 -25 -25 -24 -23 -22 -21 -20 -18 -17 -18 -19 -16 -13 -13 -15 -17 -17 -17 -16 -15 -13 -9 -3 1 2 1 -2 -6 -9 -11 -13 -13 -13 -13 -14 -17 -19 -19 -19 -19 -20 -23 -26 -28 -29 -29 -29 -29 -29 -29 -30 -31 -30 -29 -26 -24 -23 -21 -20 -20 -19 -19 -19 -18 -18 -18 -18 -15 -10 -8 -9 -11 -11 -11 -10 -5 2 9 13 11 10 10 10 8 10 15 20 21 14 7 1 -3 -7 -10 -12 -13 -12 -13 -14 -14 -16 -17 -19 -21 -22 -22 -21 -20 -21 -22 -22 -19 -13 -9 -8 -10 -13 -16 -19 -21 -21 -19 -17 -17 -18 -19 -16 -14 -14 -17 -21 -21 -22 -23 -25 -25 -24 -24 -25 -28 -29 -29 -27 -25 -22 -17 -13 -11 -12 -15 -19 -22 -24 -25 -24 -20 -16 -13 -12 -14 -19 -22 -23 -21 -18 -18 -20 -24 -26 -27 -27 -26 -25 -25 -25 -26 -27 -27 -25 -23 -24 -26 -29 -30 -28 -25 -21 -20 -19 -21 -24 -29 -34 -39 -44 -47 -49 -48 -45 -41 -39 -36 -32 -32 -37 -43 -46 -49 -46 -41 -36 -33 -33 -33 -32 -32 -32 -39 -46 -50 -46 -40 -34 -29 -25 -24 -29 -33 -34 -33 -34 -33 -32 -32 -33 -32 -32 -33 -33 -34 -36 -40 -43 -44 -40 -34 -30 -27 -26 -27 -28 -27 -25 -22 -19 -15 -16 -22 -31 -37 -37 -38 -41 -44 -46 -43 -38 -32 -29 -30 -30 -30 -31 -36 -43 -49 -52 -52 -49 -45 -44 -45 -48 -51 -51 -47 -42 -38 -39 -42 -45 -50 -56 -57 -55 -52 -48 -49 -51 -51 -49 -42 -34 -30 -29 -30 -29 -28 -30 -32 -32 -33 -37 -40 -44 -48 -12 -12 -13 -14 -14 -14 -13 -13 -13 -14 -13 -11 -7 -6 -7 -8 -7 -7 -8 -9 -10 -10 -9 -10 -10 -10 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -10 -11 -12 -11 -9 -8 -8 -9 -12 -12 -13 -12 -12 -11 -11 -10 -10 -9 -8 -7 -6 -6 -6 -7 -6 -5 -4 -3 -4 -4 -3 -2 -1 -3 -6 -8 -8 -8 -8 -8 -9 -10 -11 -12 -13 -14 -16 -17 -18 -19 -20 -22 -24 -24 -24 -24 -24 -23 -23 -21 -20 -18 -17 -17 -19 -21 -14 -11 -13 -18 -19 -18 -16 -16 -16 -16 -12 -6 1 3 -3 -8 -11 -10 -10 -11 -11 -10 -12 -15 -18 -20 -21 -21 -21 -21 -23 -26 -28 -30 -30 -30 -29 -28 -29 -29 -30 -29 -28 -26 -23 -21 -19 -19 -19 -20 -20 -20 -20 -20 -20 -19 -15 -10 -7 -6 -6 -6 -7 -7 -6 -2 4 9 14 17 17 14 12 13 17 21 21 18 14 8 -1 -8 -12 -14 -13 -13 -14 -15 -15 -16 -18 -21 -23 -23 -20 -19 -19 -20 -21 -20 -16 -11 -8 -8 -11 -15 -18 -20 -21 -20 -18 -17 -18 -19 -18 -17 -16 -16 -17 -18 -20 -23 -26 -29 -29 -28 -28 -29 -30 -30 -28 -24 -21 -18 -13 -10 -10 -15 -19 -20 -22 -23 -23 -21 -18 -15 -13 -14 -18 -21 -22 -20 -17 -17 -18 -21 -24 -26 -26 -25 -25 -25 -25 -26 -27 -27 -25 -22 -21 -23 -27 -30 -29 -26 -21 -17 -15 -17 -20 -25 -31 -37 -42 -46 -49 -49 -46 -42 -39 -36 -34 -35 -38 -42 -43 -44 -43 -41 -38 -34 -33 -33 -33 -32 -33 -41 -48 -52 -50 -44 -37 -30 -25 -23 -27 -32 -35 -36 -37 -35 -34 -33 -33 -33 -33 -33 -35 -37 -39 -42 -45 -46 -43 -37 -32 -29 -28 -28 -29 -28 -26 -23 -19 -16 -17 -22 -31 -37 -37 -37 -39 -42 -45 -43 -38 -32 -29 -29 -30 -30 -30 -35 -41 -47 -50 -50 -49 -45 -44 -45 -48 -52 -51 -48 -44 -39 -39 -41 -45 -50 -56 -58 -56 -53 -49 -49 -50 -51 -50 -44 -37 -32 -29 -29 -30 -31 -32 -33 -30 -31 -35 -40 -44 -49 -11 -12 -13 -14 -14 -14 -14 -14 -14 -12 -10 -5 -3 -6 -7 -7 -5 -5 -6 -7 -8 -8 -9 -9 -9 -10 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -7 -7 -7 -7 -8 -9 -10 -11 -10 -10 -10 -10 -10 -11 -13 -14 -13 -12 -11 -10 -9 -9 -8 -7 -6 -6 -6 -7 -6 -5 -4 -3 -4 -5 -5 -3 -1 -1 -3 -5 -6 -6 -7 -8 -9 -10 -11 -12 -14 -16 -19 -20 -19 -18 -18 -20 -22 -23 -22 -21 -22 -23 -22 -21 -19 -18 -17 -17 -19 -23 -19 -13 -13 -17 -20 -20 -19 -17 -15 -14 -15 -14 -11 -7 -6 -9 -10 -10 -8 -8 -8 -8 -9 -11 -14 -18 -21 -23 -23 -23 -24 -27 -29 -31 -31 -30 -30 -29 -28 -27 -28 -28 -28 -27 -25 -22 -19 -18 -19 -20 -21 -22 -22 -22 -22 -22 -21 -15 -8 -3 -0 -0 -1 -4 -6 -9 -7 -1 7 15 19 19 16 16 19 23 23 19 13 6 -2 -7 -9 -12 -15 -16 -15 -15 -14 -16 -18 -21 -22 -23 -21 -21 -19 -19 -20 -21 -17 -12 -8 -8 -10 -14 -17 -20 -21 -20 -19 -18 -18 -19 -19 -18 -17 -16 -16 -18 -23 -27 -30 -31 -30 -30 -30 -31 -31 -31 -28 -24 -20 -18 -13 -10 -10 -14 -17 -19 -20 -22 -22 -21 -19 -16 -13 -14 -16 -19 -21 -21 -19 -18 -19 -21 -24 -25 -25 -25 -26 -26 -26 -27 -27 -27 -26 -23 -21 -21 -25 -29 -30 -28 -24 -16 -14 -16 -20 -23 -28 -33 -38 -43 -47 -48 -47 -43 -38 -36 -36 -38 -39 -40 -40 -41 -42 -42 -40 -36 -33 -32 -32 -32 -34 -42 -48 -51 -50 -47 -39 -31 -25 -23 -25 -30 -35 -36 -36 -35 -34 -34 -33 -33 -32 -33 -36 -39 -41 -43 -46 -47 -45 -40 -35 -32 -31 -30 -30 -28 -25 -23 -19 -17 -17 -22 -32 -37 -38 -39 -39 -42 -44 -42 -38 -31 -28 -28 -29 -29 -28 -33 -40 -45 -48 -49 -48 -46 -45 -45 -48 -51 -52 -49 -45 -41 -40 -40 -43 -49 -55 -58 -57 -54 -49 -49 -50 -51 -50 -43 -37 -32 -29 -28 -30 -33 -35 -34 -29 -29 -34 -40 -44 -49 -11 -12 -13 -13 -14 -15 -15 -15 -14 -10 -5 -1 -3 -7 -8 -7 -4 -4 -5 -5 -5 -6 -7 -7 -8 -8 -8 -8 -7 -7 -7 -8 -8 -9 -9 -8 -8 -7 -6 -5 -5 -5 -6 -7 -8 -9 -10 -11 -12 -13 -13 -14 -15 -16 -17 -16 -13 -11 -10 -9 -8 -7 -6 -5 -5 -6 -7 -6 -4 -3 -3 -4 -5 -4 -3 -2 -2 -3 -4 -5 -6 -8 -9 -9 -10 -12 -14 -18 -21 -22 -21 -19 -17 -18 -19 -20 -20 -19 -19 -20 -20 -20 -18 -18 -17 -17 -19 -23 -23 -17 -13 -15 -19 -21 -20 -18 -14 -11 -11 -13 -15 -17 -14 -12 -10 -9 -6 -7 -5 -4 -4 -7 -13 -17 -20 -23 -25 -26 -27 -28 -31 -31 -31 -30 -30 -30 -28 -26 -25 -25 -25 -26 -25 -22 -19 -18 -18 -20 -21 -22 -23 -24 -24 -24 -24 -21 -13 -5 0 1 0 -1 -4 -8 -12 -11 -6 2 11 15 16 17 21 24 21 15 7 -0 -7 -8 -10 -12 -16 -18 -17 -15 -14 -15 -17 -20 -22 -24 -24 -23 -21 -19 -19 -20 -19 -15 -11 -8 -10 -14 -18 -21 -23 -22 -20 -19 -19 -20 -20 -19 -17 -16 -15 -19 -23 -27 -30 -30 -30 -30 -30 -30 -31 -31 -30 -26 -21 -17 -13 -10 -9 -13 -16 -18 -20 -22 -22 -21 -20 -17 -13 -12 -13 -16 -20 -22 -21 -19 -19 -19 -21 -22 -23 -25 -26 -27 -27 -27 -28 -27 -27 -25 -22 -21 -23 -28 -30 -30 -27 -19 -15 -17 -21 -23 -25 -30 -35 -41 -45 -48 -48 -44 -40 -38 -39 -40 -40 -38 -36 -39 -43 -44 -42 -37 -34 -32 -32 -33 -34 -39 -45 -48 -50 -49 -42 -33 -26 -23 -24 -28 -33 -36 -35 -35 -35 -35 -35 -34 -32 -33 -36 -39 -40 -42 -45 -47 -46 -42 -38 -36 -34 -33 -30 -28 -25 -23 -20 -18 -18 -21 -31 -36 -40 -42 -42 -43 -44 -42 -38 -31 -28 -27 -27 -28 -28 -31 -38 -44 -47 -48 -47 -46 -46 -45 -48 -51 -52 -50 -46 -42 -40 -40 -42 -47 -54 -58 -58 -54 -50 -49 -50 -50 -49 -41 -34 -30 -28 -28 -30 -34 -37 -35 -29 -27 -32 -39 -44 -48 -12 -13 -14 -14 -14 -14 -15 -15 -12 -7 -3 -2 -6 -9 -9 -8 -6 -6 -6 -5 -4 -5 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -8 -9 -8 -7 -6 -5 -5 -4 -5 -6 -7 -8 -9 -10 -12 -14 -15 -15 -15 -14 -15 -14 -14 -12 -10 -9 -9 -8 -7 -5 -5 -6 -6 -6 -5 -3 -3 -3 -4 -5 -5 -3 -2 -2 -3 -4 -5 -7 -8 -9 -10 -12 -14 -18 -22 -23 -23 -21 -18 -15 -15 -17 -18 -18 -17 -17 -18 -18 -19 -19 -19 -18 -19 -21 -24 -20 -15 -13 -18 -21 -21 -19 -16 -13 -11 -12 -14 -19 -21 -19 -15 -9 -5 -4 -3 -0 1 -1 -7 -13 -18 -22 -25 -28 -30 -31 -32 -31 -31 -30 -29 -30 -29 -27 -24 -23 -22 -22 -23 -23 -21 -20 -19 -19 -20 -21 -23 -25 -27 -27 -26 -24 -19 -12 -5 -2 -3 -2 -2 -4 -8 -13 -14 -12 -4 3 9 14 19 20 16 11 4 -2 -9 -11 -12 -13 -15 -17 -15 -14 -14 -17 -21 -23 -25 -25 -25 -24 -22 -19 -19 -20 -20 -18 -13 -9 -10 -14 -19 -23 -25 -24 -21 -20 -19 -20 -21 -20 -19 -17 -16 -19 -22 -25 -27 -28 -30 -31 -31 -31 -31 -31 -29 -27 -22 -17 -12 -10 -11 -15 -18 -19 -21 -22 -21 -21 -20 -18 -14 -11 -11 -14 -18 -21 -22 -21 -19 -18 -19 -21 -23 -25 -27 -27 -26 -27 -27 -28 -28 -27 -25 -22 -22 -26 -29 -31 -29 -22 -18 -18 -22 -25 -27 -30 -34 -39 -44 -48 -48 -46 -45 -44 -43 -42 -39 -35 -32 -38 -44 -46 -44 -39 -36 -34 -33 -34 -35 -38 -42 -47 -50 -50 -45 -37 -28 -24 -23 -27 -32 -38 -37 -37 -38 -39 -37 -35 -33 -33 -36 -38 -39 -40 -43 -46 -46 -44 -42 -39 -38 -35 -32 -28 -24 -22 -20 -19 -19 -21 -29 -35 -41 -44 -43 -43 -44 -43 -39 -32 -28 -26 -26 -28 -27 -30 -36 -42 -45 -47 -47 -46 -46 -46 -48 -51 -52 -52 -48 -44 -42 -42 -43 -48 -53 -57 -58 -55 -50 -49 -49 -49 -48 -41 -34 -29 -27 -28 -32 -36 -39 -36 -29 -27 -31 -39 -44 -48 -13 -14 -15 -15 -14 -14 -14 -13 -9 -5 -5 -8 -13 -14 -13 -11 -10 -10 -9 -7 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -7 -6 -6 -6 -5 -5 -5 -6 -7 -8 -9 -10 -11 -12 -14 -15 -14 -12 -11 -12 -12 -11 -10 -9 -9 -8 -7 -5 -5 -5 -6 -6 -5 -4 -2 -2 -3 -4 -5 -5 -4 -3 -3 -3 -4 -5 -6 -7 -9 -11 -13 -16 -20 -22 -23 -22 -19 -14 -13 -14 -16 -18 -17 -16 -16 -18 -20 -21 -21 -20 -19 -19 -21 -21 -19 -14 -15 -16 -17 -17 -17 -17 -15 -13 -13 -15 -20 -21 -19 -13 -8 -5 -2 1 3 2 -1 -7 -14 -21 -24 -27 -30 -32 -32 -32 -31 -31 -30 -30 -30 -28 -25 -23 -21 -20 -20 -22 -23 -22 -21 -19 -19 -20 -21 -23 -25 -26 -26 -25 -25 -21 -13 -8 -7 -6 -5 -2 -3 -7 -12 -15 -16 -11 -4 4 10 11 10 8 5 -1 -8 -12 -14 -14 -13 -13 -12 -13 -15 -19 -23 -25 -26 -26 -26 -24 -21 -19 -18 -20 -20 -18 -14 -9 -9 -14 -19 -22 -24 -23 -21 -20 -20 -20 -21 -21 -19 -17 -16 -18 -20 -22 -22 -25 -29 -32 -32 -32 -31 -30 -29 -26 -23 -18 -14 -11 -12 -16 -20 -21 -22 -21 -20 -20 -21 -20 -16 -11 -10 -12 -17 -21 -23 -22 -20 -18 -18 -20 -22 -25 -27 -27 -26 -26 -27 -28 -27 -27 -27 -24 -21 -24 -27 -31 -31 -26 -22 -21 -23 -25 -27 -30 -34 -39 -43 -47 -48 -49 -51 -51 -47 -43 -37 -31 -30 -37 -44 -48 -47 -41 -37 -35 -34 -35 -36 -37 -40 -45 -49 -50 -48 -41 -32 -27 -24 -26 -31 -39 -39 -40 -41 -42 -40 -37 -35 -34 -36 -37 -37 -39 -42 -45 -47 -46 -45 -44 -42 -38 -33 -28 -25 -23 -22 -21 -21 -21 -28 -35 -40 -42 -42 -42 -44 -43 -40 -34 -29 -26 -26 -27 -27 -28 -33 -40 -44 -46 -46 -45 -46 -46 -48 -51 -53 -54 -50 -45 -43 -43 -44 -48 -53 -57 -59 -56 -51 -47 -47 -48 -48 -42 -36 -30 -27 -28 -33 -37 -40 -38 -30 -27 -29 -38 -43 -47 -14 -16 -17 -17 -17 -16 -14 -10 -9 -10 -12 -15 -15 -14 -13 -12 -10 -10 -9 -9 -8 -8 -8 -8 -8 -9 -9 -8 -8 -8 -8 -7 -7 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -7 -8 -9 -10 -11 -11 -13 -14 -13 -12 -11 -11 -10 -9 -9 -9 -9 -7 -6 -4 -4 -5 -6 -6 -6 -4 -2 -2 -2 -3 -5 -5 -5 -5 -4 -4 -4 -4 -4 -6 -9 -10 -12 -14 -17 -21 -23 -23 -20 -15 -12 -12 -15 -18 -19 -18 -18 -18 -21 -23 -22 -21 -19 -18 -18 -21 -22 -18 -11 -9 -10 -13 -15 -17 -18 -16 -14 -13 -15 -18 -19 -16 -12 -8 -5 -2 1 3 2 -2 -8 -17 -22 -26 -28 -30 -31 -31 -31 -32 -32 -32 -31 -29 -27 -24 -21 -19 -19 -21 -24 -24 -23 -21 -19 -19 -20 -21 -22 -23 -24 -25 -26 -25 -22 -13 -8 -7 -7 -5 -3 -4 -7 -11 -16 -18 -17 -13 -7 -1 3 5 5 1 -5 -11 -14 -14 -12 -11 -11 -12 -14 -18 -22 -25 -26 -25 -24 -22 -20 -17 -17 -18 -19 -18 -16 -11 -10 -13 -18 -23 -25 -24 -23 -22 -20 -20 -21 -22 -20 -17 -16 -17 -18 -18 -18 -22 -27 -31 -32 -31 -30 -29 -28 -26 -25 -20 -15 -12 -12 -16 -20 -21 -21 -20 -21 -22 -22 -22 -19 -14 -12 -12 -15 -20 -23 -23 -21 -18 -18 -20 -22 -24 -27 -28 -27 -26 -27 -28 -28 -28 -29 -28 -23 -22 -26 -31 -32 -30 -27 -25 -24 -24 -26 -29 -34 -39 -43 -47 -50 -51 -54 -54 -50 -44 -39 -34 -33 -37 -44 -50 -49 -43 -39 -36 -35 -35 -36 -36 -38 -43 -48 -50 -49 -44 -36 -31 -27 -26 -29 -37 -40 -41 -42 -43 -41 -39 -36 -35 -35 -36 -37 -39 -41 -45 -47 -48 -48 -48 -46 -42 -36 -29 -25 -25 -25 -24 -23 -23 -27 -34 -39 -41 -39 -40 -42 -42 -40 -35 -30 -26 -26 -27 -26 -27 -31 -38 -43 -45 -45 -45 -46 -46 -47 -50 -53 -56 -51 -46 -43 -43 -44 -48 -52 -57 -60 -57 -51 -47 -45 -47 -48 -45 -39 -32 -29 -30 -33 -38 -41 -38 -31 -27 -28 -37 -42 -46 -14 -17 -19 -21 -19 -16 -13 -11 -13 -14 -14 -13 -11 -9 -9 -9 -9 -8 -7 -8 -8 -8 -8 -8 -9 -9 -10 -10 -10 -9 -9 -8 -7 -7 -7 -6 -5 -5 -5 -6 -6 -7 -7 -7 -8 -8 -9 -10 -11 -11 -12 -13 -13 -14 -13 -12 -10 -8 -8 -8 -9 -8 -6 -5 -4 -5 -6 -7 -6 -5 -3 -2 -2 -3 -4 -5 -6 -6 -5 -5 -5 -4 -4 -4 -6 -8 -10 -13 -17 -20 -22 -22 -20 -16 -11 -10 -13 -18 -21 -21 -20 -18 -19 -21 -21 -21 -20 -18 -17 -19 -21 -22 -12 -7 -7 -11 -14 -16 -18 -19 -18 -16 -15 -15 -15 -14 -12 -11 -9 -7 -4 0 2 1 -3 -11 -18 -24 -27 -29 -29 -29 -30 -33 -34 -34 -33 -31 -28 -26 -23 -21 -20 -20 -23 -24 -24 -22 -19 -18 -19 -19 -19 -20 -22 -24 -26 -27 -26 -18 -10 -7 -7 -7 -5 -4 -5 -7 -10 -12 -15 -18 -18 -14 -7 -2 3 4 1 -6 -11 -15 -15 -13 -11 -11 -12 -15 -19 -22 -23 -22 -20 -19 -17 -16 -16 -17 -19 -20 -19 -15 -13 -15 -19 -24 -26 -25 -25 -24 -24 -23 -24 -23 -21 -18 -16 -15 -15 -16 -17 -20 -24 -28 -29 -28 -27 -27 -26 -27 -27 -24 -19 -14 -11 -15 -18 -20 -20 -19 -19 -21 -23 -25 -23 -18 -14 -12 -14 -19 -22 -23 -21 -19 -18 -20 -22 -24 -27 -29 -28 -27 -27 -28 -28 -30 -32 -32 -28 -26 -27 -32 -34 -33 -30 -26 -24 -23 -23 -27 -31 -37 -41 -46 -50 -53 -56 -56 -52 -46 -41 -40 -39 -38 -41 -48 -49 -45 -41 -38 -36 -35 -36 -36 -36 -40 -46 -49 -49 -46 -40 -34 -30 -27 -28 -34 -37 -38 -40 -43 -42 -40 -37 -35 -35 -36 -37 -39 -40 -43 -46 -49 -50 -51 -51 -46 -38 -29 -25 -27 -27 -26 -25 -25 -28 -33 -38 -40 -38 -38 -40 -40 -39 -35 -31 -28 -27 -27 -26 -27 -29 -36 -42 -44 -45 -45 -46 -45 -47 -50 -54 -56 -52 -47 -43 -42 -44 -47 -52 -57 -61 -58 -52 -47 -45 -47 -49 -47 -43 -35 -31 -31 -34 -38 -42 -40 -32 -27 -27 -36 -41 -45 -15 -18 -20 -21 -19 -15 -12 -13 -15 -14 -11 -7 -4 -5 -6 -7 -7 -5 -5 -5 -6 -6 -7 -7 -8 -9 -10 -11 -11 -11 -10 -9 -8 -7 -7 -6 -6 -5 -5 -6 -6 -7 -8 -8 -8 -8 -8 -10 -11 -12 -13 -14 -15 -16 -16 -14 -10 -8 -7 -8 -9 -9 -7 -6 -4 -5 -6 -7 -7 -6 -4 -2 -1 -2 -3 -4 -5 -6 -6 -6 -6 -5 -5 -4 -5 -6 -7 -11 -15 -18 -20 -20 -20 -17 -13 -12 -13 -16 -20 -21 -20 -18 -17 -17 -19 -21 -22 -20 -19 -19 -21 -23 -18 -9 -5 -7 -12 -14 -17 -21 -23 -22 -17 -13 -10 -9 -9 -9 -10 -11 -10 -5 -2 -0 -1 -6 -14 -21 -26 -29 -29 -28 -30 -33 -36 -36 -35 -32 -29 -27 -26 -24 -21 -18 -18 -22 -24 -24 -22 -19 -18 -18 -18 -19 -21 -24 -26 -28 -29 -25 -18 -11 -7 -5 -4 -5 -5 -6 -6 -9 -13 -16 -19 -20 -16 -9 -2 2 -0 -5 -11 -15 -17 -15 -13 -11 -9 -11 -15 -18 -19 -19 -17 -16 -15 -16 -16 -18 -20 -22 -22 -19 -16 -16 -19 -23 -26 -26 -25 -25 -25 -25 -25 -24 -22 -18 -16 -16 -16 -17 -17 -19 -21 -24 -26 -26 -26 -26 -26 -28 -29 -27 -22 -17 -13 -15 -18 -20 -20 -19 -18 -20 -23 -24 -23 -21 -17 -14 -13 -16 -21 -23 -23 -19 -19 -20 -22 -25 -28 -29 -28 -27 -27 -28 -30 -32 -33 -34 -32 -29 -28 -30 -32 -33 -30 -26 -20 -19 -20 -23 -28 -32 -37 -44 -49 -53 -56 -56 -53 -47 -43 -43 -41 -40 -40 -45 -48 -47 -44 -41 -38 -36 -36 -36 -37 -39 -44 -48 -49 -47 -42 -37 -33 -29 -28 -32 -34 -36 -38 -42 -43 -40 -38 -35 -35 -37 -38 -38 -38 -41 -44 -47 -50 -53 -53 -49 -41 -31 -27 -28 -28 -27 -27 -27 -29 -33 -37 -39 -36 -36 -38 -39 -38 -35 -32 -29 -28 -27 -27 -26 -28 -33 -39 -42 -44 -44 -45 -45 -47 -50 -54 -56 -53 -48 -43 -42 -44 -47 -52 -57 -62 -59 -53 -48 -46 -49 -52 -51 -45 -37 -33 -33 -35 -39 -44 -41 -35 -28 -27 -36 -40 -42 -17 -18 -20 -20 -17 -13 -11 -12 -12 -9 -5 -3 -2 -3 -5 -5 -5 -3 -3 -3 -4 -5 -5 -5 -6 -7 -9 -10 -11 -11 -11 -11 -9 -8 -8 -7 -7 -6 -6 -6 -7 -9 -10 -10 -9 -9 -10 -10 -10 -11 -13 -15 -15 -15 -14 -12 -11 -9 -8 -7 -8 -9 -8 -6 -4 -4 -5 -6 -7 -7 -5 -3 -1 -0 -1 -2 -4 -5 -6 -6 -7 -7 -7 -6 -6 -6 -6 -9 -13 -15 -17 -18 -18 -16 -15 -15 -15 -16 -18 -20 -20 -19 -17 -16 -16 -18 -20 -21 -22 -23 -24 -25 -21 -13 -8 -8 -10 -12 -16 -19 -19 -18 -17 -15 -12 -9 -6 -5 -7 -10 -12 -11 -8 -5 -4 -4 -8 -15 -21 -26 -27 -28 -30 -33 -36 -37 -36 -34 -30 -27 -26 -24 -21 -16 -14 -18 -23 -26 -25 -21 -19 -19 -19 -19 -20 -23 -26 -29 -30 -30 -25 -18 -10 -5 -4 -5 -6 -7 -7 -9 -11 -14 -16 -19 -19 -15 -9 -2 -2 -5 -9 -12 -14 -14 -14 -14 -13 -12 -12 -14 -17 -19 -18 -17 -16 -16 -16 -18 -21 -23 -24 -23 -21 -20 -21 -24 -27 -28 -27 -26 -25 -24 -24 -23 -22 -19 -17 -16 -17 -17 -17 -19 -21 -23 -24 -26 -28 -28 -27 -29 -31 -30 -26 -20 -15 -16 -18 -20 -19 -18 -18 -20 -22 -24 -23 -22 -21 -19 -15 -16 -21 -25 -25 -22 -21 -21 -23 -26 -27 -28 -28 -27 -28 -29 -31 -33 -34 -35 -33 -30 -28 -29 -30 -31 -30 -25 -18 -14 -14 -18 -23 -27 -34 -41 -46 -50 -54 -55 -52 -47 -44 -44 -42 -41 -42 -45 -48 -48 -46 -42 -39 -37 -37 -38 -38 -38 -41 -45 -48 -47 -43 -39 -35 -31 -30 -31 -32 -34 -34 -39 -41 -40 -38 -36 -36 -38 -38 -38 -37 -38 -41 -45 -49 -52 -54 -51 -45 -36 -31 -28 -27 -25 -26 -28 -31 -34 -37 -38 -35 -35 -37 -38 -37 -36 -34 -31 -29 -28 -28 -27 -27 -30 -36 -40 -42 -44 -45 -45 -46 -49 -53 -55 -53 -48 -43 -43 -44 -48 -53 -59 -63 -60 -55 -49 -47 -51 -53 -53 -47 -38 -35 -34 -36 -39 -45 -44 -37 -30 -28 -35 -40 -42 -18 -19 -19 -18 -14 -12 -10 -9 -7 -5 -4 -4 -5 -5 -6 -6 -5 -4 -4 -3 -3 -4 -4 -4 -5 -6 -7 -6 -6 -7 -7 -8 -8 -8 -7 -8 -8 -8 -8 -8 -7 -5 -5 -6 -7 -9 -11 -12 -12 -13 -13 -13 -13 -14 -13 -12 -12 -11 -9 -8 -8 -8 -8 -7 -5 -3 -3 -5 -7 -8 -7 -5 -2 0 1 1 -1 -3 -5 -6 -8 -9 -9 -9 -9 -8 -7 -7 -8 -12 -15 -17 -17 -17 -17 -18 -18 -18 -17 -18 -19 -19 -18 -16 -15 -15 -17 -20 -23 -25 -26 -25 -23 -17 -12 -8 -8 -11 -14 -15 -15 -15 -16 -16 -16 -13 -8 -4 -2 -3 -7 -11 -12 -10 -8 -7 -7 -9 -14 -20 -25 -29 -32 -34 -35 -36 -36 -34 -32 -28 -26 -25 -23 -19 -13 -15 -19 -22 -25 -25 -24 -22 -20 -19 -19 -21 -25 -28 -30 -29 -26 -21 -14 -7 -6 -6 -7 -8 -9 -10 -11 -12 -14 -15 -17 -17 -14 -9 -6 -6 -8 -10 -13 -15 -15 -14 -12 -8 -7 -8 -11 -14 -16 -17 -17 -17 -17 -19 -21 -23 -24 -25 -25 -24 -24 -25 -28 -29 -29 -27 -24 -22 -22 -22 -22 -20 -18 -17 -16 -17 -18 -19 -20 -22 -23 -25 -26 -27 -27 -30 -33 -32 -29 -23 -18 -17 -17 -18 -18 -18 -18 -20 -23 -24 -23 -24 -24 -23 -19 -19 -22 -26 -26 -24 -22 -22 -23 -24 -26 -27 -27 -28 -29 -30 -32 -34 -35 -35 -33 -30 -28 -28 -30 -31 -29 -26 -19 -12 -12 -15 -20 -24 -29 -35 -41 -45 -49 -51 -50 -47 -45 -44 -42 -40 -41 -44 -47 -48 -47 -43 -39 -37 -37 -38 -40 -37 -38 -41 -45 -46 -44 -41 -38 -33 -31 -31 -32 -33 -32 -36 -40 -40 -38 -37 -37 -38 -39 -38 -36 -36 -38 -42 -45 -50 -53 -53 -49 -41 -34 -30 -26 -24 -25 -28 -31 -34 -37 -36 -35 -35 -37 -37 -37 -36 -35 -33 -30 -29 -28 -28 -27 -28 -32 -37 -41 -43 -44 -44 -45 -49 -54 -55 -52 -47 -43 -43 -45 -49 -54 -60 -63 -61 -56 -51 -49 -52 -54 -53 -47 -38 -35 -34 -37 -41 -46 -45 -40 -32 -28 -34 -39 -42 -18 -17 -16 -14 -11 -9 -7 -6 -5 -5 -7 -8 -9 -9 -9 -9 -8 -6 -5 -4 -4 -5 -5 -4 -5 -5 -6 -6 -6 -7 -8 -7 -7 -7 -7 -8 -9 -10 -10 -9 -7 -6 -5 -5 -6 -8 -10 -12 -13 -14 -13 -12 -12 -12 -13 -13 -14 -13 -11 -9 -8 -9 -8 -7 -5 -3 -2 -4 -6 -8 -8 -7 -5 -2 1 2 1 -1 -3 -5 -7 -9 -11 -12 -12 -11 -9 -8 -7 -8 -12 -16 -17 -18 -19 -20 -21 -21 -19 -18 -18 -18 -18 -17 -16 -16 -15 -18 -22 -25 -26 -25 -23 -19 -15 -12 -10 -10 -12 -12 -12 -13 -14 -16 -17 -17 -13 -7 -2 -0 -3 -9 -12 -13 -12 -11 -12 -13 -16 -19 -22 -25 -29 -32 -34 -34 -35 -34 -32 -29 -27 -26 -25 -22 -17 -15 -17 -22 -27 -29 -28 -25 -22 -20 -20 -21 -22 -24 -26 -26 -24 -20 -15 -11 -9 -8 -8 -8 -10 -11 -11 -12 -13 -13 -15 -16 -16 -14 -10 -8 -7 -7 -9 -13 -16 -17 -15 -10 -7 -6 -8 -12 -16 -18 -19 -19 -19 -21 -22 -23 -24 -24 -25 -25 -25 -26 -28 -29 -29 -26 -22 -20 -20 -21 -22 -22 -19 -17 -16 -17 -18 -18 -19 -20 -21 -22 -24 -25 -25 -28 -30 -30 -26 -21 -17 -16 -15 -16 -17 -19 -20 -21 -23 -23 -22 -22 -23 -23 -20 -20 -22 -25 -26 -24 -22 -22 -22 -24 -25 -26 -27 -28 -29 -30 -32 -33 -34 -35 -32 -29 -28 -28 -29 -30 -29 -27 -22 -15 -12 -15 -20 -24 -29 -34 -39 -42 -45 -47 -47 -46 -45 -44 -41 -39 -38 -41 -45 -47 -47 -44 -40 -37 -36 -37 -40 -38 -37 -39 -42 -45 -45 -43 -40 -36 -33 -32 -32 -33 -32 -36 -39 -40 -38 -38 -38 -39 -40 -39 -36 -35 -35 -38 -42 -47 -51 -53 -51 -44 -37 -31 -27 -25 -25 -27 -31 -35 -37 -35 -35 -36 -37 -37 -37 -37 -36 -34 -31 -30 -29 -28 -27 -28 -30 -34 -40 -42 -43 -43 -45 -48 -53 -54 -52 -47 -42 -42 -44 -48 -54 -60 -63 -61 -58 -53 -51 -52 -53 -51 -47 -39 -35 -35 -37 -43 -46 -45 -39 -31 -28 -33 -39 -43 -16 -14 -11 -8 -7 -6 -6 -6 -7 -8 -9 -9 -9 -10 -10 -9 -8 -7 -7 -6 -5 -4 -5 -6 -7 -7 -7 -7 -9 -10 -10 -9 -8 -8 -8 -9 -11 -12 -11 -9 -7 -6 -5 -6 -6 -7 -8 -11 -13 -15 -14 -12 -11 -11 -11 -13 -15 -14 -12 -10 -10 -10 -9 -8 -5 -2 -2 -3 -6 -8 -9 -9 -8 -6 -2 1 2 2 -0 -3 -5 -8 -11 -15 -15 -15 -14 -12 -10 -8 -10 -13 -16 -18 -19 -21 -23 -23 -21 -19 -17 -17 -18 -18 -18 -17 -16 -16 -19 -22 -24 -24 -22 -19 -17 -15 -14 -13 -12 -12 -13 -12 -13 -15 -17 -19 -18 -13 -7 -1 0 -5 -9 -11 -12 -13 -14 -16 -17 -17 -16 -19 -24 -29 -32 -33 -34 -34 -33 -31 -28 -26 -26 -26 -24 -20 -19 -21 -25 -27 -26 -24 -21 -20 -21 -21 -21 -22 -23 -24 -23 -22 -19 -16 -13 -10 -8 -7 -8 -10 -11 -12 -14 -14 -14 -14 -15 -15 -14 -12 -9 -6 -7 -12 -17 -20 -21 -17 -12 -8 -8 -11 -16 -22 -25 -26 -24 -24 -25 -24 -24 -25 -25 -25 -25 -25 -26 -28 -28 -25 -21 -20 -20 -21 -23 -23 -21 -19 -17 -18 -18 -18 -18 -19 -20 -21 -21 -23 -24 -26 -27 -26 -23 -20 -17 -16 -16 -16 -17 -19 -20 -22 -22 -21 -19 -20 -21 -21 -19 -19 -22 -24 -24 -23 -23 -22 -22 -23 -26 -27 -27 -26 -26 -28 -30 -31 -33 -33 -32 -30 -28 -27 -28 -29 -30 -29 -25 -18 -15 -15 -18 -23 -29 -35 -40 -41 -41 -43 -45 -45 -43 -43 -41 -38 -35 -37 -42 -45 -47 -44 -40 -37 -35 -35 -38 -38 -37 -37 -40 -45 -46 -45 -43 -39 -36 -34 -33 -33 -34 -36 -39 -40 -38 -38 -38 -39 -40 -40 -37 -33 -33 -35 -39 -43 -47 -50 -51 -46 -39 -33 -28 -26 -26 -28 -31 -35 -36 -34 -35 -36 -37 -37 -37 -37 -36 -34 -32 -31 -29 -28 -27 -28 -29 -32 -38 -42 -42 -42 -43 -47 -51 -53 -51 -47 -42 -41 -43 -47 -52 -58 -60 -60 -58 -54 -51 -51 -51 -49 -46 -40 -36 -35 -37 -43 -45 -42 -36 -29 -27 -31 -38 -43 -10 -7 -5 -4 -4 -4 -6 -7 -7 -6 -5 -5 -4 -5 -5 -5 -5 -4 -5 -5 -6 -8 -10 -11 -11 -10 -9 -8 -8 -7 -8 -9 -11 -10 -9 -9 -13 -13 -11 -8 -6 -6 -6 -7 -7 -8 -8 -10 -13 -15 -15 -13 -11 -10 -10 -12 -14 -14 -13 -11 -11 -12 -12 -9 -6 -2 -1 -3 -5 -7 -8 -9 -10 -10 -8 -3 -0 1 0 -2 -4 -7 -11 -15 -16 -16 -16 -15 -14 -12 -11 -12 -14 -17 -19 -21 -23 -24 -23 -21 -19 -17 -17 -17 -18 -18 -17 -15 -16 -19 -22 -23 -22 -19 -18 -18 -18 -16 -15 -14 -14 -13 -13 -14 -16 -19 -20 -18 -13 -6 -1 -2 -5 -9 -11 -12 -15 -17 -18 -16 -14 -15 -19 -24 -29 -31 -33 -33 -33 -31 -28 -27 -27 -28 -29 -25 -22 -21 -23 -26 -25 -22 -20 -20 -21 -22 -22 -22 -22 -22 -22 -22 -21 -19 -15 -10 -6 -5 -6 -7 -10 -12 -14 -14 -14 -14 -15 -15 -16 -16 -14 -9 -8 -12 -18 -23 -26 -24 -19 -15 -11 -12 -18 -24 -29 -32 -31 -29 -27 -26 -25 -24 -23 -22 -22 -22 -24 -27 -28 -26 -23 -22 -23 -24 -25 -23 -21 -20 -19 -19 -20 -19 -19 -18 -19 -20 -20 -22 -23 -25 -26 -26 -24 -21 -19 -18 -17 -17 -17 -19 -21 -23 -22 -19 -18 -19 -20 -19 -18 -19 -21 -23 -23 -24 -24 -24 -23 -24 -26 -27 -27 -25 -24 -24 -26 -28 -30 -32 -32 -30 -28 -27 -27 -28 -30 -30 -27 -21 -16 -14 -15 -20 -28 -36 -42 -43 -41 -42 -43 -44 -43 -44 -42 -39 -34 -34 -38 -43 -45 -44 -40 -37 -34 -33 -35 -37 -37 -36 -38 -43 -45 -47 -46 -44 -40 -36 -34 -33 -34 -36 -38 -39 -38 -37 -37 -38 -40 -40 -38 -34 -32 -32 -37 -40 -43 -47 -49 -47 -41 -35 -30 -29 -27 -28 -31 -35 -35 -34 -35 -36 -36 -37 -37 -37 -36 -35 -34 -32 -31 -29 -28 -29 -29 -32 -37 -41 -41 -41 -42 -45 -49 -51 -51 -47 -42 -42 -43 -47 -52 -55 -57 -58 -57 -54 -51 -50 -49 -47 -45 -40 -37 -35 -37 -43 -44 -41 -35 -27 -25 -30 -36 -42 -5 -5 -4 -3 -2 -3 -4 -5 -5 -4 -4 -3 -3 -3 -3 -4 -4 -3 -4 -5 -7 -10 -13 -14 -14 -13 -11 -11 -9 -6 -6 -9 -14 -13 -11 -9 -11 -10 -9 -7 -7 -7 -7 -8 -9 -9 -9 -10 -12 -14 -15 -13 -11 -10 -10 -12 -13 -13 -12 -12 -13 -14 -14 -12 -8 -4 -2 -3 -5 -7 -8 -9 -11 -13 -13 -10 -6 -4 -3 -4 -6 -7 -7 -8 -10 -11 -12 -11 -12 -13 -13 -13 -14 -17 -19 -21 -22 -24 -25 -25 -23 -19 -16 -16 -18 -18 -17 -15 -15 -17 -21 -23 -23 -21 -19 -19 -21 -19 -16 -15 -15 -14 -13 -14 -15 -17 -20 -21 -18 -13 -6 -2 -3 -5 -8 -11 -14 -17 -17 -16 -14 -15 -17 -21 -25 -29 -31 -32 -32 -31 -29 -27 -27 -29 -30 -28 -23 -19 -18 -21 -22 -22 -22 -23 -24 -24 -24 -23 -23 -23 -23 -23 -23 -21 -18 -13 -9 -7 -7 -8 -9 -12 -14 -14 -13 -12 -13 -15 -17 -18 -18 -15 -11 -12 -16 -23 -28 -28 -25 -20 -15 -13 -17 -23 -29 -34 -34 -30 -27 -24 -24 -24 -24 -24 -22 -21 -23 -26 -28 -29 -28 -26 -26 -26 -26 -23 -21 -19 -19 -20 -21 -20 -19 -18 -18 -19 -20 -21 -22 -24 -25 -25 -24 -23 -21 -21 -20 -19 -17 -18 -19 -21 -22 -20 -19 -18 -17 -15 -16 -17 -19 -21 -23 -25 -26 -26 -25 -25 -26 -27 -27 -26 -23 -22 -23 -25 -28 -30 -29 -28 -28 -27 -26 -28 -30 -31 -29 -24 -18 -13 -13 -17 -25 -34 -39 -40 -40 -41 -43 -43 -43 -43 -42 -39 -34 -33 -35 -40 -44 -43 -40 -37 -34 -32 -32 -34 -35 -35 -36 -40 -44 -46 -47 -47 -44 -39 -36 -35 -34 -35 -37 -39 -38 -37 -36 -37 -39 -40 -39 -36 -32 -31 -35 -37 -39 -43 -47 -47 -44 -39 -34 -31 -29 -29 -32 -34 -34 -34 -35 -36 -36 -36 -36 -36 -35 -35 -35 -34 -32 -30 -30 -30 -30 -31 -35 -39 -40 -40 -41 -44 -48 -51 -50 -48 -43 -42 -44 -47 -52 -54 -56 -57 -57 -55 -51 -49 -47 -46 -44 -41 -38 -36 -37 -42 -44 -43 -37 -29 -26 -29 -35 -40 -4 -4 -4 -3 -2 -2 -3 -4 -5 -5 -5 -4 -3 -2 -2 -3 -4 -4 -4 -4 -6 -8 -11 -13 -14 -14 -14 -13 -10 -8 -7 -10 -13 -14 -13 -11 -9 -6 -5 -6 -8 -9 -8 -9 -9 -11 -11 -11 -11 -12 -12 -12 -11 -11 -11 -14 -14 -14 -13 -13 -13 -13 -14 -15 -13 -8 -3 -1 -3 -6 -8 -10 -11 -14 -16 -16 -14 -10 -7 -7 -8 -9 -9 -8 -9 -10 -11 -11 -13 -14 -13 -13 -16 -20 -22 -22 -22 -24 -25 -25 -24 -22 -18 -16 -17 -17 -17 -17 -17 -18 -20 -22 -22 -20 -20 -21 -24 -21 -17 -14 -14 -15 -14 -14 -14 -16 -18 -21 -22 -20 -15 -6 -2 -2 -5 -8 -12 -15 -17 -16 -14 -15 -16 -19 -22 -26 -29 -30 -31 -30 -29 -28 -27 -28 -29 -29 -26 -20 -15 -15 -18 -22 -24 -25 -26 -25 -24 -22 -20 -20 -21 -23 -23 -23 -21 -17 -12 -8 -8 -9 -9 -9 -11 -13 -13 -14 -15 -16 -18 -20 -20 -19 -15 -13 -14 -19 -24 -26 -26 -23 -18 -14 -15 -20 -27 -33 -34 -31 -27 -24 -24 -25 -26 -25 -24 -24 -25 -26 -28 -28 -26 -24 -22 -21 -21 -17 -13 -12 -15 -17 -18 -19 -20 -19 -18 -17 -18 -20 -23 -24 -24 -24 -24 -24 -23 -23 -22 -20 -17 -17 -18 -20 -21 -21 -21 -19 -16 -12 -13 -15 -18 -21 -23 -26 -27 -28 -27 -25 -26 -27 -27 -27 -25 -23 -23 -24 -26 -28 -28 -27 -27 -26 -26 -27 -29 -32 -30 -26 -19 -14 -12 -15 -22 -30 -35 -35 -36 -39 -41 -41 -41 -42 -42 -40 -35 -31 -33 -37 -43 -42 -40 -37 -34 -32 -31 -32 -34 -34 -34 -37 -41 -45 -47 -48 -48 -45 -42 -39 -36 -35 -36 -38 -37 -36 -35 -36 -38 -40 -40 -38 -34 -32 -33 -34 -36 -39 -44 -47 -46 -42 -37 -34 -31 -31 -32 -33 -33 -33 -34 -35 -35 -35 -35 -34 -34 -35 -35 -34 -33 -31 -31 -30 -30 -30 -33 -38 -40 -40 -40 -43 -47 -50 -50 -48 -43 -42 -44 -48 -52 -54 -55 -56 -56 -55 -52 -48 -46 -45 -44 -41 -39 -36 -37 -42 -46 -46 -40 -32 -28 -28 -34 -40 -4 -5 -5 -4 -4 -4 -5 -6 -8 -8 -8 -6 -4 -3 -3 -4 -5 -5 -5 -4 -4 -5 -8 -11 -13 -14 -13 -11 -9 -9 -10 -11 -11 -12 -13 -15 -13 -9 -5 -4 -6 -8 -8 -8 -9 -11 -14 -14 -12 -10 -9 -10 -11 -12 -13 -15 -15 -15 -14 -13 -13 -14 -16 -17 -16 -11 -6 -2 -3 -6 -9 -10 -11 -11 -13 -16 -17 -16 -13 -10 -9 -9 -8 -7 -5 -5 -7 -11 -16 -18 -17 -16 -18 -22 -23 -23 -23 -24 -25 -25 -24 -23 -21 -19 -18 -18 -18 -19 -19 -19 -19 -20 -20 -20 -21 -23 -25 -23 -19 -15 -14 -15 -16 -16 -15 -14 -15 -18 -21 -23 -22 -15 -6 -2 -2 -6 -11 -14 -15 -14 -14 -15 -16 -17 -19 -22 -25 -28 -30 -30 -30 -29 -27 -26 -28 -30 -29 -25 -16 -11 -14 -19 -25 -27 -27 -26 -24 -22 -20 -19 -19 -20 -22 -23 -22 -20 -16 -10 -8 -8 -9 -9 -10 -13 -15 -15 -16 -18 -20 -22 -23 -22 -18 -15 -14 -16 -20 -24 -25 -25 -21 -17 -17 -20 -27 -33 -34 -31 -28 -25 -25 -27 -27 -27 -27 -27 -27 -28 -28 -27 -25 -24 -21 -18 -16 -14 -11 -10 -12 -16 -19 -21 -21 -21 -19 -18 -18 -20 -24 -25 -24 -24 -24 -24 -23 -22 -22 -21 -18 -17 -18 -18 -19 -20 -20 -20 -17 -13 -12 -14 -18 -21 -23 -25 -26 -28 -28 -26 -26 -27 -28 -28 -27 -25 -24 -23 -24 -25 -25 -25 -26 -26 -25 -26 -29 -32 -31 -27 -22 -15 -11 -13 -20 -28 -32 -32 -32 -36 -41 -42 -42 -43 -45 -43 -37 -31 -30 -34 -42 -42 -40 -37 -35 -32 -30 -31 -34 -35 -33 -35 -39 -43 -46 -48 -49 -49 -47 -43 -38 -36 -35 -37 -37 -35 -34 -35 -36 -40 -41 -39 -36 -33 -32 -33 -34 -36 -41 -45 -48 -46 -41 -37 -34 -34 -34 -33 -32 -32 -33 -34 -33 -32 -32 -32 -32 -33 -34 -34 -34 -32 -31 -30 -30 -29 -31 -36 -39 -40 -40 -43 -46 -49 -49 -48 -43 -41 -43 -49 -52 -54 -54 -55 -56 -55 -52 -49 -45 -44 -43 -41 -39 -37 -38 -42 -46 -48 -43 -35 -29 -29 -33 -39 -5 -6 -7 -6 -6 -7 -9 -10 -11 -10 -10 -9 -8 -7 -7 -7 -7 -7 -6 -5 -5 -5 -7 -8 -10 -11 -11 -9 -8 -10 -11 -12 -12 -10 -8 -7 -5 -5 -5 -6 -8 -10 -9 -8 -9 -10 -10 -10 -9 -9 -9 -10 -12 -13 -13 -14 -15 -15 -14 -13 -12 -14 -16 -17 -18 -14 -9 -5 -3 -6 -9 -11 -12 -11 -12 -14 -16 -17 -16 -12 -8 -5 -4 -4 -4 -5 -6 -9 -12 -14 -15 -17 -19 -21 -23 -23 -24 -24 -25 -25 -25 -25 -24 -22 -20 -19 -20 -20 -20 -20 -20 -20 -20 -20 -22 -24 -26 -25 -22 -17 -14 -13 -15 -17 -17 -16 -15 -16 -19 -21 -23 -21 -14 -7 -3 -7 -12 -14 -13 -12 -12 -13 -15 -17 -19 -20 -22 -24 -27 -29 -29 -28 -26 -25 -26 -28 -29 -27 -19 -11 -10 -16 -23 -29 -29 -27 -24 -23 -21 -18 -18 -19 -21 -22 -23 -22 -20 -14 -10 -9 -9 -10 -11 -13 -15 -16 -17 -20 -22 -24 -25 -25 -21 -17 -14 -13 -15 -20 -24 -27 -27 -23 -20 -21 -26 -32 -33 -31 -29 -27 -28 -28 -29 -29 -29 -29 -29 -28 -26 -22 -20 -19 -19 -19 -20 -21 -20 -16 -13 -16 -19 -20 -21 -22 -20 -18 -18 -19 -22 -24 -25 -25 -24 -23 -21 -21 -21 -21 -19 -18 -18 -17 -17 -19 -21 -21 -18 -14 -13 -14 -17 -19 -21 -23 -25 -28 -29 -30 -29 -29 -29 -29 -28 -27 -26 -25 -24 -23 -23 -23 -25 -26 -26 -26 -28 -31 -31 -29 -24 -16 -11 -12 -17 -23 -28 -30 -31 -35 -42 -44 -45 -47 -47 -46 -40 -34 -32 -33 -39 -41 -39 -37 -35 -33 -32 -32 -35 -37 -36 -37 -39 -42 -44 -46 -48 -49 -48 -45 -40 -36 -35 -36 -35 -34 -34 -34 -35 -39 -41 -41 -39 -34 -32 -32 -33 -35 -38 -43 -47 -49 -45 -41 -38 -36 -35 -33 -32 -32 -32 -32 -30 -30 -30 -30 -30 -31 -33 -34 -34 -33 -31 -30 -30 -28 -30 -34 -38 -40 -40 -42 -46 -49 -49 -47 -43 -41 -42 -48 -52 -54 -54 -54 -55 -55 -53 -50 -46 -45 -44 -43 -40 -37 -38 -42 -47 -49 -45 -38 -33 -30 -33 -39 -7 -8 -9 -9 -8 -10 -11 -12 -11 -10 -10 -10 -12 -13 -12 -10 -8 -7 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -9 -12 -13 -14 -12 -8 -5 -3 -3 -6 -10 -11 -10 -8 -8 -8 -9 -10 -10 -9 -8 -9 -10 -13 -15 -15 -14 -13 -15 -16 -15 -14 -12 -13 -15 -17 -18 -17 -12 -7 -4 -4 -8 -12 -13 -12 -11 -12 -15 -16 -16 -12 -7 -3 -1 -2 -4 -6 -8 -10 -11 -12 -13 -15 -18 -20 -21 -22 -23 -24 -24 -25 -25 -26 -26 -24 -22 -20 -21 -20 -21 -22 -23 -22 -21 -22 -24 -27 -27 -26 -23 -19 -15 -13 -14 -16 -17 -17 -15 -14 -15 -17 -20 -22 -19 -14 -8 -8 -12 -13 -12 -11 -12 -13 -15 -16 -17 -18 -20 -21 -23 -25 -27 -27 -26 -23 -23 -26 -29 -29 -25 -16 -11 -13 -20 -26 -28 -26 -24 -22 -21 -18 -17 -18 -20 -22 -23 -23 -23 -20 -14 -11 -10 -12 -14 -15 -15 -15 -17 -21 -23 -26 -28 -30 -29 -25 -20 -17 -18 -21 -25 -28 -29 -26 -21 -19 -22 -29 -32 -31 -29 -29 -29 -30 -31 -31 -30 -30 -29 -27 -23 -18 -15 -16 -19 -22 -26 -27 -24 -19 -13 -13 -15 -18 -20 -22 -22 -21 -19 -19 -21 -22 -23 -23 -23 -21 -20 -20 -20 -20 -20 -19 -18 -18 -18 -20 -22 -23 -20 -15 -14 -14 -16 -18 -20 -23 -26 -28 -30 -30 -30 -30 -31 -31 -30 -29 -28 -27 -26 -24 -22 -22 -24 -26 -27 -27 -28 -30 -31 -29 -26 -19 -12 -11 -14 -19 -24 -29 -33 -37 -41 -45 -47 -49 -49 -48 -43 -38 -35 -34 -37 -38 -39 -37 -35 -34 -33 -34 -36 -38 -38 -38 -39 -41 -43 -44 -46 -47 -48 -45 -40 -35 -33 -34 -34 -34 -33 -33 -34 -38 -41 -42 -41 -36 -33 -32 -32 -34 -36 -40 -45 -49 -47 -45 -42 -39 -37 -34 -33 -33 -32 -30 -29 -29 -29 -29 -29 -31 -32 -34 -34 -33 -32 -31 -30 -28 -28 -31 -36 -39 -39 -41 -45 -48 -50 -47 -43 -41 -41 -47 -52 -54 -54 -53 -54 -55 -54 -51 -47 -46 -46 -45 -42 -38 -39 -42 -47 -50 -47 -43 -37 -32 -33 -38 -9 -10 -10 -9 -9 -10 -10 -10 -8 -7 -6 -7 -8 -8 -8 -7 -6 -5 -5 -5 -5 -6 -6 -6 -5 -6 -6 -7 -9 -11 -12 -12 -8 -5 -3 -4 -5 -8 -9 -10 -9 -7 -7 -8 -9 -10 -10 -9 -9 -10 -11 -12 -13 -13 -13 -13 -15 -17 -16 -15 -13 -13 -14 -16 -19 -19 -15 -9 -4 -2 -6 -11 -13 -13 -12 -12 -14 -15 -16 -13 -10 -6 -4 -3 -4 -6 -9 -10 -11 -10 -11 -13 -16 -17 -19 -20 -22 -23 -23 -23 -24 -25 -26 -24 -22 -20 -20 -20 -21 -23 -25 -25 -23 -24 -26 -27 -27 -25 -23 -21 -17 -13 -13 -14 -16 -18 -16 -14 -13 -13 -16 -20 -21 -19 -15 -11 -12 -12 -11 -12 -15 -16 -17 -17 -17 -17 -18 -20 -22 -24 -26 -28 -28 -26 -23 -24 -26 -27 -27 -20 -13 -11 -15 -21 -23 -23 -23 -22 -20 -17 -17 -17 -19 -21 -23 -24 -25 -24 -19 -13 -11 -12 -15 -16 -16 -16 -18 -22 -25 -28 -31 -32 -31 -28 -23 -19 -18 -20 -24 -28 -32 -30 -24 -19 -18 -24 -29 -31 -32 -31 -31 -32 -33 -33 -32 -30 -28 -24 -19 -15 -14 -17 -22 -26 -29 -27 -24 -20 -17 -15 -14 -15 -18 -21 -22 -22 -22 -22 -23 -22 -22 -23 -23 -22 -21 -20 -19 -19 -20 -20 -19 -18 -18 -19 -21 -23 -21 -18 -15 -15 -16 -18 -22 -24 -26 -27 -28 -30 -31 -31 -32 -32 -32 -31 -29 -29 -28 -27 -24 -22 -23 -26 -28 -28 -28 -29 -30 -30 -27 -22 -14 -11 -13 -19 -26 -32 -38 -41 -42 -44 -47 -50 -51 -49 -45 -39 -35 -34 -35 -38 -39 -39 -36 -36 -36 -36 -38 -39 -39 -40 -40 -41 -42 -43 -44 -45 -46 -45 -40 -35 -31 -32 -33 -34 -34 -33 -34 -37 -40 -42 -42 -38 -35 -33 -32 -33 -35 -38 -43 -47 -47 -46 -44 -42 -39 -36 -35 -34 -33 -29 -28 -28 -29 -29 -29 -31 -33 -34 -34 -33 -32 -31 -30 -28 -27 -29 -33 -37 -38 -40 -43 -47 -50 -46 -43 -41 -41 -47 -52 -56 -56 -53 -53 -54 -54 -52 -48 -47 -47 -47 -44 -40 -40 -43 -47 -50 -48 -45 -40 -35 -33 -38 -10 -10 -9 -8 -8 -8 -7 -6 -4 -4 -4 -4 -6 -7 -7 -6 -5 -4 -4 -5 -6 -7 -7 -7 -6 -7 -7 -9 -10 -11 -10 -8 -5 -3 -4 -6 -8 -9 -9 -9 -8 -8 -8 -8 -9 -9 -9 -9 -9 -10 -9 -9 -11 -11 -12 -13 -16 -17 -17 -16 -14 -13 -14 -16 -19 -21 -18 -13 -6 -2 -5 -9 -13 -14 -13 -13 -13 -15 -16 -15 -14 -12 -9 -6 -5 -5 -7 -8 -8 -8 -8 -10 -11 -14 -16 -18 -20 -21 -21 -21 -22 -23 -24 -23 -21 -20 -20 -20 -22 -23 -26 -28 -27 -26 -26 -25 -24 -23 -22 -21 -19 -15 -13 -13 -15 -17 -17 -16 -14 -12 -12 -16 -20 -22 -20 -16 -13 -11 -10 -12 -16 -17 -17 -17 -16 -16 -17 -19 -21 -23 -26 -29 -29 -28 -23 -21 -21 -24 -25 -22 -17 -13 -11 -15 -19 -22 -22 -21 -19 -17 -16 -16 -17 -19 -22 -25 -27 -26 -23 -17 -12 -10 -13 -16 -18 -20 -20 -22 -26 -29 -30 -30 -28 -25 -22 -20 -19 -20 -22 -25 -30 -31 -28 -23 -19 -19 -23 -28 -31 -32 -31 -32 -34 -36 -36 -32 -26 -20 -14 -11 -14 -18 -23 -26 -28 -26 -23 -22 -23 -21 -18 -16 -17 -19 -21 -22 -23 -24 -24 -22 -22 -21 -22 -22 -22 -21 -18 -18 -20 -20 -19 -18 -16 -17 -19 -22 -22 -21 -19 -17 -16 -18 -22 -25 -26 -26 -27 -29 -31 -32 -32 -32 -32 -32 -31 -30 -30 -29 -26 -23 -22 -25 -27 -27 -27 -28 -29 -29 -28 -24 -16 -10 -10 -17 -25 -32 -37 -40 -42 -44 -48 -51 -52 -50 -46 -40 -35 -32 -35 -38 -40 -40 -39 -38 -38 -39 -40 -40 -40 -40 -40 -41 -42 -42 -42 -42 -43 -44 -41 -37 -33 -31 -32 -34 -36 -34 -33 -36 -39 -42 -42 -39 -36 -34 -32 -33 -35 -37 -40 -44 -46 -46 -46 -45 -42 -39 -37 -35 -33 -30 -29 -29 -29 -29 -30 -31 -32 -33 -33 -33 -33 -32 -31 -28 -26 -27 -30 -34 -37 -39 -42 -46 -49 -46 -44 -42 -41 -46 -52 -55 -56 -54 -53 -54 -54 -53 -49 -46 -46 -46 -43 -40 -40 -43 -46 -49 -48 -46 -43 -37 -33 -37 -9 -7 -6 -5 -6 -6 -5 -4 -3 -4 -4 -3 -4 -6 -7 -7 -5 -5 -6 -9 -11 -11 -9 -8 -8 -8 -9 -10 -10 -9 -7 -5 -3 -4 -6 -7 -8 -8 -8 -8 -8 -8 -8 -9 -10 -10 -10 -10 -10 -9 -7 -8 -11 -13 -14 -14 -16 -17 -17 -16 -15 -14 -14 -15 -18 -20 -19 -16 -10 -4 -4 -7 -11 -14 -15 -14 -14 -15 -16 -16 -15 -13 -11 -9 -8 -6 -5 -6 -6 -6 -6 -6 -7 -9 -12 -15 -18 -20 -19 -18 -18 -20 -22 -23 -22 -21 -20 -21 -22 -23 -26 -29 -30 -28 -25 -23 -22 -22 -21 -21 -21 -18 -15 -13 -14 -16 -18 -19 -17 -13 -10 -12 -17 -22 -24 -21 -16 -11 -9 -11 -14 -16 -16 -16 -15 -15 -16 -17 -19 -22 -25 -28 -29 -28 -23 -20 -19 -21 -24 -24 -21 -16 -12 -13 -16 -19 -21 -21 -20 -18 -17 -17 -17 -18 -21 -24 -27 -28 -26 -22 -16 -9 -11 -16 -20 -22 -20 -19 -21 -24 -25 -24 -23 -22 -21 -21 -21 -20 -20 -22 -26 -30 -30 -27 -21 -17 -20 -25 -29 -32 -32 -33 -35 -36 -35 -30 -24 -18 -13 -15 -20 -24 -27 -28 -28 -27 -25 -24 -24 -24 -22 -20 -17 -17 -19 -21 -23 -24 -23 -21 -20 -20 -20 -21 -21 -19 -17 -18 -19 -20 -20 -19 -16 -16 -17 -19 -22 -22 -21 -19 -17 -18 -21 -24 -26 -26 -27 -29 -31 -32 -32 -33 -33 -33 -32 -31 -31 -30 -28 -24 -22 -24 -26 -27 -27 -27 -28 -29 -28 -25 -18 -11 -8 -15 -23 -30 -35 -38 -40 -42 -46 -49 -51 -50 -47 -42 -36 -31 -34 -39 -42 -42 -40 -40 -40 -41 -42 -42 -41 -41 -40 -39 -40 -41 -40 -39 -40 -42 -42 -40 -38 -33 -33 -34 -35 -33 -32 -35 -38 -41 -42 -41 -38 -36 -34 -34 -35 -36 -38 -41 -44 -46 -47 -46 -44 -41 -38 -35 -32 -31 -30 -30 -30 -30 -30 -31 -31 -32 -32 -33 -33 -33 -31 -29 -27 -27 -29 -32 -35 -38 -41 -45 -48 -46 -44 -42 -41 -46 -51 -55 -55 -53 -53 -55 -56 -55 -49 -45 -44 -45 -42 -39 -40 -42 -45 -47 -47 -47 -45 -39 -34 -35 -4 -2 -2 -3 -5 -5 -5 -5 -4 -5 -5 -6 -7 -9 -10 -8 -6 -5 -7 -11 -14 -14 -11 -7 -8 -9 -10 -10 -8 -6 -4 -3 -4 -6 -8 -8 -7 -6 -7 -7 -7 -7 -9 -10 -11 -12 -12 -12 -11 -8 -5 -7 -10 -12 -14 -16 -16 -16 -16 -16 -15 -14 -14 -14 -16 -18 -19 -18 -14 -8 -5 -6 -10 -14 -16 -15 -14 -14 -14 -15 -15 -16 -17 -18 -16 -13 -9 -6 -5 -6 -6 -7 -7 -7 -10 -13 -16 -18 -18 -17 -17 -18 -19 -20 -21 -21 -20 -21 -23 -25 -28 -30 -31 -28 -24 -21 -21 -21 -21 -21 -21 -20 -18 -15 -14 -14 -17 -19 -19 -16 -11 -10 -14 -20 -24 -24 -19 -12 -7 -7 -11 -14 -15 -15 -14 -14 -15 -17 -18 -20 -23 -26 -28 -27 -24 -21 -19 -19 -21 -23 -23 -21 -16 -12 -12 -15 -18 -20 -20 -19 -18 -17 -17 -17 -19 -21 -25 -27 -28 -26 -22 -17 -15 -16 -18 -19 -17 -14 -14 -15 -18 -20 -22 -22 -21 -22 -22 -20 -19 -19 -23 -28 -31 -30 -25 -19 -18 -21 -25 -30 -32 -34 -35 -35 -31 -27 -24 -22 -20 -20 -23 -26 -29 -30 -29 -27 -25 -24 -22 -22 -22 -20 -17 -16 -18 -20 -23 -25 -22 -20 -18 -18 -18 -18 -19 -19 -19 -19 -20 -21 -21 -20 -17 -16 -16 -18 -21 -23 -24 -23 -19 -17 -19 -23 -25 -25 -26 -29 -32 -34 -34 -34 -34 -34 -32 -32 -32 -31 -29 -25 -23 -24 -26 -27 -27 -27 -28 -28 -28 -26 -20 -14 -9 -12 -19 -26 -32 -37 -38 -41 -44 -47 -49 -49 -47 -43 -38 -32 -34 -39 -42 -43 -41 -40 -40 -42 -43 -43 -42 -41 -39 -38 -39 -39 -39 -39 -39 -41 -43 -43 -41 -36 -34 -34 -34 -31 -32 -34 -38 -40 -42 -42 -40 -37 -35 -35 -35 -35 -36 -38 -41 -44 -46 -47 -45 -42 -39 -35 -32 -31 -30 -30 -30 -31 -30 -29 -30 -30 -31 -31 -32 -32 -30 -28 -27 -26 -27 -31 -34 -37 -40 -45 -47 -46 -44 -42 -42 -45 -50 -54 -53 -52 -54 -56 -58 -56 -50 -46 -43 -43 -40 -39 -39 -41 -43 -45 -46 -47 -46 -41 -35 -34 1 1 -2 -5 -8 -9 -8 -7 -6 -6 -6 -7 -8 -9 -10 -8 -6 -6 -8 -11 -13 -13 -11 -8 -8 -10 -11 -10 -6 -4 -3 -4 -6 -8 -9 -8 -6 -5 -6 -6 -6 -6 -8 -10 -12 -14 -16 -16 -12 -7 -4 -4 -6 -9 -13 -16 -16 -15 -15 -15 -15 -14 -13 -13 -14 -16 -18 -19 -18 -13 -8 -7 -9 -12 -16 -15 -15 -14 -15 -16 -16 -17 -18 -19 -19 -17 -13 -8 -3 -3 -3 -4 -4 -4 -7 -10 -14 -17 -18 -18 -18 -18 -18 -18 -19 -21 -22 -23 -25 -27 -30 -31 -31 -28 -24 -20 -21 -21 -21 -21 -21 -21 -20 -18 -16 -14 -15 -18 -20 -20 -16 -12 -13 -17 -22 -24 -21 -14 -6 -4 -9 -12 -14 -14 -13 -14 -16 -17 -19 -20 -22 -24 -26 -27 -25 -23 -21 -18 -18 -20 -23 -24 -21 -15 -12 -12 -14 -18 -19 -19 -18 -17 -16 -16 -18 -20 -23 -26 -28 -29 -27 -23 -18 -15 -15 -16 -16 -14 -13 -13 -15 -19 -22 -23 -24 -24 -23 -20 -18 -18 -21 -25 -29 -30 -28 -23 -19 -18 -21 -26 -30 -33 -33 -31 -27 -25 -26 -28 -29 -27 -26 -27 -29 -30 -30 -29 -26 -23 -22 -23 -22 -20 -18 -17 -18 -20 -23 -25 -23 -20 -18 -18 -16 -16 -17 -19 -21 -20 -20 -21 -21 -20 -18 -17 -17 -19 -21 -23 -24 -23 -19 -17 -18 -19 -21 -21 -23 -27 -31 -34 -35 -35 -35 -34 -33 -33 -33 -32 -30 -27 -25 -25 -27 -28 -28 -27 -27 -28 -28 -26 -23 -18 -12 -10 -14 -21 -30 -35 -37 -39 -41 -44 -46 -46 -46 -44 -40 -35 -35 -38 -42 -43 -41 -40 -40 -42 -44 -44 -42 -40 -39 -38 -38 -38 -38 -39 -39 -40 -42 -44 -44 -40 -37 -34 -31 -30 -31 -34 -38 -40 -42 -43 -41 -38 -36 -35 -35 -35 -35 -36 -39 -42 -44 -46 -45 -43 -39 -35 -32 -31 -30 -30 -31 -31 -29 -29 -29 -29 -29 -30 -31 -31 -29 -28 -26 -26 -27 -29 -33 -37 -39 -44 -47 -47 -44 -41 -42 -45 -49 -53 -53 -52 -53 -56 -59 -56 -51 -48 -45 -43 -40 -39 -39 -39 -41 -43 -44 -45 -47 -43 -37 -35 2 -0 -5 -9 -11 -11 -9 -8 -6 -6 -6 -8 -8 -8 -8 -7 -7 -7 -8 -9 -9 -10 -10 -10 -11 -12 -13 -11 -6 -4 -5 -6 -7 -7 -7 -7 -6 -6 -6 -6 -6 -6 -7 -9 -11 -13 -16 -17 -15 -10 -6 -6 -8 -11 -13 -15 -15 -15 -14 -14 -15 -15 -14 -13 -13 -14 -16 -18 -19 -17 -13 -9 -9 -11 -14 -15 -15 -14 -15 -16 -16 -16 -15 -16 -18 -18 -17 -13 -8 -5 -4 -3 -1 -0 -3 -7 -11 -14 -16 -18 -19 -19 -19 -18 -17 -17 -18 -22 -26 -29 -31 -32 -31 -28 -23 -19 -19 -20 -21 -21 -21 -20 -20 -20 -18 -15 -14 -16 -18 -21 -20 -16 -14 -15 -18 -23 -23 -18 -10 -5 -7 -10 -13 -14 -13 -13 -15 -18 -19 -19 -19 -21 -23 -25 -26 -26 -24 -21 -18 -18 -21 -24 -25 -20 -15 -12 -12 -15 -18 -19 -18 -16 -14 -15 -17 -19 -21 -24 -28 -30 -29 -26 -21 -17 -16 -16 -17 -16 -15 -14 -14 -17 -19 -20 -20 -19 -19 -20 -19 -19 -21 -24 -26 -27 -28 -27 -23 -19 -18 -22 -27 -29 -28 -26 -25 -27 -30 -33 -34 -32 -30 -29 -29 -30 -31 -31 -29 -26 -25 -25 -25 -24 -21 -19 -19 -20 -22 -24 -23 -21 -20 -18 -15 -14 -15 -19 -22 -21 -21 -21 -21 -20 -18 -17 -17 -18 -20 -23 -24 -24 -22 -19 -15 -13 -14 -16 -19 -23 -28 -32 -33 -33 -34 -34 -34 -33 -33 -33 -32 -29 -26 -25 -27 -29 -29 -28 -27 -27 -27 -26 -25 -22 -15 -9 -11 -18 -26 -32 -35 -37 -39 -41 -44 -45 -46 -45 -42 -38 -36 -38 -41 -43 -43 -41 -41 -42 -44 -44 -42 -40 -39 -38 -38 -37 -38 -39 -39 -40 -42 -43 -43 -42 -39 -34 -30 -31 -32 -34 -37 -40 -42 -42 -41 -38 -36 -35 -35 -35 -35 -35 -37 -39 -41 -44 -44 -43 -41 -37 -33 -31 -30 -30 -31 -30 -30 -28 -28 -28 -28 -29 -29 -30 -29 -27 -26 -25 -26 -28 -31 -35 -38 -42 -45 -47 -45 -41 -42 -44 -48 -52 -53 -51 -52 -55 -58 -56 -53 -50 -48 -44 -42 -40 -39 -37 -39 -41 -42 -43 -46 -44 -41 -38 0 -3 -7 -10 -11 -8 -7 -6 -5 -5 -6 -9 -11 -11 -8 -7 -8 -9 -10 -10 -9 -9 -10 -12 -12 -12 -11 -10 -6 -4 -5 -6 -7 -6 -6 -6 -6 -6 -6 -6 -5 -5 -6 -8 -10 -12 -15 -17 -17 -14 -12 -11 -11 -12 -13 -15 -15 -15 -14 -14 -14 -14 -14 -13 -11 -11 -13 -15 -18 -18 -16 -12 -10 -10 -13 -14 -14 -14 -13 -14 -14 -14 -14 -14 -15 -16 -16 -16 -14 -11 -8 -5 -1 2 1 -3 -8 -12 -14 -16 -18 -20 -21 -21 -19 -17 -17 -22 -26 -29 -30 -31 -30 -28 -25 -19 -17 -18 -19 -20 -19 -20 -20 -21 -20 -19 -16 -15 -17 -20 -22 -19 -15 -13 -15 -21 -24 -22 -15 -6 -4 -6 -10 -13 -13 -13 -15 -17 -18 -17 -16 -16 -19 -23 -26 -27 -27 -25 -21 -18 -19 -21 -24 -24 -19 -14 -11 -13 -17 -19 -19 -15 -12 -12 -15 -18 -20 -22 -26 -29 -30 -28 -25 -20 -17 -15 -17 -18 -19 -18 -17 -18 -19 -19 -19 -18 -19 -21 -22 -22 -22 -23 -24 -25 -26 -28 -27 -25 -21 -21 -23 -22 -21 -20 -25 -31 -35 -35 -35 -35 -34 -33 -33 -34 -34 -34 -32 -30 -28 -27 -25 -24 -20 -17 -16 -17 -18 -19 -20 -21 -21 -18 -12 -10 -13 -19 -24 -23 -22 -21 -21 -20 -18 -17 -16 -16 -18 -21 -23 -24 -24 -21 -16 -11 -9 -12 -16 -21 -25 -29 -30 -31 -32 -33 -34 -34 -33 -33 -33 -30 -27 -25 -26 -29 -30 -29 -28 -28 -28 -27 -27 -25 -20 -14 -13 -16 -23 -29 -33 -35 -36 -38 -43 -45 -46 -45 -44 -40 -37 -37 -40 -44 -45 -44 -42 -43 -44 -44 -43 -40 -39 -38 -37 -37 -37 -38 -39 -40 -41 -42 -42 -42 -39 -34 -31 -32 -33 -34 -37 -40 -42 -42 -42 -39 -37 -36 -36 -35 -36 -36 -35 -36 -38 -41 -44 -44 -43 -39 -36 -33 -30 -30 -30 -30 -30 -29 -28 -28 -28 -29 -29 -29 -28 -27 -26 -25 -25 -26 -29 -33 -37 -39 -43 -46 -45 -41 -42 -44 -47 -51 -52 -51 -51 -54 -56 -56 -55 -53 -49 -45 -43 -41 -38 -36 -38 -39 -39 -40 -44 -45 -44 -41 -2 -5 -7 -8 -8 -6 -5 -5 -5 -6 -8 -11 -14 -14 -10 -8 -8 -9 -10 -10 -10 -10 -9 -9 -9 -8 -7 -6 -5 -6 -7 -7 -7 -7 -6 -6 -6 -6 -6 -6 -5 -5 -5 -6 -8 -10 -14 -16 -17 -16 -15 -13 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -13 -12 -11 -10 -11 -13 -15 -17 -17 -15 -12 -11 -12 -14 -14 -13 -11 -10 -11 -12 -13 -14 -13 -13 -14 -15 -17 -15 -12 -8 -4 0 2 0 -4 -9 -12 -14 -16 -18 -21 -21 -20 -19 -19 -22 -25 -27 -29 -29 -29 -28 -25 -22 -17 -16 -15 -16 -18 -18 -19 -20 -21 -20 -18 -16 -16 -18 -21 -20 -17 -13 -13 -19 -23 -23 -19 -10 -3 -2 -5 -10 -13 -14 -14 -15 -15 -15 -15 -16 -18 -21 -24 -27 -27 -27 -26 -23 -20 -19 -22 -24 -23 -19 -14 -13 -16 -19 -20 -16 -10 -9 -11 -15 -18 -20 -24 -27 -29 -29 -27 -23 -18 -15 -16 -18 -20 -20 -19 -18 -18 -19 -19 -18 -19 -21 -22 -22 -22 -23 -23 -23 -23 -26 -28 -29 -27 -23 -17 -12 -12 -20 -30 -35 -36 -35 -35 -37 -39 -39 -38 -38 -37 -35 -33 -31 -28 -25 -22 -21 -21 -19 -18 -16 -14 -15 -18 -21 -22 -22 -18 -13 -12 -18 -25 -26 -23 -21 -20 -20 -19 -18 -16 -16 -17 -19 -21 -24 -24 -22 -18 -13 -9 -10 -14 -18 -21 -24 -26 -29 -32 -33 -33 -34 -34 -33 -33 -31 -28 -26 -25 -28 -29 -29 -29 -28 -28 -28 -27 -26 -24 -17 -12 -12 -19 -28 -32 -33 -33 -35 -39 -42 -44 -45 -44 -41 -39 -39 -41 -47 -50 -49 -46 -44 -45 -44 -43 -40 -39 -38 -37 -36 -36 -37 -38 -39 -41 -42 -43 -42 -39 -34 -32 -32 -33 -34 -37 -40 -42 -43 -43 -40 -38 -37 -36 -36 -37 -36 -35 -34 -35 -38 -41 -44 -45 -42 -38 -35 -32 -31 -30 -29 -29 -29 -28 -28 -28 -29 -29 -29 -29 -28 -27 -26 -25 -26 -28 -32 -35 -38 -41 -44 -44 -41 -42 -44 -46 -49 -51 -52 -52 -53 -56 -58 -57 -55 -49 -46 -44 -42 -38 -35 -37 -38 -38 -38 -42 -45 -45 -43 -8 -9 -8 -7 -6 -5 -4 -5 -7 -9 -11 -13 -14 -14 -10 -8 -7 -8 -8 -8 -8 -8 -8 -7 -7 -6 -5 -5 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -5 -6 -6 -6 -7 -10 -12 -14 -15 -15 -15 -14 -15 -15 -15 -15 -14 -14 -13 -13 -13 -13 -13 -12 -11 -10 -10 -11 -13 -15 -16 -16 -14 -11 -11 -13 -14 -14 -12 -9 -8 -10 -12 -14 -14 -13 -13 -13 -14 -13 -13 -12 -11 -6 -2 1 0 -4 -8 -10 -12 -15 -19 -20 -21 -21 -22 -23 -24 -25 -27 -28 -27 -26 -26 -24 -21 -16 -14 -14 -15 -16 -17 -18 -19 -20 -19 -17 -16 -17 -20 -20 -18 -15 -13 -17 -22 -24 -22 -15 -6 -2 -3 -7 -12 -13 -13 -13 -13 -14 -15 -16 -16 -18 -20 -22 -25 -28 -29 -27 -24 -22 -21 -23 -24 -22 -18 -14 -14 -17 -20 -18 -11 -7 -7 -11 -15 -18 -21 -24 -27 -28 -27 -25 -21 -17 -16 -17 -19 -20 -20 -18 -18 -18 -19 -18 -19 -20 -22 -21 -21 -21 -22 -23 -23 -25 -27 -30 -31 -28 -22 -18 -18 -25 -31 -33 -33 -34 -36 -39 -40 -40 -39 -37 -35 -32 -31 -29 -26 -22 -20 -21 -23 -22 -19 -15 -13 -14 -18 -22 -23 -23 -19 -14 -12 -17 -27 -29 -27 -22 -20 -21 -21 -20 -18 -17 -17 -18 -20 -21 -22 -22 -20 -16 -10 -9 -11 -14 -17 -20 -24 -28 -32 -33 -34 -35 -35 -34 -32 -31 -29 -27 -25 -26 -28 -29 -29 -29 -29 -29 -28 -27 -26 -21 -14 -11 -16 -26 -32 -34 -32 -32 -33 -36 -40 -44 -45 -43 -42 -42 -44 -51 -54 -53 -49 -46 -46 -44 -42 -38 -37 -37 -36 -35 -35 -36 -37 -38 -40 -43 -44 -44 -41 -36 -34 -33 -32 -33 -36 -39 -42 -44 -45 -42 -39 -37 -37 -37 -38 -38 -36 -35 -34 -36 -38 -42 -45 -44 -41 -37 -34 -32 -30 -30 -29 -29 -29 -29 -29 -29 -29 -29 -28 -28 -27 -27 -27 -26 -27 -32 -34 -36 -39 -42 -43 -41 -41 -42 -44 -46 -49 -51 -52 -52 -56 -59 -60 -57 -52 -49 -46 -43 -38 -35 -36 -38 -38 -38 -41 -44 -44 -43 -11 -12 -10 -7 -5 -4 -5 -7 -10 -12 -13 -14 -13 -11 -8 -7 -6 -6 -6 -6 -6 -7 -7 -7 -6 -5 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -6 -6 -6 -7 -7 -8 -9 -10 -12 -12 -13 -13 -14 -15 -16 -17 -17 -15 -14 -13 -13 -13 -13 -13 -13 -12 -12 -10 -9 -9 -10 -13 -15 -16 -15 -12 -10 -11 -14 -15 -15 -11 -8 -8 -10 -12 -14 -15 -14 -12 -9 -9 -11 -14 -16 -14 -9 -3 2 2 -2 -6 -9 -12 -17 -20 -22 -23 -25 -23 -22 -23 -25 -27 -27 -26 -25 -25 -24 -20 -16 -13 -13 -14 -16 -17 -18 -18 -18 -17 -17 -17 -19 -21 -20 -16 -12 -15 -20 -23 -24 -20 -12 -5 -1 -4 -9 -11 -12 -12 -12 -13 -15 -15 -15 -16 -17 -19 -22 -27 -30 -31 -29 -25 -22 -23 -24 -25 -23 -18 -16 -17 -18 -18 -13 -7 -3 -5 -10 -15 -18 -21 -23 -26 -27 -27 -25 -22 -20 -19 -19 -20 -20 -19 -17 -17 -18 -18 -19 -20 -21 -20 -19 -20 -20 -21 -23 -25 -28 -31 -32 -30 -27 -25 -24 -25 -27 -29 -30 -31 -35 -38 -39 -38 -36 -33 -30 -28 -28 -28 -25 -22 -20 -22 -24 -22 -18 -14 -14 -15 -17 -20 -21 -21 -18 -14 -13 -18 -25 -28 -27 -25 -23 -22 -21 -21 -21 -20 -19 -19 -18 -18 -20 -22 -22 -20 -15 -11 -10 -11 -14 -18 -23 -28 -31 -33 -34 -35 -35 -35 -33 -31 -30 -29 -26 -26 -28 -29 -29 -29 -29 -29 -29 -28 -28 -24 -18 -12 -12 -21 -28 -32 -32 -32 -31 -33 -38 -45 -47 -46 -45 -45 -47 -52 -55 -55 -51 -47 -46 -43 -40 -36 -35 -35 -35 -34 -34 -35 -36 -37 -40 -43 -45 -46 -44 -39 -36 -33 -32 -33 -35 -38 -42 -45 -47 -43 -39 -36 -36 -37 -39 -39 -38 -36 -35 -35 -36 -38 -42 -43 -42 -39 -36 -33 -31 -31 -31 -30 -31 -30 -29 -29 -28 -28 -28 -28 -28 -28 -27 -26 -26 -30 -33 -35 -37 -40 -42 -41 -40 -40 -42 -44 -46 -48 -49 -51 -56 -60 -62 -61 -56 -53 -49 -44 -38 -35 -35 -37 -40 -40 -41 -42 -43 -43 -11 -11 -10 -9 -7 -6 -8 -12 -16 -19 -16 -12 -9 -7 -7 -7 -6 -6 -5 -5 -5 -6 -7 -7 -6 -5 -5 -5 -5 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -6 -6 -7 -8 -9 -10 -11 -12 -12 -12 -12 -13 -14 -15 -17 -17 -16 -14 -13 -12 -12 -13 -13 -13 -13 -12 -11 -9 -8 -8 -10 -14 -16 -16 -14 -10 -9 -11 -14 -17 -16 -12 -9 -7 -9 -12 -14 -14 -12 -8 -7 -8 -11 -14 -16 -14 -9 -3 2 -0 -3 -6 -10 -15 -19 -22 -24 -25 -24 -22 -21 -22 -25 -26 -25 -24 -24 -25 -24 -19 -14 -12 -14 -16 -17 -17 -16 -16 -17 -18 -19 -20 -21 -20 -17 -12 -13 -17 -21 -24 -24 -17 -9 -3 -1 -6 -9 -11 -12 -11 -12 -14 -15 -15 -15 -16 -17 -20 -25 -30 -32 -31 -28 -24 -23 -23 -23 -24 -22 -19 -17 -17 -19 -17 -11 -5 -2 -4 -10 -14 -18 -21 -25 -28 -29 -27 -24 -21 -19 -19 -20 -19 -18 -16 -15 -16 -17 -18 -19 -20 -19 -18 -18 -18 -19 -22 -25 -28 -29 -29 -29 -29 -30 -28 -25 -23 -24 -27 -31 -35 -37 -37 -36 -33 -31 -29 -28 -27 -26 -24 -21 -19 -19 -19 -17 -15 -15 -16 -16 -17 -17 -17 -15 -13 -13 -17 -22 -26 -27 -27 -27 -25 -23 -21 -21 -22 -22 -20 -17 -16 -16 -20 -23 -25 -24 -21 -15 -11 -10 -13 -18 -23 -28 -31 -33 -33 -33 -34 -35 -34 -32 -31 -30 -29 -27 -27 -27 -28 -28 -29 -29 -29 -28 -28 -26 -22 -16 -9 -12 -18 -24 -28 -32 -32 -34 -40 -48 -50 -49 -47 -47 -49 -52 -53 -53 -51 -47 -45 -43 -40 -37 -35 -35 -34 -34 -34 -35 -36 -37 -38 -41 -44 -47 -47 -43 -38 -34 -32 -33 -35 -37 -41 -45 -47 -44 -39 -35 -34 -36 -39 -40 -40 -37 -36 -35 -35 -36 -39 -41 -41 -39 -37 -35 -33 -32 -32 -32 -31 -30 -29 -29 -28 -28 -28 -27 -27 -27 -27 -26 -25 -29 -32 -34 -36 -39 -40 -40 -39 -38 -40 -41 -43 -45 -48 -52 -57 -61 -63 -64 -60 -56 -51 -45 -38 -35 -34 -36 -41 -41 -41 -42 -42 -43 -10 -9 -8 -8 -8 -10 -15 -19 -22 -21 -15 -10 -6 -6 -6 -7 -7 -6 -5 -4 -5 -6 -8 -8 -6 -5 -4 -4 -5 -5 -6 -6 -5 -5 -5 -4 -4 -4 -4 -5 -6 -7 -10 -11 -12 -13 -14 -14 -14 -13 -12 -11 -12 -14 -15 -15 -14 -13 -12 -12 -12 -13 -13 -13 -13 -12 -9 -7 -7 -9 -12 -15 -17 -15 -12 -8 -8 -10 -14 -16 -14 -11 -8 -7 -9 -11 -11 -10 -9 -8 -9 -10 -12 -13 -13 -10 -7 -5 -5 -5 -5 -6 -8 -12 -17 -21 -24 -26 -25 -24 -23 -23 -24 -25 -24 -24 -25 -27 -25 -20 -14 -13 -15 -17 -17 -15 -14 -15 -17 -19 -21 -23 -22 -19 -14 -12 -14 -18 -22 -25 -22 -15 -7 -2 -4 -7 -10 -12 -12 -11 -12 -14 -15 -14 -15 -16 -18 -22 -27 -30 -31 -30 -26 -23 -21 -22 -23 -22 -18 -15 -16 -20 -21 -17 -12 -5 -2 -5 -9 -14 -19 -24 -28 -29 -28 -25 -22 -19 -18 -18 -17 -15 -15 -15 -15 -15 -16 -17 -18 -18 -17 -16 -16 -16 -19 -24 -27 -27 -27 -28 -30 -32 -31 -26 -21 -21 -24 -29 -32 -34 -35 -35 -34 -33 -33 -34 -34 -31 -24 -17 -12 -10 -11 -14 -15 -16 -17 -18 -17 -15 -12 -8 -9 -14 -22 -27 -28 -28 -27 -27 -26 -23 -21 -20 -22 -23 -22 -19 -17 -18 -21 -24 -26 -27 -27 -21 -15 -12 -15 -20 -25 -28 -31 -33 -32 -32 -32 -33 -33 -32 -32 -32 -31 -29 -26 -25 -26 -28 -29 -29 -29 -28 -28 -27 -25 -20 -12 -10 -13 -18 -25 -32 -34 -37 -42 -47 -49 -48 -47 -47 -49 -49 -49 -48 -48 -46 -45 -43 -41 -38 -36 -34 -33 -33 -34 -35 -35 -36 -36 -38 -42 -46 -49 -46 -40 -35 -32 -33 -34 -37 -40 -44 -47 -45 -41 -36 -33 -35 -38 -40 -41 -39 -37 -35 -34 -35 -37 -38 -39 -39 -39 -36 -34 -33 -32 -32 -32 -31 -30 -29 -28 -28 -27 -27 -27 -27 -26 -26 -25 -28 -31 -33 -34 -37 -38 -38 -37 -36 -37 -38 -39 -43 -47 -51 -55 -59 -62 -63 -61 -57 -52 -46 -40 -36 -33 -34 -39 -41 -42 -42 -42 -43 -10 -9 -8 -9 -12 -17 -21 -23 -22 -18 -11 -7 -6 -5 -6 -7 -7 -6 -5 -4 -5 -7 -9 -10 -7 -5 -4 -4 -4 -5 -6 -6 -6 -6 -5 -5 -4 -3 -4 -5 -5 -7 -10 -13 -15 -15 -14 -15 -16 -15 -13 -11 -12 -13 -13 -12 -13 -14 -13 -12 -11 -11 -12 -13 -13 -12 -9 -8 -7 -8 -11 -14 -16 -17 -15 -11 -8 -7 -10 -14 -15 -13 -11 -8 -7 -6 -6 -6 -7 -8 -10 -11 -12 -10 -9 -9 -10 -13 -13 -11 -7 -3 -3 -6 -11 -17 -22 -25 -25 -23 -22 -21 -22 -24 -25 -27 -28 -29 -28 -25 -17 -13 -14 -16 -17 -15 -13 -14 -17 -19 -22 -24 -24 -22 -18 -13 -13 -15 -20 -24 -24 -20 -13 -6 -4 -5 -7 -10 -11 -10 -11 -12 -14 -14 -15 -15 -17 -19 -23 -27 -29 -29 -26 -23 -22 -22 -22 -21 -18 -16 -17 -20 -23 -23 -20 -14 -9 -7 -9 -14 -19 -24 -28 -30 -29 -26 -23 -20 -18 -17 -16 -16 -16 -16 -14 -13 -14 -15 -16 -17 -17 -17 -17 -16 -18 -23 -27 -29 -28 -28 -29 -31 -32 -28 -23 -22 -23 -28 -30 -32 -34 -34 -33 -33 -33 -34 -35 -33 -27 -19 -12 -8 -9 -12 -15 -17 -17 -16 -16 -14 -8 -3 -7 -16 -26 -29 -28 -28 -28 -28 -26 -23 -21 -20 -22 -24 -23 -21 -18 -17 -20 -23 -26 -28 -29 -27 -22 -17 -18 -22 -25 -28 -31 -33 -32 -31 -30 -30 -32 -32 -33 -33 -32 -30 -27 -26 -27 -30 -32 -32 -30 -29 -29 -28 -26 -25 -18 -13 -12 -16 -22 -31 -37 -39 -40 -41 -44 -47 -48 -49 -47 -45 -44 -44 -46 -45 -44 -44 -43 -39 -36 -35 -34 -33 -34 -34 -35 -35 -35 -36 -39 -44 -48 -47 -42 -37 -33 -33 -34 -36 -39 -43 -46 -46 -43 -38 -34 -34 -36 -39 -41 -41 -39 -36 -33 -34 -35 -36 -37 -38 -39 -38 -36 -33 -32 -32 -32 -31 -30 -30 -29 -28 -27 -26 -26 -26 -26 -26 -25 -28 -31 -32 -33 -35 -36 -36 -36 -34 -34 -34 -37 -41 -46 -48 -51 -55 -59 -61 -60 -56 -51 -47 -43 -37 -33 -32 -37 -41 -43 -43 -43 -43 -11 -11 -10 -12 -16 -21 -21 -19 -15 -11 -7 -6 -5 -5 -6 -7 -7 -6 -4 -4 -6 -8 -10 -9 -7 -6 -4 -4 -5 -5 -6 -6 -5 -5 -6 -6 -5 -4 -4 -4 -5 -6 -9 -12 -14 -14 -13 -14 -15 -16 -15 -14 -14 -12 -10 -10 -12 -14 -14 -12 -10 -10 -11 -12 -12 -11 -10 -9 -8 -9 -10 -12 -15 -17 -18 -15 -11 -8 -8 -11 -14 -15 -13 -9 -4 -2 -2 -3 -5 -7 -9 -10 -11 -9 -7 -7 -10 -16 -19 -17 -12 -5 -1 -2 -7 -13 -20 -24 -24 -22 -19 -17 -18 -21 -25 -28 -30 -30 -30 -28 -22 -14 -13 -14 -17 -16 -15 -15 -16 -18 -21 -24 -26 -26 -22 -16 -13 -14 -17 -21 -23 -22 -18 -11 -5 -3 -3 -6 -9 -10 -11 -11 -13 -15 -15 -16 -16 -17 -20 -24 -28 -28 -27 -25 -24 -24 -23 -22 -21 -19 -18 -19 -22 -24 -24 -22 -17 -13 -13 -16 -21 -26 -30 -32 -32 -29 -26 -22 -20 -18 -17 -17 -17 -17 -16 -15 -14 -14 -15 -17 -19 -21 -22 -21 -19 -22 -26 -28 -28 -26 -26 -27 -29 -30 -28 -27 -27 -28 -29 -31 -32 -31 -30 -29 -30 -32 -34 -34 -30 -22 -14 -9 -8 -10 -15 -20 -21 -20 -18 -14 -8 -5 -9 -17 -25 -29 -27 -26 -27 -28 -27 -25 -23 -21 -21 -22 -23 -22 -19 -18 -20 -23 -26 -28 -30 -30 -28 -23 -20 -20 -22 -25 -30 -32 -33 -31 -29 -27 -30 -32 -33 -33 -33 -32 -29 -28 -28 -31 -33 -33 -32 -31 -31 -29 -27 -27 -24 -17 -14 -16 -22 -31 -37 -39 -36 -32 -36 -42 -48 -49 -47 -45 -43 -44 -44 -44 -45 -45 -43 -40 -37 -36 -35 -35 -34 -34 -34 -34 -34 -36 -38 -41 -46 -47 -44 -39 -34 -32 -33 -35 -39 -42 -44 -46 -45 -41 -35 -34 -35 -38 -40 -41 -40 -39 -36 -33 -34 -35 -36 -38 -39 -38 -36 -34 -32 -32 -32 -31 -31 -31 -30 -28 -27 -26 -25 -26 -26 -25 -25 -28 -30 -31 -32 -34 -36 -35 -34 -32 -31 -32 -34 -39 -42 -45 -47 -51 -56 -60 -60 -57 -53 -50 -46 -40 -33 -30 -35 -40 -44 -46 -46 -46 -13 -13 -13 -15 -17 -19 -17 -13 -8 -5 -4 -3 -3 -4 -7 -7 -6 -4 -3 -3 -5 -8 -11 -12 -9 -7 -5 -5 -6 -6 -7 -7 -6 -6 -7 -7 -6 -5 -4 -4 -5 -6 -8 -11 -13 -13 -12 -12 -14 -15 -16 -16 -15 -13 -11 -10 -12 -13 -14 -12 -10 -10 -11 -12 -12 -11 -10 -10 -9 -9 -9 -11 -13 -16 -19 -18 -15 -12 -9 -9 -12 -15 -15 -11 -3 1 2 -1 -4 -6 -8 -9 -9 -9 -8 -8 -10 -15 -20 -21 -17 -11 -4 -2 -3 -8 -16 -21 -22 -21 -18 -15 -15 -19 -24 -29 -31 -31 -31 -30 -26 -18 -13 -13 -15 -17 -16 -16 -15 -17 -20 -24 -27 -27 -23 -17 -13 -12 -14 -19 -21 -22 -20 -16 -10 -5 -2 -3 -7 -9 -9 -10 -12 -14 -15 -16 -16 -16 -18 -22 -26 -28 -28 -27 -26 -25 -23 -22 -22 -21 -19 -17 -18 -20 -23 -24 -21 -18 -16 -16 -20 -25 -30 -33 -34 -33 -29 -25 -21 -19 -17 -17 -17 -18 -18 -17 -15 -14 -15 -18 -19 -20 -19 -17 -17 -19 -22 -23 -25 -25 -24 -24 -26 -30 -33 -33 -32 -30 -28 -27 -27 -26 -25 -25 -26 -28 -30 -31 -28 -23 -18 -13 -11 -11 -14 -18 -19 -19 -17 -13 -7 -7 -11 -17 -23 -27 -27 -26 -25 -27 -29 -28 -26 -24 -23 -23 -23 -22 -20 -20 -21 -24 -27 -28 -29 -30 -30 -28 -23 -20 -20 -23 -27 -30 -32 -32 -30 -27 -28 -30 -32 -33 -34 -33 -31 -29 -30 -32 -33 -34 -34 -34 -33 -32 -29 -28 -27 -21 -17 -17 -24 -30 -35 -38 -36 -30 -29 -33 -42 -47 -46 -44 -43 -44 -44 -46 -48 -47 -44 -41 -39 -38 -37 -36 -35 -34 -34 -34 -35 -35 -37 -38 -41 -45 -44 -40 -34 -33 -33 -35 -38 -41 -43 -45 -46 -43 -38 -34 -34 -36 -39 -39 -40 -41 -40 -36 -34 -33 -35 -37 -37 -37 -36 -35 -34 -33 -32 -31 -30 -30 -30 -29 -27 -26 -25 -25 -25 -24 -25 -28 -30 -31 -31 -35 -36 -35 -33 -31 -30 -31 -33 -35 -38 -41 -45 -49 -54 -59 -61 -60 -57 -54 -50 -44 -37 -31 -33 -39 -45 -49 -50 -49 -16 -14 -14 -13 -14 -13 -9 -5 -2 -1 -1 -1 -2 -5 -8 -7 -6 -5 -4 -4 -7 -9 -10 -9 -8 -6 -6 -6 -8 -8 -8 -7 -7 -6 -6 -5 -5 -5 -5 -5 -5 -7 -9 -12 -13 -13 -11 -11 -12 -14 -16 -17 -17 -14 -12 -11 -12 -13 -12 -11 -9 -9 -10 -11 -12 -12 -10 -10 -9 -9 -9 -10 -12 -15 -18 -19 -18 -15 -11 -8 -10 -13 -15 -13 -6 -0 2 1 -2 -5 -6 -7 -8 -9 -10 -11 -12 -15 -18 -20 -20 -17 -12 -6 -4 -6 -12 -18 -20 -20 -17 -15 -15 -18 -23 -28 -30 -31 -31 -30 -29 -23 -16 -12 -11 -15 -16 -16 -16 -16 -19 -23 -26 -27 -24 -17 -12 -10 -12 -17 -20 -21 -20 -18 -14 -8 -4 -2 -3 -4 -6 -8 -10 -13 -14 -15 -16 -17 -19 -21 -24 -27 -28 -28 -28 -28 -26 -24 -23 -22 -21 -18 -14 -14 -16 -19 -20 -18 -15 -12 -13 -18 -25 -30 -33 -33 -31 -28 -24 -20 -18 -17 -18 -19 -21 -20 -18 -15 -14 -16 -18 -19 -19 -17 -17 -18 -18 -19 -23 -25 -25 -23 -24 -30 -35 -37 -35 -32 -26 -23 -21 -20 -21 -22 -24 -26 -27 -26 -26 -25 -24 -20 -16 -14 -14 -15 -16 -16 -15 -13 -10 -9 -11 -15 -19 -23 -25 -25 -25 -26 -28 -29 -29 -27 -27 -26 -23 -21 -21 -21 -23 -26 -28 -28 -29 -30 -30 -30 -27 -23 -20 -19 -22 -26 -29 -31 -31 -28 -26 -27 -30 -32 -33 -34 -33 -30 -30 -32 -33 -34 -35 -35 -35 -33 -31 -29 -28 -27 -24 -20 -23 -27 -32 -37 -40 -34 -27 -26 -32 -41 -43 -42 -41 -44 -47 -49 -50 -49 -45 -43 -40 -38 -37 -37 -36 -35 -35 -35 -35 -35 -36 -36 -38 -43 -44 -41 -35 -33 -33 -34 -37 -40 -42 -44 -46 -45 -40 -36 -35 -36 -38 -38 -40 -42 -44 -41 -37 -34 -33 -35 -36 -36 -36 -35 -35 -33 -31 -30 -29 -30 -30 -29 -28 -26 -25 -25 -24 -23 -24 -28 -31 -31 -31 -35 -37 -37 -34 -31 -30 -31 -34 -33 -34 -37 -42 -47 -53 -58 -60 -59 -59 -57 -53 -48 -41 -33 -32 -37 -45 -50 -52 -52 -16 -14 -12 -10 -8 -5 -1 1 3 2 1 -0 -2 -5 -7 -7 -6 -6 -5 -5 -7 -9 -9 -9 -8 -7 -7 -7 -8 -9 -9 -8 -8 -6 -5 -4 -4 -5 -5 -6 -6 -7 -10 -13 -14 -13 -10 -9 -10 -12 -15 -17 -17 -15 -13 -12 -12 -12 -11 -9 -7 -7 -9 -11 -13 -13 -11 -10 -9 -9 -9 -10 -11 -13 -16 -18 -18 -16 -12 -8 -8 -10 -14 -15 -11 -6 -2 1 0 -2 -4 -5 -7 -9 -12 -15 -16 -17 -17 -17 -18 -19 -18 -14 -10 -9 -12 -16 -18 -19 -19 -17 -16 -18 -21 -25 -28 -30 -30 -30 -29 -26 -20 -13 -9 -11 -14 -16 -17 -16 -18 -22 -26 -27 -24 -18 -12 -8 -10 -15 -18 -20 -20 -19 -17 -13 -8 -4 -1 -1 -2 -5 -7 -10 -12 -14 -15 -18 -19 -21 -23 -27 -29 -30 -30 -29 -29 -28 -26 -24 -22 -19 -15 -12 -12 -14 -18 -20 -17 -11 -6 -10 -17 -25 -29 -30 -31 -30 -27 -24 -21 -20 -20 -22 -23 -22 -19 -16 -15 -15 -16 -18 -19 -19 -18 -17 -16 -16 -20 -24 -26 -25 -24 -28 -32 -35 -36 -34 -28 -23 -20 -20 -21 -21 -23 -24 -26 -26 -26 -26 -27 -25 -21 -17 -13 -13 -14 -12 -12 -13 -15 -14 -14 -15 -18 -21 -23 -25 -26 -27 -28 -28 -29 -29 -29 -26 -23 -20 -20 -22 -24 -26 -28 -28 -28 -29 -31 -32 -30 -26 -20 -16 -17 -21 -26 -30 -33 -30 -27 -25 -27 -30 -33 -34 -34 -31 -30 -32 -33 -34 -35 -36 -36 -34 -33 -30 -30 -29 -28 -24 -22 -22 -27 -34 -41 -38 -31 -24 -24 -33 -39 -40 -40 -43 -47 -50 -51 -50 -47 -45 -43 -41 -39 -39 -38 -37 -37 -36 -35 -35 -36 -36 -37 -43 -46 -45 -38 -34 -33 -34 -35 -39 -41 -43 -45 -45 -42 -38 -36 -36 -37 -38 -39 -41 -44 -43 -41 -37 -34 -34 -35 -36 -36 -36 -35 -34 -32 -30 -28 -29 -30 -29 -27 -26 -25 -24 -23 -22 -23 -27 -31 -33 -32 -34 -37 -39 -36 -32 -30 -31 -35 -33 -33 -34 -38 -44 -50 -55 -57 -56 -58 -57 -54 -49 -44 -36 -32 -35 -43 -48 -51 -53 -14 -10 -7 -5 -3 -0 2 4 5 4 3 1 -1 -3 -5 -6 -6 -7 -7 -6 -7 -9 -10 -11 -9 -8 -8 -8 -9 -9 -9 -9 -8 -6 -4 -4 -4 -5 -6 -6 -7 -8 -11 -13 -14 -12 -10 -9 -9 -10 -13 -15 -15 -14 -13 -13 -13 -12 -10 -8 -6 -6 -8 -11 -13 -14 -13 -11 -10 -9 -9 -10 -11 -12 -14 -15 -15 -15 -13 -9 -8 -9 -12 -14 -14 -12 -8 -3 1 1 0 -2 -5 -8 -13 -16 -17 -15 -12 -12 -14 -18 -20 -18 -16 -14 -13 -14 -16 -19 -21 -21 -19 -18 -19 -23 -26 -27 -28 -29 -29 -28 -24 -18 -10 -9 -12 -15 -16 -16 -17 -20 -24 -27 -25 -19 -12 -8 -8 -13 -17 -19 -19 -18 -18 -16 -12 -7 -2 0 0 -2 -4 -6 -9 -12 -15 -18 -20 -21 -22 -25 -28 -30 -29 -28 -29 -29 -28 -27 -24 -22 -19 -16 -14 -14 -17 -20 -20 -16 -9 -8 -11 -16 -20 -24 -28 -30 -29 -27 -25 -23 -23 -25 -25 -22 -19 -17 -17 -16 -16 -16 -18 -19 -19 -17 -16 -15 -18 -23 -26 -27 -26 -27 -30 -33 -35 -35 -30 -25 -22 -23 -24 -23 -23 -24 -28 -29 -28 -28 -28 -27 -23 -18 -14 -13 -10 -6 -5 -10 -18 -20 -19 -17 -17 -19 -22 -25 -27 -28 -27 -26 -26 -26 -27 -25 -22 -19 -19 -22 -24 -26 -26 -26 -28 -30 -32 -33 -31 -28 -22 -16 -13 -17 -22 -27 -32 -32 -29 -26 -25 -29 -33 -35 -35 -33 -31 -32 -32 -34 -34 -35 -36 -35 -34 -33 -32 -31 -30 -29 -22 -18 -19 -27 -36 -39 -37 -31 -26 -32 -37 -39 -39 -41 -46 -49 -51 -51 -48 -45 -43 -42 -41 -40 -39 -39 -39 -38 -37 -36 -36 -37 -38 -43 -48 -49 -43 -37 -34 -33 -34 -37 -40 -41 -42 -43 -42 -39 -36 -36 -36 -37 -38 -39 -42 -44 -44 -41 -36 -34 -35 -35 -36 -36 -35 -34 -32 -30 -29 -29 -29 -28 -27 -26 -25 -24 -23 -21 -21 -25 -31 -36 -34 -34 -36 -39 -37 -33 -31 -32 -36 -34 -32 -32 -35 -39 -44 -49 -52 -53 -55 -55 -53 -50 -48 -40 -34 -34 -41 -46 -49 -52 -8 -5 -3 -2 -1 1 4 6 7 5 3 1 -1 -2 -4 -5 -6 -7 -7 -6 -7 -8 -11 -13 -12 -11 -10 -10 -9 -9 -9 -8 -7 -5 -4 -4 -4 -5 -6 -8 -9 -11 -13 -13 -12 -11 -9 -9 -10 -10 -11 -12 -12 -12 -12 -13 -14 -14 -12 -9 -6 -5 -6 -9 -11 -14 -14 -14 -12 -11 -10 -10 -10 -11 -11 -11 -11 -11 -12 -11 -10 -9 -10 -11 -13 -15 -15 -12 -5 2 5 4 -0 -5 -10 -14 -16 -15 -14 -14 -14 -15 -17 -19 -19 -17 -13 -11 -12 -16 -21 -24 -23 -21 -20 -21 -23 -25 -27 -28 -29 -29 -27 -23 -16 -9 -9 -11 -14 -15 -15 -18 -22 -25 -26 -21 -14 -8 -6 -10 -15 -18 -19 -18 -17 -16 -14 -10 -5 -1 1 1 -1 -3 -6 -9 -12 -16 -19 -20 -20 -23 -27 -28 -28 -26 -27 -29 -30 -29 -27 -25 -23 -21 -19 -18 -19 -20 -20 -20 -18 -14 -11 -9 -10 -17 -24 -28 -30 -30 -27 -26 -26 -27 -25 -22 -20 -19 -18 -17 -16 -16 -17 -19 -19 -19 -17 -16 -17 -20 -24 -27 -27 -27 -28 -30 -33 -34 -32 -30 -26 -24 -23 -23 -23 -25 -29 -32 -32 -32 -30 -27 -23 -20 -17 -15 -6 2 3 -7 -18 -22 -21 -18 -17 -19 -22 -24 -26 -28 -28 -27 -26 -27 -28 -27 -23 -20 -20 -23 -26 -27 -26 -25 -27 -30 -32 -33 -32 -30 -26 -20 -14 -13 -16 -22 -29 -32 -31 -29 -26 -29 -33 -36 -36 -34 -32 -31 -31 -32 -33 -34 -36 -36 -37 -36 -35 -33 -31 -30 -24 -18 -15 -20 -30 -34 -35 -34 -34 -37 -39 -38 -37 -39 -43 -47 -50 -50 -48 -46 -43 -41 -41 -41 -42 -41 -40 -39 -38 -38 -36 -36 -38 -42 -48 -52 -47 -42 -37 -34 -33 -37 -39 -40 -40 -42 -41 -39 -37 -36 -36 -36 -37 -37 -40 -43 -44 -44 -40 -37 -35 -35 -36 -36 -36 -35 -33 -31 -30 -30 -28 -27 -26 -25 -25 -24 -22 -20 -20 -23 -30 -37 -35 -33 -33 -37 -36 -33 -31 -32 -35 -34 -32 -31 -34 -38 -42 -45 -49 -53 -54 -54 -54 -53 -51 -44 -37 -34 -38 -43 -48 -52 -2 -1 -2 -1 0 2 5 7 7 5 3 0 -1 -2 -4 -5 -6 -7 -7 -7 -7 -8 -10 -13 -14 -14 -14 -12 -10 -9 -9 -7 -5 -4 -4 -4 -4 -6 -7 -9 -10 -12 -13 -12 -11 -10 -9 -9 -10 -10 -10 -10 -9 -10 -11 -12 -14 -14 -13 -11 -8 -6 -5 -6 -8 -11 -13 -14 -13 -12 -10 -10 -10 -10 -10 -9 -9 -10 -12 -13 -13 -12 -10 -9 -11 -14 -16 -17 -12 -5 2 4 2 -3 -7 -10 -13 -16 -17 -18 -16 -14 -15 -17 -18 -18 -14 -10 -10 -12 -18 -22 -23 -22 -21 -21 -21 -23 -26 -29 -30 -30 -29 -26 -22 -14 -9 -8 -10 -14 -15 -16 -19 -22 -24 -22 -17 -11 -6 -7 -12 -17 -20 -19 -16 -14 -13 -13 -10 -5 -1 1 1 -1 -3 -6 -9 -13 -17 -18 -19 -21 -24 -26 -27 -26 -26 -28 -29 -30 -28 -27 -25 -24 -24 -23 -22 -20 -19 -19 -19 -15 -9 -4 -5 -12 -19 -25 -28 -29 -29 -28 -26 -25 -23 -21 -21 -21 -21 -20 -18 -16 -16 -18 -19 -19 -19 -18 -17 -19 -22 -25 -27 -27 -27 -27 -29 -30 -30 -28 -26 -23 -21 -20 -21 -22 -25 -28 -30 -31 -32 -29 -25 -23 -23 -19 -8 2 6 -3 -16 -21 -21 -19 -17 -18 -19 -22 -25 -27 -28 -27 -27 -28 -30 -29 -27 -24 -22 -23 -25 -25 -25 -25 -27 -29 -32 -33 -32 -31 -29 -26 -19 -14 -13 -18 -26 -31 -33 -32 -30 -31 -34 -37 -37 -36 -34 -32 -31 -31 -33 -34 -36 -37 -38 -39 -38 -36 -33 -31 -27 -21 -14 -13 -22 -29 -34 -36 -37 -36 -36 -35 -36 -38 -41 -44 -47 -49 -48 -46 -43 -41 -41 -43 -44 -43 -40 -39 -39 -38 -36 -36 -38 -41 -45 -51 -50 -46 -40 -36 -34 -37 -39 -41 -39 -41 -42 -41 -39 -37 -36 -36 -36 -37 -38 -40 -42 -44 -42 -39 -37 -36 -36 -36 -36 -36 -34 -32 -30 -29 -27 -26 -25 -25 -24 -24 -22 -20 -19 -22 -29 -36 -35 -33 -32 -35 -34 -33 -33 -32 -33 -33 -32 -32 -36 -39 -42 -45 -49 -53 -55 -56 -58 -57 -55 -48 -39 -34 -35 -41 -46 -50 2 0 -1 -0 1 4 6 7 6 5 1 -1 -2 -3 -4 -4 -5 -6 -6 -7 -6 -7 -8 -10 -14 -16 -16 -14 -11 -10 -9 -8 -6 -4 -3 -4 -6 -9 -11 -11 -11 -10 -10 -10 -9 -9 -9 -10 -10 -11 -11 -10 -9 -8 -8 -9 -11 -12 -13 -12 -10 -8 -5 -4 -4 -7 -10 -11 -12 -12 -11 -11 -10 -10 -9 -8 -8 -9 -11 -13 -15 -14 -12 -9 -7 -9 -13 -17 -19 -16 -10 -4 -0 0 -1 -4 -8 -12 -17 -19 -18 -16 -15 -16 -18 -18 -17 -13 -10 -11 -14 -18 -21 -22 -22 -21 -21 -22 -24 -27 -29 -30 -30 -28 -26 -19 -10 -6 -7 -13 -15 -15 -16 -19 -22 -23 -22 -17 -10 -7 -10 -16 -21 -23 -20 -16 -14 -14 -14 -11 -6 -2 -0 -1 -2 -4 -7 -11 -15 -17 -19 -20 -22 -24 -26 -27 -27 -27 -28 -29 -29 -28 -27 -26 -27 -26 -24 -21 -18 -17 -18 -17 -13 -8 -5 -9 -14 -19 -22 -24 -25 -26 -26 -25 -23 -21 -20 -20 -21 -18 -16 -15 -16 -16 -18 -19 -20 -20 -19 -19 -19 -21 -24 -25 -25 -24 -25 -26 -27 -27 -26 -24 -21 -19 -19 -20 -22 -25 -28 -31 -32 -29 -26 -24 -25 -24 -15 -4 4 -1 -13 -19 -20 -20 -18 -16 -17 -21 -25 -27 -27 -27 -27 -31 -32 -32 -30 -28 -26 -25 -24 -25 -25 -26 -28 -30 -32 -32 -32 -31 -30 -29 -25 -19 -15 -17 -24 -30 -34 -34 -32 -32 -34 -36 -38 -38 -37 -34 -31 -29 -32 -35 -36 -38 -40 -41 -41 -39 -35 -32 -30 -25 -17 -10 -16 -25 -34 -40 -42 -42 -40 -39 -38 -38 -39 -42 -45 -48 -48 -46 -44 -42 -42 -44 -46 -45 -41 -39 -37 -36 -35 -35 -37 -39 -42 -49 -52 -49 -44 -39 -37 -38 -40 -41 -39 -41 -43 -43 -42 -39 -37 -36 -36 -37 -37 -38 -40 -43 -43 -41 -38 -36 -36 -36 -36 -36 -35 -33 -31 -29 -27 -26 -25 -24 -24 -23 -22 -20 -19 -20 -27 -35 -36 -33 -31 -32 -34 -36 -37 -34 -32 -32 -33 -34 -38 -41 -44 -46 -50 -55 -58 -60 -61 -61 -58 -51 -42 -34 -33 -38 -43 -48 3 0 -0 1 3 4 6 6 5 3 -0 -2 -4 -4 -4 -4 -4 -5 -6 -7 -6 -6 -8 -10 -12 -15 -16 -14 -12 -11 -10 -8 -5 -4 -5 -7 -9 -12 -14 -13 -11 -9 -8 -7 -7 -7 -8 -9 -11 -11 -11 -11 -10 -9 -8 -7 -8 -9 -10 -11 -11 -10 -7 -4 -2 -3 -6 -8 -9 -10 -10 -10 -11 -11 -9 -8 -8 -8 -10 -13 -16 -17 -16 -13 -9 -7 -9 -14 -20 -21 -19 -14 -8 -2 1 1 -3 -8 -13 -16 -18 -18 -17 -18 -19 -20 -19 -15 -12 -10 -10 -14 -17 -20 -21 -21 -21 -21 -22 -25 -28 -30 -30 -30 -29 -23 -14 -7 -6 -11 -15 -16 -15 -15 -18 -22 -24 -23 -18 -13 -11 -14 -19 -24 -25 -22 -18 -14 -14 -15 -13 -10 -6 -4 -4 -4 -6 -9 -13 -16 -19 -21 -21 -23 -25 -26 -27 -28 -28 -28 -29 -28 -28 -28 -29 -29 -28 -24 -21 -17 -17 -18 -18 -15 -10 -8 -9 -13 -16 -18 -21 -23 -23 -23 -22 -21 -19 -19 -19 -18 -17 -16 -15 -15 -16 -18 -20 -22 -22 -21 -19 -18 -20 -22 -23 -22 -22 -24 -26 -26 -26 -26 -23 -21 -19 -21 -22 -23 -25 -28 -31 -30 -27 -25 -25 -25 -21 -12 -3 -1 -8 -16 -22 -25 -23 -21 -20 -22 -25 -27 -27 -27 -28 -32 -34 -34 -33 -31 -29 -28 -28 -28 -27 -27 -29 -30 -31 -32 -32 -32 -31 -30 -28 -24 -21 -20 -24 -28 -31 -33 -32 -31 -32 -34 -37 -39 -38 -35 -31 -29 -32 -35 -37 -39 -40 -41 -42 -41 -38 -34 -31 -28 -22 -12 -12 -19 -29 -38 -44 -46 -46 -45 -42 -40 -40 -42 -44 -47 -49 -49 -48 -45 -44 -45 -46 -46 -42 -38 -36 -34 -34 -34 -35 -37 -40 -45 -50 -51 -47 -42 -40 -40 -41 -42 -40 -42 -43 -44 -43 -41 -39 -37 -37 -38 -37 -37 -37 -41 -43 -42 -39 -37 -36 -36 -36 -36 -35 -33 -32 -30 -28 -27 -26 -24 -23 -22 -21 -19 -18 -19 -25 -34 -37 -35 -31 -31 -34 -37 -39 -37 -33 -33 -35 -37 -41 -44 -46 -47 -50 -56 -59 -61 -61 -61 -58 -53 -45 -36 -32 -35 -41 -45 2 -1 -0 1 3 4 5 5 3 1 -2 -4 -4 -4 -4 -4 -5 -6 -7 -7 -7 -7 -7 -8 -10 -10 -11 -12 -13 -12 -10 -7 -5 -4 -7 -9 -11 -13 -13 -11 -9 -8 -8 -6 -5 -5 -6 -8 -9 -11 -12 -12 -12 -11 -10 -7 -6 -5 -6 -8 -10 -11 -9 -6 -2 -1 -2 -4 -6 -8 -9 -10 -11 -11 -11 -10 -9 -8 -9 -12 -16 -19 -20 -19 -15 -11 -9 -10 -14 -18 -20 -19 -15 -9 -3 0 0 -2 -6 -11 -16 -19 -19 -21 -22 -23 -21 -18 -14 -11 -9 -10 -13 -16 -19 -20 -19 -19 -20 -22 -26 -29 -30 -30 -29 -26 -19 -12 -8 -9 -14 -16 -15 -13 -13 -18 -22 -25 -25 -19 -14 -12 -14 -20 -24 -25 -23 -18 -17 -18 -19 -18 -15 -11 -8 -6 -5 -8 -11 -14 -17 -20 -21 -22 -23 -25 -28 -29 -30 -30 -30 -30 -30 -30 -31 -31 -30 -28 -24 -18 -14 -16 -19 -20 -16 -9 -7 -8 -11 -14 -18 -21 -22 -23 -22 -21 -20 -19 -19 -18 -18 -17 -16 -15 -16 -17 -20 -23 -25 -25 -21 -17 -17 -20 -22 -22 -21 -21 -22 -23 -24 -25 -24 -22 -20 -22 -23 -23 -23 -25 -29 -30 -29 -28 -27 -26 -24 -19 -13 -9 -10 -13 -17 -22 -27 -29 -27 -23 -23 -27 -28 -28 -28 -32 -34 -34 -33 -32 -32 -32 -32 -31 -28 -28 -29 -30 -30 -31 -33 -33 -32 -29 -28 -27 -25 -22 -23 -26 -28 -29 -30 -30 -30 -31 -35 -38 -38 -35 -31 -29 -31 -33 -35 -38 -39 -39 -41 -41 -39 -36 -33 -31 -27 -17 -12 -14 -22 -32 -42 -47 -49 -47 -44 -43 -43 -44 -45 -46 -49 -50 -50 -48 -46 -46 -47 -46 -44 -40 -36 -33 -32 -33 -34 -35 -37 -41 -46 -49 -48 -45 -43 -42 -42 -42 -41 -42 -44 -45 -44 -42 -39 -38 -37 -37 -37 -36 -36 -39 -42 -42 -40 -37 -36 -35 -35 -35 -35 -34 -33 -31 -29 -28 -27 -26 -24 -22 -20 -19 -17 -17 -22 -34 -39 -38 -33 -31 -33 -36 -39 -38 -34 -33 -36 -39 -42 -46 -48 -49 -51 -55 -59 -61 -61 -59 -58 -54 -48 -39 -33 -33 -38 -43 1 -1 -1 1 2 4 4 3 1 -0 -2 -4 -4 -4 -4 -5 -6 -7 -8 -8 -8 -7 -7 -7 -8 -8 -9 -10 -12 -11 -9 -6 -5 -5 -8 -12 -13 -13 -11 -9 -8 -9 -9 -6 -5 -4 -5 -6 -7 -9 -10 -12 -14 -14 -13 -9 -5 -1 -1 -3 -7 -10 -11 -8 -5 -2 -1 -2 -4 -6 -8 -9 -10 -11 -12 -12 -11 -10 -9 -11 -15 -18 -21 -22 -21 -18 -13 -9 -8 -11 -14 -17 -18 -14 -10 -5 -1 1 0 -5 -11 -16 -18 -21 -24 -26 -23 -19 -15 -13 -12 -10 -10 -11 -14 -17 -18 -18 -18 -20 -23 -26 -28 -29 -29 -28 -23 -17 -11 -9 -13 -15 -16 -13 -11 -14 -19 -25 -28 -25 -20 -14 -11 -15 -21 -26 -27 -24 -21 -19 -19 -19 -18 -15 -10 -7 -5 -6 -9 -12 -15 -18 -20 -23 -25 -27 -27 -28 -28 -29 -30 -31 -32 -32 -32 -32 -31 -29 -26 -20 -14 -13 -16 -20 -20 -14 -9 -7 -9 -13 -17 -20 -21 -22 -21 -20 -19 -19 -19 -18 -18 -17 -17 -16 -15 -16 -19 -23 -26 -25 -22 -17 -16 -19 -22 -24 -21 -19 -18 -19 -21 -22 -22 -21 -20 -20 -22 -22 -23 -24 -28 -31 -32 -30 -28 -26 -25 -22 -17 -13 -12 -12 -13 -17 -25 -29 -28 -24 -25 -28 -30 -29 -29 -31 -33 -33 -33 -33 -33 -34 -34 -32 -30 -28 -28 -28 -28 -30 -32 -32 -31 -28 -28 -28 -28 -26 -24 -24 -24 -25 -28 -29 -29 -29 -31 -34 -35 -34 -31 -29 -30 -31 -34 -37 -37 -38 -40 -42 -41 -38 -35 -33 -30 -23 -16 -14 -19 -29 -39 -45 -48 -47 -46 -45 -45 -46 -48 -47 -47 -47 -48 -49 -49 -48 -48 -47 -45 -42 -37 -33 -32 -32 -33 -34 -35 -37 -41 -46 -48 -46 -44 -43 -43 -42 -41 -42 -44 -46 -46 -43 -40 -38 -38 -38 -37 -36 -36 -39 -42 -43 -41 -38 -36 -35 -35 -35 -35 -34 -33 -32 -30 -30 -29 -27 -25 -23 -20 -18 -16 -16 -21 -34 -42 -41 -37 -32 -31 -34 -39 -38 -34 -32 -34 -38 -41 -45 -49 -51 -51 -54 -57 -60 -60 -59 -57 -55 -50 -41 -35 -32 -35 -41 -0 -2 -2 -0 1 2 2 2 0 -1 -2 -3 -4 -4 -5 -6 -8 -9 -9 -8 -8 -7 -6 -6 -6 -7 -8 -9 -10 -9 -7 -6 -5 -6 -10 -13 -14 -12 -9 -8 -8 -9 -9 -7 -5 -4 -4 -5 -5 -6 -7 -9 -13 -16 -16 -13 -6 -0 2 1 -3 -7 -10 -10 -9 -5 -2 -2 -3 -5 -6 -8 -8 -9 -10 -11 -12 -12 -11 -11 -12 -15 -19 -23 -25 -23 -19 -13 -7 -6 -8 -11 -15 -16 -14 -11 -6 -1 2 0 -4 -10 -14 -19 -23 -25 -23 -18 -17 -17 -17 -14 -9 -8 -9 -13 -16 -17 -17 -19 -21 -23 -25 -27 -28 -28 -26 -22 -16 -11 -12 -14 -17 -16 -12 -13 -16 -22 -27 -28 -24 -19 -12 -12 -17 -23 -27 -28 -25 -21 -18 -16 -16 -15 -13 -10 -8 -8 -10 -12 -13 -15 -18 -21 -24 -26 -26 -26 -27 -29 -31 -32 -32 -31 -31 -31 -31 -31 -29 -27 -21 -15 -12 -14 -19 -19 -16 -12 -12 -16 -18 -19 -19 -20 -20 -20 -18 -18 -18 -18 -18 -18 -18 -17 -16 -16 -18 -21 -24 -25 -23 -19 -16 -17 -21 -24 -24 -24 -21 -18 -17 -20 -21 -21 -20 -19 -19 -20 -21 -24 -29 -32 -32 -31 -28 -26 -24 -23 -20 -18 -17 -15 -15 -16 -22 -26 -28 -26 -27 -28 -28 -25 -24 -26 -27 -29 -32 -34 -34 -34 -33 -32 -30 -28 -27 -25 -25 -26 -28 -30 -29 -28 -28 -29 -30 -28 -25 -23 -23 -25 -29 -30 -30 -28 -27 -29 -31 -31 -31 -30 -30 -31 -33 -36 -36 -37 -39 -41 -41 -40 -38 -35 -31 -27 -22 -20 -21 -29 -37 -44 -47 -48 -47 -47 -48 -50 -51 -49 -46 -45 -46 -48 -49 -49 -48 -47 -46 -43 -40 -35 -34 -33 -33 -33 -34 -34 -37 -42 -47 -46 -45 -44 -43 -43 -41 -41 -42 -46 -47 -45 -42 -40 -39 -38 -37 -36 -36 -38 -41 -42 -41 -40 -38 -36 -35 -36 -35 -35 -34 -33 -31 -31 -30 -29 -27 -24 -21 -19 -17 -16 -22 -34 -42 -42 -38 -32 -29 -31 -38 -39 -35 -32 -31 -35 -39 -44 -49 -53 -52 -53 -55 -58 -58 -57 -56 -55 -52 -43 -36 -31 -31 -39 -0 -2 -2 -1 0 1 1 0 -0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -9 -8 -7 -6 -6 -6 -6 -7 -7 -8 -8 -7 -6 -6 -6 -7 -9 -11 -12 -10 -8 -7 -7 -7 -7 -6 -5 -5 -5 -5 -4 -4 -5 -6 -10 -14 -17 -16 -11 -5 -1 1 1 -3 -7 -10 -11 -9 -6 -3 -3 -3 -4 -5 -6 -8 -9 -11 -12 -12 -12 -11 -11 -13 -15 -19 -23 -24 -21 -16 -10 -6 -6 -8 -11 -13 -13 -12 -11 -8 -4 -1 -1 -3 -8 -14 -18 -21 -20 -17 -17 -19 -21 -19 -13 -8 -7 -9 -13 -15 -17 -18 -19 -20 -22 -24 -25 -26 -26 -25 -21 -16 -13 -13 -16 -18 -16 -14 -14 -18 -24 -27 -26 -22 -16 -12 -14 -19 -25 -29 -27 -23 -18 -14 -14 -15 -15 -14 -13 -13 -13 -12 -12 -13 -16 -20 -23 -25 -26 -27 -28 -30 -32 -32 -31 -30 -30 -31 -31 -32 -31 -30 -26 -19 -13 -11 -17 -22 -24 -21 -17 -16 -15 -14 -14 -17 -19 -19 -19 -19 -18 -18 -18 -19 -19 -18 -16 -16 -17 -19 -22 -23 -23 -21 -18 -18 -20 -23 -26 -26 -22 -17 -16 -18 -19 -20 -20 -19 -20 -21 -23 -25 -28 -30 -30 -29 -26 -24 -23 -23 -23 -23 -22 -20 -17 -14 -17 -22 -27 -29 -30 -29 -27 -24 -24 -24 -24 -25 -29 -33 -34 -33 -31 -32 -32 -29 -26 -24 -23 -23 -24 -25 -26 -27 -28 -31 -33 -30 -26 -23 -23 -27 -30 -32 -31 -29 -26 -24 -25 -27 -30 -31 -32 -32 -33 -34 -35 -35 -36 -39 -40 -41 -40 -38 -33 -29 -25 -21 -20 -26 -34 -41 -46 -48 -50 -51 -52 -53 -52 -49 -46 -44 -45 -47 -49 -49 -49 -48 -45 -43 -41 -37 -36 -35 -34 -32 -32 -32 -34 -37 -44 -46 -45 -45 -44 -44 -42 -41 -42 -45 -46 -45 -43 -41 -41 -40 -38 -37 -36 -37 -39 -40 -41 -41 -39 -37 -36 -36 -35 -35 -34 -33 -32 -32 -31 -30 -28 -26 -23 -21 -19 -18 -24 -33 -40 -39 -36 -31 -28 -28 -37 -39 -37 -32 -28 -32 -38 -44 -50 -55 -54 -53 -54 -56 -57 -56 -56 -55 -53 -45 -37 -31 -29 -37 -1 -3 -3 -1 -0 0 0 -0 -1 -1 -2 -4 -5 -6 -6 -7 -9 -9 -9 -7 -6 -6 -6 -6 -6 -6 -7 -7 -7 -7 -7 -6 -5 -6 -8 -10 -10 -8 -7 -7 -7 -6 -5 -5 -5 -5 -5 -4 -4 -3 -2 -3 -7 -11 -15 -18 -19 -15 -9 -3 1 -1 -4 -7 -10 -12 -10 -8 -5 -3 -3 -3 -4 -5 -6 -8 -10 -11 -11 -12 -12 -13 -14 -16 -19 -20 -20 -17 -13 -10 -8 -7 -8 -9 -9 -10 -11 -12 -10 -8 -5 -3 -5 -8 -12 -15 -14 -14 -17 -21 -23 -21 -16 -12 -9 -9 -11 -12 -13 -14 -16 -20 -21 -22 -21 -22 -23 -24 -24 -22 -17 -14 -15 -17 -18 -16 -14 -14 -18 -21 -24 -24 -22 -16 -13 -15 -21 -27 -28 -26 -21 -17 -15 -16 -17 -18 -18 -18 -16 -14 -11 -11 -15 -19 -23 -24 -26 -27 -29 -30 -31 -32 -31 -29 -29 -30 -31 -31 -31 -30 -28 -24 -19 -15 -16 -21 -23 -23 -18 -13 -10 -9 -10 -13 -17 -19 -19 -19 -18 -18 -18 -19 -19 -18 -17 -16 -16 -18 -19 -22 -24 -24 -21 -19 -19 -21 -24 -24 -22 -17 -14 -16 -17 -19 -19 -20 -20 -21 -21 -23 -25 -27 -29 -28 -25 -23 -22 -23 -23 -25 -25 -23 -17 -12 -12 -16 -22 -29 -30 -28 -25 -24 -24 -23 -22 -23 -28 -34 -37 -35 -31 -30 -29 -27 -25 -25 -25 -23 -22 -21 -23 -25 -28 -31 -34 -31 -27 -24 -25 -29 -32 -33 -32 -30 -26 -23 -22 -25 -29 -32 -34 -33 -32 -32 -32 -33 -34 -37 -38 -39 -39 -38 -34 -31 -28 -24 -20 -24 -31 -38 -45 -48 -50 -51 -52 -52 -51 -49 -47 -45 -44 -47 -49 -50 -49 -48 -45 -42 -40 -37 -36 -35 -34 -32 -32 -32 -33 -35 -41 -45 -46 -46 -46 -46 -45 -43 -42 -43 -43 -43 -42 -41 -43 -42 -40 -36 -35 -36 -37 -38 -40 -41 -40 -38 -36 -36 -36 -35 -34 -33 -32 -32 -32 -31 -29 -27 -25 -23 -21 -21 -25 -32 -37 -37 -36 -31 -27 -26 -34 -38 -38 -34 -27 -30 -36 -44 -52 -57 -57 -56 -55 -56 -56 -56 -56 -55 -53 -46 -38 -31 -28 -35 -1 -2 -2 -1 -0 -0 -1 -1 -1 -2 -3 -5 -6 -7 -7 -8 -9 -9 -9 -8 -6 -6 -6 -7 -6 -6 -6 -7 -8 -8 -7 -5 -4 -5 -8 -10 -10 -9 -8 -7 -6 -5 -3 -3 -3 -4 -5 -4 -3 -2 -2 -3 -5 -8 -12 -16 -18 -16 -12 -7 -3 -2 -3 -6 -9 -11 -12 -12 -10 -7 -5 -4 -3 -3 -4 -6 -8 -9 -11 -12 -13 -13 -14 -14 -16 -16 -16 -16 -14 -13 -11 -9 -7 -7 -7 -7 -8 -11 -13 -14 -13 -11 -9 -9 -10 -11 -9 -11 -15 -19 -22 -21 -19 -16 -13 -10 -9 -9 -8 -8 -12 -16 -20 -21 -20 -18 -19 -21 -24 -24 -21 -18 -15 -15 -18 -18 -16 -14 -14 -18 -21 -23 -23 -20 -17 -16 -18 -24 -28 -27 -24 -19 -17 -17 -18 -20 -21 -21 -19 -16 -12 -11 -13 -18 -22 -22 -24 -26 -27 -29 -31 -31 -31 -30 -30 -29 -30 -30 -31 -31 -30 -27 -25 -22 -19 -19 -20 -21 -21 -16 -12 -8 -7 -8 -11 -14 -16 -17 -16 -16 -17 -18 -19 -18 -18 -17 -16 -17 -19 -21 -24 -25 -24 -22 -20 -20 -20 -20 -20 -17 -15 -15 -16 -17 -18 -19 -20 -20 -20 -20 -21 -23 -24 -24 -22 -22 -23 -24 -24 -25 -26 -24 -18 -11 -8 -10 -16 -26 -29 -27 -24 -24 -25 -24 -23 -24 -27 -34 -37 -35 -29 -25 -24 -24 -25 -27 -28 -26 -22 -19 -21 -24 -27 -29 -32 -31 -28 -26 -27 -31 -34 -34 -33 -31 -29 -25 -23 -24 -28 -32 -34 -33 -31 -30 -31 -32 -34 -36 -36 -37 -37 -38 -36 -33 -30 -27 -22 -21 -27 -35 -43 -46 -48 -49 -51 -51 -50 -49 -48 -46 -46 -49 -51 -50 -48 -48 -45 -43 -40 -38 -36 -35 -33 -32 -31 -33 -34 -35 -39 -43 -45 -46 -47 -48 -47 -45 -42 -42 -42 -42 -42 -42 -44 -44 -41 -37 -36 -36 -36 -37 -38 -40 -40 -38 -37 -36 -36 -35 -35 -34 -33 -32 -32 -31 -30 -28 -26 -25 -23 -23 -26 -31 -36 -38 -36 -33 -28 -26 -31 -36 -37 -35 -29 -29 -35 -43 -52 -59 -59 -57 -58 -57 -56 -54 -53 -54 -52 -46 -39 -32 -28 -33 -1 -2 -1 -0 -0 -1 -2 -3 -3 -3 -5 -5 -7 -8 -8 -8 -9 -8 -8 -7 -8 -9 -9 -9 -7 -6 -6 -7 -8 -8 -6 -5 -5 -6 -8 -9 -10 -10 -10 -8 -7 -5 -4 -3 -3 -4 -5 -5 -4 -3 -2 -1 -2 -4 -8 -11 -13 -14 -13 -10 -7 -4 -3 -4 -6 -9 -12 -14 -14 -13 -10 -8 -6 -4 -3 -4 -6 -8 -10 -12 -13 -13 -14 -14 -14 -14 -14 -14 -14 -14 -13 -11 -7 -5 -4 -4 -6 -10 -14 -16 -17 -16 -14 -13 -13 -12 -10 -10 -13 -17 -20 -19 -19 -20 -20 -18 -14 -9 -6 -4 -6 -12 -17 -21 -21 -18 -18 -19 -22 -24 -23 -20 -17 -15 -17 -19 -19 -17 -15 -16 -19 -23 -25 -24 -21 -19 -17 -20 -25 -27 -26 -24 -20 -19 -19 -19 -20 -21 -20 -18 -14 -12 -12 -15 -17 -18 -20 -22 -23 -25 -28 -30 -31 -30 -29 -28 -29 -30 -32 -32 -31 -30 -29 -27 -24 -19 -16 -16 -19 -18 -14 -9 -7 -7 -9 -11 -14 -15 -15 -16 -16 -17 -18 -18 -18 -17 -17 -17 -18 -20 -22 -25 -26 -26 -23 -21 -17 -16 -17 -18 -17 -15 -15 -16 -17 -19 -20 -20 -20 -20 -19 -18 -18 -18 -19 -22 -25 -27 -26 -24 -24 -25 -23 -16 -11 -10 -13 -21 -26 -26 -25 -25 -26 -25 -25 -25 -27 -32 -34 -32 -28 -24 -22 -21 -22 -25 -28 -28 -25 -21 -22 -24 -27 -28 -30 -29 -28 -28 -29 -31 -34 -36 -35 -33 -32 -29 -26 -23 -25 -28 -31 -32 -32 -31 -32 -33 -35 -35 -35 -36 -37 -38 -38 -36 -33 -30 -24 -20 -23 -30 -40 -44 -45 -46 -47 -48 -47 -46 -45 -44 -48 -53 -54 -50 -48 -48 -46 -44 -41 -39 -38 -36 -35 -34 -33 -33 -35 -37 -39 -41 -44 -46 -48 -49 -49 -47 -44 -42 -42 -42 -41 -42 -43 -43 -42 -40 -38 -37 -36 -36 -36 -37 -39 -39 -38 -36 -36 -35 -35 -34 -34 -33 -32 -31 -30 -28 -27 -25 -23 -23 -26 -31 -36 -38 -37 -35 -32 -28 -30 -33 -36 -36 -31 -30 -34 -42 -51 -58 -60 -59 -59 -58 -55 -53 -52 -53 -51 -47 -41 -34 -29 -32 -2 -1 0 0 -1 -2 -4 -5 -5 -5 -5 -5 -7 -9 -9 -9 -8 -7 -8 -9 -12 -15 -16 -13 -9 -6 -6 -6 -7 -7 -6 -5 -5 -8 -9 -9 -9 -9 -8 -8 -7 -6 -5 -4 -4 -5 -6 -7 -6 -4 -3 -1 -1 -2 -4 -6 -8 -10 -11 -12 -11 -8 -6 -5 -5 -6 -10 -14 -16 -16 -15 -12 -10 -7 -5 -4 -5 -7 -9 -10 -12 -12 -13 -13 -13 -13 -13 -13 -14 -14 -14 -13 -10 -6 -3 -3 -5 -9 -13 -16 -18 -17 -16 -16 -17 -17 -16 -14 -14 -15 -16 -15 -17 -21 -25 -25 -22 -15 -8 -3 -3 -9 -15 -21 -23 -20 -18 -17 -18 -21 -21 -21 -18 -16 -17 -19 -20 -19 -17 -16 -17 -21 -24 -26 -25 -22 -19 -18 -22 -25 -26 -26 -23 -21 -19 -18 -18 -18 -18 -17 -16 -14 -13 -13 -13 -11 -13 -14 -15 -17 -22 -27 -29 -29 -27 -26 -28 -29 -31 -31 -31 -31 -31 -31 -28 -23 -18 -14 -16 -16 -15 -13 -10 -9 -9 -11 -13 -14 -14 -15 -17 -18 -18 -18 -17 -18 -17 -17 -17 -18 -21 -25 -28 -29 -27 -22 -17 -14 -15 -18 -18 -16 -15 -15 -16 -18 -19 -21 -21 -22 -21 -20 -18 -15 -16 -20 -25 -29 -27 -24 -24 -26 -26 -21 -15 -11 -10 -15 -20 -23 -24 -23 -24 -25 -25 -24 -26 -28 -29 -29 -29 -26 -23 -20 -20 -22 -26 -27 -26 -24 -24 -25 -27 -28 -29 -28 -29 -29 -29 -30 -34 -36 -37 -36 -34 -33 -30 -25 -24 -27 -30 -32 -33 -33 -34 -36 -37 -37 -35 -35 -36 -38 -41 -40 -37 -33 -28 -22 -21 -25 -35 -40 -40 -40 -42 -44 -45 -45 -45 -45 -51 -54 -55 -51 -48 -48 -47 -44 -43 -42 -41 -40 -38 -36 -34 -34 -36 -37 -38 -41 -45 -47 -48 -50 -50 -48 -46 -44 -43 -42 -42 -41 -42 -43 -43 -43 -41 -38 -36 -34 -34 -35 -38 -41 -41 -38 -36 -35 -35 -34 -34 -33 -32 -30 -29 -28 -26 -25 -23 -23 -26 -30 -37 -38 -39 -38 -35 -31 -31 -33 -36 -36 -33 -32 -34 -41 -49 -56 -59 -59 -57 -55 -53 -52 -52 -52 -50 -47 -43 -37 -32 -32 -2 -0 0 -1 -3 -5 -6 -6 -5 -5 -5 -7 -9 -10 -9 -8 -7 -7 -8 -12 -17 -20 -17 -12 -8 -8 -8 -8 -7 -7 -6 -6 -7 -9 -10 -9 -9 -8 -7 -8 -8 -7 -6 -5 -5 -6 -8 -8 -8 -7 -5 -4 -2 -1 -1 -2 -3 -5 -8 -11 -13 -13 -10 -7 -4 -3 -5 -9 -13 -15 -15 -15 -13 -11 -8 -6 -5 -6 -7 -8 -10 -11 -11 -11 -12 -12 -13 -13 -13 -14 -14 -15 -13 -9 -4 -2 -3 -8 -13 -16 -17 -16 -16 -18 -20 -23 -24 -22 -19 -15 -11 -10 -14 -20 -26 -29 -27 -22 -14 -6 -4 -7 -12 -19 -23 -22 -20 -18 -17 -17 -18 -19 -18 -17 -17 -18 -20 -21 -19 -16 -16 -18 -23 -26 -27 -26 -23 -22 -22 -23 -25 -25 -23 -21 -19 -17 -16 -15 -15 -15 -16 -16 -16 -14 -11 -9 -9 -9 -11 -13 -18 -24 -27 -27 -25 -24 -25 -27 -28 -29 -30 -31 -32 -32 -31 -28 -24 -19 -16 -16 -15 -15 -13 -12 -10 -9 -10 -10 -11 -13 -16 -18 -17 -18 -18 -18 -17 -17 -17 -18 -19 -24 -28 -30 -30 -25 -18 -14 -13 -15 -17 -17 -16 -15 -16 -17 -18 -19 -21 -24 -25 -24 -20 -14 -14 -18 -25 -30 -28 -25 -24 -25 -26 -24 -19 -13 -6 -5 -10 -14 -18 -19 -21 -22 -23 -22 -23 -23 -24 -27 -30 -29 -25 -21 -18 -20 -24 -26 -27 -27 -26 -25 -26 -29 -30 -30 -30 -31 -29 -29 -31 -34 -36 -37 -36 -35 -32 -28 -26 -26 -28 -30 -33 -34 -36 -38 -38 -37 -36 -36 -37 -38 -40 -40 -38 -36 -32 -26 -22 -22 -31 -36 -36 -36 -39 -43 -45 -46 -46 -46 -48 -51 -52 -51 -50 -49 -47 -45 -44 -44 -45 -44 -41 -38 -36 -36 -36 -37 -37 -39 -43 -47 -49 -50 -50 -50 -48 -46 -44 -43 -42 -42 -42 -42 -43 -44 -42 -40 -36 -33 -33 -35 -38 -41 -42 -40 -37 -35 -35 -33 -33 -32 -30 -29 -28 -27 -26 -24 -22 -23 -26 -31 -36 -40 -41 -41 -38 -34 -32 -33 -36 -35 -34 -34 -35 -40 -47 -53 -56 -56 -53 -51 -49 -48 -50 -51 -50 -48 -46 -42 -36 -34 -1 0 -0 -2 -5 -6 -7 -6 -5 -5 -6 -8 -10 -10 -9 -7 -7 -8 -11 -15 -20 -21 -17 -11 -9 -12 -12 -11 -9 -7 -6 -7 -8 -9 -8 -8 -7 -6 -6 -7 -7 -7 -6 -6 -6 -6 -6 -6 -7 -8 -8 -7 -5 -3 -1 -1 -2 -3 -7 -10 -14 -14 -12 -9 -4 -1 -1 -4 -8 -11 -12 -13 -13 -13 -11 -8 -6 -5 -6 -7 -9 -10 -10 -10 -10 -11 -12 -12 -12 -13 -14 -16 -17 -13 -7 -3 -1 -6 -13 -17 -18 -16 -16 -18 -22 -26 -30 -29 -24 -16 -7 -5 -10 -18 -25 -29 -29 -27 -22 -14 -7 -6 -9 -14 -21 -23 -22 -20 -18 -16 -16 -16 -16 -16 -16 -18 -20 -22 -21 -17 -15 -16 -20 -24 -26 -27 -26 -25 -23 -23 -22 -22 -21 -19 -18 -17 -16 -15 -14 -14 -14 -16 -17 -16 -14 -11 -9 -8 -8 -10 -15 -21 -25 -26 -26 -25 -24 -25 -26 -27 -29 -31 -33 -34 -33 -32 -30 -27 -22 -18 -16 -14 -14 -13 -11 -8 -6 -6 -8 -10 -13 -15 -16 -17 -18 -19 -18 -17 -17 -17 -18 -22 -27 -30 -32 -30 -24 -17 -12 -11 -14 -17 -17 -16 -17 -17 -16 -16 -20 -26 -29 -28 -22 -15 -13 -16 -22 -28 -28 -26 -24 -23 -25 -25 -22 -17 -9 -5 -6 -10 -13 -15 -17 -20 -22 -22 -20 -20 -21 -25 -30 -30 -27 -22 -18 -19 -22 -26 -28 -30 -30 -29 -29 -31 -31 -30 -31 -31 -31 -28 -27 -29 -32 -35 -36 -35 -33 -31 -27 -26 -26 -29 -32 -35 -36 -37 -38 -38 -37 -37 -36 -37 -38 -39 -40 -39 -36 -30 -24 -20 -26 -31 -33 -33 -37 -41 -43 -45 -47 -48 -47 -47 -47 -49 -49 -49 -47 -46 -46 -46 -46 -46 -42 -39 -37 -37 -37 -37 -36 -37 -40 -44 -47 -48 -49 -50 -49 -48 -46 -44 -43 -43 -42 -42 -43 -44 -43 -41 -38 -33 -32 -34 -37 -40 -41 -40 -39 -37 -35 -33 -32 -31 -29 -29 -28 -27 -26 -24 -22 -23 -26 -31 -36 -40 -43 -43 -41 -37 -34 -34 -36 -35 -34 -34 -36 -39 -44 -48 -52 -53 -50 -47 -45 -43 -47 -48 -49 -49 -49 -47 -41 -36 -1 -0 -2 -4 -6 -7 -6 -5 -6 -6 -8 -10 -11 -10 -9 -8 -9 -11 -15 -18 -21 -21 -16 -12 -12 -17 -18 -15 -11 -7 -6 -6 -7 -7 -5 -5 -4 -4 -4 -4 -4 -4 -4 -5 -5 -5 -4 -3 -4 -6 -9 -10 -8 -7 -5 -4 -3 -4 -6 -10 -13 -12 -11 -9 -5 -1 0 -1 -4 -7 -9 -10 -11 -12 -12 -11 -9 -6 -5 -6 -7 -8 -10 -10 -10 -10 -11 -11 -11 -11 -13 -16 -18 -17 -11 -5 -1 -3 -11 -17 -20 -19 -16 -17 -20 -24 -29 -31 -28 -19 -8 -2 -6 -13 -21 -27 -29 -29 -25 -19 -12 -8 -7 -11 -17 -20 -22 -22 -21 -19 -16 -14 -13 -14 -15 -16 -19 -22 -22 -20 -17 -15 -17 -21 -24 -26 -27 -26 -24 -22 -20 -18 -17 -17 -16 -16 -17 -16 -16 -14 -14 -15 -16 -17 -16 -14 -12 -9 -8 -8 -12 -17 -22 -24 -25 -24 -23 -23 -23 -24 -26 -29 -32 -34 -35 -34 -34 -33 -29 -23 -18 -15 -15 -14 -11 -9 -7 -5 -6 -7 -10 -12 -15 -16 -18 -19 -19 -19 -18 -17 -18 -21 -25 -29 -32 -33 -29 -22 -14 -9 -10 -14 -16 -17 -17 -16 -15 -15 -19 -25 -27 -27 -24 -18 -15 -15 -19 -24 -25 -24 -23 -23 -24 -25 -24 -21 -15 -8 -5 -5 -8 -10 -12 -15 -18 -19 -18 -17 -18 -23 -29 -31 -29 -25 -20 -20 -22 -25 -28 -32 -32 -32 -32 -33 -32 -30 -30 -31 -32 -29 -27 -25 -27 -32 -34 -35 -34 -32 -29 -27 -27 -29 -32 -33 -34 -35 -36 -37 -38 -38 -37 -36 -37 -38 -41 -42 -40 -35 -28 -20 -21 -25 -29 -31 -34 -37 -39 -43 -47 -50 -50 -49 -47 -48 -48 -48 -47 -47 -47 -47 -46 -44 -41 -38 -38 -38 -38 -37 -35 -36 -37 -41 -43 -46 -48 -50 -50 -49 -47 -45 -44 -43 -43 -43 -44 -44 -43 -42 -40 -35 -33 -34 -37 -40 -40 -39 -39 -37 -35 -33 -32 -31 -30 -30 -29 -27 -26 -24 -23 -23 -27 -32 -36 -40 -43 -45 -44 -40 -37 -36 -38 -37 -35 -34 -35 -37 -40 -45 -49 -50 -48 -46 -43 -41 -43 -45 -47 -49 -52 -50 -46 -39 -2 -2 -4 -6 -6 -6 -6 -6 -7 -8 -9 -10 -11 -11 -11 -10 -12 -15 -19 -21 -21 -18 -14 -13 -16 -22 -21 -16 -11 -7 -7 -6 -6 -5 -4 -3 -3 -3 -2 -2 -0 0 0 -1 -2 -3 -2 -1 -2 -5 -8 -10 -12 -11 -9 -7 -5 -6 -9 -11 -10 -10 -10 -9 -7 -3 -1 -1 -3 -5 -8 -9 -10 -11 -12 -11 -10 -8 -6 -5 -5 -6 -7 -9 -10 -11 -11 -11 -10 -11 -13 -15 -17 -17 -14 -10 -5 -3 -8 -14 -20 -22 -19 -17 -17 -21 -25 -29 -29 -23 -12 -2 -0 -4 -12 -21 -26 -28 -26 -21 -15 -11 -9 -10 -14 -17 -19 -21 -22 -22 -19 -16 -13 -11 -11 -13 -16 -20 -23 -22 -20 -18 -16 -18 -21 -24 -26 -26 -24 -22 -19 -16 -15 -15 -15 -15 -16 -17 -17 -16 -14 -15 -15 -16 -16 -15 -14 -12 -9 -8 -9 -12 -16 -20 -22 -22 -21 -20 -20 -21 -23 -27 -31 -34 -35 -35 -35 -34 -31 -25 -19 -15 -13 -13 -12 -10 -8 -6 -6 -6 -7 -10 -13 -16 -18 -18 -19 -19 -18 -17 -18 -20 -24 -28 -31 -33 -32 -27 -20 -10 -8 -10 -13 -16 -16 -15 -13 -12 -13 -17 -20 -23 -24 -21 -17 -17 -20 -22 -22 -21 -21 -23 -23 -23 -24 -24 -21 -13 -7 -3 -2 -4 -6 -9 -12 -15 -16 -18 -20 -25 -31 -35 -34 -30 -24 -23 -24 -26 -29 -32 -33 -33 -33 -34 -32 -31 -30 -30 -31 -30 -27 -24 -24 -28 -31 -34 -35 -34 -32 -31 -31 -30 -31 -32 -32 -33 -34 -36 -38 -38 -37 -36 -37 -39 -41 -42 -40 -36 -29 -20 -18 -21 -25 -29 -31 -32 -35 -40 -46 -52 -54 -52 -49 -48 -49 -49 -48 -46 -46 -46 -44 -41 -40 -39 -39 -39 -38 -36 -35 -35 -37 -38 -40 -44 -48 -50 -51 -50 -48 -46 -44 -43 -43 -43 -44 -43 -43 -42 -41 -37 -36 -37 -39 -42 -41 -39 -37 -36 -34 -33 -32 -32 -31 -30 -29 -28 -27 -24 -23 -24 -27 -32 -36 -40 -45 -49 -45 -40 -38 -38 -39 -37 -35 -34 -34 -34 -37 -41 -45 -45 -47 -47 -45 -41 -41 -43 -46 -50 -52 -52 -49 -43 -3 -5 -6 -7 -6 -6 -6 -7 -8 -9 -10 -10 -11 -12 -13 -13 -15 -19 -23 -24 -22 -17 -14 -15 -20 -23 -20 -15 -10 -8 -8 -8 -8 -7 -7 -6 -5 -3 -2 -1 0 1 0 -0 -1 -1 -2 -3 -3 -4 -6 -8 -10 -10 -9 -8 -6 -7 -8 -8 -7 -8 -10 -10 -8 -5 -2 -2 -3 -5 -7 -8 -9 -10 -11 -11 -10 -9 -7 -5 -4 -5 -6 -8 -9 -10 -10 -10 -9 -10 -11 -14 -16 -17 -15 -12 -9 -7 -8 -12 -17 -21 -20 -18 -16 -18 -21 -25 -27 -26 -20 -9 -2 -1 -6 -15 -22 -24 -24 -21 -15 -11 -9 -10 -13 -15 -17 -18 -19 -21 -21 -20 -18 -14 -10 -8 -10 -14 -19 -23 -24 -22 -19 -17 -17 -20 -23 -25 -24 -21 -18 -16 -16 -15 -14 -13 -15 -16 -17 -17 -17 -17 -16 -16 -15 -14 -14 -13 -12 -9 -8 -10 -12 -15 -18 -20 -20 -20 -20 -20 -22 -25 -28 -32 -34 -35 -35 -35 -34 -28 -21 -14 -12 -11 -10 -9 -8 -7 -7 -6 -6 -7 -12 -15 -17 -17 -18 -17 -17 -17 -18 -19 -22 -26 -30 -33 -34 -32 -26 -14 -7 -6 -10 -14 -16 -16 -15 -14 -13 -15 -17 -20 -21 -19 -16 -16 -18 -20 -20 -20 -21 -22 -21 -21 -22 -23 -23 -17 -9 -2 2 1 -1 -3 -7 -13 -16 -19 -23 -27 -30 -32 -32 -30 -25 -23 -24 -27 -30 -33 -34 -34 -33 -34 -33 -31 -30 -30 -30 -29 -28 -25 -22 -25 -29 -34 -37 -37 -36 -35 -34 -32 -31 -31 -31 -32 -33 -34 -36 -37 -37 -37 -37 -38 -40 -42 -42 -40 -34 -25 -19 -19 -22 -27 -29 -32 -36 -41 -47 -52 -55 -55 -52 -50 -50 -50 -49 -47 -46 -46 -45 -43 -42 -41 -40 -39 -37 -35 -35 -35 -37 -37 -39 -42 -47 -50 -50 -49 -48 -47 -45 -44 -43 -42 -42 -42 -42 -42 -41 -39 -38 -39 -41 -43 -41 -39 -37 -34 -33 -32 -32 -33 -32 -31 -30 -28 -27 -25 -23 -24 -28 -32 -36 -40 -45 -48 -42 -39 -39 -40 -39 -36 -34 -33 -33 -31 -34 -39 -40 -42 -44 -45 -44 -40 -40 -42 -46 -50 -51 -51 -49 -46 -5 -7 -7 -7 -6 -7 -8 -9 -10 -10 -10 -10 -11 -13 -15 -16 -17 -23 -28 -29 -25 -17 -14 -16 -21 -22 -17 -13 -10 -11 -12 -11 -9 -8 -8 -7 -5 -4 -4 -3 -1 -1 -0 0 -0 -1 -3 -4 -4 -4 -5 -5 -6 -6 -7 -7 -7 -7 -7 -6 -5 -7 -8 -9 -8 -6 -5 -4 -5 -6 -7 -8 -9 -10 -11 -11 -11 -10 -8 -6 -4 -3 -4 -6 -8 -9 -9 -9 -10 -10 -10 -11 -13 -13 -13 -13 -13 -12 -10 -10 -12 -16 -18 -17 -16 -17 -18 -20 -22 -24 -24 -19 -11 -4 -3 -8 -15 -20 -22 -21 -17 -13 -10 -10 -14 -17 -17 -16 -17 -19 -22 -23 -23 -21 -17 -12 -9 -8 -12 -18 -22 -24 -22 -19 -17 -17 -18 -20 -20 -20 -19 -17 -16 -15 -14 -13 -13 -15 -16 -17 -19 -19 -18 -16 -13 -12 -12 -13 -13 -11 -10 -10 -11 -12 -15 -18 -20 -20 -20 -20 -21 -23 -27 -30 -33 -34 -35 -35 -34 -30 -24 -17 -12 -11 -9 -7 -6 -7 -7 -6 -5 -5 -9 -13 -17 -18 -18 -18 -17 -16 -17 -18 -21 -24 -28 -31 -33 -34 -31 -21 -11 -5 -6 -11 -16 -20 -21 -21 -20 -18 -16 -16 -18 -19 -18 -16 -13 -14 -18 -20 -21 -20 -18 -17 -17 -19 -21 -18 -11 -4 2 3 3 1 -5 -11 -15 -20 -24 -28 -28 -28 -29 -30 -30 -27 -26 -28 -32 -36 -37 -36 -35 -35 -34 -32 -31 -29 -29 -28 -28 -26 -23 -24 -28 -34 -38 -39 -39 -38 -37 -35 -33 -32 -31 -31 -31 -32 -33 -36 -37 -37 -36 -37 -38 -42 -43 -42 -37 -28 -20 -18 -20 -25 -29 -34 -40 -44 -47 -50 -52 -53 -53 -51 -51 -50 -50 -48 -47 -46 -45 -46 -46 -44 -42 -40 -38 -35 -34 -35 -36 -37 -38 -41 -45 -48 -49 -49 -48 -47 -45 -44 -43 -41 -40 -40 -41 -42 -41 -40 -40 -40 -41 -42 -40 -38 -36 -34 -33 -33 -34 -34 -33 -31 -30 -28 -27 -25 -24 -25 -29 -32 -35 -40 -45 -45 -40 -39 -40 -41 -39 -35 -31 -31 -30 -30 -33 -38 -38 -38 -40 -42 -42 -40 -41 -44 -47 -49 -50 -50 -49 -48 -7 -7 -7 -7 -7 -8 -10 -10 -10 -10 -10 -10 -12 -14 -15 -16 -18 -24 -28 -28 -24 -18 -16 -18 -22 -22 -17 -13 -12 -13 -12 -9 -7 -5 -5 -4 -4 -4 -3 -2 -1 -1 -1 -0 -0 -1 -2 -3 -3 -3 -3 -3 -3 -3 -4 -5 -6 -7 -7 -6 -5 -6 -7 -7 -8 -7 -7 -6 -6 -7 -7 -8 -9 -10 -10 -10 -11 -10 -9 -7 -4 -3 -3 -4 -6 -8 -9 -9 -10 -10 -10 -10 -10 -11 -12 -13 -15 -16 -15 -13 -12 -14 -16 -16 -16 -16 -16 -16 -18 -22 -26 -25 -19 -10 -3 -4 -10 -16 -21 -23 -20 -14 -10 -9 -12 -15 -16 -15 -14 -16 -19 -22 -25 -26 -24 -20 -15 -10 -9 -12 -16 -21 -23 -22 -19 -17 -15 -15 -17 -18 -19 -18 -16 -15 -15 -14 -14 -14 -14 -16 -18 -19 -19 -17 -15 -12 -10 -10 -10 -12 -12 -12 -12 -12 -13 -16 -18 -19 -20 -20 -20 -22 -25 -29 -32 -33 -34 -35 -34 -31 -27 -19 -13 -11 -9 -7 -6 -7 -8 -8 -6 -5 -6 -9 -13 -17 -18 -18 -17 -16 -16 -18 -20 -23 -27 -30 -33 -34 -34 -29 -17 -7 -3 -8 -17 -23 -26 -26 -23 -19 -15 -13 -15 -18 -18 -17 -16 -17 -17 -16 -14 -12 -12 -12 -13 -13 -15 -15 -14 -10 -4 1 4 4 -2 -8 -13 -18 -23 -27 -27 -27 -29 -32 -32 -30 -28 -28 -30 -34 -35 -36 -36 -36 -34 -33 -31 -30 -29 -28 -28 -27 -25 -24 -27 -33 -38 -40 -41 -41 -41 -38 -36 -35 -33 -32 -30 -30 -31 -33 -35 -36 -35 -35 -36 -40 -43 -43 -39 -30 -21 -17 -18 -22 -27 -33 -39 -42 -44 -46 -48 -50 -52 -51 -51 -50 -51 -50 -48 -45 -44 -46 -47 -46 -44 -42 -41 -38 -35 -34 -36 -37 -39 -41 -43 -45 -48 -49 -48 -45 -45 -44 -44 -43 -41 -41 -41 -42 -42 -41 -40 -40 -40 -40 -39 -37 -35 -34 -34 -34 -35 -34 -33 -31 -29 -28 -26 -25 -24 -26 -29 -31 -35 -40 -45 -42 -39 -38 -39 -39 -38 -34 -29 -27 -27 -29 -34 -40 -38 -38 -40 -41 -42 -40 -43 -47 -51 -51 -51 -50 -49 -48 -7 -8 -7 -7 -8 -10 -11 -11 -11 -10 -11 -11 -13 -14 -15 -16 -17 -23 -25 -23 -18 -16 -17 -20 -24 -23 -18 -13 -11 -9 -7 -4 -2 -1 -1 -2 -2 -2 -1 -1 -1 -2 -2 -3 -3 -3 -2 -1 -1 -0 -0 -1 -1 -1 -2 -3 -4 -5 -6 -6 -5 -5 -5 -6 -6 -7 -7 -7 -7 -7 -8 -9 -9 -10 -10 -9 -9 -9 -9 -8 -6 -4 -3 -3 -5 -6 -8 -9 -9 -9 -9 -9 -9 -10 -11 -13 -15 -18 -19 -19 -17 -17 -17 -16 -15 -14 -14 -14 -17 -21 -25 -27 -23 -16 -8 -4 -7 -13 -20 -24 -23 -17 -11 -7 -8 -11 -14 -14 -14 -14 -16 -19 -23 -26 -27 -27 -23 -18 -11 -8 -10 -15 -20 -21 -20 -17 -14 -13 -14 -16 -18 -18 -17 -16 -16 -15 -15 -15 -15 -16 -17 -19 -20 -21 -19 -16 -12 -9 -8 -9 -13 -15 -16 -15 -13 -15 -17 -20 -20 -19 -19 -21 -24 -28 -31 -33 -34 -34 -33 -32 -28 -23 -15 -11 -9 -8 -6 -7 -7 -8 -8 -7 -6 -7 -9 -14 -17 -19 -18 -17 -17 -18 -19 -22 -26 -29 -32 -33 -34 -33 -24 -13 -4 -7 -17 -22 -25 -23 -21 -17 -13 -12 -13 -16 -17 -18 -18 -19 -15 -11 -9 -8 -9 -9 -10 -11 -13 -15 -17 -17 -13 -5 1 5 2 -4 -10 -16 -22 -27 -28 -28 -29 -31 -33 -32 -30 -28 -29 -31 -33 -35 -38 -38 -37 -35 -33 -31 -29 -29 -29 -29 -27 -25 -26 -31 -36 -39 -42 -43 -43 -41 -39 -37 -35 -34 -32 -31 -30 -31 -33 -34 -34 -35 -36 -39 -42 -43 -40 -32 -24 -17 -16 -19 -25 -31 -37 -39 -41 -43 -46 -48 -50 -50 -50 -50 -51 -51 -49 -46 -44 -45 -45 -45 -45 -45 -44 -41 -37 -34 -35 -37 -38 -40 -41 -44 -48 -50 -49 -45 -44 -45 -46 -45 -44 -43 -44 -46 -46 -44 -42 -40 -38 -38 -38 -37 -35 -35 -34 -35 -35 -34 -33 -31 -29 -27 -26 -24 -24 -25 -29 -31 -35 -40 -45 -41 -39 -38 -38 -36 -35 -32 -28 -26 -26 -29 -35 -41 -40 -40 -41 -42 -43 -42 -44 -49 -53 -54 -53 -51 -49 -48 -7 -8 -8 -9 -10 -10 -10 -10 -11 -11 -12 -13 -14 -15 -16 -17 -17 -22 -22 -20 -15 -14 -17 -22 -26 -23 -16 -10 -6 -3 0 2 2 0 -1 -1 -1 -1 -1 -1 -2 -4 -5 -7 -7 -5 -3 -1 -0 1 2 2 1 0 -0 -0 -1 -2 -3 -4 -4 -3 -3 -4 -5 -6 -7 -7 -7 -8 -8 -10 -10 -11 -10 -8 -7 -7 -7 -7 -7 -5 -4 -3 -4 -5 -7 -8 -8 -9 -9 -8 -8 -8 -10 -12 -15 -18 -21 -23 -23 -23 -20 -16 -12 -10 -11 -13 -16 -21 -24 -25 -24 -21 -15 -7 -5 -9 -16 -23 -25 -20 -13 -6 -3 -6 -10 -14 -15 -14 -15 -17 -20 -23 -27 -29 -29 -26 -18 -10 -7 -9 -15 -19 -20 -19 -15 -13 -12 -13 -16 -17 -18 -18 -17 -17 -17 -16 -16 -17 -17 -18 -20 -22 -23 -21 -17 -12 -9 -9 -12 -16 -18 -17 -14 -14 -16 -18 -19 -19 -19 -21 -23 -26 -29 -31 -33 -34 -33 -32 -30 -26 -19 -13 -10 -8 -6 -6 -7 -8 -9 -9 -9 -8 -7 -11 -15 -18 -19 -19 -18 -18 -19 -21 -25 -28 -31 -33 -35 -35 -30 -22 -11 -8 -11 -14 -16 -17 -17 -16 -15 -13 -13 -15 -16 -17 -18 -18 -13 -9 -7 -8 -9 -9 -9 -9 -11 -14 -16 -18 -17 -11 -3 4 7 2 -5 -14 -21 -27 -28 -28 -28 -30 -33 -33 -32 -29 -28 -29 -31 -35 -39 -40 -39 -36 -34 -32 -31 -31 -31 -32 -30 -28 -27 -28 -33 -37 -41 -44 -44 -42 -41 -39 -38 -36 -34 -33 -32 -31 -31 -32 -33 -34 -35 -37 -40 -42 -41 -35 -27 -18 -14 -17 -24 -30 -35 -36 -38 -41 -44 -46 -49 -50 -51 -51 -52 -52 -50 -48 -45 -43 -42 -43 -46 -47 -46 -43 -39 -36 -35 -37 -39 -42 -44 -45 -48 -49 -49 -44 -45 -47 -47 -46 -45 -45 -46 -48 -48 -47 -44 -42 -40 -40 -39 -38 -36 -35 -35 -34 -35 -34 -33 -32 -30 -27 -26 -24 -23 -25 -28 -31 -35 -41 -44 -40 -38 -38 -37 -35 -34 -31 -28 -27 -27 -30 -35 -41 -42 -41 -41 -42 -43 -42 -44 -48 -54 -56 -56 -53 -49 -48 -9 -10 -10 -10 -10 -10 -10 -11 -12 -13 -13 -13 -14 -16 -17 -17 -18 -21 -21 -18 -13 -12 -16 -20 -22 -18 -9 -4 -1 1 4 4 2 -1 -3 -4 -3 -3 -3 -4 -5 -6 -8 -9 -8 -7 -5 -4 -2 -0 1 2 2 1 1 1 1 -1 -2 -3 -3 -2 -2 -2 -3 -4 -5 -6 -7 -8 -9 -10 -12 -12 -11 -8 -7 -5 -6 -7 -7 -6 -4 -2 -3 -4 -5 -6 -6 -7 -7 -7 -7 -8 -10 -12 -15 -18 -21 -24 -26 -27 -25 -21 -16 -11 -8 -10 -14 -19 -21 -22 -24 -24 -23 -15 -7 -6 -10 -18 -22 -20 -13 -5 0 -2 -7 -12 -15 -15 -15 -16 -17 -20 -24 -27 -29 -30 -25 -17 -11 -8 -10 -14 -18 -19 -18 -14 -12 -12 -13 -16 -17 -18 -18 -18 -18 -18 -18 -18 -18 -18 -19 -21 -23 -23 -20 -15 -10 -8 -10 -14 -17 -18 -15 -14 -14 -15 -16 -17 -18 -19 -21 -23 -26 -28 -31 -32 -32 -32 -30 -29 -23 -17 -11 -8 -7 -7 -7 -8 -8 -10 -11 -10 -7 -8 -12 -15 -18 -19 -19 -19 -19 -21 -24 -28 -31 -33 -35 -35 -34 -30 -21 -10 -4 -4 -7 -13 -17 -18 -17 -16 -13 -14 -15 -16 -17 -16 -12 -9 -7 -8 -10 -11 -11 -10 -12 -14 -17 -18 -17 -13 -7 0 8 6 -1 -10 -18 -23 -26 -26 -25 -27 -31 -34 -34 -31 -28 -28 -30 -35 -40 -41 -40 -38 -35 -34 -33 -33 -33 -34 -32 -30 -28 -27 -30 -35 -40 -43 -44 -43 -42 -41 -40 -39 -37 -36 -34 -32 -31 -31 -31 -32 -33 -35 -37 -40 -40 -36 -29 -19 -12 -15 -22 -28 -33 -34 -37 -40 -43 -46 -48 -50 -52 -52 -53 -53 -52 -49 -44 -41 -40 -41 -44 -46 -47 -46 -42 -38 -36 -37 -39 -43 -45 -45 -46 -47 -47 -45 -45 -47 -48 -48 -47 -47 -47 -48 -49 -48 -46 -44 -42 -41 -40 -39 -38 -36 -35 -34 -34 -33 -34 -33 -31 -28 -26 -24 -23 -24 -27 -31 -36 -42 -41 -37 -36 -38 -38 -35 -33 -32 -30 -28 -28 -30 -34 -38 -41 -42 -41 -41 -41 -41 -42 -46 -52 -57 -58 -56 -52 -49 -11 -12 -11 -10 -10 -10 -11 -12 -14 -14 -14 -14 -15 -16 -17 -16 -18 -21 -21 -18 -12 -10 -13 -15 -15 -9 -1 2 1 0 2 2 -0 -5 -8 -8 -8 -7 -7 -7 -7 -7 -7 -6 -7 -7 -7 -7 -6 -4 -1 1 1 -0 -1 -0 -0 -2 -4 -3 -3 -3 -2 -2 -1 -2 -3 -4 -6 -8 -10 -12 -13 -14 -13 -11 -9 -6 -5 -4 -5 -5 -5 -4 -3 -3 -3 -4 -5 -6 -7 -7 -8 -9 -10 -12 -15 -19 -22 -25 -27 -29 -28 -27 -22 -16 -11 -10 -12 -15 -18 -19 -21 -23 -24 -21 -13 -7 -6 -11 -18 -21 -18 -11 -2 -0 -3 -8 -14 -16 -16 -16 -17 -18 -20 -22 -25 -28 -28 -24 -18 -11 -7 -9 -13 -17 -19 -17 -13 -11 -11 -14 -16 -18 -18 -18 -18 -18 -19 -20 -19 -18 -18 -19 -21 -22 -21 -18 -14 -10 -10 -13 -16 -18 -16 -15 -13 -13 -14 -14 -15 -17 -18 -21 -23 -25 -28 -30 -32 -32 -32 -31 -28 -21 -14 -8 -6 -7 -7 -6 -7 -9 -11 -11 -8 -7 -9 -12 -15 -18 -19 -20 -20 -21 -23 -26 -30 -33 -35 -36 -36 -33 -24 -11 -2 1 -2 -8 -13 -16 -17 -15 -12 -11 -11 -13 -14 -15 -14 -11 -7 -6 -8 -11 -12 -11 -12 -14 -16 -15 -14 -14 -11 -5 4 5 0 -7 -15 -21 -23 -23 -22 -25 -30 -33 -34 -33 -30 -29 -31 -36 -40 -41 -41 -39 -36 -35 -35 -35 -35 -35 -34 -32 -30 -29 -29 -33 -37 -41 -43 -43 -42 -41 -41 -41 -40 -39 -37 -34 -32 -30 -30 -30 -31 -32 -33 -35 -36 -34 -29 -21 -13 -14 -19 -25 -29 -33 -36 -39 -43 -46 -49 -51 -53 -54 -54 -54 -52 -49 -44 -41 -40 -41 -43 -45 -47 -47 -44 -40 -37 -37 -39 -42 -44 -45 -47 -47 -46 -45 -46 -48 -50 -50 -50 -49 -48 -48 -49 -49 -48 -46 -44 -43 -42 -40 -39 -37 -35 -34 -33 -33 -34 -34 -32 -30 -28 -25 -24 -25 -27 -30 -35 -41 -39 -37 -37 -38 -38 -36 -34 -32 -31 -29 -28 -28 -32 -35 -39 -42 -43 -42 -41 -41 -41 -45 -51 -57 -60 -58 -55 -51 -13 -12 -11 -10 -10 -12 -14 -15 -15 -15 -14 -14 -14 -15 -16 -16 -18 -21 -21 -18 -13 -10 -11 -11 -10 -4 3 3 -0 -3 -2 -1 -3 -7 -11 -11 -10 -8 -7 -6 -6 -5 -4 -3 -4 -5 -6 -6 -6 -6 -5 -4 -3 -3 -3 -4 -4 -5 -6 -6 -6 -6 -5 -2 -0 1 1 -1 -3 -6 -9 -11 -13 -14 -14 -12 -10 -7 -5 -4 -5 -5 -5 -5 -3 -1 -1 -2 -4 -5 -6 -7 -8 -9 -10 -11 -14 -17 -21 -24 -27 -29 -29 -28 -26 -23 -18 -14 -11 -10 -10 -13 -16 -20 -23 -24 -19 -12 -6 -5 -12 -18 -20 -17 -8 -2 -1 -5 -11 -13 -14 -15 -17 -18 -18 -18 -20 -24 -26 -27 -25 -19 -11 -8 -9 -14 -18 -18 -16 -13 -11 -12 -14 -16 -18 -18 -18 -19 -19 -20 -20 -18 -18 -18 -19 -21 -21 -20 -18 -15 -13 -13 -15 -17 -17 -15 -13 -12 -12 -13 -13 -14 -16 -18 -20 -22 -24 -28 -30 -32 -32 -32 -31 -26 -19 -10 -6 -7 -7 -7 -7 -10 -11 -10 -8 -7 -7 -9 -13 -17 -19 -20 -21 -22 -23 -25 -28 -31 -34 -36 -37 -34 -28 -15 -4 1 1 -3 -8 -12 -15 -16 -14 -12 -11 -12 -14 -16 -16 -14 -9 -5 -5 -8 -10 -10 -11 -12 -13 -11 -11 -12 -12 -10 -3 0 -1 -4 -11 -17 -21 -22 -23 -26 -30 -33 -34 -34 -32 -32 -34 -37 -41 -42 -41 -40 -38 -37 -36 -37 -37 -37 -36 -34 -32 -30 -29 -30 -33 -38 -41 -41 -41 -41 -42 -42 -42 -41 -39 -37 -34 -32 -31 -30 -29 -29 -29 -30 -31 -32 -30 -26 -18 -16 -16 -19 -25 -31 -35 -39 -42 -46 -49 -52 -54 -56 -56 -55 -53 -50 -45 -42 -40 -40 -40 -43 -46 -48 -46 -41 -38 -37 -37 -39 -42 -44 -47 -47 -45 -45 -47 -48 -49 -51 -51 -49 -47 -48 -49 -49 -49 -48 -46 -44 -43 -41 -39 -38 -36 -34 -32 -33 -33 -33 -33 -31 -29 -27 -25 -26 -27 -30 -34 -40 -40 -40 -39 -39 -39 -37 -34 -33 -32 -31 -28 -27 -30 -33 -37 -39 -41 -43 -44 -43 -43 -45 -52 -58 -60 -59 -58 -54 -13 -11 -9 -9 -12 -14 -17 -18 -17 -15 -14 -14 -14 -14 -15 -16 -18 -21 -21 -19 -16 -13 -11 -11 -10 -6 -1 -0 -3 -6 -5 -4 -4 -5 -7 -7 -7 -5 -3 -1 -2 -4 -5 -4 -3 -2 -2 -2 -4 -6 -7 -7 -6 -5 -5 -6 -6 -6 -6 -6 -7 -6 -5 -3 -1 1 1 -1 -2 -4 -6 -9 -10 -11 -12 -12 -11 -8 -6 -4 -3 -4 -5 -5 -3 -0 1 1 -1 -3 -5 -6 -7 -8 -9 -10 -12 -14 -18 -22 -25 -27 -28 -27 -27 -26 -25 -21 -16 -10 -6 -6 -10 -14 -19 -22 -22 -17 -10 -4 -7 -13 -18 -20 -15 -9 -6 -6 -9 -12 -14 -16 -17 -16 -16 -17 -20 -23 -24 -27 -28 -28 -23 -15 -11 -11 -14 -16 -17 -16 -14 -12 -13 -15 -16 -17 -18 -19 -19 -19 -19 -19 -18 -18 -18 -19 -20 -21 -21 -19 -17 -15 -14 -16 -17 -16 -14 -11 -11 -11 -11 -13 -14 -17 -18 -20 -22 -25 -28 -30 -31 -32 -32 -30 -24 -15 -8 -6 -6 -8 -7 -7 -7 -8 -8 -7 -6 -7 -10 -15 -18 -20 -22 -23 -23 -23 -25 -29 -33 -36 -37 -36 -31 -20 -10 -2 1 -0 -4 -8 -12 -16 -15 -14 -12 -12 -15 -18 -19 -16 -11 -6 -5 -5 -6 -7 -9 -10 -10 -8 -9 -10 -12 -12 -9 -5 -2 -1 -5 -12 -17 -21 -23 -25 -28 -31 -33 -35 -35 -36 -36 -37 -40 -41 -42 -42 -40 -38 -37 -38 -39 -38 -37 -35 -33 -31 -29 -29 -31 -35 -37 -39 -40 -41 -41 -42 -43 -42 -41 -39 -37 -35 -33 -31 -29 -27 -26 -25 -27 -30 -31 -28 -20 -14 -13 -17 -25 -30 -34 -38 -42 -45 -48 -51 -55 -57 -57 -56 -55 -52 -47 -43 -42 -41 -41 -43 -45 -46 -45 -41 -38 -36 -35 -37 -40 -43 -47 -48 -48 -49 -50 -49 -48 -49 -50 -49 -47 -48 -48 -49 -49 -49 -48 -46 -44 -42 -40 -39 -38 -35 -33 -32 -32 -31 -32 -31 -29 -28 -26 -27 -28 -29 -33 -38 -40 -41 -40 -40 -39 -37 -35 -34 -33 -32 -30 -28 -28 -31 -35 -39 -41 -42 -46 -47 -47 -49 -54 -59 -60 -60 -60 -57 -12 -9 -7 -9 -13 -17 -19 -19 -17 -15 -14 -13 -13 -14 -14 -15 -16 -19 -21 -20 -18 -12 -8 -8 -11 -11 -5 -1 -1 -4 -5 -5 -4 -3 -2 -3 -3 -3 -2 -1 -4 -7 -9 -8 -5 -3 -2 -2 -4 -5 -6 -6 -6 -5 -5 -5 -5 -3 -3 -3 -4 -4 -4 -3 -3 -3 -2 -2 -2 -3 -4 -5 -7 -8 -9 -10 -9 -9 -7 -5 -3 -3 -3 -4 -3 -1 1 1 0 -2 -3 -5 -6 -7 -7 -8 -9 -10 -14 -19 -23 -26 -26 -25 -25 -27 -29 -28 -23 -15 -7 -3 -5 -8 -13 -18 -21 -21 -16 -10 -8 -12 -16 -19 -17 -12 -9 -8 -11 -14 -16 -15 -14 -14 -15 -17 -19 -21 -24 -27 -29 -31 -30 -25 -19 -13 -11 -13 -16 -19 -19 -16 -15 -15 -16 -17 -18 -19 -19 -19 -20 -20 -20 -18 -18 -18 -19 -20 -22 -22 -21 -18 -15 -15 -16 -16 -14 -12 -11 -10 -11 -11 -13 -15 -17 -19 -21 -23 -25 -27 -29 -31 -32 -31 -29 -23 -14 -8 -5 -5 -6 -5 -5 -5 -7 -7 -7 -7 -7 -10 -14 -18 -20 -22 -22 -22 -23 -26 -31 -35 -37 -36 -33 -26 -16 -7 -1 -1 -2 -6 -10 -14 -15 -15 -14 -13 -14 -16 -16 -14 -10 -8 -8 -7 -6 -8 -11 -12 -10 -9 -8 -9 -10 -12 -11 -8 -4 -1 -2 -7 -13 -18 -21 -23 -25 -28 -31 -35 -37 -36 -34 -34 -37 -40 -42 -43 -41 -39 -39 -39 -40 -40 -38 -36 -34 -32 -30 -29 -29 -32 -35 -37 -39 -40 -41 -42 -43 -43 -43 -42 -40 -39 -38 -35 -32 -28 -25 -22 -23 -27 -30 -29 -18 -11 -9 -14 -22 -28 -32 -36 -40 -43 -46 -49 -53 -56 -57 -57 -56 -53 -49 -46 -43 -42 -42 -42 -43 -43 -42 -41 -38 -35 -33 -34 -38 -42 -46 -48 -50 -51 -52 -51 -48 -48 -49 -50 -49 -48 -47 -47 -48 -50 -49 -47 -45 -43 -42 -42 -42 -39 -35 -31 -30 -29 -30 -30 -29 -28 -27 -27 -28 -30 -32 -36 -39 -40 -40 -41 -42 -40 -37 -36 -34 -33 -32 -29 -27 -30 -34 -38 -41 -41 -44 -48 -50 -50 -55 -59 -61 -62 -62 -59 -9 -7 -7 -11 -15 -17 -18 -18 -17 -16 -15 -14 -14 -14 -14 -15 -15 -18 -20 -19 -15 -7 -3 -5 -10 -11 -6 -2 -1 -2 -4 -4 -3 -1 -2 -3 -5 -5 -5 -5 -7 -9 -10 -9 -7 -5 -5 -6 -6 -6 -6 -6 -5 -5 -5 -4 -3 -1 0 1 -0 -2 -3 -4 -5 -5 -5 -3 -2 -2 -2 -3 -4 -5 -6 -7 -7 -8 -8 -6 -4 -2 -2 -3 -4 -3 -2 -1 -1 -1 -2 -3 -5 -5 -6 -6 -6 -7 -10 -15 -20 -23 -24 -23 -24 -26 -30 -31 -29 -23 -14 -6 -3 -4 -8 -14 -19 -21 -20 -16 -12 -13 -15 -18 -17 -14 -11 -9 -10 -13 -14 -14 -14 -15 -17 -18 -19 -20 -22 -24 -27 -29 -30 -29 -24 -18 -12 -12 -15 -19 -22 -22 -20 -17 -16 -17 -17 -18 -19 -20 -20 -21 -20 -19 -17 -17 -17 -19 -21 -22 -22 -20 -17 -15 -15 -15 -14 -13 -12 -11 -10 -11 -12 -14 -16 -18 -20 -22 -23 -24 -25 -27 -29 -31 -31 -29 -21 -13 -6 -4 -4 -3 -2 -2 -5 -6 -6 -6 -6 -7 -11 -15 -18 -21 -21 -21 -22 -25 -29 -33 -36 -37 -35 -30 -22 -14 -6 -3 -3 -5 -9 -13 -14 -14 -14 -13 -12 -12 -13 -13 -12 -10 -7 -6 -5 -7 -10 -12 -12 -10 -9 -8 -8 -10 -11 -10 -6 -2 -2 -5 -9 -14 -18 -21 -22 -24 -28 -33 -36 -35 -33 -32 -35 -39 -42 -43 -42 -41 -40 -40 -41 -41 -40 -38 -36 -34 -32 -31 -30 -30 -33 -35 -37 -39 -40 -41 -42 -43 -43 -43 -43 -43 -42 -40 -37 -32 -26 -20 -20 -24 -28 -27 -19 -12 -9 -13 -19 -25 -30 -35 -38 -41 -42 -45 -49 -54 -56 -57 -56 -54 -51 -49 -46 -45 -43 -42 -41 -41 -40 -40 -38 -36 -32 -33 -36 -40 -44 -46 -48 -50 -51 -50 -48 -48 -49 -51 -50 -48 -46 -46 -48 -50 -51 -50 -46 -44 -44 -45 -45 -42 -37 -32 -29 -28 -29 -29 -29 -29 -28 -28 -29 -31 -33 -36 -39 -41 -41 -43 -44 -43 -41 -38 -36 -34 -33 -30 -28 -29 -32 -37 -41 -40 -42 -46 -50 -50 -53 -58 -62 -63 -63 -61 -6 -6 -9 -13 -15 -16 -17 -17 -17 -17 -16 -16 -15 -15 -14 -15 -16 -18 -20 -19 -13 -4 -0 -2 -6 -7 -6 -4 -3 -2 -2 -1 -0 -1 -5 -8 -9 -8 -7 -6 -7 -8 -8 -7 -7 -7 -8 -8 -8 -7 -7 -6 -6 -6 -6 -6 -4 -3 -1 -0 0 -0 -2 -3 -5 -5 -5 -4 -3 -2 -2 -2 -3 -3 -4 -5 -6 -7 -7 -7 -6 -4 -3 -2 -4 -5 -5 -4 -3 -2 -1 -2 -3 -4 -4 -3 -3 -3 -7 -11 -16 -21 -22 -22 -23 -25 -29 -31 -31 -29 -24 -15 -8 -5 -5 -8 -14 -18 -21 -19 -14 -12 -13 -16 -18 -17 -13 -10 -8 -9 -10 -12 -14 -15 -16 -17 -19 -20 -20 -21 -22 -24 -27 -28 -27 -24 -17 -14 -14 -18 -22 -24 -22 -19 -17 -16 -16 -17 -18 -19 -20 -20 -20 -19 -18 -17 -18 -19 -21 -22 -23 -22 -19 -16 -15 -15 -15 -15 -14 -12 -11 -11 -12 -13 -15 -17 -19 -20 -21 -22 -22 -23 -26 -29 -32 -32 -27 -18 -10 -4 -2 -0 0 -0 -2 -4 -5 -5 -4 -5 -8 -11 -15 -18 -20 -22 -23 -25 -28 -31 -34 -36 -35 -32 -27 -19 -12 -7 -5 -6 -8 -11 -12 -13 -14 -13 -11 -10 -11 -13 -14 -13 -11 -9 -8 -8 -9 -9 -9 -8 -7 -6 -7 -9 -12 -11 -8 -4 -3 -5 -8 -11 -15 -19 -20 -22 -25 -30 -34 -35 -34 -33 -35 -38 -41 -44 -44 -43 -41 -40 -41 -41 -41 -40 -38 -36 -35 -33 -31 -30 -30 -32 -35 -38 -40 -41 -42 -41 -42 -43 -44 -45 -45 -43 -41 -37 -31 -23 -20 -22 -26 -26 -21 -16 -12 -12 -17 -22 -28 -33 -38 -40 -39 -39 -43 -50 -54 -56 -56 -55 -53 -52 -50 -48 -46 -44 -42 -40 -40 -40 -40 -38 -34 -32 -33 -36 -39 -42 -44 -46 -47 -49 -49 -49 -50 -51 -51 -49 -48 -48 -50 -52 -54 -53 -48 -45 -45 -46 -47 -44 -39 -34 -30 -29 -29 -29 -30 -29 -28 -28 -30 -32 -34 -36 -39 -42 -41 -43 -45 -44 -42 -39 -37 -35 -33 -29 -28 -28 -30 -35 -41 -41 -40 -42 -47 -49 -52 -57 -61 -63 -63 -60 -6 -9 -12 -14 -15 -16 -17 -18 -18 -18 -17 -17 -17 -16 -15 -15 -17 -20 -21 -18 -12 -3 1 1 -1 -4 -5 -5 -4 -2 1 2 1 -2 -8 -11 -11 -9 -6 -4 -4 -3 -3 -4 -5 -6 -7 -8 -7 -6 -6 -7 -8 -9 -9 -8 -7 -7 -6 -5 -4 -1 -0 -1 -3 -5 -7 -7 -7 -7 -6 -6 -5 -5 -5 -4 -4 -5 -6 -7 -7 -6 -5 -3 -2 -4 -5 -5 -4 -3 -3 -3 -4 -4 -4 -3 -2 -2 -4 -9 -15 -20 -22 -23 -23 -25 -28 -30 -32 -32 -30 -24 -18 -11 -5 -4 -9 -14 -18 -18 -12 -9 -10 -14 -18 -18 -15 -10 -6 -6 -8 -11 -13 -15 -16 -17 -18 -19 -19 -19 -19 -21 -23 -26 -28 -27 -23 -18 -16 -16 -18 -21 -21 -20 -18 -16 -15 -15 -16 -18 -18 -19 -19 -19 -18 -18 -18 -19 -20 -22 -23 -23 -20 -17 -15 -14 -14 -16 -15 -14 -12 -11 -12 -13 -15 -17 -18 -19 -21 -21 -19 -20 -22 -26 -29 -32 -29 -23 -15 -7 -2 1 2 1 -0 -2 -4 -4 -3 -3 -5 -7 -11 -15 -19 -21 -24 -25 -27 -29 -31 -34 -35 -33 -30 -25 -18 -12 -8 -7 -8 -8 -10 -12 -14 -14 -12 -10 -11 -14 -16 -15 -13 -10 -10 -9 -8 -7 -7 -7 -7 -6 -6 -8 -10 -11 -9 -5 -4 -5 -8 -10 -14 -18 -20 -21 -23 -27 -31 -33 -34 -33 -34 -37 -40 -43 -44 -44 -43 -41 -41 -42 -42 -42 -41 -39 -37 -35 -33 -30 -28 -29 -33 -37 -40 -42 -42 -41 -41 -42 -44 -45 -45 -46 -45 -43 -38 -29 -25 -24 -26 -26 -24 -19 -14 -12 -15 -20 -26 -32 -37 -40 -39 -38 -41 -48 -53 -56 -57 -55 -54 -52 -52 -51 -49 -46 -43 -40 -40 -40 -41 -41 -38 -33 -31 -31 -34 -37 -38 -40 -43 -47 -49 -51 -52 -52 -51 -50 -48 -49 -52 -54 -55 -54 -51 -47 -45 -45 -46 -45 -42 -37 -33 -31 -30 -30 -30 -29 -29 -29 -31 -34 -34 -35 -37 -41 -41 -42 -42 -42 -40 -38 -37 -36 -33 -31 -29 -27 -27 -32 -38 -40 -40 -39 -43 -46 -50 -54 -58 -61 -61 -60 -9 -12 -14 -16 -17 -18 -19 -19 -19 -18 -18 -18 -18 -17 -16 -16 -18 -21 -21 -17 -10 -2 3 5 3 -1 -5 -6 -4 -0 3 3 1 -3 -7 -9 -7 -4 -2 -0 -0 -0 -1 -2 -3 -4 -4 -4 -4 -4 -4 -5 -5 -6 -7 -8 -8 -8 -9 -9 -7 -4 -0 1 0 -2 -5 -8 -9 -9 -8 -7 -7 -6 -5 -4 -3 -2 -3 -3 -5 -6 -6 -4 -2 -2 -3 -4 -5 -5 -5 -5 -6 -6 -5 -4 -2 -2 -4 -8 -11 -16 -20 -22 -22 -24 -27 -30 -32 -32 -31 -29 -25 -18 -10 -5 -8 -12 -16 -18 -15 -11 -9 -8 -11 -15 -15 -12 -7 -6 -7 -10 -14 -17 -19 -19 -18 -18 -19 -20 -20 -21 -21 -23 -26 -28 -27 -23 -18 -15 -15 -17 -19 -20 -19 -17 -16 -16 -18 -19 -18 -17 -17 -18 -19 -20 -20 -19 -20 -22 -23 -23 -22 -19 -16 -14 -13 -14 -16 -15 -14 -13 -12 -13 -15 -16 -17 -18 -20 -22 -21 -20 -21 -23 -25 -29 -29 -26 -20 -12 -6 -2 1 2 1 -1 -3 -4 -4 -2 -3 -5 -9 -13 -17 -21 -24 -26 -26 -27 -28 -31 -33 -34 -31 -26 -20 -14 -10 -9 -10 -9 -10 -12 -13 -12 -10 -10 -11 -13 -15 -13 -11 -9 -9 -9 -8 -6 -5 -6 -6 -5 -5 -8 -12 -13 -10 -5 -3 -4 -7 -10 -14 -18 -21 -23 -23 -26 -28 -30 -31 -31 -33 -35 -38 -40 -43 -44 -43 -42 -41 -42 -43 -43 -42 -41 -40 -38 -36 -32 -29 -29 -32 -37 -40 -42 -43 -42 -42 -42 -42 -43 -44 -45 -46 -46 -42 -37 -32 -29 -28 -28 -26 -21 -15 -11 -13 -17 -23 -29 -35 -39 -41 -41 -45 -50 -54 -57 -57 -56 -53 -52 -52 -52 -50 -47 -44 -40 -39 -40 -40 -41 -40 -36 -32 -29 -30 -33 -35 -36 -38 -44 -48 -51 -53 -52 -51 -50 -49 -49 -53 -55 -56 -56 -54 -50 -47 -45 -46 -46 -44 -41 -36 -33 -32 -31 -31 -30 -30 -31 -32 -34 -33 -33 -34 -38 -39 -39 -39 -39 -37 -37 -37 -37 -35 -33 -30 -27 -25 -28 -34 -38 -40 -39 -40 -43 -47 -49 -54 -57 -59 -60 -12 -14 -16 -18 -19 -20 -20 -20 -19 -19 -19 -19 -19 -18 -16 -16 -18 -21 -19 -15 -8 -1 7 9 7 -0 -6 -6 -3 1 4 3 0 -3 -5 -4 -1 1 2 2 1 -0 -2 -3 -3 -3 -2 -2 -2 -2 -2 -2 -1 -2 -4 -5 -6 -7 -8 -10 -10 -9 -6 -3 -0 -0 -3 -5 -7 -7 -6 -5 -5 -6 -6 -4 -2 -0 0 -1 -5 -7 -8 -6 -4 -3 -3 -3 -3 -3 -4 -5 -6 -6 -5 -5 -5 -5 -7 -10 -12 -14 -16 -17 -17 -16 -18 -21 -24 -26 -26 -26 -26 -24 -21 -15 -12 -12 -15 -20 -20 -14 -6 -1 -4 -11 -16 -17 -13 -7 -4 -6 -12 -18 -19 -19 -18 -20 -23 -24 -24 -22 -21 -21 -23 -26 -27 -24 -20 -16 -14 -15 -17 -19 -19 -19 -18 -19 -20 -21 -18 -16 -16 -18 -20 -21 -21 -20 -21 -22 -23 -24 -23 -21 -18 -16 -14 -13 -15 -16 -16 -14 -12 -12 -13 -15 -16 -18 -20 -22 -24 -23 -23 -23 -22 -25 -27 -27 -24 -18 -12 -6 -2 1 1 0 -2 -3 -4 -3 -3 -5 -8 -11 -15 -19 -23 -25 -26 -26 -26 -28 -32 -33 -32 -28 -21 -14 -10 -8 -9 -10 -11 -11 -12 -11 -9 -8 -8 -8 -9 -8 -8 -8 -9 -9 -8 -6 -3 -4 -4 -4 -5 -9 -13 -14 -12 -6 -2 -1 -4 -9 -13 -17 -20 -22 -22 -24 -25 -27 -28 -29 -31 -33 -36 -38 -41 -43 -43 -42 -41 -41 -42 -43 -43 -42 -41 -40 -38 -34 -32 -31 -33 -37 -40 -43 -44 -44 -44 -43 -41 -40 -41 -43 -45 -46 -45 -42 -39 -36 -34 -30 -26 -21 -13 -7 -9 -14 -19 -25 -31 -37 -42 -45 -49 -53 -56 -59 -59 -57 -55 -53 -51 -50 -50 -48 -45 -41 -40 -39 -39 -40 -41 -39 -35 -30 -29 -31 -33 -34 -37 -42 -47 -51 -53 -52 -51 -50 -49 -49 -53 -56 -57 -57 -56 -51 -47 -44 -45 -46 -46 -44 -40 -36 -34 -33 -32 -32 -31 -32 -33 -34 -32 -31 -32 -35 -36 -38 -39 -39 -37 -36 -37 -37 -36 -35 -32 -28 -25 -26 -30 -35 -40 -44 -43 -44 -46 -45 -49 -52 -55 -58 -14 -16 -17 -19 -20 -21 -21 -20 -18 -18 -19 -19 -18 -17 -16 -16 -17 -17 -16 -14 -10 -2 10 13 8 -2 -8 -7 -2 3 4 2 -1 -2 -2 1 2 3 3 1 -1 -2 -3 -3 -3 -2 -2 -2 -3 -3 -3 -2 -0 1 -0 -1 -3 -4 -6 -8 -10 -12 -12 -9 -5 -2 -3 -5 -6 -5 -3 -2 -3 -4 -5 -6 -5 -3 -1 -2 -5 -7 -9 -9 -8 -6 -4 -3 -2 -2 -3 -3 -4 -4 -5 -5 -6 -6 -9 -12 -15 -16 -15 -12 -8 -7 -11 -15 -18 -19 -20 -21 -23 -25 -26 -24 -19 -17 -18 -22 -22 -16 -8 -0 -1 -6 -14 -20 -21 -15 -10 -7 -8 -10 -13 -15 -17 -19 -21 -23 -23 -21 -20 -19 -21 -23 -25 -24 -21 -18 -14 -14 -15 -16 -18 -19 -20 -21 -21 -19 -17 -16 -16 -17 -19 -21 -21 -21 -21 -22 -23 -23 -23 -22 -21 -19 -17 -15 -15 -16 -16 -15 -13 -12 -12 -13 -16 -18 -20 -22 -24 -26 -25 -23 -21 -22 -24 -26 -26 -23 -18 -12 -7 -2 1 0 -1 -3 -4 -4 -5 -6 -9 -10 -13 -17 -21 -24 -25 -25 -25 -25 -29 -32 -33 -30 -24 -16 -10 -6 -6 -9 -10 -11 -10 -7 -6 -6 -6 -4 -4 -6 -8 -9 -10 -10 -9 -6 -2 -1 -2 -3 -6 -10 -14 -15 -13 -7 -0 1 -1 -7 -12 -16 -19 -21 -22 -23 -24 -25 -27 -29 -31 -32 -34 -37 -40 -41 -42 -41 -41 -41 -42 -43 -43 -43 -42 -41 -39 -36 -35 -34 -35 -37 -40 -43 -44 -45 -45 -43 -41 -39 -39 -40 -42 -45 -45 -45 -44 -43 -40 -34 -29 -22 -12 -3 -3 -7 -14 -22 -29 -36 -43 -47 -51 -55 -58 -61 -61 -58 -56 -54 -51 -50 -49 -48 -46 -43 -41 -40 -38 -38 -40 -40 -38 -34 -30 -29 -31 -33 -34 -38 -43 -48 -51 -50 -49 -49 -48 -48 -51 -55 -58 -58 -57 -53 -49 -46 -46 -47 -48 -48 -44 -39 -35 -34 -34 -33 -33 -34 -35 -33 -31 -31 -31 -33 -34 -36 -39 -42 -39 -37 -36 -37 -37 -36 -34 -32 -27 -26 -28 -32 -38 -44 -46 -47 -47 -45 -48 -50 -52 -55 -15 -17 -18 -19 -20 -20 -19 -18 -16 -17 -17 -18 -18 -17 -16 -15 -14 -11 -12 -15 -15 -7 6 10 4 -7 -11 -7 -1 2 2 -0 -1 -2 -0 1 2 2 1 -0 -1 -2 -1 -1 -1 -0 -1 -2 -3 -4 -4 -4 -2 0 1 1 -0 -2 -4 -6 -8 -12 -16 -16 -13 -8 -5 -5 -5 -4 -2 1 0 -2 -5 -7 -7 -5 -3 -2 -4 -6 -8 -10 -10 -9 -6 -4 -3 -3 -3 -3 -3 -3 -4 -4 -5 -6 -8 -11 -14 -16 -15 -11 -6 -4 -7 -11 -14 -15 -14 -13 -15 -19 -23 -24 -22 -20 -19 -20 -21 -19 -14 -6 -2 -3 -8 -16 -22 -22 -20 -17 -13 -12 -13 -15 -17 -18 -19 -20 -20 -18 -17 -17 -17 -20 -23 -25 -24 -22 -18 -14 -13 -13 -15 -18 -20 -21 -21 -18 -16 -15 -16 -16 -18 -20 -21 -21 -21 -20 -21 -22 -22 -22 -22 -21 -21 -18 -16 -15 -14 -14 -13 -12 -11 -12 -14 -17 -19 -21 -23 -26 -26 -25 -23 -22 -23 -24 -25 -24 -21 -17 -12 -7 -3 -1 -1 -1 -3 -4 -6 -7 -9 -11 -14 -17 -21 -22 -23 -23 -23 -23 -25 -29 -32 -32 -28 -20 -11 -5 -4 -7 -10 -10 -8 -5 -4 -5 -5 -4 -4 -5 -8 -11 -12 -12 -10 -6 -2 -0 -0 -2 -6 -11 -14 -16 -14 -8 -1 3 1 -5 -11 -15 -18 -20 -20 -21 -21 -23 -25 -27 -29 -31 -33 -36 -38 -39 -41 -41 -42 -42 -43 -43 -43 -42 -42 -41 -39 -38 -37 -36 -36 -38 -40 -44 -46 -47 -47 -45 -43 -40 -38 -38 -39 -42 -44 -45 -46 -47 -45 -39 -33 -26 -16 -4 -0 -3 -10 -20 -28 -35 -42 -47 -51 -55 -59 -63 -63 -60 -57 -55 -52 -50 -48 -47 -47 -47 -44 -41 -38 -38 -39 -39 -39 -37 -33 -30 -29 -31 -32 -33 -37 -43 -47 -48 -48 -49 -48 -48 -50 -53 -57 -58 -58 -56 -52 -49 -48 -49 -50 -50 -47 -42 -38 -35 -35 -35 -35 -36 -36 -33 -31 -30 -30 -31 -33 -35 -38 -41 -40 -38 -36 -37 -39 -39 -39 -37 -33 -30 -29 -31 -36 -40 -43 -47 -51 -48 -50 -52 -52 -53 -16 -17 -18 -19 -19 -18 -17 -15 -14 -14 -15 -16 -16 -16 -15 -12 -8 -3 -9 -16 -20 -15 -4 -0 -3 -9 -10 -5 -2 0 0 -1 -2 -1 -0 0 0 -0 -1 -1 -1 -1 0 1 1 0 -1 -2 -2 -3 -5 -5 -5 -3 0 2 1 -1 -2 -4 -7 -13 -20 -23 -21 -14 -8 -6 -4 -3 -1 1 1 -1 -5 -8 -8 -6 -3 -2 -2 -4 -6 -9 -10 -10 -8 -6 -6 -5 -5 -5 -5 -4 -3 -4 -5 -5 -7 -9 -11 -13 -13 -11 -9 -6 -7 -10 -13 -14 -12 -10 -9 -11 -15 -20 -22 -20 -18 -16 -17 -18 -17 -13 -6 -2 -3 -8 -16 -20 -22 -22 -19 -16 -16 -16 -16 -16 -17 -17 -17 -15 -15 -14 -15 -16 -20 -23 -25 -25 -22 -18 -15 -13 -14 -17 -20 -21 -20 -17 -16 -15 -15 -15 -16 -18 -20 -21 -22 -21 -21 -21 -21 -21 -21 -22 -23 -22 -19 -16 -14 -13 -13 -13 -12 -11 -13 -15 -17 -19 -21 -24 -26 -27 -25 -23 -23 -24 -25 -24 -23 -20 -16 -12 -8 -4 -2 -1 -1 -3 -4 -6 -8 -11 -15 -17 -18 -19 -20 -21 -21 -21 -23 -27 -31 -33 -31 -24 -15 -6 -2 -5 -8 -10 -8 -5 -4 -3 -3 -3 -4 -6 -8 -10 -12 -12 -10 -6 -2 0 1 -1 -5 -10 -13 -16 -16 -11 -4 1 2 -4 -10 -14 -17 -20 -20 -20 -20 -21 -23 -25 -27 -29 -32 -33 -35 -37 -40 -42 -44 -44 -45 -44 -43 -41 -40 -39 -39 -38 -37 -37 -37 -38 -40 -43 -46 -47 -48 -47 -45 -43 -40 -37 -37 -38 -41 -44 -46 -49 -48 -44 -38 -32 -23 -9 -1 -0 -6 -17 -27 -35 -41 -44 -48 -53 -58 -64 -64 -62 -59 -56 -53 -50 -48 -47 -49 -49 -47 -43 -39 -38 -38 -39 -39 -39 -36 -32 -30 -30 -30 -30 -32 -37 -44 -48 -49 -48 -49 -48 -49 -52 -55 -58 -59 -59 -55 -52 -50 -50 -51 -51 -49 -45 -40 -37 -35 -36 -37 -38 -38 -35 -31 -29 -28 -30 -33 -35 -37 -40 -40 -38 -37 -38 -42 -43 -44 -43 -39 -35 -32 -31 -34 -37 -41 -45 -50 -51 -53 -55 -54 -54 -17 -17 -18 -19 -19 -17 -16 -14 -12 -12 -13 -14 -15 -15 -13 -8 -3 -2 -9 -17 -22 -20 -13 -9 -7 -8 -7 -5 -2 -1 -1 -2 -2 -1 -1 -1 -1 -1 -2 -2 -1 -0 1 1 1 -0 -1 -1 -0 -1 -3 -5 -6 -6 -3 -0 1 0 -1 -4 -8 -14 -22 -26 -25 -18 -11 -7 -4 -2 -1 -0 -0 -2 -5 -7 -7 -5 -4 -2 -1 -1 -3 -6 -8 -9 -8 -8 -7 -7 -7 -8 -8 -7 -6 -6 -6 -7 -7 -7 -7 -7 -8 -9 -10 -10 -9 -11 -13 -16 -17 -13 -9 -8 -9 -15 -18 -19 -16 -12 -12 -15 -18 -18 -11 -4 -1 -2 -8 -14 -19 -21 -22 -20 -18 -17 -15 -15 -16 -16 -15 -13 -13 -13 -13 -14 -16 -19 -23 -25 -26 -23 -20 -16 -14 -15 -18 -20 -20 -18 -17 -17 -17 -18 -18 -17 -18 -20 -22 -22 -21 -20 -20 -19 -20 -21 -23 -24 -21 -18 -15 -13 -14 -15 -15 -14 -13 -13 -15 -17 -20 -23 -26 -27 -27 -24 -23 -23 -24 -25 -23 -21 -18 -15 -12 -8 -5 -2 -1 -1 -2 -3 -5 -8 -11 -13 -14 -15 -17 -19 -19 -20 -21 -24 -29 -33 -33 -28 -19 -9 -1 -2 -5 -8 -9 -6 -4 -3 -2 -2 -4 -5 -6 -7 -9 -9 -8 -5 -3 -1 -1 -2 -5 -9 -13 -16 -17 -15 -9 -3 1 -2 -8 -13 -16 -19 -20 -20 -19 -19 -20 -23 -25 -28 -29 -31 -33 -36 -41 -44 -46 -46 -46 -44 -43 -41 -39 -38 -38 -37 -36 -36 -35 -36 -38 -41 -44 -47 -48 -49 -48 -46 -42 -39 -36 -36 -38 -40 -44 -48 -49 -46 -42 -36 -31 -18 -6 1 -4 -16 -26 -33 -38 -41 -45 -51 -57 -63 -64 -62 -59 -57 -54 -51 -49 -48 -50 -51 -49 -45 -41 -39 -38 -39 -39 -39 -38 -35 -32 -30 -30 -29 -30 -34 -43 -48 -50 -49 -51 -50 -50 -51 -55 -58 -60 -61 -59 -56 -53 -52 -51 -51 -49 -46 -41 -37 -35 -35 -37 -39 -40 -37 -32 -29 -27 -29 -32 -35 -37 -38 -37 -36 -36 -39 -41 -43 -44 -45 -43 -39 -34 -32 -34 -36 -39 -43 -49 -53 -55 -55 -55 -55 -17 -18 -19 -20 -19 -17 -15 -13 -11 -11 -11 -13 -14 -14 -10 -6 -4 -6 -13 -18 -21 -21 -16 -11 -7 -6 -5 -4 -3 -3 -2 -3 -2 -2 -1 -1 -2 -2 -3 -3 -2 -1 -1 -1 -2 -2 -2 -0 1 1 -0 -2 -5 -7 -7 -4 -1 1 0 -3 -8 -14 -20 -24 -24 -20 -14 -10 -7 -5 -3 -2 -2 -4 -5 -6 -6 -6 -5 -3 -1 -1 -2 -4 -6 -6 -6 -6 -7 -8 -9 -9 -10 -9 -9 -9 -9 -9 -8 -6 -5 -4 -5 -9 -11 -12 -10 -11 -14 -18 -22 -21 -17 -12 -9 -10 -13 -15 -15 -12 -10 -13 -17 -20 -16 -9 -3 0 -3 -10 -16 -20 -22 -22 -21 -19 -16 -16 -16 -15 -14 -13 -12 -12 -12 -12 -13 -16 -19 -22 -25 -26 -24 -20 -15 -14 -15 -17 -19 -18 -18 -18 -18 -20 -18 -17 -16 -17 -19 -19 -19 -19 -19 -19 -19 -20 -21 -23 -23 -21 -18 -15 -16 -16 -16 -15 -12 -10 -12 -15 -19 -22 -25 -26 -27 -24 -23 -22 -23 -24 -23 -21 -19 -16 -13 -10 -8 -5 -2 -1 0 -0 -2 -4 -7 -9 -11 -12 -15 -17 -19 -19 -20 -22 -26 -32 -34 -32 -25 -14 -2 2 0 -5 -7 -6 -4 -3 -2 -2 -3 -4 -4 -3 -5 -6 -6 -5 -3 -2 -2 -3 -6 -9 -13 -17 -20 -18 -13 -6 1 1 -5 -11 -15 -18 -19 -19 -18 -17 -18 -21 -23 -26 -27 -30 -32 -36 -40 -43 -46 -47 -47 -45 -43 -41 -39 -38 -37 -36 -35 -34 -33 -33 -35 -39 -42 -45 -47 -49 -50 -48 -45 -41 -38 -36 -36 -37 -40 -45 -48 -48 -45 -40 -37 -26 -13 -1 -5 -15 -25 -31 -35 -39 -44 -50 -55 -60 -61 -60 -58 -57 -55 -52 -49 -48 -50 -51 -50 -47 -44 -41 -40 -40 -40 -39 -38 -37 -34 -31 -30 -30 -30 -32 -40 -46 -49 -48 -51 -52 -52 -52 -55 -58 -61 -62 -61 -59 -56 -54 -52 -51 -49 -46 -42 -38 -35 -35 -36 -39 -41 -38 -34 -30 -28 -28 -31 -34 -36 -35 -32 -30 -33 -38 -39 -39 -40 -44 -44 -41 -37 -33 -33 -34 -37 -41 -48 -53 -54 -53 -54 -53 -17 -18 -20 -20 -19 -16 -14 -12 -10 -10 -11 -13 -14 -12 -8 -7 -8 -12 -16 -19 -19 -17 -12 -8 -5 -3 -3 -3 -4 -4 -4 -3 -2 -2 -1 -2 -2 -3 -4 -4 -3 -3 -4 -5 -6 -6 -4 -3 -1 -0 -0 -1 -3 -6 -9 -9 -6 -2 -0 -1 -4 -9 -15 -19 -21 -20 -16 -14 -11 -9 -8 -8 -8 -8 -8 -8 -9 -9 -8 -7 -5 -3 -2 -3 -4 -4 -3 -4 -5 -6 -7 -8 -8 -8 -10 -11 -11 -10 -9 -7 -6 -5 -8 -11 -13 -13 -11 -11 -14 -19 -24 -27 -25 -19 -13 -10 -11 -14 -16 -14 -12 -12 -15 -19 -18 -13 -7 -2 -3 -8 -13 -17 -20 -22 -22 -21 -19 -18 -17 -15 -14 -13 -12 -12 -11 -11 -12 -13 -15 -18 -22 -25 -26 -23 -19 -15 -14 -15 -17 -18 -19 -18 -18 -19 -17 -15 -14 -13 -15 -15 -16 -17 -18 -19 -19 -20 -20 -22 -23 -23 -21 -18 -17 -16 -15 -14 -11 -9 -9 -12 -17 -20 -22 -24 -25 -24 -22 -21 -21 -22 -22 -21 -19 -17 -14 -11 -9 -8 -5 -2 1 3 2 -1 -4 -7 -8 -9 -12 -15 -17 -18 -18 -20 -24 -29 -33 -34 -30 -21 -6 3 6 2 -3 -4 -3 -2 -1 -1 -2 -3 -2 -0 -1 -2 -4 -4 -4 -4 -4 -5 -6 -8 -12 -16 -19 -19 -17 -11 -3 0 -3 -8 -13 -16 -18 -18 -17 -16 -17 -19 -21 -24 -26 -29 -32 -36 -39 -43 -45 -47 -48 -47 -45 -42 -39 -38 -37 -36 -34 -32 -30 -29 -31 -35 -39 -42 -45 -48 -50 -50 -48 -44 -41 -38 -35 -34 -35 -41 -47 -49 -49 -46 -43 -34 -20 -7 -6 -14 -22 -28 -33 -37 -41 -46 -50 -54 -57 -58 -57 -56 -54 -52 -50 -48 -49 -50 -51 -50 -47 -44 -42 -42 -42 -40 -39 -38 -36 -33 -31 -30 -30 -31 -36 -42 -46 -47 -50 -52 -54 -54 -57 -59 -61 -62 -62 -61 -58 -56 -54 -53 -50 -46 -43 -39 -36 -35 -36 -38 -40 -39 -36 -34 -30 -28 -30 -33 -35 -32 -28 -26 -30 -37 -38 -37 -37 -42 -44 -42 -39 -34 -33 -33 -35 -38 -46 -50 -51 -50 -49 -49 -17 -19 -20 -20 -18 -15 -12 -10 -9 -9 -11 -13 -13 -9 -8 -10 -14 -17 -18 -18 -16 -11 -5 -2 -1 -1 -1 -2 -3 -3 -2 -1 0 1 -0 -1 -2 -3 -3 -3 -3 -4 -6 -9 -10 -9 -8 -7 -6 -3 -2 -1 -1 -4 -7 -9 -9 -8 -5 -2 -1 -2 -6 -11 -14 -15 -14 -13 -12 -12 -12 -12 -11 -10 -10 -10 -10 -9 -7 -6 -6 -6 -6 -6 -6 -5 -4 -5 -5 -5 -6 -6 -7 -8 -9 -9 -9 -9 -8 -8 -8 -9 -11 -14 -15 -15 -13 -13 -15 -18 -23 -25 -24 -20 -15 -9 -8 -11 -15 -15 -12 -11 -12 -15 -17 -15 -11 -7 -5 -5 -7 -11 -16 -20 -23 -23 -22 -19 -16 -13 -11 -11 -11 -11 -10 -10 -11 -12 -13 -15 -18 -22 -25 -26 -23 -18 -14 -13 -15 -17 -18 -18 -18 -18 -16 -14 -13 -12 -13 -13 -14 -15 -16 -17 -18 -19 -19 -21 -22 -23 -23 -21 -19 -17 -17 -16 -14 -11 -9 -10 -15 -18 -20 -22 -23 -22 -21 -20 -19 -21 -22 -23 -22 -19 -16 -13 -10 -9 -8 -5 -1 3 4 2 -1 -4 -7 -8 -11 -13 -16 -17 -17 -19 -22 -27 -32 -34 -33 -26 -12 1 8 7 2 0 -0 0 1 -0 -1 -2 -1 1 2 1 -2 -4 -5 -6 -7 -8 -8 -9 -11 -15 -19 -22 -22 -19 -12 -5 -4 -7 -12 -15 -17 -17 -16 -15 -15 -16 -19 -22 -25 -29 -32 -35 -38 -41 -44 -47 -47 -47 -46 -44 -42 -40 -38 -36 -34 -31 -28 -26 -26 -30 -35 -39 -43 -46 -49 -51 -50 -48 -44 -40 -35 -31 -30 -35 -42 -48 -51 -51 -47 -39 -27 -13 -9 -12 -18 -25 -30 -35 -38 -41 -44 -47 -52 -55 -57 -56 -54 -52 -51 -50 -50 -51 -52 -52 -50 -47 -45 -44 -44 -43 -41 -39 -37 -35 -33 -31 -30 -31 -34 -38 -43 -46 -49 -52 -55 -56 -58 -59 -61 -62 -63 -62 -61 -59 -58 -56 -52 -48 -45 -41 -39 -37 -37 -38 -39 -39 -38 -37 -34 -31 -30 -31 -34 -32 -28 -27 -29 -36 -38 -38 -36 -39 -41 -41 -39 -36 -34 -33 -34 -36 -42 -47 -49 -48 -45 -44 -18 -19 -19 -19 -17 -14 -11 -9 -8 -10 -12 -12 -10 -7 -10 -14 -17 -17 -16 -14 -10 -4 1 3 4 4 2 0 -0 1 3 4 4 3 2 0 -0 -0 -0 -1 -2 -3 -6 -8 -10 -9 -9 -8 -8 -7 -5 -4 -2 -2 -4 -6 -8 -11 -12 -9 -5 -1 -1 -3 -5 -8 -9 -9 -9 -10 -10 -11 -10 -10 -9 -8 -8 -7 -7 -7 -8 -8 -9 -9 -9 -8 -7 -7 -6 -5 -5 -5 -6 -6 -7 -7 -7 -8 -8 -8 -9 -9 -11 -13 -15 -15 -15 -15 -16 -17 -19 -20 -20 -18 -14 -8 -6 -8 -13 -16 -13 -10 -10 -13 -17 -18 -16 -11 -6 -4 -5 -8 -11 -15 -19 -21 -21 -19 -17 -14 -12 -10 -10 -9 -10 -10 -11 -12 -12 -14 -15 -18 -21 -24 -26 -23 -18 -14 -13 -14 -16 -17 -18 -17 -16 -14 -13 -12 -12 -12 -13 -14 -15 -16 -16 -17 -18 -20 -21 -23 -23 -23 -21 -19 -18 -17 -16 -13 -11 -10 -13 -15 -18 -20 -21 -21 -19 -17 -16 -18 -21 -23 -23 -21 -18 -15 -12 -10 -9 -8 -5 -0 4 4 2 -2 -5 -8 -10 -12 -14 -15 -16 -18 -21 -25 -30 -34 -35 -33 -23 -9 3 10 8 5 3 2 2 2 2 1 0 3 4 3 -2 -6 -8 -9 -10 -10 -9 -9 -9 -13 -19 -23 -25 -24 -20 -14 -9 -8 -10 -13 -16 -17 -16 -15 -14 -15 -17 -20 -24 -28 -30 -33 -36 -40 -43 -45 -47 -47 -47 -46 -44 -42 -40 -38 -35 -32 -27 -24 -23 -25 -31 -36 -40 -44 -47 -50 -51 -50 -47 -42 -36 -31 -28 -30 -35 -42 -48 -50 -49 -43 -32 -18 -11 -11 -15 -22 -28 -33 -36 -38 -41 -44 -47 -52 -55 -56 -54 -53 -51 -51 -51 -52 -52 -53 -52 -50 -48 -47 -47 -46 -44 -40 -39 -37 -34 -32 -30 -32 -34 -37 -41 -45 -48 -51 -54 -56 -57 -59 -61 -63 -64 -64 -63 -62 -61 -59 -55 -50 -47 -44 -42 -41 -40 -38 -38 -39 -40 -39 -37 -34 -31 -30 -33 -33 -32 -30 -30 -35 -38 -38 -36 -36 -37 -38 -40 -40 -36 -33 -33 -36 -40 -45 -48 -47 -43 -40 -18 -19 -19 -18 -16 -13 -10 -9 -9 -10 -11 -9 -7 -9 -14 -16 -16 -15 -13 -9 -5 -0 3 7 10 10 8 5 4 5 6 6 6 5 4 3 2 1 1 0 -1 -2 -3 -5 -6 -6 -7 -7 -8 -8 -7 -6 -5 -3 -2 -3 -6 -12 -16 -16 -12 -7 -3 -1 -1 -3 -4 -4 -4 -5 -5 -6 -7 -7 -7 -6 -6 -7 -9 -10 -9 -9 -9 -10 -10 -10 -10 -10 -9 -8 -7 -6 -6 -5 -5 -5 -6 -7 -7 -8 -9 -9 -9 -10 -12 -13 -15 -17 -18 -18 -18 -18 -18 -17 -13 -7 -5 -6 -12 -17 -16 -12 -9 -9 -14 -19 -21 -20 -14 -8 -5 -5 -8 -12 -16 -19 -21 -18 -15 -13 -13 -12 -12 -10 -9 -9 -10 -11 -12 -13 -14 -15 -18 -22 -25 -26 -23 -18 -13 -11 -11 -13 -15 -16 -15 -14 -13 -13 -12 -13 -13 -13 -14 -14 -14 -15 -17 -19 -21 -22 -23 -23 -23 -22 -20 -19 -18 -16 -14 -11 -11 -12 -14 -17 -20 -21 -20 -19 -17 -18 -20 -22 -24 -24 -21 -17 -14 -11 -11 -11 -10 -6 -0 3 4 2 -2 -6 -9 -11 -13 -14 -15 -17 -20 -24 -28 -33 -36 -36 -29 -16 -1 13 15 12 8 5 4 5 4 3 1 3 3 1 -4 -9 -10 -11 -10 -10 -9 -8 -7 -10 -17 -22 -25 -27 -26 -22 -16 -10 -7 -10 -13 -16 -17 -16 -16 -16 -17 -19 -23 -26 -29 -31 -34 -38 -41 -44 -46 -47 -47 -46 -45 -43 -42 -40 -37 -33 -29 -25 -22 -23 -28 -33 -38 -41 -44 -47 -49 -49 -46 -42 -38 -33 -28 -27 -29 -34 -40 -45 -48 -45 -36 -21 -13 -11 -13 -19 -26 -31 -35 -38 -42 -44 -46 -49 -55 -56 -55 -53 -52 -51 -51 -52 -53 -53 -52 -51 -50 -49 -49 -49 -47 -43 -41 -39 -35 -32 -30 -33 -35 -36 -38 -42 -46 -49 -52 -54 -56 -58 -61 -63 -64 -65 -65 -64 -63 -61 -58 -54 -49 -46 -45 -44 -42 -39 -39 -39 -40 -40 -38 -36 -33 -30 -32 -34 -34 -34 -33 -34 -37 -38 -36 -34 -34 -37 -41 -43 -39 -35 -34 -37 -40 -44 -49 -48 -43 -39 -18 -18 -17 -17 -15 -13 -12 -11 -11 -11 -8 -6 -7 -13 -16 -15 -13 -11 -8 -4 -1 0 2 8 13 15 13 10 8 7 6 7 6 6 5 4 3 2 1 1 -0 -1 -2 -3 -4 -5 -5 -4 -5 -6 -6 -7 -7 -5 -3 -3 -5 -11 -17 -18 -17 -12 -9 -6 -4 -3 -3 -1 0 1 2 -0 -2 -4 -5 -5 -6 -7 -9 -10 -8 -8 -8 -9 -9 -10 -11 -12 -12 -10 -9 -8 -7 -7 -6 -6 -6 -6 -7 -8 -9 -9 -9 -9 -10 -12 -14 -17 -18 -19 -19 -19 -19 -17 -14 -8 -5 -5 -10 -16 -18 -16 -11 -7 -9 -15 -21 -24 -21 -15 -11 -9 -9 -11 -14 -17 -19 -16 -14 -13 -13 -13 -13 -13 -11 -10 -10 -10 -11 -12 -13 -14 -17 -20 -25 -27 -26 -23 -18 -12 -9 -8 -10 -13 -14 -14 -14 -13 -13 -13 -13 -12 -14 -14 -13 -13 -15 -19 -21 -22 -22 -23 -24 -23 -22 -20 -19 -18 -15 -12 -11 -11 -13 -15 -19 -21 -21 -19 -17 -17 -18 -21 -23 -24 -23 -20 -16 -12 -11 -12 -12 -10 -5 0 4 5 2 -2 -6 -10 -13 -14 -15 -16 -20 -23 -27 -31 -35 -37 -33 -23 -9 8 16 15 11 6 5 6 6 6 5 5 5 3 0 -5 -9 -10 -10 -9 -9 -8 -8 -9 -15 -20 -25 -28 -30 -28 -22 -15 -9 -9 -12 -15 -17 -17 -16 -16 -16 -18 -21 -24 -27 -29 -32 -36 -40 -43 -45 -46 -46 -46 -46 -45 -44 -42 -40 -36 -32 -27 -23 -22 -26 -30 -35 -39 -41 -43 -45 -45 -44 -42 -39 -35 -31 -28 -26 -28 -33 -39 -45 -46 -40 -25 -15 -11 -13 -16 -21 -26 -32 -37 -43 -45 -47 -49 -54 -56 -56 -54 -52 -51 -51 -52 -52 -52 -51 -50 -50 -50 -51 -51 -49 -46 -43 -40 -37 -33 -32 -34 -36 -36 -36 -39 -43 -45 -48 -50 -53 -57 -60 -63 -64 -65 -65 -65 -64 -64 -61 -57 -52 -48 -45 -44 -44 -41 -40 -40 -41 -40 -39 -37 -33 -29 -30 -32 -34 -34 -35 -36 -38 -39 -37 -34 -34 -36 -41 -43 -41 -38 -36 -38 -41 -45 -48 -47 -43 -40 -18 -17 -17 -17 -17 -16 -15 -14 -12 -8 -5 -6 -11 -16 -16 -14 -11 -8 -4 -2 -1 -2 1 8 14 17 15 12 8 6 5 5 5 5 5 5 4 3 2 1 0 -1 -2 -2 -3 -4 -3 -2 -2 -3 -4 -5 -6 -6 -5 -5 -6 -10 -15 -17 -17 -14 -13 -12 -11 -9 -7 -4 1 4 6 4 2 -1 -2 -3 -4 -6 -8 -8 -6 -6 -7 -8 -8 -9 -11 -13 -13 -11 -10 -10 -10 -10 -10 -9 -8 -7 -7 -8 -9 -10 -11 -11 -11 -12 -12 -15 -19 -22 -23 -23 -22 -20 -16 -11 -7 -6 -8 -15 -19 -19 -16 -10 -8 -11 -17 -22 -23 -21 -18 -16 -14 -12 -12 -13 -15 -13 -12 -11 -11 -12 -13 -13 -13 -13 -12 -11 -10 -10 -11 -12 -14 -18 -22 -26 -27 -27 -24 -18 -12 -8 -7 -10 -13 -15 -15 -16 -15 -13 -12 -12 -12 -13 -13 -13 -15 -17 -19 -21 -21 -22 -24 -24 -24 -22 -21 -19 -16 -14 -12 -12 -12 -14 -17 -20 -21 -20 -18 -17 -17 -19 -22 -24 -24 -22 -18 -14 -12 -12 -12 -13 -10 -5 1 5 5 1 -4 -8 -12 -13 -15 -16 -19 -22 -25 -29 -34 -37 -36 -30 -18 -1 11 15 13 8 6 7 9 10 9 8 6 5 2 -4 -7 -8 -8 -10 -12 -12 -11 -11 -15 -19 -23 -28 -32 -32 -29 -22 -13 -10 -11 -14 -17 -17 -17 -17 -15 -16 -18 -21 -25 -28 -30 -34 -38 -41 -44 -45 -46 -46 -47 -47 -46 -45 -42 -39 -35 -30 -26 -23 -25 -28 -33 -37 -39 -41 -42 -42 -42 -41 -40 -38 -35 -31 -28 -27 -29 -35 -42 -46 -43 -31 -20 -14 -14 -18 -20 -24 -28 -35 -43 -47 -48 -49 -54 -56 -56 -55 -53 -51 -50 -50 -51 -50 -50 -49 -48 -49 -51 -51 -50 -47 -44 -42 -39 -36 -35 -35 -36 -35 -34 -36 -39 -41 -42 -45 -50 -55 -59 -61 -63 -64 -64 -64 -65 -64 -63 -59 -54 -49 -46 -44 -43 -42 -42 -42 -41 -41 -39 -36 -32 -29 -28 -29 -32 -32 -34 -36 -39 -42 -40 -38 -36 -36 -40 -42 -41 -40 -38 -39 -41 -45 -47 -45 -42 -40 -18 -17 -17 -18 -19 -18 -17 -15 -11 -5 -4 -9 -15 -17 -16 -13 -11 -8 -5 -4 -4 -3 1 8 12 14 13 10 6 4 3 3 3 4 4 4 3 2 1 0 -0 -1 -2 -2 -2 -3 -2 -1 -1 -1 -3 -4 -6 -7 -6 -5 -6 -8 -13 -14 -14 -12 -11 -12 -14 -15 -15 -11 -6 0 5 6 4 1 -0 -1 -2 -4 -5 -5 -4 -5 -6 -8 -8 -9 -10 -12 -12 -11 -10 -10 -11 -11 -11 -11 -9 -8 -8 -9 -10 -12 -13 -14 -14 -13 -11 -14 -18 -23 -26 -26 -25 -23 -21 -17 -12 -8 -8 -11 -17 -20 -20 -17 -13 -11 -12 -16 -19 -21 -22 -22 -20 -16 -12 -10 -10 -9 -9 -9 -9 -10 -12 -13 -14 -14 -13 -12 -11 -11 -11 -11 -13 -16 -19 -22 -25 -27 -27 -25 -20 -14 -9 -9 -11 -14 -16 -17 -16 -14 -12 -10 -10 -11 -12 -12 -14 -16 -18 -19 -20 -22 -24 -25 -25 -24 -22 -19 -17 -16 -15 -14 -13 -14 -16 -19 -21 -21 -19 -16 -16 -17 -20 -23 -24 -23 -21 -16 -13 -12 -12 -14 -13 -10 -5 2 5 4 -0 -5 -10 -12 -14 -15 -18 -20 -24 -28 -32 -35 -37 -34 -26 -11 4 13 16 13 10 10 12 15 15 12 8 5 3 -0 -2 -4 -6 -10 -13 -13 -13 -14 -16 -18 -22 -27 -32 -34 -32 -27 -19 -13 -12 -14 -16 -18 -18 -18 -16 -14 -15 -18 -23 -26 -29 -32 -36 -39 -43 -44 -45 -46 -47 -48 -48 -47 -45 -41 -37 -33 -29 -25 -25 -26 -30 -35 -38 -41 -43 -45 -45 -44 -42 -42 -39 -36 -32 -29 -28 -33 -39 -43 -43 -36 -26 -17 -14 -17 -20 -22 -26 -33 -42 -48 -50 -51 -54 -56 -57 -56 -54 -52 -50 -48 -48 -49 -48 -48 -47 -48 -49 -49 -49 -47 -46 -44 -42 -39 -38 -37 -36 -35 -32 -33 -35 -37 -37 -40 -46 -52 -57 -59 -60 -61 -62 -63 -63 -64 -63 -60 -56 -51 -47 -44 -42 -42 -43 -43 -42 -41 -39 -35 -30 -28 -27 -27 -28 -30 -31 -33 -36 -40 -42 -41 -39 -36 -38 -39 -40 -40 -39 -39 -42 -45 -45 -42 -40 -40 -18 -18 -18 -19 -19 -19 -18 -14 -9 -3 -6 -12 -17 -18 -16 -14 -12 -10 -8 -8 -7 -4 1 5 8 9 8 5 2 0 -0 0 1 2 3 3 3 2 0 -1 -1 -1 -2 -2 -1 -1 -1 -1 -1 -1 -3 -5 -7 -8 -7 -5 -3 -4 -8 -10 -11 -9 -8 -8 -11 -15 -18 -18 -14 -8 -1 2 1 0 -0 -1 -2 -3 -4 -5 -4 -4 -5 -6 -8 -10 -11 -12 -11 -11 -11 -11 -11 -11 -11 -10 -8 -7 -8 -9 -10 -11 -13 -14 -14 -13 -12 -14 -17 -23 -27 -28 -26 -24 -24 -24 -21 -17 -10 -8 -9 -14 -20 -24 -21 -15 -10 -8 -12 -16 -20 -22 -22 -20 -17 -12 -8 -6 -6 -7 -8 -10 -11 -13 -14 -14 -14 -13 -13 -13 -12 -12 -13 -14 -15 -18 -21 -25 -27 -28 -26 -22 -16 -12 -11 -12 -14 -16 -16 -14 -11 -9 -9 -9 -10 -11 -12 -14 -17 -18 -19 -21 -24 -27 -29 -30 -29 -26 -22 -18 -16 -15 -14 -14 -15 -18 -20 -22 -20 -17 -15 -14 -17 -21 -23 -24 -23 -19 -16 -13 -13 -14 -15 -14 -10 -4 2 4 2 -2 -7 -11 -14 -16 -18 -20 -23 -27 -30 -34 -36 -37 -33 -22 -6 9 18 19 14 12 14 18 19 15 10 5 2 1 -1 -4 -7 -11 -13 -14 -15 -16 -17 -19 -21 -25 -29 -32 -33 -31 -25 -19 -15 -14 -16 -18 -19 -18 -16 -14 -14 -16 -20 -24 -27 -30 -33 -37 -40 -43 -45 -46 -47 -48 -48 -48 -47 -44 -40 -36 -32 -28 -25 -25 -27 -32 -36 -40 -44 -47 -48 -47 -45 -44 -42 -39 -35 -32 -30 -31 -34 -38 -40 -38 -31 -22 -15 -16 -19 -22 -26 -34 -43 -49 -53 -55 -55 -56 -57 -57 -56 -53 -50 -48 -47 -47 -47 -47 -46 -46 -47 -48 -48 -48 -47 -46 -44 -42 -40 -38 -36 -35 -32 -32 -32 -33 -35 -41 -46 -51 -54 -56 -58 -59 -60 -60 -61 -62 -62 -60 -57 -53 -49 -45 -42 -42 -43 -43 -42 -42 -39 -34 -30 -28 -26 -25 -25 -27 -29 -30 -33 -37 -40 -41 -39 -37 -37 -38 -39 -40 -38 -39 -41 -43 -43 -41 -41 -42 -17 -17 -17 -17 -17 -17 -16 -12 -6 -3 -9 -15 -18 -17 -16 -16 -14 -12 -10 -9 -6 -2 1 2 3 3 3 -0 -2 -3 -2 -1 0 2 2 3 3 2 2 1 -0 0 1 -0 -1 -1 -1 -0 -1 -1 -3 -6 -8 -9 -8 -4 -1 0 -3 -6 -7 -7 -5 -5 -7 -11 -15 -17 -17 -14 -10 -7 -6 -5 -5 -4 -4 -5 -6 -7 -7 -6 -7 -7 -8 -9 -9 -8 -9 -10 -11 -11 -11 -11 -10 -9 -8 -7 -8 -8 -9 -10 -12 -13 -13 -13 -13 -15 -18 -22 -26 -27 -27 -25 -24 -25 -24 -21 -14 -3 -1 -6 -15 -23 -24 -20 -13 -7 -8 -12 -15 -17 -19 -21 -22 -20 -14 -7 -4 -5 -7 -10 -13 -14 -14 -12 -12 -12 -13 -14 -14 -14 -13 -13 -12 -14 -17 -20 -24 -28 -29 -28 -24 -18 -13 -11 -12 -14 -14 -13 -11 -9 -8 -8 -8 -9 -11 -13 -16 -18 -19 -21 -24 -27 -29 -30 -29 -27 -24 -21 -18 -16 -15 -15 -15 -17 -20 -22 -22 -19 -16 -14 -14 -17 -21 -24 -24 -22 -19 -16 -13 -13 -15 -15 -14 -11 -4 1 2 0 -4 -9 -14 -17 -18 -20 -23 -26 -30 -34 -36 -37 -37 -33 -20 -5 9 16 15 14 15 19 21 17 10 3 -0 -2 -4 -6 -9 -12 -14 -15 -17 -18 -18 -19 -21 -24 -27 -30 -32 -32 -29 -23 -18 -15 -16 -18 -19 -19 -17 -15 -14 -15 -17 -22 -25 -27 -30 -33 -37 -41 -44 -45 -46 -46 -48 -48 -47 -45 -42 -38 -34 -30 -27 -25 -25 -29 -33 -38 -42 -46 -48 -48 -46 -45 -43 -40 -38 -37 -34 -32 -31 -33 -38 -39 -36 -28 -18 -17 -18 -22 -27 -34 -42 -49 -53 -55 -55 -56 -57 -57 -56 -54 -51 -48 -47 -47 -47 -47 -46 -46 -46 -46 -47 -48 -48 -47 -45 -42 -40 -38 -36 -35 -33 -32 -30 -29 -34 -41 -47 -51 -53 -55 -57 -58 -57 -58 -59 -61 -62 -62 -59 -55 -50 -46 -43 -43 -44 -44 -43 -42 -39 -35 -32 -29 -27 -25 -24 -26 -27 -28 -30 -34 -38 -40 -39 -37 -37 -37 -38 -38 -37 -38 -39 -40 -40 -41 -43 -46